Как выбрать классозависимые функции? - PullRequest
0 голосов
/ 28 апреля 2019

Предположим, у меня есть набор данных, который содержит два класса и более 50000 функций . Большинство работ, которые я нашел, пытаются выделить особенности, которые различают два класса. Мы назвали эти выбранные функции наиболее важными функциями. Но какие функции наиболее актуальны, какой класс не может быть определен теми подходами, которые я хочу знать. Например,

              f1    f2    f3 ....... f50000      class
sample 1:     .5    .4     23......... .45         1
sample 2:     .2    .56     .5......... .45        2
sample 3:     .4    56     .23......... .45        2
sample 4:     .3    .45     76......... .45        1

Здесь f1 = функция 1, f2 = функция2 и т. Д.

Предположим, как-то я знаю, f1, f2, f3, f45, f344 связан с class 1, а f4, f5, f6, f90, f99 связан с class 2. Другие функции не связаны с этими классами. Таким образом, вывод будет

class1: f1, f2,f3,f45,f344
class2: f4,f5,f6,f90,f99

Какими будут алгоритмы? Для меня будет очень полезно, если кто-нибудь даст мне какие-либо документы (глубокое изучение или другие) или ссылки. Заранее спасибо.

1 Ответ

0 голосов
/ 29 апреля 2019

Есть много способов обнаружить значимость функций. Простым подходом будет усечение объектов с низкой дисперсией. Посмотрите эту статью о scikit , если хотите использовать их реализацию.

Другая распространенная причина - штрафовать количество функций с помощью регуляризации L1 / L2. Это предотвращает использование алгоритмом всех весов. Реализация находится в той же статье. Я только что нашел этот пост на github , который довольно коротко и хорошо объясняет регуляризацию L2 в сочетании с логистической регрессией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...