G検定 カンペ「機械学習」編
学習手法
- 教師あり学習
- 回帰:regression、線形回帰(単回帰、重回帰)、サポートベクター回帰
- 分類:classification、SVM、決定木、ランダムフォレスト、ロジスティック回帰、kNN法(k近傍法)
- 教師なし学習
- クラスタリング:k-means法
- 次元削減・次元圧縮:主成分分析
- 強化学習
- エージェントの目的は収益を最大化する方策を獲得すること。行動を選択し、それによって変化する状態の中で、最終的には最適な方策を獲得することを目指す。方策反復法、価値反復法(Q学習、TD学習、SARSA)、モンテカルロ法など。
- SVM
- Support Vector Machine
- もともとは2クラス分類のアルゴリズムとして考案されたが、非常に性能が良く、多クラス分類や回帰問題(サポートベクター回帰)、異常検知にも応用されている。「マージンの最大化」というコンセプトのもと、2クラスを線形分離する。
- スラック変数
- SVMにおいて、誤分類を許容しつつも、誤分類に対してはペナルティを科したく、評価関数にスラック変数を導入する。
- カーネル法
- SVMにおいて、高次元の空間にデータを写像し、高次元空間内で線形分離し、元の次元においては非線形の決定境界を得られるようにする手法。膨大な計算量が必要となるが、この計算量を抑える数学的工夫を「カーネルトリック」と呼ぶ。
- ロジスティック回帰
- 線形回帰を分類問題に応用したアルゴリズム。対数オッズ(log[p_i / (1 - p_i)]、p_iはデータがクラスiに属する確率)を線形回帰で予測し、ロジスティック関数(シグモイド関数)によってp_iの予測値を得る。なお3種類以上の分類の際はソフトマックス関数を活性化関数に用いる。
- ロジット変換
- ロジスティック回帰において、確率p_iから対数オッズに変換すること。対数オッズもまた0から1の値をとるため、正規化される。
- kNN法
- k Nearest Neighbor法
- 近い順にk個のデータを見て、多数決で所属クラスを決定する。クラス分類の代表的なアルゴリズム。各クラスのデータ数に偏りがあると判定結果が不正確になる。
- k-means法
- k個のクラスタの中心をランダムに生成し、クラスタの中心を重心に移動させ、中心が変化しなくなるまで繰り返す。教師なし学習。
- 決定木
- 条件分岐を繰り返し、情報利得の最大化(=不純度の減少量の最大化)を実現することで、クラス分類や回帰を行うためのアルゴリズム。データのスケールを事前に揃えておく必要がなく、また特徴量を重要度順に並べられるため、分析結果の説明も容易である。
- ランダムフォレスト
- 複数の決定木を作成しクラス分類や回帰を行うためのアルゴリズム。教師あり学習の一種。分類問題の場合は多数決を、回帰問題の場合は平均値を採用する。過学習しやすいという決定木の欠点を解消した。バギングを用いる。
検証法・基礎集計
- 多重共線性
- multicollinearity、マルチコ
- 相関係数が高い特徴量の組を同時に説明変数に選ぶと予測がうまくいかなくなる現象。特徴エンジニアリングにおいて、相関係数が1または-1に近い特徴量のペアを作らないように、うまく特徴量を取り除く。
- 線形分離可能
- 直線を使って完璧に2つのクラスに分類できる問題(2クラス分類)。パーセプトロンを使って解ける。線形分離不可能な問題は、パーセプトロンを組み合わせた多層パーセプトロンを用いると解決できるようになる。
- 基礎集計
- 平均・分散を計算したり散布図行列や相関行列を算出したりし、データの傾向を事前に把握しておくこと。
- 正規化
- データを0から1に収まるようにスケーリングすること。
- 標準化
- 白色化
- 特徴量の相関関係を無効化するような線形変換を行い、標準化すること。
- 特徴量エンジニアリング
- モデルが認識しやすい特徴を作ること。one-hot-encoding、日付データの変換、多項式特徴量の生成など。
- one-hot-encoding
- カテゴリカル変数をたった一つの成分だけが1、残りの成分が0という形の特徴量に変換すること。LIMEやSHAP等のXAI(Explainable AI)であっても、one-hot-encodingは必須である。
- マッピング
- 順序を持つ文字列のカテゴリーデータについて、辞書型データに基づいてそれぞれの値に対応する数値に変化させる方法。
- アフィン変換
- 平行移動と線形変換を組み合わせた変換。平行移動・拡大縮小・回転・せん断が可能。
- データ拡張
- Data Augmentation、オーバーサンプリング、Oversampling
- データを水増ししてデータの不足を補うこと。SMOTE(Synthetic Minority Oversampling Technique)は分布の頻度が少数のクラスのデータ量を増やす。
- ホールドアウト法
- 教師データをすべて訓練に用いず、一部を「テストデータ」として分離しておき、残りの「訓練データ」を学習に用いること。
- テストデータ:未知データへの予測性能(汎化性能)を測るための教師データ
- 訓練データ:学習に用いる分の教師データ
- 交差検証
- クロスバリデーション
- データをいくつかに分割し、テストデータに用いるブロックを順に移動しながらホールドアウト法による検証を行い、その精度を平均する手法。計算量は多くなるが、データ数が少ない場合にも信頼できる精度が得られる。
- グリッドサーチ
- ハイパーパラメータの各候補に対して交差検証で精度を測り、最も精度の高かったハイパーパラメータの組を採用するという手法。
- ステップワイズ法
- 重回帰分析において、有意な説明変数を1つずつ取り込んだり取り除いたりしながら、最終的に適合度の高いモデルを作成する手法。
- バリアンス
- 予測値の分散。バリアンスが大きければモデルは過学習を起こしている。
- バイアス
- 予測値の期待値と目的変数の期待値の差。この値が大きければモデルは未学習である。
- ノイズ
- データそのものに内容されている誤差。バリアンスやバイアスを小さくすることができても、ノイズを小さくすることはできない。
- アンサンブル学習
- 複数のモデルを作り、多数決(クラス分類)や平均(回帰)によって結果を採用する手法。バギングは各モデルを並列に学習させ、ブースティングは各モデルを直列に学習させる、と言える。一概にバギングの性能が高いわけではない。バギング、ブースティング、スタッキングの3種類。
- バギング
- Bootstrap Aggregating
- 学習データから復元抽出した複数のデータセットに対して、それぞれの弱学習器を構築・統合する学習手法。データセットに多様性をもたせることでモデルの予測値のバリアンスを下げる効果がある。ランダムフォレストはバギングを利用した代表的な決定木モデルである。
- ブートストラップ
- 復元抽出
- 重複を許して同じサイズのデータサンプルを抽出するサンプリング方式。バイアスを下げる効果がある。
- ブースティング
- 一つ前のモデルが誤った予測の重要度を高くし、次のモデルはその予測を外さないよう逐次更新していく学習方法。AdaBoost等。
- スタッキング
- モデルを積み上げ、バイアスとバリアンスをバランスよく調整する学習方法。
その他
- AutoML
- 高精度の危害学習モデルの構築を自動化するシステム。NAS(Neural Architecture Search)と呼ばれる最適化理論が使われており、方策勾配法といった強化学習のアーキテクチャを応用している。
- MAML
- Model-Agnostic Meta-Learning、マムル
- メタ学習(meta-learning、各タスクの学習プロセスを学習し汎用的な学習手法を得ること)の一種。複数タスクで学習を行い、少量の学習データでテストを行う。バッチデータと全データに関しての大きく2段階のパラメータ更新を行う。
- マルチエージェント応用
- スケールアップ
- 強化学習における課題。2体のロボット同士で学習を開始させようとすると、お互いに初期状態であるタスクについての何も知識がない状態だと、学習過程の不安定化が見られること。
0 コメント