Buat prediksi dengan random forest
Untuk melatih model Machine Learning yang memprediksi portofolio ideal, kita perlu membuat himpunan latih dan uji untuk mengevaluasi kinerja. Kita akan melakukannya seperti pada bab sebelumnya, yaitu mengambil array features dan targets, lalu membaginya berdasarkan train_size yang kita tetapkan. Ukuran latih sering kali sekitar 70–90% dari data.
Selanjutnya kita melatih model (random forest dalam kasus ini) pada data latih, dan mengevaluasi skor R\(^2\) pada latih dan uji menggunakan .score() dari model kita. Dalam kasus ini, hiperparameter telah ditetapkan untuk Anda, namun biasanya Anda ingin melakukan pencarian dengan ParameterGrid seperti yang kita lakukan pada bab sebelumnya.
Latihan ini merupakan bagian dari kursus
Machine Learning untuk Keuangan dengan Python
Instruksi latihan
- Tetapkan
train_sizemenjadi 85% dari keseluruhan data latih menggunakan properti.shapedarifeatures. - Buat target latih dan uji dari
targetsmenggunakan pengindeksan Python. - Latih model random forest pada
train_featuresdantrain_targets.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# Make train and test features
train_size = int(0.85 * ____)
train_features = features[:train_size]
test_features = features[train_size:]
train_targets = targets[____]
test_targets = targets[____]
# Fit the model and check scores on train and test
rfr = RandomForestRegressor(n_estimators=300, random_state=42)
rfr.fit(____, ____)
print(rfr.score(train_features, train_targets))
print(rfr.score(test_features, test_targets))