始める無料で始める

正則化つきの製品レビュー分析

この演習では、Amazon の製品レビュー reviews データセットをもう一度使います。ラベルのベクトル y は感情を表し、ポジティブなら 1、それ以外は 0 です。行列 X には、BOW 手法で作成した数値特徴量がすべて含まれています。

正則化の強さが異なる2つのロジスティック回帰モデルを学習し、テストデータでの性能を比較します。正則化はモデルの複雑さを制御する方法でしたね。正則化が強いほどモデルは柔軟性が下がる一方で、汎化性能が高まりやすくなります。高い正則化をかけたモデルは、正則化なしのモデルより精度が低くなることもよくあります。

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

Pythonで学ぶSentiment Analysis

コースを見る

演習の手順

  • データを学習用とテスト用に分割します。
  • 正則化パラメータを 1000 にしたロジスティック回帰を学習します。さらに、正則化パラメータを 0.001 にした2つ目のロジスティック回帰も学習します。
  • どちらのモデルについても、テストデータでの正解率を出力します。

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

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

# Split data into training and testing
____, ____, ____, ____ = train_test_split(____, ____, test_size=0.2, random_state=123)

# Train a logistic regression with regularization of 1000
log_reg1 = ____(____=1000).fit(X_train, y_train)
# Train a logistic regression with regularization of 0.001
log_reg2 = ____(____=0.001).fit(X_train, y_train)

# Print the accuracies
print('Accuracy of model 1: ', log_reg1.____(____, ____))
print('Accuracy of model 2: ', log_reg2.____(____, ____))
コードを編集して実行