Рекомендуется ли объединять несколько «связанных» объектов в один вектор в сценарии ниже? - PullRequest
0 голосов
/ 03 июня 2019

Я новичок / новичок в "практическом" машинном обучении.

Я собрал очень большой набор данных для создания бинарной классификационной модели машинного обучения.Набор данных содержит более 80 столбцов, но я пытаюсь уменьшить этот список столбцов.Я проверил данные через несколько алгоритмов (Дерево решений, Случайный лес, Повышение градиента);использовал различные настройки гиперпараметров;и проанализировал результаты важности множества перестановочных признаков (PFI), чтобы увидеть, какие функции необходимо удалитьПока что моя точность (и другие метрики, такие как оценка F1, точность, отзыв) колеблется где-то между 70 и 80%.У меня такой вопрос:

Если у меня есть подмножество из 2-4 столбцов, данные которых не только связаны, но зависят друг от друга, т. Е. - colA не будет иметь большого смысла, если не искать и не использовать colB, colCи т. д. - colA не будет иметь большого смысла без добавления / вычитания / деления с colB

Возможно ли / рекомендуется ли объединить эти несколько столбцов в вектор или другую функцию?

Например,colA, построенный в виде временного ряда, будет иметь хорошую нелинейную изогнутую линию.ColB, построенный в виде временного ряда, также сделал бы хорошую нелинейную изогнутую линию.Однако рассмотрение каждой из этих линий не будет иметь большого смысла, пока вы не посмотрите, где они пересекаются (что происходит снова и снова).Итак, вы можете видеть здесь, что расстояние между любыми двумя точками (colA, colB) действительно важно.

НО, когда я включаю colC, который является результатом различия между colA и colC, анализ PFI запускает colCобратно как плохая функция, которая снижает точность и т. д.

Любая помощь с этим очень ценится и заранее всем спасибо за вашу помощь.

Если вам нужно, чтобы я предоставил дополнительную информацию /пример, дайте мне знать.Еще раз спасибо.

1 Ответ

0 голосов
/ 03 июня 2019

Понятия не имею, как выглядят ваши данные. Возможно, вам захочется увидеть пример / matrise, чтобы люди могли лучше ответить:)

Если вы уверены, что хотите удалить функции, вы пробовали Лассо? При регуляризации L1 некоторые функции полностью игнорируются. установить альфа-низко и посмотреть, что происходит?

Пример: lasso001 = Лассо (альфа = 0,01, max_iter = 10000) .fit (X_train, y_train) .... и так далее. вывод на печать с n функций. Если вы хотите, чтобы он использовал больше функций, установите альфа ниже. просто быть в курсе переоснащения ... Вы также можете «настроить» параметр в LogisticRegression и LinearSVM. (С).

...