AI(人工知能)に関する用語には専門的なものが多く、「TensorFlow」もそのうちの一つでしょう。「TensorFlow」は、AI(人工知能)を実装、活用したりする人でなければ、普通は知らない単語です。そこで今回は、そうした実装や活用といったことをしない方でも「TensorFlow」とはどのようなものかがわかるように、入門という形でお伝えしていきます。
一言で言うと「TensorFlow」とは・・・
Googleが開発した機械学習ソフトウェアライブラリ「TensorFlow」
Tensorflow(テンソルフロー)とは、ディープラーニングのための機械学習ソフトウェアライブラリです。
※機械学習とは、AI(人工知能)を実現するために現在最も注目を集めている技術です。ディープラーニングは機械学習の一つ。
※ライブラリとは、再利用できるプログラムを集めたもので多くの場合は単体では動かず、主のプログラムの実行を補助するものです。
2016年11月にGoogle社内で使用されていたものが公に無償で公開されました。「TensorFlow」の特徴は、ニューラルネットワークというディープラーニングのベースとなるコンピュータアルゴリズムを構築できること、訓練ができるということです。
※アルゴリズムとは、コンピュータの計算方法、処理のやり方のことです。
※ニューラルネットワークとは、例えばコンピュータに象を認識させる際に、象の条件として「鼻の長さはこれくらい」「肌はこの色」「体の大きさはこれくらい」と無数に指示を出していかなくても、コンピュータが象を認識できるようになる技術のことです。
多くの人から支持されている「TensorFlow」
「TensorFlow」はディープラーニングを利用するためのツールとして、多くの人から選ばれています。
その背景にはまず、「TensorFlow」がWindowsやMacOS、LinuxといったPCのOSだけでなく、AndroidやiOSといったモバイル機器でも使用可能であることが挙げられます。C言語やC++、Pythonといったプログラム言語に対応しています。
また、「TensorFlow」は非常に使いやすく、フローを作って処理するという流れになっているためフローさえ作ってしまえば、あとは数値などを入力するだけで済みます。チュートリアルとして各種フローも用意されており、TensorFlowを入手後すぐに試してみることも可能です。
そして「分散学習」ができるという点も「TensorFlow」が選ばれている理由の一つでしょう。「TensorFlow」はPCやモバイル機器などさまざまな条件で処理が行えるように、複数に分散して並列的に計算処理を実行できるようになっているのです。それだけPCなどの機器にかかる負担も大きくなりますが、機器の故障や通信障害といったアクシデントに対する備えもきちんと行われています。
さらに搭載されている「TensorBoard」というツールは、機械学習がうまくいかなかった場合に、何が原因だったのかを表示してくれます。
こうした背景もあって、ディープラーニングを活用する際には「TensorFlow」が多くの人から選ばれています。
まとめ
つまり、TensorFlowとは、
AI(人工知能)って「なにそれ美味しいの?」ってレベルだった僕が、AIエンジニアを目指してステップを踏んだり踏まれたりしている記事を書いてます。よかったら読んでみてください(実話)。
コメントをどうぞ