Методы автоматической обработки текстов (курс лекций, В.В.Китов)/2016
Материал из MachineLearning.
Содержание |
Описание
В спецкурсе "Методы автоматической обработки текстов" рассматриваются практические задачи работы с текстами используя язык программирования 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