Часто люди сбиваются с толку и тратят много времени на то, чтобы выбрать лучший алгоритм для решения возникшей проблемы. Здесь я хотел бы упомянуть некоторые интересные техники / хаки и проблемы, которые возникают в сценариях в реальном времени. Вот так……………
Привет, мир!!!!! . Я один из претендентов на науку о данных, изучаю и следую лучшим практикам науки о данных. Я изучил и реализовал множество классических алгоритмов, таких как K-Nearest Neighbours, Naive Bayes, Linear, Logistic, SVM, Decision Trees и Random Forests.
Я выбрал несколько важных критериев / аспектов, по которым вы, люди, решаете при работе с деревьями решений, подходит ли выбранный алгоритм для решения проблемы или нет?
Давай начнем!!
Вступление:
Здесь я дам краткое и небольшое введение в деревья решений.
Деревья решений - один из самых популярных алгоритмов, используемых в машинном обучении, в основном для классификации, но также и для задач регрессии. Наш мозг работает как дерево решений каждый раз, когда мы задаем себе вопрос перед тем, как принять решение. Например: на улице облачно? Если да, я принесу зонтик.
При обучении набора данных для классификации переменной идея дерева решений состоит в том, чтобы разделить данные на более мелкие наборы данных на основе определенного значения функции до тех пор, пока все целевые переменные не попадут в одну категорию. В то время как человеческий мозг решает выбрать «функцию разделения» на основе опыта (т. Е. Облачного неба), компьютер разбивает набор данных на основе максимального получения информации. Давайте определим простую задачу и перейдем к некоторым вычислениям, чтобы понять, что это означает!
Наилучшие и наихудшие случаи:
Здесь я перечислил некоторые критерии, по которым модели ведут себя хорошо, и наоборот, и это применимо как к методам классификации, так и к методам регрессии.
Если вы хотите внедрить дерево решений для своей проблемы, рассмотрите следующие случаи:
- Несбалансированные данные: Деревья решений не будут работать лучше для несбалансированных данных, поскольку они имеют дело с «расчетами энтропии, примесей Джини и получения информации».
Решением указанной выше проблемы является использование статистических концепций, таких как повышающая или понижающая дискретизация. мы также можем использовать веса классов.
2. Большие измерения: если у вас большие измерения, каждый узел разбивается и оценивает вычисления усиления. За это время сложность обучать D.Trees возрастает.
Решение для вышеупомянутых хаков с вашими данными. Например, если у вас есть категориальные данные, избегайте использования One-Hot Encoding (OHE). OHE создает дополнительные функции, если у вас есть функция и размеры будут значительно. Преобразуйте категориальные данные в числовые характеристики, используя условные вероятности.
3. Матрица подобия: Если вам дана матрица подобия, деревья решений не могут работать, поскольку они не могут оценивать энтропию. Он явно нуждается в функциях.
4. Классификация на несколько классов: для классификации на несколько классов у нас всегда есть «Один против остальных». Деревья решений естественно возникают / работают для мультиклассовой классификации.
5. Преобразование функции: преобразование логической функции встроено в дерево решений (см. Набор данных iris: https://scikitlearn.org/stable/modules/tree.html).
6. Выбросы: если глубина дерева увеличивается, шансы получить выбросы будут больше, и возникает проблема переобучения, в результате чего дерево станет нестабильным.
7. Интерпретируемость: Интерпретируемость высокая. С другой стороны, мы можем предсказать его результат, потому что внутренняя модель будет следовать вложенным условиям if-else.
8. Важность функции: у нас всегда есть прямой выбор функций. Но в Дереве решений есть взлом. Для каждой функции вычислите уменьшение примеси энтропии / джини и получение информации. Вычислить нормализованное суммарное уменьшение энтропии из-за этой функции. Если функция много раз встречается в Дереве решений и если она несколько раз снижает энтропию, то функция импортируется.
Заключение:
Вышеупомянутые реальные случаи следует учитывать при работе с деревьями решений, чтобы добиться наилучших результатов для вашей проблемы.
Удачного обучения :)