【テンソルフロー】

TensorFlow とは?

💡 Googleが育てた「研究から本番まで一気通貫」のMLプラットフォーム
📌 このページのポイント
TensorFlow — MLフレームワークの全体像 データ 画像・テキスト 数値データ モデル構築 Kerasレイヤー ニューラルネットワーク 計算グラフ定義 学習・訓練 GPU/TPU活用 自動微分 最適化 推論 TF Serving TF Lite TensorFlowエコシステム TensorBoard Keras API TF Hub TF.js データ取得から推論デプロイまで一貫してサポートするMLフレームワーク
TensorFlowのイメージ
ひよこ ひよこ

TensorFlowってPyTorchとよく比較されるけど、どう違うの?

ペンギン先生 ペンギン先生

一言でいうと、TensorFlowは「本番環境への展開」が得意なフレームワークだよ。スマホアプリに組み込んだり、ブラウザで動かしたり、クラウドで大規模に運用したり、そういう「作ったあと」の部分が強いんだ

ひよこ ひよこ

Kerasっていうのもよく聞くけど、別物なの?

ペンギン先生 ペンギン先生

KerasはもともとTensorFlowとは独立した高レベルAPIだったんだけど、今はTensorFlowに完全統合されてるよ。「tf.keras」として使うのが標準で、数行のコードでニューラルネットを組めるから入門にもぴったりだね

ひよこ ひよこ

最近はPyTorchの方が人気って聞いたけど、TensorFlowはオワコン?

ペンギン先生 ペンギン先生

研究分野ではPyTorch優勢なのは事実だけど、オワコンは言い過ぎだよ。Google CloudAndroid・Chromiumのエコシステムとの連携はTensorFlowが圧倒的だし、TensorFlow Liteはエッジデバイス向けで今でも最有力選択肢なんだ

ひよこ ひよこ

じゃあ使い分けるのがベストってこと?

ペンギン先生 ペンギン先生

そうだね。実はベテランエンジニアでも意外と知らないんだけど、TensorFlowには「SavedModel」っていう形式があって、学習済みモデルPythonなしで動かせるんだよ。C++Javaから直接推論できるから、組み込み系やゲームエンジンとの統合ではかなり重宝されてるんだ

ひよこ ひよこ

Pythonなしで動くの!?それはすごいね

ペンギン先生 ペンギン先生

そうなんだよ。あとTensorFlowのエコシステムで見落とされがちなのが「TFX(TensorFlow Extended)」だね。データの前処理からモデルの検証・デプロイ・モニタリングまで全部パイプラインで管理できるから、MLOpsを本格的にやるなら今でもTFXは有力な選択肢だよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「TensorFlow」って出てきたら「Google製の本番環境に強いMLフレームワーク」と思えればだいたいOK!
📖 おまけ:英語の意味
「TensorFlow」 = テンソルの流れ
💬 Tensor(多次元配列)がグラフの中をFlow(流れる)ように計算されることが名前の由来だよ。数学のテンソルとはちょっとニュアンスが違うけどね
← 用語集にもどる