🤖

Basics of ML

2024/07/19に公開

機械学習基礎

機械学習とは

入力と出力の関係性や規則性を見つけ出すためのロジック。入力データ(画像、音声、自然言語などを数値化した入力値)と、そのデータから期待される答えとなる出力データ(目標値)をセットにして学習するとルールが出力される。この際に用いるアルゴニズムとして、ディープラーニングなどがある。これらのルールを新しいデータに適用すると、新しい答えを生成することができる。

<機械学習の3大トピック>

最も成功している種類のアルゴニズムである「教師あり学習」に焦点をあてる。

1. 教師あり学習:回帰分析(regression)

<要約>

教師あり学習とは既知の例を一般化することで、意思決定過程を自動化するもの。教師あり学習を二つに大別したものの一つが回帰であり「数値」を予測(クリック率、家賃、売上高)するものである。例:ある人の年収を学歴と年齢と住所から予測する

<線形回帰モデル>

回帰分析手法の中でも、実測値を近似できるように当てはめ、直線で表現するもの。有名なアルゴニズムとしては「重回帰分析・Ridge回帰・Lasso回帰」がある。データの量や特徴量の数に応じてアルゴニズムを順に試して、より汎化性能が高いものを選定するのがよさそう。

<非線形回帰>

誤差が大きく直線では表現しきれないことがあるため直線ではない形で表現する手法。「決定木・ランダムフォレスト・ニューラルネットワーク」などがある。(これらは後述する「分類」でも用いることが多い)

2. 教師あり学習:クラス分類(classification)

<要約>

あらかじめ定められた選択肢の中から「カテゴリ(クラス)」を予測(商品カテゴリ、腫瘍の有無、動物の種類)するもの。カテゴリが2種類の場合は「2クラス分類」、3種類以上だと「多クラス分類」として扱う。

例1:メールがSPAMであるかどうかを判断(イエス/ノーでの2クラス分類)

例2:花の特徴(ガクの長さ、花弁など)から品種を判断する(多クラス分類)

<線形分類器>

二次元平面上にあるデータを一本の直線(境界線)で分ける手法。「ロジスティック回帰・線形SVM」がある。

<非線形分類器>

直線を複数組み合わせたような形で分類する手法。「決定木・ランダムフォレスト・非線形SVM・ニューラルネットワーク」がある。下図はがん患者から採取した細胞の情報から悪性なのか良性なのかを判断するために作られた「決定木」を可視化したもので、True/Falseでクラス分類していく。必要に応じて重要度が低い特徴量は枝切りして最適なモデルにしていくものと考える。

3. 利点と欠点

<線形モデル>

利点

  • 訓練と予測が非常に高速で大きいデータセットにも適用でき、疎なデータに対してもうまく機能する。
  • 予測手法が比較的理解しやすい

欠点

  • 相関した係数量がある場合係数の意味を理解するのは難しい
  • 特徴量の数が少なく低次元のものに対しては性能が低くなる

<非線形モデル>

利点

  • 決定木:非常に高速。データのスケールを考慮する必要がない。可視化が可能で説明しやすい。
  • ニューラルネットワーク:複雑なモデルが構築できる(時間を費やせば他のアルゴニズムに勝てる)

欠点

  • 決定木:過剰適合しやすく汎化性能が低い傾向
  • ニューラルネットワーク:データのスケールを調整する必要がある。パラメータに敏感。大きいモデルは訓練に時間がかかる。

総括

新しいデータセットを扱う場合は、線形モデルなどの簡単なモデルでどのくらい精度が得られるのか試して、データをより深く理解できたらランダムフォレストやニューラルネットワークなどの複雑なモデルに移行することを考慮すると効率的に進めることができそう。

Discussion