Методы автоматической обработки текстов (курс лекций, В.В.Китов)/2016
Материал из MachineLearning.
Содержание | 
Объявления
19 мая будут презентации прикладных проектов по спецкурсу.
Формат презентации: 15 минут+5 минут ответы на вопросы.
Структура презентации:
- постановка задачи, визуализация особенностей данных
 - baseline решение (наиболее простое и логичное, или которым все пользуются) - описание, точность
 - ваше решение - описание, точность
 - альтернативные решения, которые вы пробовали - описание, точность
 - пару слов: что еще можно можно было бы улучшить и попробовать
 
Описание
В спецкурсе "Методы автоматической обработки текстов" рассматриваются практические задачи работы с текстами используя язык программирования Python, математические библиотеки и библиотеки по работе с текстами NLTK, а также другие средства, нацеленные на работу с русским языком. Целью спецкурса является познакомить слушателей с основными задачами по работе с текстами и дать навыки практической работы.
Курс длится в течение весеннего семестра 2016 года. От студентов предполагается знание языка Python с научными библиотеками numpy, scipy, matplotlib, pandas, а также знакомство с основами статистики и основами машинного обучения.
Оценивание
Оценка за курс выставляется на основе выполнения практического проекта, реализующего согласованную с преподавателем задачу автоматической обработки текстов. Варианты задачи:
- лингвистическое исследование различий диалекта языка для разного времени, разных авторов и разных источников информации
 - построение классификатора текстов по темам, авторам, жанрам и т.д.
 - эмоциональный анализ отзывов
 - извлечение тем из коллекции текстов
 - автоматическая суммаризация текстов
 - извлечение объектов определенного типа (персоны, географические названия и др.) из текста и определение отношений между ними
 
и другие темы, которые использовали бы методы, изучаемые на занятиях, и имеющие элементы научной новизны.
Задание
Если вы не определились и не согласовали ваш проект по анализу текстов, вам предлагается поучастовать в каждом из 2х kaggle соревнований:
1. Определение зарплаты по описанию вакансии в интернете
2. Определение страны происхождения рецепта
Даже если у вас есть собственный согласованный со мной проект, участие хотя бы в одном из этих соревнований все равно рекомендуется - это интересно, это расширит ваш кругозор и даст дополнительные бонусы при определении итоговой оценки за спецкурс.
Работа с текстом - рекомендации.
Классификация текстов - обзор.
Туториалы
- Короткие базовые демонстрации по работе с python, jupiter notebook, numpy, scikit-learn и т.д.
 - A Crash Course in Python for Scientists
 - Numpy
 - Matplotlib
 - Pandas
 - Scikit-learn
 - Работа с текстом в scikit-learn
 - Scipy Lecture Notes
 
Материалы семинаров
ipynb скрипты расположены здесь. Поскольку большинство примеров бралось из Natural Language Processing with Python. и scikit-learn documentation, то рекомендуется обращаться к этим источникам за деталями.
Материалы
Основной учебник этого спецкурса: Natural Language Processing with Python. Stewen Bird et. al. 2-nd edition. 2016.
Speech and Language Processing. Dan Jurafsky and James H. Martin. 2-nd edition. 2009.
Питон и необходимые библиотеки
- Anaconda - дистрибутив питона с предустановленными научными библиотеками
 - библиотека NLTK по работе с текстами
 - A Crash Course in Python for Scientists
 - Numpy
 - Matplotlib
 - Scipy Lecture Notes
 - Pandas
 - Scikit-learn
 
Дополнительные библиотеки
- Морфологический анализатор от Яндекса
 - Библиотека морфологической работы с русскими текстами PyMorphy
 - Каталог утилит для работы с русскими и английскими текстами
 
Интересные ссылки
Национальный корпус русского языка - всевозможные коллекции русских текстов с разметкой
Генератор случайных текстов по заданной тематике
Вопросно-ответная система WolframAlpha
Каталог старых газет на русском
Каталог старых газет от Google

