【このページは現在作成中です】

第7回:教師なし学習・次元削減,機械学習の実践的アプローチ

7.1 教師なし学習・次元削減【中村】

次元削減 (Dimensionality Reduction) とは

4_unsupervised_learning.png
図1:教師あり学習と教師なし学習のイメージ(再掲)

なぜ次元を削減するのか?

次元削減の手法の例

PCA

次元削減によるデータの説明

次元削減によるデータの圧縮

次元削減による特徴量抽出

7.2 特徴量エンジニアリング【中村】

特徴量を開発する (feature engineering)

アプローチ

【例題】製品の売上予測

【売上データ】

【問題】

→ 特徴量エンジニアリングによって,新しい特徴量を作る

データを眺める

#準備(すべてに共通)
# PandasとNumpyをインポート
import pandas as pd
import numpy as np

# 日本語化Matplotlibもインポート
import matplotlib.pyplot as plt
#↓の1行は提出時にはコメントアウトしてください
!pip install japanize-matplotlib
import japanize_matplotlib

# Seabornもインポート
import seaborn as sns

# pickleをインポート(モデルの保存用)
import pickle

# pandasのデータフレームを表示する関数
from IPython.display import display
#データをロードする(エクセルデータの読み込み)
data = pd.read_excel("https://www2.cmds.kobe-u.ac.jp/~masa-n/dshandson/yogurt.xlsx")
data
#型チェック
data.dtypes
#整形
df = data.copy()
#売上日付をインデクスに
df = df.set_index("売上日付")
df
#売上個数を可視化
#箱ひげ図
df["売上数"].plot.box()
#時系列
df["売上数"].plot()
#月別に可視化
for y in [2021, 2022]: 
  for i in range(1,13):
    df[(df.index.year==y)&(df.index.month==i)]["売上数"].plot.bar(title=f"{y}年{i}月", figsize=(8,6))
    plt.show()

ドメイン知識による特徴量抽出

7.3 モデルのチューニング【伊藤】

関数化

検証用データ

クロスバリデーション

グリッドサーチ

最適化

7.4 アプリケーション【陳】

作成したモデルをAPI化する

訓練済みモデルの利用


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS