### Задание 1. По данным о пассажирах Титаника решить задачу классификации с помощью дерева решений, в которой по различным характеристикам пассажиров требуется найти у выживших пассажиров два наиболее важных признака из трех рассматриваемых. Вариант 1: Pclass,Name,Sex. 2. По данным курсовой работы с помощью дерева решений решить выбранную задачу: классификация - зависимость категории цены от всех остальных факторов, оценка результата и отбор наиболее значимых признаков. ### Запуск программы Файл lab3.py содержит и запускает программу, аргументов и настройки ~~вроде~~ не требует. ### Описание программы Программа состоит из двух частей: 1. Она считывает файл с данными по пассажирам "Титаника", признаки "класс", "имя", "пол" и запись о том, выжил ли пассажир. Данные предобрабатываются: запись о поле кодируется (ж - 0, м - 1), запись об имени кодируется (Tfidf). После этого дерево решений тренируется на данных и результаты выводятся в консоль. 2. Она считывает файл с данными сбербанка по рынку недвижимости. Далее данные предобрабатываются: названия районов кодируется (Tfidf), нечисловые записи цифровизируются, запоняются нулевые записи, записи подразделяются на классы. После этого на данных обучается дерево решений и результат выводится в консоль и на форму. Поскольку признаков слишком много, выводимые результаты ограничены восемью наиболее значимыми. ### Результаты тестирования По результатам тестирования, можно сказать следующее: По первой задаче: * Дерево решений показывает неплохие результаты, около 70-75%. * Однако оценка важности признаков даёт абсолютно неверный результат: наиболее значимым признаком назначается имя пассажира. Это значит, что кодировка не подходит для правильной обработки данных. Возможные решения: обнуление или исключение признака как аналитически очевидно незначимого. * Помимо неправильной оценки роли имени, пол определяется более чем в два раза более значимым, нежели класс. Действительная статистика (среди спасшихся пассажиров 74% женщин и детей (из которых многие также были мужского пола) и 26% мужчин, 60% первого класса, 44% - второго, 25% - третьего) скорее подтверждает правильность этого вывода. По второй задаче: * Дерево решений показывает неплохие результаты, около 70-75%. * Оценка важности признаков показывает наиболее важным признаком площадь недвижимости, что скорее всего верно. * После площади с небольшим отрывом идёт количество спортивных объектов в округе. Это неверно хотя бы потому, что в данных присустствуют коррелирующие признаки - площадь жилого пространства и другие. К тому же доступна информация по действительному ранжированию. * Дальнейшие оценки содержат как правильные, так и неправильные признаки: этаж, количество этажей в доме, район - действительно значимые признаки, но они перемешаны с незначимыми. Итого. Дерево решений даёт неплохие результаты при классификации. Однако для задач регрессии не подходят, т.к. неверно определяют значимые признаки. При работе также следует тщательнее предобрабатывать данные, в особенности малозначащие текстовые - предложенные методы кодирования показали себя неэффективно на лабораторных данных. Пример консольных результатов: >Titanic data analysis >model score: 0.7777777777777778 >feature importances: {'Pclass': 0.1287795817634186, 'Sex': 0.3381642167551354, 'Name': 0.533056201481446} >Sberbank data analysis >model score: 0.7162629757785467 >feature importances: >full_sq - 0.1801327274709341 >sport_count_3000 - 0.14881362533480907 >floor - 0.03169232872469085 >power_transmission_line_km - 0.027978416524911377 >timestamp - 0.020092007662845194 >max_floor - 0.019985442431576052 >cafe_count_5000_price_2500 - 0.019397048405749438 >sub_area - 0.017477163456413432