Как я могу использовать данные test_proportion в модели машинного обучения? - PullRequest
0 голосов
/ 02 мая 2020

У меня есть данные с 4000 признаков CNN, и это проблема двоичной классификации. Все, что я знаю о данных испытаний, это пропорции 1 и 0. Как я могу сказать своей модели прогнозировать метки испытаний, используя данные о пропорциях? (Например, есть ли способ сказать, чтобы достичь этих пропорций, я приведу этот экземпляр 0.)

Как я могу использовать его для повышения точности? В моем случае данные обучения в основном состоят из 1 (85%) и 0 (15%). Однако в моих тестовых данных пропорция l дается как (% 38), поэтому она сильно отличается от данных обучения.

Я немного поработал с балансировкой данных, и это помогло. Однако моя модель все еще предсказывает 1 для почти всех данных. Это может произойти и из-за проблемы с адаптацией.

Как @birdwatch предложил уменьшить порог для значения 0 и попытаться увеличить количество меток 0 в прогнозе.

# Predicting the Test set results 
y_pred = classifier.predict_proba(X_test) 
threshold=0.3 
y_pred [:,0] = (y_pred [:,0] < threshold).astype('int') 

До количество классов было следующим:

 1 :   8906
 0 :   2968

После изменения порога теперь оно составляет

1 :  3221
0 :  8653

Однако есть ли другой способ, которым я могу использовать test_proportions, который обеспечивает результат?

1 Ответ

1 голос
/ 02 мая 2020

Нет разумного пути к этому. Это создаст странный уклон в модели. Единственное, что вы можете сделать, это принять менее вероятный результат, только если он имеет достаточно высокий балл Обычно вы использовали бы порог 0,5, но здесь вы можете взять, например, 0,7.

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