TensorFlow 【TF】
概要
TensorFlow(TF)とは、米グーグル(Google)社が開発・公開している、機械学習モデルの構築を行うためのライブラリ。開発者は自分のソフトウェアにニューラルネットワークなどの機械学習システムを組み込むことができる。TensorFlowの中核は「データフローグラフ」(data flow graph)という方式で処理を行う数値計算ライブラリとなっている。これは個々の計算手順を任意の構造に繋ぎ合わせたグラフ構造を定義し、そこにデータを次々流していくという処理方式で、データ構造の基本として数学における「テンソル」(tensor)を用いることが名称の由来となっている。テンソルは任意の次元を持つデータ列で、プログラミングにおける多次元配列に相当する。
TensorFlowはデータフローグラフとして定義できる様々な演算やデータ処理を実行でき、高い汎用性を持つが、これをニューラルネットワーク(NN:Nueral Network)による機械学習(ML:Machine Learning)、とりわけ、深い階層を用いて学習を行う「ディープラーニング」(深層学習:deep learning)に適用できる点が注目されている。
初版はGoogle社によって2015年に発表され、Apacheライセンスに基づいてオープンソースソフトウェアとして公開されている。主な対応プラットフォームはWindowsやmacOS、Linuxで、iOSやAndroidなどのモバイル環境、Raspberry Piなどの組み込み環境向けには「TensorFlow Lite」が提供される。
標準ではC言語/C++言語、Python、Java、Go言語などのプログラミング言語から利用でき、WebブラウザやNode.js上のJavaScript向けには「TensorFlow.js」が提供される。作成した学習モデルは異なる言語のプログラムからも利用できる。NVIDIA社のGPUやGoogle社のTPUなどのプロセッサを利用して計算を高速化する機能も内蔵されている。