Анализ неструктурированных данных — различия между версиями
(→Система оценок) |
Katya (обсуждение | вклад) (→Используемые библиотеки) |
||
Строка 133: | Строка 133: | ||
# pymorphy2 [https://pymorphy2.readthedocs.io/en/latest/ (link)] | # pymorphy2 [https://pymorphy2.readthedocs.io/en/latest/ (link)] | ||
# pymystem3 [https://github.com/Digsolab/pymystem3 (link)] | # pymystem3 [https://github.com/Digsolab/pymystem3 (link)] | ||
+ | # readability [https://github.com/buriy/python-readability (link)] |
Версия 11:34, 26 сентября 2017
Содержание
О курсе
Курс читается для студентов 3-го и 4-го курсов ПМИ ФКН ВШЭ в 1-2 модулях.
Лекторы: Петр Алексеевич Ромов, Екатерина Леонидовна Черняк
Лекции проходят по вторникам, 15:10 – 16:30 , ауд. 509.
Полезные ссылки
Репозиторий с материалами на GitHub: https://github.com/HSE-NLP
Сдача домашних заданий по электронной почте: amilinguaHW@gmail.com
telegram: https://t.me/nlp_hse
Семинары
Группа | Преподаватель | Расписание |
---|---|---|
АДИС | Дмитрий Фролов | вторник, 18:10 – 19:30, ауд. 501 |
БПМИ141 МОП | Анна Шишкова | четверг, 13:40 – 15:00, ауд. 322 |
БПМИ142 МОП | Мурат Апишев | четверг, 10:30 – 11:50, ауд. 322 |
Дата выдачи/сдачи проектных заданий
TBA
Как писать отчёт
1) Содержание отчёта. Вне зависимости от того, пишете ли вы отчёт в latex, или в jupyter notebook или ещё где-то, нормальный отчёт должен включать в себя:
— Краткую постановку задачи и формулировку задания
— Описание минимума необходимой теории и/или описание используемых инструментов
— Подробное пошаговый рассказ о проделанной работе
— Аккуратно оформленные результаты
— Внятные выводы
Все эти пункты долны быть чётко отмечены заголовками, если они слишком велики, то можно использовать подзаголовки. Словом, читатель не должен тратить время на навигацию.
2) Стилистика. Отчёт —- это несколько формальный текст. Он не пишется от первого лица. В нём не надо рассказывать про свою криворукость, про то, как красиво поют птички за окном и т.п. Не надо обращаться к читателю (особенно на "ты", среди вас уже есть такие "отличившиеся"), ни в тексте, ни в комментах к коду (если это ноутбук). Комментарии к коду, кстати, лучше писать на английском.
Текст не должен содержать миллиарда опечаток и должен удовлетворять хоть каким-то минимальным стилистическим требованиям. Русский язык богат синонимами, и этим нужно пользоваться. Вот такие вещи писать НЕ надо:
"Самое важное улучшение было в улучшении Prior Model (путь улучшения тоже взят из Word Alignment Models")."
Слова в предложениях должны быть согласованными.
3) Если в отчёте (презентации) фигурируют картинки из сети, они должны быть в тему. И к ним надо обязательно ставить маленькую подпись с указанием источника, или же прописать его явно в тексте.
Подсказка (просто на всякий случай): задание делается гораздо качественнее и аккуратнее, если его не откладывать на последний вечер;)
Система оценок
Результирующая оценка рассчитывается по формуле:
Oитоговая = 0.8 * Oнакопл + 0.2 * Оэкз
Накопленная оценка рассчитывается по формуле:
Oнакопл = 0.4 * Oпроект1 + 0.4 * Oпроект2 + 0.2 * (Одз + Осем) / 2
Программа
Неделя 1 (4-10 сентября)
Лекция (Е. Черняк): Обзор курса: мастер-классы, кейсы, проекты. Введение в автоматическую обработку текстов. (слайды)
Семинар: Библиотека nltk (слайды и дз) (код с семинара)
Неделя 2 (11-17 сентября)
Лекция (П. Ромов): Форматы данных, способы хранения, принципы работы интернета. Краулинг. Regexp. Unicode. (слайды)
Семинар: Библиотеки lxml, beautifulsoup, scrapy. Задание для группы 3-4 курс, вечер: (ссылка) (дедлайн на все 23.59 14.09, делается и присылается индивидуально!). (слайды с семинара)
Неделя 3 (18-24 сентября)
Лекция (Е. Черняк): Морфологический анализ, основные задачи и подходы. Стеммер Портера, поиск по словарю, скрытые цепи Маркова. Современные задачи морфологического анализа. (слайды)
Семинар: SENNA, Томита-парсер, отношения между словами. Задание для группы 3-4 курс, вечер: (ссылка), слайды семинара 19.09 (ссылка). Задание для БПМИ142 МОП (ссылка). (дедлайн на все 23.59 21.09, делается и присылается индивидуально!). (слайды с семинара вместе с заданием)
Неделя 4 (25 сентября – 1 октября)
Лекция (приглашённый лектор Иван Смуров): Синтаксический анализ (syntactic parsing) - одна из классических задач NLP, заключающейся в построении по последовательности текста соответствующего ей синтаксического разбора. Задача имеет продолжительную и богатую историю и решалась с помощью различных методов - от вероятностных контекстно-свободных грамматик до нейросетей с использованием sequence-to-sequence архитектур. На лекции будет рассказано о популярном в литературе подходе - использованию transition-based парсеров. Этод подход, восходящий к shift-reduce анализаторам классических логик, был впервые использован в применении к задаче синтаксического анализа Й. Нивре в 2003 году. В 2014 году метод был адаптирован для использования нейросетей Д. Ченом и К. Маннингом из Стенфордского университета и, наконец, в 2016 он послужил основой для популярного парсера SynaxNet, разработанного в Google.
О лекторе: Иван Смуров – сотрудник кафедр Алгоритмов и Технологий Программирования и Компьютерной Лингвистики МФТИ, разрабатчик научно-исследовательского отдела компании ABBYY. Является специалистом по машинному обучению, компьютерной и вычислительной лингвистике, математической логике. Область основных интересов – обработка текстов на естественных языках.
Рекомендуемые ресурсы
На английском
- Jurafsky & Martin (link)
- Курс Лауры Каллмайер по МО для АОТ (link)
- Курс Нильса Раймерса по DL для АОТ (link)
- Курс в Оксфорде по DL для АОТ (link)
На русском (и про русский, в основном)
- НКРЯ (link)
- Открытый корпус (link)
- Дистрибутивные семантические модели для русского языка (link)
- Морфология (link)
- Синтаксис (link)
- Томита-парсер (link)
- Все на свете: (mathlingvo), (nlpub)
Ссылка на дополнительную литературу:
- [1] Books on natural language processing
Литература
- Manning, Christopher D., and Hinrich Schütze. Foundations of statistical natural language processing. Vol. 999. Cambridge: MIT press, 1999.
- Martin, James H., and Daniel Jurafsky. "Speech and language processing." International Edition 710 (2000): 25.
- Cohen, Shay. "Bayesian analysis in natural language processing." Synthesis Lectures on Human Language Technologies 9, no. 2 (2016): 1-274.
- Goldberg, Yoav. "Neural Network Methods for Natural Language Processing." Synthesis Lectures on Human Language Technologies 10, no. 1 (2017): 1-309.