Разработка сервиса классификации и извлечения информации из документов (командный проект)

Материал из Wiki - Факультет компьютерных наук
Версия от 13:18, 4 октября 2017; GalinaKaleeva (обсуждение | вклад)

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



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

В рамках данного проекта студентам предлагается участвовать в разработке прототипа продукта/сервиса который осуществляет анализ сканов документов произвольного формата (PDF файлы) для распределения их по заданным классам и извлечения из них необходимой информации. Несмотря на наличие подобных продуктов на рынке, большинство существующих продуктов ориентированы на использование заранее определенных шаблонов на извлечение информации (например, шаблон налоговой декларации или счета-фактуры). Разрабатываемый продукт применяет модели построенные на алгоритмах машинного обучения, которые ориентируются на формирование обучающей выборки на основе прошлой истории классификации документов и извлечения информации вручную. Это позволяет настроить прототип на корректную работу с инструментами автоматически в процессе обучения и без дополнительной настройки шаблонов документов.

Чему научатся студенты? Что самое интересное в проекте?

-Формулировать постановку задачи

-Проводить разработку в изменяющихся условиях и требованиях

-Участвовать в проекте по разработке прототипа продукта и выводе продукта на рынок (в команде, не индивидуально!)

-Применять алгоритмы машинного обучения для статистической обработки финансовой информации

-Применять современные техники обработки текстовой информации и извлечения информации (IE - Infromation Extraction)

Организация работы (Как студенты будут работать в команде?)

Организация разработки и взаимодействие на проекте будет построено по Scrum:

- Все студенты участники Scrum команды

- Product Owner от OpenTRM

- Scrum Master от OpenTRM

Детали и подробности организации на вводных занятиях.

Компоненеты (Из каких частей состоит проект?)

1. Знакомство с существующими наработками

2. Формирование бизнес-требований, обсуждение и дизайн прототипа продукта (MVP, MLP)

3. Планирование и проведение спринтов по разработке прототипа продукта

4. Проведение демонстраций

5. Документирование и закрытие проекта

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

Python/C++

DB: PostgreSQL/Oracle/Microsoft SQL/Mongo DB

ML: Keras/Theano(TensorFlow)/SciKit-Learn

Text processing: NLTK

Собственные библиотеки обработки данных

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

- Хорошая теоретическая подготовка (Линейная Алгебра, Методы оптимизации, Математическая статистика ...)

- Готовность брать на себя ответственность и умение работать в команде (внимание! это НЕ индивидуальный проект!)

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

- Знание SQL желательно

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

- Основы управления проектами и работа в команде (Классическая организация работ - Water Fall, Agile, Scrum, Kanban, разбор кейсов, мастер классы)

- Основы теории нейронных сетей (Модель Маккалока-Пиитса, Персептрон Розенблатта, Многослойная нейронная сеть, Алгоритм обучения многослойной нейронной сети методом обратного распространения ошибки)

- Основы проведения презентации

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

4-5: Участие в проектных семинарах, планировании и оценки задач, подготовка прототипа и необходимой документации согласно выбранной задаче;

6-7: Участие в разработке прототипа до уровня MVP; Проведение демонстрации части функционала прототипа ( каждый студент). Хотя бы один раз за проект коэффициент Scrum команды > 0.5

8-10: Хотя бы один раз за проект коэффициент Scrum команды > 0.8

Похожие проекты

http://wiki.cs.hse.ru/Анализ_статистической_информации_финансовых_рынков_с_использованием_алгоритмов_машинного_обучения_и_нечеткой_логики_(командный_проект)

Контактная информация

E-mail: ivan.lisenkov@gmail.ru

Телефон: +7(916)687-87-06