Pentingnya fitur dan gradient boosting

Machine Learning untuk Keuangan dengan Python

Nathan George

Data Science Professor

pemisahan hari dalam minggu

Machine Learning untuk Keuangan dengan Python

pemisahan SMA 200 hari

Machine Learning untuk Keuangan dengan Python

Mengekstrak pentingnya fitur

from sklearn.ensemble import RandomForestRegressor

random_forest = RandomForestRegressor()
random_forest.fit(train_features, train_targets)

feature_importances = random_forest.feature_importances_

print(feature_importances)
[0.07586547 0.10697602 0.12215955 0.23969227 0.29010304 0.0314028
 0.11977058 0.00276721 0.00246329 0.0026431  0.00615667]
Machine Learning untuk Keuangan dengan Python

Mengurutkan dan memplot

# feature importances from random forest model
importances = random_forest.feature_importances_

# index of greatest to least feature importances
sorted_index = np.argsort(importances)[::-1]

x = range(len(importances)) # create tick labels labels = np.array(feature_names)[sorted_index] plt.bar(x, importances[sorted_index], tick_label=labels) # rotate tick labels to vertical plt.xticks(rotation=90) plt.show()
Machine Learning untuk Keuangan dengan Python

plot pentingnya fitur

Machine Learning untuk Keuangan dengan Python

Model linear vs gradient boosting

Machine Learning untuk Keuangan dengan Python

diagram boosting

Machine Learning untuk Keuangan dengan Python

Model boosted

Model boosted yang tersedia:

  • Gradient boosting
  • Adaboost
Machine Learning untuk Keuangan dengan Python

Melatih model gradient boosting

from sklearn.ensemble import GradientBoostingRegressor

gbr = GradientBoostingRegressor(max_features=4,
                                learning_rate=0.01,
                                n_estimators=200,
                                subsample=0.6,
                                random_state=42)

gbr.fit(train_features, train_targets)
Machine Learning untuk Keuangan dengan Python

Get boosted!

Machine Learning untuk Keuangan dengan Python

Preparing Video For Download...