Это 15-й день моего участия в ноябрьском испытании обновлений. Узнайте подробности события:Вызов последнего обновления 2021 г.
Алгоритм дерева решений -
DecisionTreeClassifier(criterion='entropy')
критерий - критерий
энтропия: на основе информационной энтропии - алгоритма ID3 фактический результат мало чем отличается от C4.5
Джини: коэффициент Джини - алгоритм CART
Ключевые процессы для прогнозирования выживания
-
этап подготовки
- Исследование данных — анализ качества данных
- info - основная информация о таблице данных: количество строк, количество столбцов, тип данных каждого столбца, целостность данных
- описать - Статистика таблицы данных: общее, среднее, стандартное отклонение, мин., макс.
- описать (включить = [ 'O' ] Общая ситуация строкового типа (нечисловой)
- head - первые несколько строк данных
- хвост - последние несколько строк данных
- Чистые данные
- Заполните пропущенные значения — средняя/самая высокая частота
df.fillna(df['XX'].mean(), inplace = True)
df.fillna(df['XX'].value_counts(), inplace = True)
- Заполните пропущенные значения — средняя/самая высокая частота
- Выбор признаков — уменьшение размерности данных для облегчения последующих операций классификации
- Отфильтруйте бессмысленные столбцы
- Отфильтровать столбцы с большим количеством пропущенных значений
- Поместите оставшиеся функции в вектор признаков
- Преобразование данных - символьный столбец преобразуется в числовой столбец, что удобно для последующих операций - класс DictVectorizer для преобразования
DictVectorizer: символьное преобразование чисел 0/1 для представления- создать конвертер
devc = DictVectorizer(sparse = False) - sparse=False означает не использовать разреженную матрицу, разреженная матрица означает представление ненулевых значений по положению
Один из вариантов — сделать категории более справедливыми и не иметь приоритета друг над другом. - Вызовите метод fit_transform()
to_dict(orient='record') - преобразовать в форму списка
- создать конвертер
- Исследование данных — анализ качества данных
-
стадия классификации
- модель дерева решений
1. Импортируйте модель дерева решений- Сгенерировать дерево решений
- Подгонка генеративного дерева решений
- Оценка модели и прогноз
- Predict — дерево решений выводит результаты прогнозирования
- оценивать Известное прогнозируемое значение и истинный результат — clf.score (функция, метка результата) Неизвестен истинный результат прогноза – K-кратная перекрестная проверка – cross_val_score
- Визуализация дерева решений
- модель дерева решений
-
Фаза рисования — GraphViz
- Сначала установите графвиз
- Импорт пакета graphviz - импорт графвиза
- Импортировать export_graphviz в sklearn
- Сначала используйте export_graphviz, чтобы обойти данные, которые будут отображаться в модели дерева решений.
- Затем используйте graphviz, чтобы получить источник данных
- Отображение данных
K-кратная перекрестная проверка
Берем большую часть выборок для обучения, небольшое количество используется для валидации классификатора - делаем K перекрестной валидации, каждый раз отбираем K часть данных для валидации, остальные используем как тренировку, по очереди K раз, берем среднее
-
Разделите набор данных поровну на K равных частей
-
Используйте 1 данные в качестве тестовых данных, а остальные — в качестве обучающих данных.
-
Рассчитать точность теста
-
Повторите шаги 2 и 3, используя разные наборы тестов.