Natural Language Processing (автоматическая обработка естественного язык): определение автора текста. (проект) — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Строка 8: Строка 8:
 
|number_of_students=
 
|number_of_students=
 
|categorize=yes
 
|categorize=yes
 +
|is_archived=yes
 
}}
 
}}
  

Версия 15:43, 28 июля 2017

Ментор Кирилл Малахов
Учебный семестр Весна 2016
Учебный курс 1-й курс


Внимание! Данный проект находится в архиве и реализован не будет.

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

Одна из современных задач машинного обучения является обработка неструктурированных текстов на естественных языках. Студенту предлагается реализовать приложение, которое после обучения на некоторой тренировочной выборке, с высокой долей вероятности определяет автора предложенного текста. Данная тема очень актуальна в сегодняшние дни, так как используется повсеместно: машинный перевод, информационный поиск, реферирование и аннотация текстов, искусственный интеллект, извлечение информации и т.д.

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

Студент получит навыки промышленного программирования, а также базовые знания в области обработки тестовой информации на естественных языках, понимание проблем и современные методы и подходы их решения.

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

Помимо желания научиться чему-либо новому, целеустремленности и нацеленности на результат, необходимо уметь программировать на каком-либо современном объектно-ориентированном языке, используя графические библиотеки для интерфейса (последнему при желании можно обучиться).
Возможные языки:

  • C++, Qt
  • C#, WPF
  • Java, Swing
  • Python, Tkinter

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

  • GIT,
  • Task-tracking,
  • Стандартные библиотеки, среды разработки, соответствующими выбранному языку.

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

Планирование разработки, введение в GIT и task-tracking, Командная разработки и review code, основы качественного написание кода. Постановка задачи, задачи обработки текстов, конечные автоматы и регулярные выражения, N-граммы и алгоритмы, связанные с ними. Методы классификации и кластеризации. Контекстно-свободные грамматики. Синтаксический и лексический анализ.

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

Так как данная область достаточно новая, то и нерешенных задач много. Можно попробовать разработать новые алгоритмы или совершенствовать существующие. Полученные знания можно использовать для применения в новых областях.

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

Во время разработки ментор будет периодически проводить review кода.

Обязательная часть:

  • Полное описание работы с программой через командную строку (2 балла),
  • Разработка алгоритма с качеством 70% (2 балла).

Дополнительная часть:

  • Разработка алгоритма с качеством 75% (+ 1 балл),
  • Разработка алгоритма с качеством 80% (+ 1 балл),
  • Разработка алгоритма с качеством 85% (+ 1 балл),
  • Использование MVC (+ 2 балла),
  • Графический интерфейс (+ 2 балла),
  • Взаимодействие модуля расчёта и графического интерфейса через сервис (+ 2 балла),
  • Чтение проверяемых текстов из интернета, из архива, обработка нескольких текстов за раз (+ 1 бал за каждый вариант).

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

Уточняется.