Python と AI についての解説ページです。PythonはAI用の言語というわけではありません。例えば、当サイトでは WEBアプリの開発 についても解説しています。とは言え、AI・機械学習を勉強する人はPythonを避けて通ることはできません。前半でPythonの開発環境、後半でAI・機械学習の入り口について説明します。
Python
Apple Silicon Mac の人はまずこの記事をおすすめします。
Apple Silicon (M1) MacでPython環境を作る
Windowsの場合はこちらを見てください。
Jupyter Notebook
Python を使うなら Jupyter Notebook をインストールしておきましょう。Jupyter Notebook を単体でインストールすることもできますが、Python の実行環境を管理できるように Anaconda 等を使ってインストールすることを勧めます。Windows か Intel Mac なら Anaconda を、Apple Silicon Mac なら miniforge をインストールしてください。Intel Mac と Apple Silicon Mac の違いがわからない場合は こちらの記事 を参照してください。
Anacondaのインストール (Windows、Intel Macの場合)
miniforgeのインストール (Apple Silicon Macの場合)
これで Jupyter Notebook を起動できるようになったはずです。次は、基本的な使い方を覚えてください。
Pythonの色々なライブラリを使い始めると、それぞれのバージョンの組み合わせで不都合が起きることがあります。そのような場合は目的別に専用の実行環境を作ります。Tensorflowのインストール時にそのような手順がありますので そちら を参考にしてください。
scikit-learn
scikit-learnはPythonの機械学習ライブラリです。いくつかの機械学習アルゴリズムの実装を含んでおり、モデルオブジェクトを簡単に記述できます。深層学習に関しては後で述べる Tensorflow 等を使うことが多いです。
テスト環境の作り方は後述の Tensorflow と同じで、インストールするものが違うだけです。いずれ Tensorflow も勉強する人は、Tensorflowの環境を作っておいて、追加で scikit-learn をインストールするのが良い戦略です。Apple Silicon Mac での確認した内容ですが、scikit-learn の環境を作って Jupyter Notebook を起動するまでのコマンド履歴を書いておきます。詳しいことは Tensorflow の項目を参考にしてください。
1 2 3 4 5 6 |
$ conda create -n sklearn python=3.8 $ conda activate sklearn $ conda install matplotlib $ conda install scikit-learn $ conda install jupyter $ jupyter notebook |
Tensorflow
Tensorflow は Python を使います。Windows または Intel Mac なら Anaconda を、Apple Silicon Mac なら miniforge をインストールして、さらに Jupyter Notebook も使えるようにしておいてください。手順はこのページの少し上、Jupyter Notebook のところを参照してください。
Anaconda または miniforge のインストールができたら Tensorflow の動作環境を作ります。Pythonではライブラリのバージョンの組み合わせで不都合が起きることがあります。そのような場合は目的別に専用の実行環境を作ります。次の説明は Tensorflow の専用の環境を作っていますが、他の目的で専用の実行環境を作るときにも応用できます。
Tensorflowの環境を作る(Anaconda編) (Windows、Intel Macの場合)
Tensorflowの環境を作る(miniforge編) (Apple Silicon Macの場合)
Tensorflowを実際に動かしてみましょう。
OpenCV
簡単な形状の物体なら画像処理だけで認識できてしまいます。
顔などの特徴を学習させたカスケード分類器を使うと簡単に画像認識できてしまいます。
YOLOv5
YOLOで物体認識を試してみます。
エッジデバイス
機械学習には大量のデータや計算能力が必要なので、エッジデバイスで機械学習を実行する(エッジコンピューティング)のは実用的ではありませんでした。ところが、近年その様な目的に特化したデバイスが登場してきています。NVIDIA が開発した Jetson シリーズはそのひとつです。
生成AI – ChatGPT
ChatGPT API – ChatGPT を API 経由でプログラムから利用できます。
実装例
生成AIが大流行していますが、M5Stack と ChatGPT を使ったスタックチャンは楽しいです。作り方は こちら です。
生成AI – Gemini
Gemini API – Google の Gemini も API 経由で利用できます。
実装例
スマホで動作する Gemini アプリは純正のものもありますが、Flutter に組み込む実装例がネット上で見られますのでやってみました。ここでは画像を扱うので gemini-pro-vision モデルを使用しています。
コメント