少し間が空いてしまったけど、まだ諦めたわけではない機械学習。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
斎藤 康毅
オライリージャパン
売り上げランキング: 69

今回は、

  • 3.5 出力層の設計

を読み進めてみた。

主にソフトマックス関数について

  • 恒等関数とソフトマックス関数
    • 恒等関数は入力をそのまま返す関数のこと

     

  • ソフトマックス関数は総和が1となる関数
    • 総和が1となることが非常に大事

  • この出力を”確率”とみなすことができる

  • 分類問題に対して確率的な対応ができる

    • ただし、要素の大小関係は変わらず、出力の一番大きなニューロンも変わらないので、出力層のソフトマックス関数は省略する
    • え?省略しちゃうの?
      • と思ったものの、機械学習は「学習」と「推論」の2フェーズに分けられるらしく、出力層ではソフトマックス関数を省略するらしい
      • 学習時に出力層にソフトマックスを使う?のか関係してくるらしい(あとの章で説明されるとのこと)
  • 出力層のニューロンの数は解きたい問題に応じて変わる
    • 10個に分類したい場合は10個(10クラス分類問題というらしい)

まとめ

ソフトマックス関数がどういうものかは分かったものの、どうやって使うのかは今のところ良く分からないです。

道のりは遠いけどコツコツと頑張る。次は”3.6 手書き数字認識”。

以前いた会社で機械学習エンジニアがtensorflowでの文字認識を社内勉強会で教えていたので聞きに行ったものの、あまり理解できませんでした。ちゃんと読んで理解を深めたいと思います。

関係ないけどWordPressだとコードを埋め込むの面倒でMarkDownでさくっとやりたいな〜という思いが募っているところです。