Интерпретируемость MLPClassifier - PullRequest
0 голосов
/ 05 марта 2019

У меня есть вопрос относительно интерпретируемости алгоритмов машинного обучения.

У меня есть набор данных, похожий на этот: набор табличных данных

Я обучил модель классификации(MLPClassifier от Scikit-Learn) и хотите узнать, какие функции оказывают наибольшее влияние (наибольший вес) на решение.

Моя конечная цель - найти различные решения (комбинации функций), которые с высокой вероятностью (> 90%) будут классифицированы как 1.

Кто-нибудь знает способ получить этирешения?

Заранее спасибо!

1 Ответ

0 голосов
/ 05 марта 2019

Чтобы получить важность признака во время задачи классификации, методология классификации должна быть случайным лесом или деревом решений, оба реализованы в sklearn,

clf = RandomForestClassifier(n_estimators=100, max_depth=2,random_state=0)
clf.fit(X, y)
#After the fit step
clf.feature_importances_ 

Важность функции скажет вам, какой вес имеет каждая функция. Если ваш классификатор MLP обучен должным образом, он придаст почти одинаковое значение различным функциям в вашей сети,

...