デジトレ

IT, Web技術のキュレーションメディアです。まとめ記事や書籍紹介をしています。

今話題のTensorFlowとは?Googleが開発した、ディープラーニングも実現可能な機械学習のオープンソース。

f:id:gtrend:20151113001652p:plain:w300

TensorFlowとは?

  • Googleが作った機械学習のオープンソース
  • 社内ディープラーニングインフラの「DistBelief」の第二世代の位置づけ
  • 流行りのディープラーニングにとどまらない汎用性

TensorFlowはどういう経緯で生まれたの?

  • 外部公開するために新たに開発

もともとグーグルはディープラーニングインフラとして「DistBelief」を開発していました。 実際にそれは、「Google検索アプリ」や、「Googleフォト」でも使われて実績があります。 しかし、社内のインフラに深く依存していたため、外部公開ができませんでした。 そこで、外部公開を見越して新たに開発したのが「TensorFlow」になります。

TensorFlowってすごいの?

  • 「DistBelief」に比べて、高いパフォーマンスと汎用性、拡張性

もともと社内インフラの「DistBelief」は実運用によって充分すぎる内容に進化しています。

かつてない規模のニューラル ネットワークの構築や、データセンター内の数千コアへのモデル学習のスケールアウトを実現しました。このインフラは、未分類の YouTube 動画像から「ネコ」のような高度な概念を獲得できることを示したほか、Google 検索アプリの音声認識での 25% に達する品質改善や、Google フォトの画像検索の実装などに用いられてきました。また ImageNet が主催する Large Scale Visual Recognition Challenge in 2014 で優勝したインセプション モデルの学習に用いられたほか、DeepDream や画像へのキャプション自動挿入などの開発を支えてきました。

それでも改めて、汎用性、拡張性に富んだ内容にして、かつ、二倍の性能を叩き出しています。 まさに、今世界でトップと言っても言い過ぎではない、機械学習のオープンソースとなります。

TensorFlowってなにができるの?

  • ディープラーニングのための豊富な機能
  • 演算フローをグラフとして定義することで様々な計算処理

TensorFlow は、ディープ ラーニングの実装のための豊富な機能をサポートするほか、演算フローをグラフとして定義することで様々な計算処理を表現でき、ディープ ラーニングに留まらない優れた汎用性を備えます。自由度の高い Python API を提供し、新しいアイディアをすばやく簡単に表現できます。また TensorFlow に備わる自動微分や各種の初期レート最適化の機能は、勾配降下法を使うあらゆる機械学習アルゴリズムの実装で威力を発揮します。ここにあるチュートリアルではいくつかの例を公開しています。

機械学習で実現したいことが、高品質で実現しやすくなったと考えるとわかりやすいです。レコメンドエンジンや画像解析など。また、データサイエンティストと呼ばれる人たちにも有効になる、そんな汎用的なライブラリとなっています。

「TensorFlow」の今後

  • すでにGoogle検索や、今後リリースされる機能の実現に活用中
  • 他の公開済みのアルゴリズムのもTensorFlowに実装予定

すでにGoogleは、Google検索の品質向上や、新機能に「TensorFlow」をどんどん使っているとのことです。 また、内部の研究にも活用しており、勢いを留めることはありません。Googleが自ら開発し、自ら活用しているオープンソースとなります。 その他のアルゴリズムも「TensorFlow」に実装予定とのことなので、今後機会学習系は、「TensorFlow」をどう使うか、という観点で商用利用してもいいと思います。 明らかに機械学習に対するハードルは下がりました。

f:id:gtrend:20151113001914g:plain


TensorFlow: Open source machine learning - YouTube

参考文献(一部記事内引用)