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

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
 
(не показано 8 промежуточных версии 3 участников)
Строка 1: Строка 1:
 
{{Карточка_проекта
 
{{Карточка_проекта
|name=Natural Language Processing (автоматическая обработка естественного язык): определение автора текста.
+
|name=Natural Language Processing (автоматическая обработка естественного языка): определение автора текста.
 
|mentor=Кирилл Малахов
 
|mentor=Кирилл Малахов
 
|mentor_login={{URLENCODE:KirillMalakhov|WIKI}}
 
|mentor_login={{URLENCODE:KirillMalakhov|WIKI}}
Строка 17: Строка 17:
  
 
=== Какие начальные требования? ===
 
=== Какие начальные требования? ===
Помимо желания научиться чему-либо новому, целеустремленности и нацеленности на результат, необходимо уметь программировать на каком-либо современном объектно-ориентированном языке, используя графические библиотеки для интерфейса (последнему при желании можно обучиться).
+
Помимо желания научиться чему-либо новому, целеустремленности и нацеленности на результат, необходимо уметь программировать на каком-либо современном объектно-ориентированном языке, используя графические библиотеки для интерфейса (последнему при желании можно обучиться).<br/>
Возможные языки:
+
Возможные языки:<br/>
C++, Qt
+
* C++, Qt<br/>
C#, WPF
+
* C#, WPF<br/>
Java, Swing
+
* Java, Swing<br/>
Python, Tkinter
+
* Python, Tkinter
  
 
=== Какие будут использоваться технологии? ===
 
=== Какие будут использоваться технологии? ===
GIT,
+
* GIT,<br/>
Task-tracking,
+
* Task-tracking,<br/>
Стандартные библиотеки, среды разработки, соответствующими выбранному языку.
+
* Стандартные библиотеки, среды разработки, соответствующими выбранному языку.
  
 
=== Темы вводных занятий ===
 
=== Темы вводных занятий ===
Строка 40: Строка 40:
 
=== Критерии оценки ===
 
=== Критерии оценки ===
 
Во время разработки ментор будет периодически проводить review кода.<br/>
 
Во время разработки ментор будет периодически проводить review кода.<br/>
 +
 
Обязательная часть:<br/>
 
Обязательная часть:<br/>
Полное описание работы с программой через командную строку (2 балла),<br/>
+
* Полное описание работы с программой через командную строку (2 балла),<br/>
Разработка алгоритма с качеством 75% (2 балла).<br/>
+
 
 +
* Разработка алгоритма с качеством 70% (2 балла).<br/>
 +
 
 
Дополнительная часть:<br/>
 
Дополнительная часть:<br/>
Разработка алгоритма с качеством 80% (+ 1 балл),<br/>
+
* Разработка алгоритма с качеством 75% (+ 1 балл),<br/>
Разработка алгоритма с качеством 85% (+ 1 балл),<br/>
+
* Разработка алгоритма с качеством 80% (+ 1 балл),<br/>
Разработка алгоритма с качеством 90% (+ 1 балл),<br/>
+
* Разработка алгоритма с качеством 85% (+ 1 балл),<br/>
• Отчёт, описывающий алгоритм с обоснованием, работу с приложением (+ 2 балла),<br/>
+
* Использование MVC (+ 2 балла),<br/>
Графический интерфейс (+ 2 балла).
+
* Графический интерфейс (+ 2 балла), <br/>
 +
* Взаимодействие модуля расчёта и графического интерфейса через сервис (+ 2 балла), <br/>
 +
* Чтение проверяемых текстов из интернета, из архива, обработка нескольких текстов за раз (+ 1 бал за каждый вариант).
  
 
=== Ориентировочное расписание занятий ===
 
=== Ориентировочное расписание занятий ===
 
Уточняется.
 
Уточняется.

Текущая версия на 16:25, 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 бал за каждый вариант).

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

Уточняется.