LoginSignup
14
14

More than 5 years have passed since last update.

機械学習の内輪向け勉強会: 概念の理解

Last updated at Posted at 2017-01-07

本エントリーは、内輪向けの勉強会向けに書いたメモです。
元になっているのは、2冊の書籍です。

基本的な部分は、「機械学習Pythonプログラミング」を元にし、「ITエンジニアのための機械学習理論入門」で補足する方でまとめています。

なお、本記述に間違い勘違いなどがあれば気軽にご指摘ください。

種類

学習方法 重要

  • 教師あり
  • 教師なし・ラベルなし
  • 強化学習

目的の種類

(from 機械学習理論入門)

  • 分類 ・・Positive(P) or Negative(N) の判定
  • 回帰分析 ・・数値を予測する
  • クラスタリング ・・教師なしで、グループ化
  • 類似マッチング ・・類似物を見つける (書籍では単語のみ紹介)
  • 共起分析 ・・レコメンデーション (書籍では単語のみ紹介)
  • リンク予測 ・・つながり (書籍では単語のみ紹介)

各種用語

学習度合い 重要

  • 過学習・バリアンスが高い・オーバーフィッティング
  • 学習不足・バイアスが高い

変数

(from 機械学習理論入門)

  • 説明変数・特徴変数・特徴ベクトル
  • 目的変数

前処理系

  • 欠損値補完
  • 特徴量の選択
  • 特徴量の抽出
  • 次元削減
  • 主成分分析(PCA)
  • 線形判別分析(LDA)
  • カーネル主成分分析
  • 探索的データ解析

アルゴリズム名、変換器、推定器

  • パーセプトロン
  • ロジスティック回帰
  • SVM
  • カーネルSVM
  • 決定木
  • ランダムフォレスト
  • k近傍法
  • k-平均法(k-means)
  • ランダムフォレスト回帰
  • アンサンブル学習 ・・・ 複数のアルゴリズムを混ぜて多数決などで判断
  • BoW (Bag-of-Words)

検証方法など

  • テストデータの分割
  • k分割交差検証(クロスバリデーション) 重要
  • グリットサーチ
  • 混同行列(Confusion matrix) (TP/TN/FP/FN)
  • 誤差の考え方
    • 残差・誤差
    • 平均二乗誤差(MSE)
    • 誤差平方和(SSE)
    • 決定係数(R2)

Python機械学習プログラミングの本の内容

  • 学習モデルの基本的な手順・方法の説明
  • 機械学習アルゴリズムのトレーニングの基礎を、構築する
  • scikit-learnの活用方法
  • データ前処理
  • 次元削減でデータを圧縮する
  • モデルの評価とハイパーパラメータのチューニング
  • アンサンブル学習--異なるモデルの組み合わせ
  • 感情分析をもちいて適すデータの変換、機械学習アルゴリズムに適用
  • Webアプリケーション(Flask/Picle)
  • 回帰分析--連続地を取る目的変数の予測
  • クラスタ分析--ラベルなしデータの分析
  • ニューラルネットワーク -- 画像認識トレーニング
  • ニューラルネットワーク -- 数値計算ライブラリTheanoによるトレーニング

機械学習理論入門で使っているアルゴリズム

最小二乗法

  • 教師あり
  • 回帰分析

最尤推定法

  • 教師あり
  • 回帰分析

パーセプトロン

  • 教師あり
  • 分類

ロジスティック回帰

  • 教師あり
  • 分類
  • 最尤推定法を用いる
  • ROC曲線を使って機械学習の適用をする考え方も学ぶ

k平均法

  • 教師なし
  • クラスタリング

k近傍法

  • 教師あり
  • クラスタリング
  • これは、機械学習なのか?

EMアルゴリズム

  • 教師なし
  • クラスタリング
  • 最尤推定法を用いる

ベイズ推定

  • パラメータ値を確率的に推測する

ツール類の説明

セットアップ方法: http://qiita.com/terapyon/items/e4a759de90fb687e7332

NumPy

数値計算モジュール

SciPy

科学技術計算モジュール

Pandas

データフレーム

matplotlib

グラフ出力

scikit-learn

様々な機械学習アルゴリズムが実装されている

チートシート

  • regression: 回帰
  • classification: 分類
  • clustering: クラスタリング
  • dimensionality reducion: 次元削減

jupyter notebook (IPython notebook)

Webブラウザで実行できるPython環境

scikit-learnで何かをやってみよう

TBD

参考

14
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14