Родитель
							
								
									004bfe838b
								
							
						
					
					
						Сommit
						bc29a5da9c
					
				@ -0,0 +1,67 @@
 | 
				
			||||
# Лабораторная работа №1. Бинарная классификация фактографических данных
 | 
				
			||||
 | 
				
			||||
## Цель работы
 | 
				
			||||
 | 
				
			||||
Получить практические навыки решения задачи бинарной классификации данных в среде Jupyter Notebook. 
 | 
				
			||||
Научиться загружать данные, обучать классификаторы и проводить классификацию. Научиться оценивать точность полученных моделей.
 | 
				
			||||
 | 
				
			||||
## Задание
 | 
				
			||||
 | 
				
			||||
1.  В среде Jupyter Notebook создать новый ноутбук (Notebook) 
 | 
				
			||||
2.	Импортировать необходимые для работы библиотеки и модули
 | 
				
			||||
3.	Загрузить данные в соответствие с вариантом 
 | 
				
			||||
4.	Вывести первые 15 элементов выборки (координаты точек и метки класса)
 | 
				
			||||
5.	Отобразить на графике сгенерированную выборку. Объекты разных классов должны иметь разные цвета.
 | 
				
			||||
6.	Разбить данные на обучающую (`train`) и тестовую (`test`) выборки в пропорции 75% - 25% соответственно.
 | 
				
			||||
7.	Отобразить на графике обучающую и тестовую выборки. Объекты разных классов должны иметь разные цвета.
 | 
				
			||||
8.	Реализовать модели классификаторов, обучить их на обучающем множестве. Применить модели на тестовой выборке, вывести результаты классификации:
 | 
				
			||||
 | 
				
			||||
	*	Истинные и предсказанные метки классов
 | 
				
			||||
	*	Матрицу ошибок (`confusion matrix`)
 | 
				
			||||
	*	Значения полноты, точности, f1-меры и аккуратности
 | 
				
			||||
	*	Значение площади под кривой ошибок (`AUC ROC`)
 | 
				
			||||
	*	Отобразить на графике область принятия решений по каждому классу
 | 
				
			||||
 | 
				
			||||
В качестве методов классификации использовать: 
 | 
				
			||||
 | 
				
			||||
	* Метод к-ближайших соседей (`n_neighbors` = {1, 3, 9})
 | 
				
			||||
	* Наивный байесовский метод
 | 
				
			||||
	* Случайный лес (`n_estimators` = {5, 15, 50})
 | 
				
			||||
 | 
				
			||||
9.	По результатам п.8 занести в отчет таблицу с результатами классификации всеми методами.
 | 
				
			||||
10. Изучить, как изменится качество классификации в случае другого разбиения выборки на обучающую и тестовую. Для этого повторить пункты 6, передав в параметр `random_state` новое значение, и пункты 8-9 дважды. 
 | 
				
			||||
11. По результатам трех экспериментов составить итоговую таблицу о качестве классификаци каждым методом, включив в нее значения полноты, точности, f1-меры, аккуратности и площади под кривой ошибок. 
 | 
				
			||||
Сделать выводы о наиболее подходящем методе классификации ваших данных
 | 
				
			||||
 | 
				
			||||
## Варианты заданий
 | 
				
			||||
 | 
				
			||||
Объем выборки для всех вариантов – `n_samples = 1000` объектов.
 | 
				
			||||
| Вариант     | 1     | 2     | 3     | 4     | 5     | 6     | 7     | 8     |
 | 
				
			||||
| :---        | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | 
				
			||||
| Вид классов | blobs | blobs | blobs | blobs | moons | moons | moons | moons |
 | 
				
			||||
| random_state| 34    | 28    | 41    | 23    | 41    | 23    | 77    | 15    |
 | 
				
			||||
| cluster_std | 1.5   | 4.5   | 3     | 5     | -     | -     | -     | -     |
 | 
				
			||||
| noise       | -     | -     | -     | -     | 0.25  | 0.3   | 0.25  | 0.2   |
 | 
				
			||||
| centers     | 2     | 2     | 2     | 2     | -     | -     | -     | -     |
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
| Вариант     | 9     | 10    | 11    | 12    | 
 | 
				
			||||
| :---        | :---: | :---: | :---: | :---: | 
 | 
				
			||||
| Вид классов | classification | classification | classification | classification |
 | 
				
			||||
| random_state| 78    | 58    | 15    | 23    | 
 | 
				
			||||
| calss_sep   | 0.45  | 0.7   | 0.6   | 0.35  |
 | 
				
			||||
 | 
				
			||||
Для всех вариантов, использующих для генерации `make_classification`, дополнительные параметры: `n_features=2`,  `n_redundant=0`,  `n_informative=1`, `n_clusters_per_class=1`,
 | 
				
			||||
 | 
				
			||||
## Контрольные вопросы
 | 
				
			||||
 | 
				
			||||
1.	Постановка задачи классификации данных. Что такое бинарная классификация?
 | 
				
			||||
2.	Общий алгоритм решения задачи классификации данных.
 | 
				
			||||
3.	Чем отличаются обучающая и тестовая выборки? Какие существуют способы формирования обучающей и тестовой выборок?
 | 
				
			||||
4.	Как рассчитываются значения полноты и точности классификации?
 | 
				
			||||
5.	Как рассчитывается значение площади под кривой ошибок?
 | 
				
			||||
6.	Что показывает и как рассчитывается матрица ошибок?
 | 
				
			||||
7.	Алгоритм и особенности метода к-ближайших соседей.
 | 
				
			||||
8.	Алгоритм и особенности метода случайного леса.
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
											
												
													Различия файлов скрыты, потому что одна или несколько строк слишком длинны
												
											
										
									
								@ -0,0 +1,36 @@
 | 
				
			||||
# Основы анализа текстовых данных
 | 
				
			||||
 | 
				
			||||
## Лекции
 | 
				
			||||
 | 
				
			||||
| Дата       |Лекция | 
 | 
				
			||||
| :---:      | :---  | 
 | 
				
			||||
| 08.02.2023 | Вводная лекция | 
 | 
				
			||||
| 13.02.2023 | Класификация данных. Основные понятия | 
 | 
				
			||||
| 20.02.2023 | to be soon... | 
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
## Лабораторные работы
 | 
				
			||||
 | 
				
			||||
### Лабораторная работа №1
 | 
				
			||||
 | 
				
			||||
| Группа     | Дата       | 
 | 
				
			||||
| :---       | :---:      | 
 | 
				
			||||
| А-01-19    | 13.02.2023 | 
 | 
				
			||||
| А-03-19    | 08.02.2023 | 
 | 
				
			||||
 | 
				
			||||
* [Задание](OATD_LR1.md) 
 | 
				
			||||
* [Методические указания](OATD_LR1_metod.ipynb)
 | 
				
			||||
* [Установка Jupyter Notebook](start_notebook.md)
 | 
				
			||||
 | 
				
			||||
### Лабораторная работа №2
 | 
				
			||||
 | 
				
			||||
| Группа     | Дата       | 
 | 
				
			||||
| :---       | :---:      | 
 | 
				
			||||
| А-01-19    | 27.02.2023 | 
 | 
				
			||||
| А-03-19    | 20.02.2023 | 
 | 
				
			||||
 | 
				
			||||
### Лабораторная работа №3
 | 
				
			||||
 | 
				
			||||
### Лабораторная работа №4
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
| 
		 После Ширина: | Высота: | Размер: 432 KiB  | 
@ -0,0 +1,22 @@
 | 
				
			||||
# Установка Jupyter Notebook 
 | 
				
			||||
 | 
				
			||||
## Локально
 | 
				
			||||
 | 
				
			||||
Скачать и установить python https://www.python.org/downloads/, не забыв поставить галочку Add to PATH на самом первом экране
 | 
				
			||||
 | 
				
			||||

 | 
				
			||||
 | 
				
			||||
В командной строке Windows по очереди выполнить установку пакетов:
 | 
				
			||||
 | 
				
			||||
```
 | 
				
			||||
python -m pip install --upgrade pip
 | 
				
			||||
python -m pip install notebook
 | 
				
			||||
python -m pip install sklearn
 | 
				
			||||
python -m pip install matplotlib
 | 
				
			||||
```
 | 
				
			||||
 | 
				
			||||
Готово. Запускать Jupyter можно из командной строки командой `jupyter notebook`. Рабочей папкой будет та, из которой данная команда была выполнена. 
 | 
				
			||||
 | 
				
			||||
## Онлайн
 | 
				
			||||
 | 
				
			||||
Допустимо вместо локальной установки Jupyter использовать [Google colab](https://colab.research.google.com/?hl=ru)
 | 
				
			||||
					Загрузка…
					
					
				
		Ссылка в новой задаче