始める無料で始める

フライト所要時間モデル:特徴量をさらに追加!

モデルにさらに特徴量を追加してみましょう。これは必ずしもモデルを良くするとは限りません。ある特徴量は精度を上げる一方で、別の特徴量は悪化させることもあります。

特徴量を増やすと、モデルは常に複雑になり、解釈が難しくなります。

次のモデルに含める特徴量は次のとおりです。

  • km
  • org(出発空港、ワンホットエンコード、8水準)
  • depart(出発時刻、3時間区切りでビニング後にワンホットエンコード、8水準)
  • dow(出発曜日、ワンホットエンコード、7水準)
  • mon(出発月、ワンホットエンコード、12水準)

これらは features 列にまとめられており、32列のスパース表現になっています(ワンホットエンコードでは水準数より1つ少ない列が生成されることを思い出してください)。

データは flights として用意されており、ランダムに flights_trainflights_test に分割されています。

この演習はフライトデータの小さなサブセットに基づいています。

この演習はコースの一部です

Machine Learning with PySpark

コースを見る

演習の手順

  • 学習データに線形回帰モデルを当てはめてください。
  • テストデータに対する予測を生成してください。
  • テストデータでのRMSEを計算してください。
  • モデルの係数を確認してください。ゼロの係数はありますか?

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

from pyspark.ml.regression import ____
from pyspark.ml.evaluation import ____

# Fit linear regression model to training data
regression = ____(____).____(____)

# Make predictions on testing data
predictions = regression.____(____)

# Calculate the RMSE on testing data
rmse = ____(____).____(____)
print("The test RMSE is", rmse)

# Look at the model coefficients
coeffs = regression.____
print(coeffs)
コードを編集して実行