かずきち。の日記

サーバサイドエンジニアのつぶやき

Google,Amazonが利用する機械学習ライブラリTensorFlowを使ってみよう。

1年前くらいの発表でしょうか?Gogleが提供しているTensorFlowをいじいじしてみました。
音声検索や音声に認識に活用されている技術です。
超絶有名な機械学習ライブラリです。

インストール環境はMac OS X Yosemiteで行います。

もちろんUbuntu環境などのLinuxでも対応しています。
TensorFlowはPythonで動かすことが出来ます。
Pythonは文字エンコードの問題があって、さほど日本では人気はないがシリコンバレーでは間違いなく人気です。
Djangoなどのライブラリもかかせませんが…

https://qiita-image-store.s3.amazonaws.com/0/131965/8f7eece0-e530-d2c4-5b9c-40f4d71d5fca.png

ニューラルネットワークの利点

ニューラルネットワークの利点はまずなんといってもどんな関数でも近似できて、最もらしい解が得られるとこだろう。
しかしもちろん欠点はある。
大量の計算リソースが必要である。
テンソルである多次元行列の表現が求められ、画像処理、音声認識などの専門分野で主に使える。

ニューラルネットワークの欠点

まず処理がやばい。
CPU速度が明らかにたりないので、マルチスレッドにする必要がある。

基本的にはTensorFlowはブラックボックス部分が極めて多い分野である。
そして基本的には特徴抽出には大量のデータセットが必要になってくる。

https://qiita-image-store.s3.amazonaws.com/0/131965/25642755-805c-cd14-a6a4-8dc7456d84bd.png
引用:
qiita.com

基本的には脳の中のシナプス回路を表したものである。

f:id:kazukichi_0914:20161101211318p:plain