MicrosoftのAzure Machine Learningをかじったので、Google社のApache2.0準拠のOSSであるTensorFlowもトップページだけ翻訳してみた。
翻訳したのが2016/08/17なので既に変わってるかもしれませんが、ヘボい語学力で翻訳したので読みにくいかと思いますが、参照される方はAt your own riskでお願いします。
TensorFlow
https://www.tensorflow.org/
-----
TensorFlow(TM)
「TensorFlowは機械学習のためのオープンソースソフトウェアライブラリです」
TensorFlowについて
TensorFlow(TM:トレードマーク)はデータフローグラフを使った数値計算のためのOSSライブラリです。グラフのノードは数値演算をあらわしており、グラフの辺はノード間で伝達される多次元データ配列(テンソル)をあらわしています。柔軟なアーキテクチャにより1台のデスクトップ、サーバ、もしくは単一のAPIを持つモバイル・デバイス上にある1つ以上のCPUもしくはGPUに計算処理を展開することができます。TensorFlowは当初Googleの人工知能研究組織内のGoogle Brainチームにて活動している研究者と技術者によって機械学習や深層ニューラルネットワークを研究するために開発されていました。しかし、システムは同様に多種多様なその他の領域で適用することは十分に一般的になりました。
データフローグラフとは何?
データフローグラフは、ノードとエッジの有向グラフを使って数値計算を記述します。典型的にノードは数値演算を実装しますが、データ供給、結果のプッシュアウト、既存変数の読み書きのためのエンドポイントも表します。エッジはノード間の入出力関係を表します。これらのデータエッジは動的サイスの多次元データ配列もしくはテンソルを運びます。グラフを通じてのテンソルのフローをあらわすことがTensorFlowの語源です。ノードは計算装置に割り当てられ、非同期で実行し、並行してそれらの入力エッジ上の全てのテンソルが有効になります。
TensorFlowの機能
深い柔軟性
TensorFlowはかたいニュラルネットワークライブラリではありません。もし計算をデータフローグラフで表すことができれば、TensorFlowを使うことができます。グラフを構築し、計算をドライブする内部ループを記述します。ニューラルネットワーク内の一般的なサブグラフを集めるために役に立つツールを提供しますが、ユーザはTensorFlowの上にそれら自身高レベルなライブラリを記述することができます。オペレータの便利で新しい構成の定義はPython関数を記述することと同じくらい簡単で、パフォーマンスにおいて何も犠牲にしません。そして、もし必要とする低レベルデータオペレータがいないのであれば、新しいものを加えるために僅かなC++コードを書いてください。
正しい移植性
TensorFlowはCPUもしくはGPUで動作します。また、デスクトップ、サーバ、もしくは モバイル コンピューティングプラットフォーム上で動作します。特別なハードウェアなしであなたのラップトップ上で機械学習のアイディアで試してみたくありませんか?TensofFlowは、あなたを援護します。コードの改変不要な予め学習されたスケールアップ可能なより早いモデルで?TensofFlowは、あなたを援護します。モバイルで動作するあなたの製品の一部として動作する学習済みモデルをデプロイしたいですか?TensofFlowは、あなたを援護します。クラウド上のサービスとしてモデルを実行させたいという心変わりは?TensofFlowは、あなたを援護します。Dockerコンテナ化してTensorFlowを動かしてみましょう。
研究と製品を結ぶ
機械学習アイディアを研究から製品へと移るために多くのリライトを必要とする日々はさりました。Google社では、TensorFlowで新しいアルゴリズムを実験します、そして、製品チームはTensorFlowを使ってモデルを学習させ、実際の顧客へライブで提供します。TensorFlowを使うことは企業研究者がより早くアイディアを製品化することを援護します。学術研究者がコードを共有し、より直接的により大きな科学的再生産をもたらします。
自動微分
勾配ベースの機械学習アルゴリズムはTensorFlowの自動微分機能から利益を得ます。TensorFlowユーザとして、予測モデルの計算アーキテクチャを定義し、客観的な機能と結合し、データを追加する-TensorFlowは導関数計算をハンドルします。幾つかの値の導関数計算。モデルのその他の値についてはグラフを拡張するため、何が起きているかについて、常に正確に見ることができます。
言語オプション
TensorFlowは、とても使いやすいPythonインターフェイスと、実用的なC++インターフェイスであなたの計算グラフをビルド、実行することができます。スタンドアロンTensorFlow PythonもしくはC++のプログラムを書くか、相互対話型のTensorFlow iPython ノートブックでメモを取り、コードを書き、集めたログを視覚化して試すことができます。これは-SWIGインターフェイスからあなたなお好きな言語へ貢献してもらうための-Go、Java、Lua、JavaScript、やRを使って始めることができます。
パフォーマンス最大化
32個のCPUと4個のカードにありったけの筋肉を使いたい?スレッド、キュー、非同期計算のためのファーストクラスサポートでTensorFlowはあなたの利用できるハードウェアを最大限に活用することができます。あなたのTensorFlowグラフの計算要素を異なるデバイスに自由にわりあててください。そしてコピーをTensorFlowに取り扱わせてください。
誰がTensorFlowを使えるの?
tensorFlowは、学生、研究者、趣味人、ハッカー、エンジニア、開発者、発明家、イノベータ.. Apache2.0 オープンソースライセンス に従えば、誰でも使えます。
Apache2.0 open source license
http://www.apache.org/licenses/LICENSE-2.0
TensofFlowは完全ではありません:機能改善や拡張しようとしています。我々はソースコードの初期リリースを構築し、活発にそれをより良くしています。我々はフィードバックの提供やソースコードの積極的な貢献により機能やライブラリをドライブする活発なオープンソースコミュニティを構築を望んでいます。
なぜGoogleはOSS化したのですか?
もしTensorFlowがとても偉大であるなら、何故所有し続けるよりオープンソース化したのですか?答えはあなたが考えているより簡単:我々は機械学習が製品のイノベートや未来の技術の核となる要素であると信じているからです。この領域の研究はグローバルで成長が早いのですが、標準ツールにかけています。世界中でもっとも優れた機械学習ツールボックスのひとつになると信じて共有化することで、研究アイディアの実現と機械学習製品化のオープンスタンダードを作成したいと願っています。Google技術者はTensorFlowをユーザに直面した製品やサービスに使用します、そして研究グループは研究出版物にそってTensorFlow実装を共有すます。
TensorFlowを始めよう
-----MicrosoftはCNTKをOSS化しているし、GoogleはTensorFlowをOSS化した。
この2社は上にかいてあるとおり、機械学習のデファクトスタンダード狙いなのはわかった。
対してIBMのWatsonは..OSS化していないとすると..ただのニューラルネットワークじゃないってことだろうな、やっぱり...
0 件のコメント:
コメントを投稿