Машинное обучение 1/Группа 145 РС

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

Общая информация

Время для консультаций (по предварительной договоренности):

  • Понедельник 11:00 - 12:00, 15:00 - 16:00
  • Вторник 11:00 - 12:00, 15:00 - 16:00
  • Пятница 9:30 - 12:00, 16:30 - 17:30.

аудитория 623

Почта: alexeyum@gmail.com

Семинары

Материалы для повторения см. на главной странице курса

Семинар 1 (09.09). Вводные понятия. Инструменты numpy, pandas, matplotlib.

Упражнения на дом:

  • Сгенерируйте матрицу 5x5 со случайными числами от 0 до 1. Найдите индексы ячеек со значениями меньше 0.2.
  • Создайте матрицу 5x5 с числами, такими, что в ячейке (i, j) стоит число i+j. В задаче нельзя использовать циклы.
  • Постройте график функции exp(|2*x + 3|).
  • Пусть x, y - два вектора. Найдите проекцию вектора x на вектор y.

Семинар 2 (16.09). Векторное дифференцирование. Знакомство с sklearn.

Дополнительные упражнения на темы прошлого семинара: упражнения, titanic.csv

Семинар 3 (23.09). Предобработка: категории, пропуски, нормализация. Минимизация функции потерь.

Семинары 4 и 5 (07.10 и 08.10). Линейная классификация. Метрики качества, ROC, PR, AUC. Валидация. SVM.

Упражнения на дом (в случае затруднений см. тетрадку семинара 4 на главной курса).

  • Скачайте датасет для классификации спама: https://archive.ics.uci.edu/ml/machine-learning-databases/spambase/
  • Разделите выборку на обучение и тест (sklearn.cross_validation.train_test_split)
  • Обучите на нем логистическую регрессию (sklearn.linear_model.LogisticRegression), посчитайте различные метрики для вашего классификатора: правильность, точность, полноту (sklearn.metrics).
  • Постройте ROC-кривую и PR-кривую для этого классификатора, посчитайте для них AUC-значения.
  • Проделайте кросс-валидацию метода (sklearn.cross_validation.KFold)

Семинар 6 (14.10). Работа с текстом, TF-IDF, разреженные матрицы.

Упражнения на дом (в случае затруднений см. тетрадку семинара 6 на главной курса):

  • Даны разреженные матрицы A и B в одном из трех форматов: COO, CSR, CSC. Какое время потребуется для их перемножения в зависимости от форматов? Какая пара форматов самая оптимальная?
  • Дана разреженная матрица A и вектор z. Покажите, что если A представлена в формате CSR или CSC, то выражение Az можно вычислить эффективно.
  • Загрузите датасет отзывов о работе банков. Обозначьте отзывы с оценками 4-5 как положительные и 1-3 как отрицательные. Приведите тексты к нижнему регистру, уберите все символы, кроме кириллицы, превратите тексты в признаки с помощью TF-IDF. Обучите линейную регрессию на этих данных.
  • В предыдущем задании изучите, какие слова в наибольшей степени влияют на ответ.
  • * Проведите стемминг текстов с помощью nltk.stem.snowball.RussianStemmer() и еще раз проведите классификацию. Сравните результаты.