ららにく@utool.cc

機械学習に関する怪しいメモやらあれこれその他メモやら

Restricted Boltzmann Machineの変種(変数表現編)

制限ボルツマンマシンは二値変数を用いることが一般的です。
今回は他の変数表現について紹介していきます。

  • 普通の二値ユニット
    • エネルギー関数
    • 条件付き確率
    • 尤度関数とパラメータの偏微分
  • ガウシアンユニット
    • エネルギー関数
    • 条件付き確率
    • 尤度関数とパラメータの偏微分
  • ソフトマックスユニット
    • エネルギー関数
    • 条件付き確率
    • 尤度関数とパラメータの偏微分
  • 特別付録: {0, 1}以外の二値ユニット
    • 可視変数が{-1, +1}の二値の条件付き確率
    • 可視変数が{α, β}の二値の条件付き確率
  • 特別付録: 他のガウシアンユニット(自分が使ってるやつ)
    • エネルギー関数
    • 条件付き確率
続きを読む

Restricted Boltzmann Machine for Collaborative Filtering

Restricted Boltzmann Machine for Collaborative Filtering

f:id:utool:20170617235951p:plain

RBMを用いて協調フィルタリングを行うことが出来ます。

これはNetflix Prizeなる情報推薦のコンペで好成績を収めたそうです。
要となることはRBMに関して、欠損データに関するノードを除外して用いるというだけです。

続きを読む

DRBM Revision.(Hidden∈{0, 1})

Discriminative Restricted Boltzmann Machinesの隠れ変数が{0, 1}なときのメモ。


f:id:utool:20170610042706p:plain


細かい定義やら±1な場合のはこっち参照.
Discriminative Restricted Boltzmann Machines(RBM選択モデル)のメモ - ららにく@utool.cc

今回の記事は違う部分だけのっける。

続きを読む

Discriminative Restricted Boltzmann Machines(RBM選択モデル)のメモ

細かい説明は省略。モデルの定義と導出のみ。
制限ボルツマンマシン(RBM)の基本的な話は深層学習本(MLP本, 人工知能学会本)などを参照のこと。
あと二値は\{0, 1\}でなく\pm1を使ってる。
シグモイド関数より\tanhのほうがなんかかっこいい。


MNISTだと認識率95%前後らしい
ソースコード
github.com


悲しいお知らせ
】悲報】】隠れ変数は\pm 2より\{0, 1\}のほうが性能が良いというまさかの可能性ががが。。。
DRBM Revision.(Hidden∈{0, 1}) - ららにく@utool.cc

  • RBM選択モデル(DRBM)
    • 確率分布
    • エネルギー関数
    • ポテンシャル関数
    • 変数の定義
    • 規格化定数
    • 周辺確率
    • 学習
    • 対数尤度関数
    • 勾配(計算あってるか微妙)
    • ±1の隠れ変数を使う欠点
  • 特別付録
    • 自由エネルギーの勾配(計算あってるか微妙)
    • DRBMの期待値の具体的な計算(めっちゃ導出に自信ない)
  • 参考

RBM選択モデル(DRBM)

制限ボルツマンマシン(RBM)の構造を変えたら分類器として扱うこともできる。
f:id:utool:20170610042706p:plain
マルコフ確率場と条件付き確率場の違いが判らなくなってきた…
ボルツマンマシンはマルコフ確率場だけれども…

続きを読む

Restricted Boltzmann Machine(制限ボルツマンマシン)

  • 概要
    • Restricted Boltzmann Machine(制限ボルツマンマシン)
    • 用途
    • 制限ボルツマンマシンの定義
    • 制限ボルツマンマシンの存在意義
    • 制限ボルツマンマシン学習
  • 細かい話
    • 可視変数と隠れ変数
    • エネルギー関数
    • 規格化定数
    • 数式いろいろ
      • 規格化定数(もう少し展開)
      • 条件付き独立性
      • 尤度関数と対数尤度関数
      • パラメータの更新式
    • 過学習について
    • 制限ボルツマンマシン派生形
  • キーワード補足
    • 参考

概要

Restricted Boltzmann Machine(制限ボルツマンマシン)

制限ボルツマンマシン(Restricted Boltzmann Machine; RBM)は、確率的ニューラルネットワークの一種です。
また確率変数を完全二部グラフ構造で表すことができ、下の図のような感じになります。
f:id:utool:20170610034949p:plain

また、完全二部グラフの上層は隠れ変数から構成される隠れ層、下層は可視変数から構成される可視層と呼びます。

用途

制限ボルツマンマシンを用いるとできること

など。

続きを読む

ToDo

あとで書きたいこと

メモ書き(データセット)

パターン認識

MNIST(手書き文字, 0-9の文字)
http://yann.lecun.com/exdb/mnist/
notMNIST(手書き文字, 0-9以外の10文字)
http://yaroslavvb.com/upload/notMNIST/
CIFAR-10, CIFER-100(物体認識)
https://www.cs.toronto.edu/~kriz/cifar.html
Iris Dataset(花)
https://archive.ics.uci.edu/ml/datasets/iris

ネットワーク分析

ネットワークデータ(派閥検出など)
http://www-personal.umich.edu/~mejn/netdata/

セマンティックセグメンテーション

COCO-Stuff 10K dataset v1.1
https://github.com/nightrome/cocostuff
PASCAL-Context Dataset
http://www.cs.stanford.edu/~roozbeh/pascal-context/