Разработка модуля поиска нечетких правил (Fuzzy Rules) в естественном языке (проект)

Материал из Wiki - Факультет компьютерных наук
Версия от 10:38, 24 сентября 2018; Ivan.Lisenkov (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Ментор Иван Лисенков
Учебный семестр Осень 2018
Учебный курс 2-й курс
Проект можно развивать на летней практике
Максимальное количество студентов, выбравших проект: 2



Что это за проект?

Проект заключается в развитии существующей программы формирования базы знаний правил нечеткой логики. На данный момент программа может создавать и редактировать правила нечеткой логики (Fuzzy Rules). Так же, есть возможность вычислять, по заданному входу, выходное значение на основе сохраненных правил нечеткой логики (Fuzzy Rules) посредством алгоритмов Mamdani и/или Tagaki-Sugeno. Программа имеет пользовательский интерфейс и сохранение информации в виде файлов. Следующий этап развития сервиса - это автоматический поиск возможных правил нечеткой логики в произвольном тексте (текстовая литература, новостные ленты информационных агенств, интернет итд). Найденные нечеткие правила, могут быть сопоставлены с уже ранее сохраненными в базе знаний и в случае необходимости могут быть уточнены экспертом. Так как количество нечетких правил данных будет существенно увеличиваться, необходимо настроить сохранение информации в базу данных. В результате проекта должен быть сформирован прототип сервиса поиска нечетких высказываний в произвольном тексте.

Общий формат правила нечеткого высказывания:

Если <ЛИНГВИСТИЧЕСКАЯ ПЕРЕМЕННАЯ 1> есть [не

Чему вы научитесь?

- Формулировать постановку задачи - Основам теории нечеткой логики (Fuzzy Logic) - Основным подходам контекстного поиска и синтаксического разбора текста - Писать надежный и понятный код - Работать с реляционными базами данных, проектировать модели хранения данных (физическую и логическую)

Какие начальные требования?

- Программирование на C(C++)/Python/Java (в рамках прослушанного курса) - Знание SQL желательно

Какие будут использоваться технологии?

- C++ / Python в рамках прослушанного курса - NLTK пакет библиотек и программ для символьной и статистической обработки естественного языка - PostgresSQL (возможно Redis как NoSQL) - GIT(Bitbucket)

Темы вводных занятий

- Основы организации разработки продукта и управление проектами - Основы теории нечеткой логики (Нечеткие множества, Нечеткие и Лингвистические переменные, Контроллер на основе нечеткой логики) - Основы синтаксический разбора естественного текста. Работа с текстовыми данными - Работа с реляционными базам данных (проектирование модели хранения данных, написание SQL запросов)

Направления развития

- Формирование базы знаний нечеткими правилами, нечеткими и лингвистическими переменными на основе информации из открытых источников (internet) - Использование разработанной программы и сформированной базы знаний для поддержки принятия решений - Аналитическая обработка сформированной базы знаний. Выстраивание новых нечетких правил (логических цепочек) на основе сформированной базы знаний

Критерии оценки

4-5 : Программа переведена на работу с базой данных 6-7 : В программе реализована возможность выявлять из произвольного текста: правила нечеткой логики, лингвистические переменные, термы, модифицированные термы, и сопоставлять с уже определенными в базе знаний. Поставлен эксперимент. 8-10 : Произведена экспериментальная проверка программы, функциональные возможности программы документированы.

Ориентировочное расписание занятий

ПН 18.30-20.00, ПТ 17.30-19.30, встречи или ФКН или в офисе ментора

e-mail: ivan.lisenkov@gmail.com