Деревья решений против нейронных сетей

20

Я внедряю структуру машинного обучения, чтобы попытаться предсказать мошенничество в финансовых системах, таких как банки и т. Д. Это означает, что существует много разных данных, которые можно использовать, например, для обучения модели. номер карты, имя владельца карты, сумма, страна и т. д.

У меня проблемы с определением, какая структура лучше для этой проблемы. У меня есть некоторый опыт работы с деревьями решений, но в настоящее время я начал задаваться вопросом, будет ли нейронная сеть лучше для такого рода проблем. Кроме того, если какой-либо другой метод будет лучше, пожалуйста, не стесняйтесь просветить меня.

Каковы плюсы и минусы каждой структуры и какая структура будет лучшей для этой проблемы?

Также я не уверен в этом факте, но я думаю, что деревья решений имеют большое преимущество перед нейронными сетями с точки зрения скорости выполнения. Это важно, потому что скорость также является ключевым фактором в этом проекте.

топографический
источник

Ответы:

24

Между этими двумя понятиями много различий, но с практической точки зрения необходимо учитывать три основных момента: скорость, интерпретируемость и точность.

Деревья решений

  • Должно быть быстрее после обучения (хотя оба алгоритма могут тренироваться медленно в зависимости от точного алгоритма и количества / размерности данных). Это связано с тем, что дерево решений по своей сути «отбрасывает» входные функции, которые оно не находит полезными, тогда как нейронная сеть будет использовать их все, если вы не выберете какой-либо объект в качестве этапа предварительной обработки.
  • Если важно понять, что делает модель, деревья очень интерпретируемы.
  • Только модельные функции, которые являются параллельными по оси разбиениями данных, что может быть не так.
  • Вы, вероятно, хотите быть уверены, чтобы обрезать дерево, чтобы избежать перегонки.

Нейронные сети

  • Более медленный (как для обучения, так и для классификации) и менее интерпретируемый.
  • Если ваши данные поступают в потоке, вы можете делать инкрементные обновления со стохастическим градиентным спуском (в отличие от деревьев решений, которые используют алгоритмы пакетного обучения).
  • Может моделировать больше произвольных функций (нелинейные взаимодействия и т. Д.) И, следовательно, может быть более точным при условии наличия достаточного количества обучающих данных. Но это может быть склонно и к переоснащению.

Возможно, вы захотите попробовать реализовать оба этих метода и провести некоторые эксперименты с вашими данными, чтобы увидеть, что лучше, и оценить время выполнения. Или вы можете использовать что-то вроде Weka графического интерфейса с представительной выборкой ваших данных, чтобы протестировать оба метода.

Может также оказаться, что использование алгоритмов «пакетирования» или «повышения» с деревьями решений повысит точность при сохранении некоторой простоты и скорости. Короче говоря, если скорость и интерпретируемость действительно важны, то деревья, вероятно, с чего начать. В противном случае, это зависит от вас, и у вас будет эмпирическое исследование.

заусенец
источник
Похоже, вы немного знаете об этом, есть ли у вас опыт работы с байесовскими сетями или другими методами машинного обучения, которые могут помочь с этой проблемой?
Топо
1
Я не слишком увлекался полными байесовскими сетями, в основном наивными байесовскими и тематическими моделями. Я никогда не работал над проблемами обнаружения мошенничества, но наивный байесовский или логистический регресс может быть и разумным подходом.
заусенец