Программирование (python) для лингвистов — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Семинары)
(Оценки за домашние задания)
Строка 45: Строка 45:
  
 
=== Оценки за домашние задания ===
 
=== Оценки за домашние задания ===
 +
[https://docs.google.com/spreadsheets/d/1SUG3UjWCez6beNukIFP6sRMnKXBs-jnJaNyh4Ateiu4 оценки]
  
 
=== Экзамен ===
 
=== Экзамен ===

Версия 15:44, 8 октября 2018

О курсе

Курс читается для студентов лингвистов 4-го курса факультета гуманитарных наук.

Проводится с 2017 года.

Преподаватель: Денис Литвинов (Почта, Telegram )

Ассистенты Елизавета Корнеева (Почта, Telegram ), Егор Соловьев (Почта, Telegram )


Правила выставления оценок

итоговая оценка = 0.7*накопленная + 0.3*экзамен

накопленная оценка — средняя по всем домашним заданиям.

  1. При вычислении накопленной оценки округление не производится
  2. Домашнее задание оценивается по 10-балльной шкале.
  3. В случае пропуска дедлайна за каждый пропущенный день снимается 0.5 балла в течении первых 6 дней. Затем, за каждый пропущенный день снимаются по 1 баллу.
  4. Дедлайны для каждой домашней работы указываются отдельно.
  5. В оценке домашнего задания оцениваются: работоспособность программы, использование изложенных средств и методов.
  6. При оценивании программы в первую очередь обращается внимание на то, насколько её работа соответствует требованиям, описанным в задании. Программа, не запускающаяся из-за синтаксических ошибок, не может получить оценку выше 4 баллов. Баллы могут сниматься, в частности, за неточное выполнение задания и отсутствие разбора случаев, из-за которых при исполнении программы может произойти ошибка. Так же оценивается оптимальность решенения (в смысле времени работы и потребляемой памяти). Во вторую очередь оценивается стиль кода.
  7. При обнаружении плагиата в домашнем или контрольном задании это задание получает оценку 0 баллов.
  8. Экзамен проводится в письменной форме.

Рекомендуемая литература

  1. Кормен. Алгоритмы: построение и анализ
  2. Bishop. Pattern Recognition and Machine Learning
  3. Christopher Manning. Foundations of Statistical Natural Language Processing


Программные средства

  1. редактор кода sublime text / notepad++ / PyCharm
  2. jupyter notebook
  3. numpy, scipy, pandas, matplotlib, seaborn, scikit-learn, gensim, lightgbm, pytorch


Правила сдачи домашних заданий

Домашние задания сдаются по умолчанию в репозиториях, указанных в форме (пожалуйста, пройдите этот опрос)

  1. Домашнее задание выполняется в jupyter notebook, если явно не указано иное.
  2. Не стоит выкладывать в репозиторий запакованные файлы.
  3. Соблюдайте именование каталогов, классов и сигнатур функций, если они явно указаны. В противном случае автотесты их не подцепят и ваше решение не будет засчитано.
  4. Опоздание считается по последнему сданному заданию в домашней работе

Оценки за домашние задания

оценки

Экзамен

Экзамен проходит в письменной форме и сотоит из 3 частей

  1. Решение задачи машинного обучения на ноутбуке
    1. Необходимые библиотеки numpy, scipy, pandas, scikit-learn, nltk. Проверьте что они у вас стоят, и не слишком старой версии.
    2. Задачи по мотивам домашних работ + обработка текстовых данных.
  2. Вопрос по теории.
    1. Написать формулы где они есть.
  3. вопрос по применению теории к решению практических задач
    1. По мотивам теоретических вопросов
    2. e.g. Каким требованиям должна удовлетворять метрика качества, чтобы ее напрямую можно было оптимизировать с помощью SGD?

вопросы к экзамену

Дополнительные материалы для подготовки:

  1. курс Евгения Соколова по машинному обучению на ФКН
  2. Peter Flatch. Machine Learning
  3. Bishop. Pattern Recognition and Machine Learning
  4. Scikit-learn tutorials and User guide
  5. Hidden Markov Models Fundamentals

Семинары

Тема семинара материалы семинара домашнее задание дедлайн
1 Теория алгоритмов. Фильтр Блума. Алгоритм Рабина-Карпа seminar_1 assignment_1 18.09.2018 12:00
2 Тестирование программ. Визуализация. Избранные главы теории вероятностей и линейной алгебры. seminar_2
3 Основные понятия машинного обучения seminar_3 assignment 16.10.2018 12:00