Программирование (python) для лингвистов

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

О курсе

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

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

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

Ассистент Елизавета Корнеева (Почта)

Практические занятия проходят по средам 9:00-10:20 + 2 занятия в четверг (смотрите расписание)

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

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

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

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

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

  1. Кормен. Алгоритмы: построение и анализ
  2. Bishop. Pattern Recognition and Machine Learning
  3. Jurafsky. Speech and Language Processing
  4. Barber. Bayesian Reasoning and Machine Learning


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

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


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

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

!!!

  1. Соблюдайте именование каталогов, классов и сигнатур функций! В противном случае автотесты их не подцепят и ваше решение не будет засчитано.
  2. Если явно не сказано, то в скрипте должен присутствовать только код класса/функции, без демонстрации их вызовов с какими либо аргументами.
  3. Если явно не сказано, в репозиторий вы грузите скрипты с раширением *.py или ноутбуки *.ipynb. (Но никак не архивы)
  4. Опоздание считается по последнему сданному заданию в домашней работе

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

Оценки

Семинары

Тема семинара презентация материалы семинара домашнее задание дедлайн
1 Объекто-ориентированное программирование notebook Задание 1 12.09.17 12:00
2 Паттерны проектирования & web mining, part 1 notebooks Задание 2 17.10.17 12:00
3 Тестирование и профилирование программ notebooks Задание 3 17.10.17 12:00
4 Алгоритм Рабина-Карпа notebooks Задание 4 10.10.17 12:00
5 Scientific libraries: Numpy, scipy, matplotlib notebooks
6 Scientific libraries: pandas, plotly notebooks
7 Linear Regression notes and task 18.10.17 12:00
8 Regularization in linear models
9 Classification with linear models data task 11.11.17 12:00
10 SVM
11 Word embeddings notebook datasets task_1 task_2 3.12.17 12:00
12 Decision trees. Random Forest notebook
13 Boosting notebook
14 Dimension reduction. PCA, SVD notebook
15 Clustering. Kmeans, DBSCAN, Agglomerative clustering notebook data task 22.12.2017 12.00
16 Topic modeing notebook task 24.01.2018 12.00