分類:特徴量エンジニアリング

Pythonで学ぶMachine Learning面接対策

Lisa Stuart

Data Scientist

特徴量エンジニアリングの目的

  • データから追加情報を抽出
  • 有用な特徴量を追加作成
  • 予測モデルを改善する最有効な手段の一つ
Pythonで学ぶMachine Learning面接対策

特徴量エンジニアリングの利点

  • 学習アルゴリズムの予測力を向上
  • 機械学習モデルの性能がさらに高まる
Pythonで学ぶMachine Learning面接対策

特徴量エンジニアリングの種類

  • 指標変数
  • 交互作用特徴量
  • 特徴表現
Pythonで学ぶMachine Learning面接対策

指標変数

  • しきい値インジケータ
    • 年齢: 高校 vs 大学
  • 複数特徴
    • フラグとして使用
  • 特別なイベント
    • ブラックフライデー
    • クリスマス
  • クラス群
    • 有料トラフィックのフラグ
      • Google AdWords{4}}
      • Facebook広告
Pythonで学ぶMachine Learning面接対策

交互作用特徴量

  • その他の数式の組合せ
Pythonで学ぶMachine Learning面接対策

特徴表現

  • 日時スタンプ
    • 曜日
    • 時刻(時)
  • カテゴリの一部を「Other」に集約
  • カテゴリをダミー変数へ変換
    • (k - 1)の二値列
Pythonで学ぶMachine Learning面接対策

カテゴリ水準の不一致

1 https://blog.cambridgespark.com/robust-one-hot-encoding-in-python-3e29bfcec77e
Pythonで学ぶMachine Learning面接対策

負債所得比率

  • Monthly Debt
  • Annual Income/12
Pythonで学ぶMachine Learning面接対策

特徴量エンジニアリングの関数

関数 返り値
sklearn.linear_model.LogisticRegression ロジスティック回帰
sklearn.model_selection.train_test_split 学習/テスト分割関数
sns.countplot(x='Loan Status', data=data) 棒グラフ
df.drop(['Feature 1', 'Feature 2'], axis=1) 特徴量リストを削除
df["Loan Status"].replace({'Paid': 0, 'Not Paid': 1}) Loan Status を整数化
pd.get_dummies() k - 1 の二値特徴量
sklearn.metrics.accuracy_score(y_test, predict(X_test)) モデル精度
Pythonで学ぶMachine Learning面接対策

おすすめのチュートリアル:

Pythonで学ぶMachine Learning面接対策

練習してみましょう!

Pythonで学ぶMachine Learning面接対策

Preparing Video For Download...