<hr> Общая информация
Срок сдачи: 19 апреля 2017, 23:59 <br>
При отправлении ДЗ на почту hse.minor.dm+2@gmail.com
указывайте фамилию в названии файла, а тему письма оформляйте в следующем виде:<br>
** [ИАД-2] {Фамилия} {Имя} ДЗ{Номер} **<br>
Сопровождайте ваш код изображеними, комментариями и выводами. <br> Иммейте ввиду, что на некоторые задачи нет единственного верного и полного ответа. Чем больше информации вы сможете извлечь, аргументированных выводов сформулировать, тем лучше.
Используйте данный Ipython Notebook при оформлении домашнего задания. <hr>
Чтобы узнать свой вариант, введите Вашу фамилию на русском языке в соответвующее поле ниже и запустите ячейку:
surname = u"Иванов" #Ваша фамилия
variant = (hash(surname.lower()) % 2 + 1)
print "Ваш вариант - ", variant
Ваш вариант - 2
Варианты
random_state = 123 # для всех объектов/методов/моделей
# Параметры логистической регрессии
penalty="l2", fit_intercept=True, max_iter=100, C=1, solver="lbfgs", random_state=12345
# Ваш код
Повторите решение задачи 1, но с ипользованием k-folds (k=4) для разделения исходных данных, обучения и тестирования.
random_state = 123 # для всех объектов/методов/моделей
# Ваш код
1. Используя данные из задачи 1, разбейте обучающее подмножество (train) с использованием k-folds (k=4)
2. Обучите и протестируйте на разбитом обучающем подмножестве классификаторы со следующими параметрами:
K-ближайших соседей
ns = np.arange(1, 150, 20) # количество соседей
Логистическая регрессия
cs = np.logspace(-2, 10, 8, base=10) # параметр регуляризации
Мультиномиальный наивный Байес
alphas = np.logspace(-4, 1, 8, base=10) # сглаживающий параметр
3. Постройте графики (параметры модели)-(доля правильных классификаций) при обучении и валидации
4. Выберите лучшую модель для каждого метода, используя значение качества классификации (использовать долю правильных классификаций)
5. Выбранные модели обучите на обучающем подмножестве (train) и протестируйте на тестовом (test). Определите время обучения и предсказания (см. задачу 1 п. 6)
6. Повторите шаги 2-4 для n-gram=2
7. Выведите итоговые данные по всем методам для лучших моделей (метод, n-gram, значение параметра модели, время обучения, время предсказания, доля правильных классификаций)
8. Сделайте выводы по полученным результатам (преимущества и недостатки методов)
random_state = 123 # для всех объектов/методов/моделей
# Ваш код
Как будет меняться качество классификации для обозначенных ранее методов при использовании FeatureHasher (или HashingVectorizer) из пакета sklearn перед TF-IDF преобразованием, если
n_features = np.logspace(1, 5, 5, base=10) # количество признаков
non_negative=True
Можно воспользоваться GridSearchCV