Scikit Learn in Python(ランダムフォレストリグレッサー)を使用して予測モデルをトレーニングし、手動で予測するためのExcelツールを作成するために、各機能の重みを何らかの方法で抽出したいと考えています。
私が見つけた唯一のものはですがmodel.feature_importances_
、それは助けにはなりません。
それを達成する方法はありますか?
def performRandomForest(X_train, y_train, X_test, y_test):
'''Perform Random Forest Regression'''
from sklearn.ensemble import RandomForestRegressor
model = RandomForestRegressor()
model.fit( X_train , y_train )
#make predictions
expected = y_test
predicted = model.predict( X_test )
#summarize the fit of the model
mse = np.mean(( predicted - expected )** 2)
accuracy = ( model.score ( X_train , y_train ))
return model, mse, accuracy
現時点では、を使用しmodel.predict([features])
て実行していますが、Excelファイルで必要です。
decision trees
あるため、線形回帰の場合のように1つの方程式は得られません。代わりに、一連のif, then, else
ロジックと多くの最終的な方程式を取得して、最終的な葉を数値に変換します。ツリーを視覚化してすべてのロジックを引き出すことができたとしても、これはすべて大きな混乱のように見えます。Excelで作業している場合は、Azureを使用してExcelでモデルをトレーニングすることを検討してください。しかし、おそらくExcel内からPythonを呼び出すだけです。