About Python

AI開発のための言語Python

プログラミング言語と言えば、C言語を思いつく方も多いと思います。C言語は比較的古い言語で、ソースコードが多くなること、プログラムの実行にコンパイルを実行する手間があるなどという理由からAI開発ではあまり使用されません。

AIの開発では、Pythonと呼ばれる言語が多く使われています。理由は、C言語に比べ軽量なプログラミング言語で少ないソースコードで済むことから、言語を習得しやすいです。さらにAIの開発で肝となるフレームワークの多くはPythonの言語で書かれています。よってAI開発においてはPythonを選択すると良いかと思います。

Google Colaboratoryとは

Colaboratory は、完全にクラウドで実行される Jupyter ノートブック環境です。設定不要で、無料でご利用になれます。Colaboratory を使用すると、コードの記述と実行、解析の保存や共有、強力なコンピューティング リソースへのアクセスなどをブラウザからすべて無料で行えます。

AIを開発するために便利なフレームワーク(TensorFlowなど)予め用意したので、初心者でも手軽いにAIを試せます。

 

フレームワーク・ライブラリとは

世の中にはAIを開発するために便利なツールがOSS(オープンソースソフトウェア)として提供されています。その中でもフレームワークとライブラリがどのようなものか理解しておきましょう。

ライブラリとは、ある機能を提供するコードの集まりのことで、機械学習やディープラーニングの開発において、Pythonのコードを簡易的に記述するために使用されます。その様々な機能のライブラリを複数集めたまとまりをフレームワークと呼びます。ライブラリとフレームワークはほぼ同義で使われることがあります。

 

ここでは機械学習やディープラーニングの開発で使いやすいフレームワークを3つ挙げてみます。

・ TensorFlow

Googleが開発している機械学習、ディープラーニングのフレームワークでTensor(多次元配列)の操作に特化しており、「脳を模した機械学習モデル」と呼ばれるニューラルネットを効率的に実装できます。

・ PyTorch

Facebookが開発を主導し、その書きやすさと使いやすさから人気があり、非常に柔軟なニューラルネットワークの記述ができ、今主流であるディープラーニングフレームワークの中でもかなりの人気を誇ります。

・ scikit-learn

Pythonの代表的な機械学習のフレームワークで様々な機械学習のアルゴリズムがクラスとして用意されていて、簡単に機械学習を試すことができます。

 

ここまでの説明にでてきた、GPU+OS(Linux)+フレームワーク(ライブラリ)があれば、まずはAI開発を始めることが可能です。試しに動作させてみたいという方はここまでの情報参考にしてみてください。

 

ただし、フレームワーク・ライブラリとその上で開発するアプリケーションは非常に依存関係が強いという特徴があり、開発中に あるライブラリを最新のものに更新すると、そのライブラリが含まれるフレームワーク全体が動かない、過去に開発したものが使えないという事態が発生します。

その問題を予め回避する方法として、AI開発環境の仮想技術を活用することをおすすめします。ただの仮想技術というのではなくAI開発環境の構築を飛躍的に簡単にすることもできるので、なおさら知っておいてほしい技術です。

wp-api & sample apps