IPythonとJypyterNotebookの使い方
対話式コマンド実行ができる「IPython」を利用するとPythonやNumpyのコマンドがハイライトされ、コードが読みやすくなります。「JupyterNotebook」はセル毎にコードを記述できる他、マークダウン形式のテキストを記載したり、実行結果を記録することができます。
AI開発環境(ローカル)
IPython/JupyterNotebook使い方
アプリ起動から順に説明しています。
はじめに
使えるアプリ
インストール手順で説明した通り、次の2つがあります。どちらもPythonプログラムを実行できますが、ユーザインタフェース(UI)が異なります。Windowsであれば「すべてのアプリ」から起動します。
- Anaconda Prompt・・対話式コマンド実行(IPython)
- Jupyter Notebook・・セル実行(実行操作はGUI)
最初はMinicondaから始めることが多いです。
JupyterNotebookも少し気にしておく
AIモデルの規模によっては、GPU利用による学習時間の短縮を検討することがあります。ローカル環境でも不可能ではありませんが、自前でGPUを準備するのは大変です。そんな時、Google Colaboratoryを利用すれば誰でも無料でGPUを利用できます。Google ColaboratoryとJupyterNotebookの操作イメージが似ていることを覚えておきましょう。
- 高速に行列計算が可能
- USBのように外付け拡張できない
- 一般に高価
使い方
IPython
Pythonコマンドや機械学習ライブラリの実行を、対話式にコマンド実行できます。対話式なので、「xxx.py」のようなファイルを作成せずにコマンドを実行でき便利です。また、キーワードがハイライトされて見やすくなります。ここでは「IPython」の利用例を紹介します。Anaconda Prompt(Miniconda)より起動します。
以下にコマンドを記載します。後述の「JupyterNotebook」でも同じコマンドを利用します。
ipython
import numpy as np
arr = np.random.randint(1, 10, (2,3))
arr
IPython、Numpyがインポートされていない場合は、次のコマンドを実行してインストールしてください。
- IPython・・「conda install ipython」
- Numpy・・「conda install numpy」
IPythonの特徴をまとめました。
- 対話式にコマンドが実行可能
(「Enter」でコマンド実行するとすぐに結果が返ってくる) - PythonやNumpyのコマンドがハイライトされる
- Pythonプログラム(「.py」ファイル)も実行可能
「IPython」を利用しない場合は「xxx.py」のようなPython実行ファイルを作成し、「Anaconda Prompt」で「python xxx.py」で実行します。なお、「xxx.py」の実行は「IPython」でも可能です。
- Anaconda Prompt・・「python xxx.py」
- IPython・・「!python xxx.py」
Jupyter Notebook
Minicondaと同様にPythonプログラムが実行できます。GUI操作なので感覚で操作が可能ですが、Minicondaに慣れてしまうと、少し使いづらさを感じます。セルの実行にはショートカットキーが用意されているのでコマンド実行も可能です。「Miniconda」インストールでは利用できませんが、Google Colaboratoryでも利用できるノートブック形式になっていることは覚えておきましょう。
ノートブック形式には次のような特徴があります。
- セルごとにコマンド実行(すべてのセルの実行も可能)
- セルには複数のコマンドが記述できる
- マークダウン形式のテキスト文が書ける
- ipynbファイルとして保存される(「GoogleColaboratory」と同じ)
- 保存先はユーザのホームディレクトリ(例:C:\Users\futa)
上記にも記載しましたが、GoogleColaboratoryと操作性が似ていることを覚えておきます。
参考
Numpyについて
MinicondaをインストールしてAI開発ができる環境が整うと、最初に「IPython」を起動してNumpyの行列計算を実行することが多いです。確かにAIの内部では行列計算が行われているのでNumpyを使ってみるのですが、高校数学で習う行列計算をイメージすると落とし穴にはまってしまいます。E資格受験を通して感じたAIを理解するために必要なNumpyの注目ポイントについて、以下のページで説明しています。
Numpyのコマンドリファレンスはこちらのページ(外部リンク)が参考になります。
その他の機械学習ライブラリについて
Numpyの他にも機械学習ライブラリがたくさんあります。代表的なものをこちらのページにまとめました。
以上




