Mahoutと機械学習のトレーニングコースを開発しました

11/12/2013

Author: 関口宏司

ビッグデータを解析して新しい知見を得ようという取り組みが多くの企業で行われています。そこで不可欠な知識として機械学習が注目されています。

このたびロンウイットでは新しいトレーニングコースApache Mahout ではじめる機械学習を開発しましたので紹介いたします。

「Apache Mahout ではじめる機械学習」のWebページ

Apache Mahout ではじめる機械学習はハンズオン(実習)中心のトレーニングコースです。基本的な機械学習に関する知識が体系立てて整理されており、適宜Mahoutを使う構成になっています。小単元ごとに適切に用意された演習問題を解きながら進められるので、確実に理解が深まり実業務へ応用するための足がかりをつかむことができます。

トレーニングコースの特長

  • 限られた時間内で効率よく学習できるよう、テキストには図表がふんだんに使われています。また、毎ページの詳しいノートは帰社後の独習に大いに役立ちます。
  • 各単元ごとに用意されたやさしい演習問題を講師と一緒に解くことで、背景理論の考え方や実践的知識が確実に身につきます。

演習問題の一例

周長が一定の長方形のうち、面積が最大になるのは正方形であることを、次の2つの方法で示してみましょう。

  • 連立方程式によるシンプルな変数消去による解法
  • ラグランジュの未定乗数法による解法

こんな方におすすめ

  • 今注目の機械学習を体系立てて学び、今後の開発業務に役立てたい方。
  • ビッグデータを保有する企業の情報処理担当者であり、インテグレーターにビッグデータを活用する開発案件を発注するのに必要な最低限の知識を身につけておきたい方。
  • 機械学習系の書籍を購入して勉強したいが、数式が出てきてなかなか読み進められない方。
  • Mahoutイン・アクションを購入してMahoutを使っているが、いまいち使えている気がしない方。

トレーニングコースの内容

トレーニングコースは全2日間となっています。

1日目

初日は「機械学習とは何か」から始まり、パターン認識、教師あり学習のいろいろな分類アルゴリズム、そして最後に手書き文字認識プログラムを作成します。受講者全員参加で手書き文字データを作成します。Mahoutの分類器は果たしてどのくらい手書き文字を認識するでしょうか?お楽しみに!

  • 機械学習とApache Mahout
    • 機械学習とは?
    • モデル [演習]
    • Apache Mahoutとは?
    • Mahoutのインストール [演習]
  • パターン認識
    • パターン認識とは?
    • 特徴ベクトル
    • さまざまな距離測度 [演習]
    • プロトタイプと学習データ
  • 分類
    • 最近傍決定則
    • k-NN法 [演習]
    • 学習によるプロトタイプの決定
    • 識別関数の導出
    • パーセプトロンの学習規則 [演習]
    • 平均化パーセプトロン
    • パーセプトロンの学習規則の問題点
    • Widrow-Hoffの学習規則 [演習]
    • ニューラルネットワーク [演習]
    • サポートベクトルマシン
    • ラグランジュの未定乗数法 [演習]
    • 決定木 [演習]
    • 決定木の学習 [演習]
    • 単純ベイズ [演習]
    • 多変数ベルヌーイモデル [演習]
    • 多クラス分類への拡張
  • 手書き文字認識プログラムを作ろう!
    • 手書き文字認識プログラムの構成
    • 学習データの作成 [演習]
    • 手書き文字認識の実際 [演習]

2日目

2日目はMahoutが提供する分類以外の機能であるレコメンデーション、クラスタリングから始まり、特徴ベクトルの次元削減を目的とした主成分分析、機械学習の評価に関する話、そして最後に自然言語処理における機械学習についてMahoutがどのように使えるか、演習を通じて学んでいきます。

  • レコメンデーション
    • レコメンデーションとは?
    • 情報検索とレコメンデーション
    • レコメンデーションアーキテクチャの種類
    • ユーザプロファイルとその収集
    • 評価値予測 [演習]
    • ピアソンの相関係数
    • レコメンデーションにおける説明
  • ページランク
    • ランキングの重要性
    • 情報検索システムの評価尺度の理論と実際
    • ベクトル空間モデル [演習]
    • Apache Lucene のスコア計算
    • ページランク [演習]
    • HITS
  • クラスタリング
    • クラスタリングとは?
    • クラスタリング手法
    • k平均法 [演習]
    • 最近隣法 [演習]
    • クラスタリング結果の評価と分析
    • 類似画像検索 Apache alike
    • 情報検索とクラスタリング
  • 主成分分析
    • 学習パターン数と次元数の関係 [演習]
    • 主成分分析とは?
    • 平均と分散 [演習]
    • 共分散行列 [演習]
    • 固有値、固有ベクトル [演習]
  • 機械学習の評価
    • 結果の評価と分析
    • 訓練データの分割
    • 精度と再現率 [演習]
    • 偽陽性と偽陰性 [演習]
    • 特徴の評価
    • クラス内分散、クラス間分散
    • ベイズ誤り確率
    • 素性選択
  • 自然言語処理における機械学習
    • 自然言語処理とは?
    • 言語理解のための自然言語処理
    • コーパス
    • bag-of-words
    • Nグラムモデル [演習]
    • 系列ラベリング
    • 隠れマルコフモデル [演習]
    • ビタビアルゴリズム [演習]
    • NLP4Lの紹介

前提知識

演習ではUbuntuマシンを使用しますので、viやEmacsなどのエディタが使えたり、Linuxコマンドを知っているとスムーズに受講できます。

用意するもの

  • sshが使えるノートPCをご用意ください。ノートPCがご用意できない場合はお貸し出しいたします。
  • 手計算による演習問題があるため、鉛筆/シャープペンシル、消しゴムをご用意ください。

お客様のご参加をお待ち申し上げております。

» Pagetop