実践型AIプログラミング特講 環境構築編 #6

実践型AIプログラミング特講 環境構築編 #6

今回はオンライン上だけではなくご自身のパソコンにて機械学習が実装できる環境構築をしてみましょう。やはりweb開発ツールとは異なり少々複雑に感じるかもしれませんがI T分野の現場では基本的にローカル環境にて実装できる環境を整備することが前提で話が進みます。一度環境構築を経験しておくことで、その知識を生かして環境構築しやすくなると思います。是非本記事を一読していただいてインストールの仕方をマスターしましょう。

Jupyter Notebookの使い方

Python でプログラムを試すのに便利なのが、Jupyter Notebook です。このツールを使うと、プログラムとその実行結果、ドキュメントを1つのノートにまとめることができます。

Jupyter Notebook とは?

Jupyter Notebook は、Python のエディターと実行環境を1つにまとめた便利なツールです。前回で紹介した Google Colaboratory は、この Jupyter Notebook を改良して、Web サービスとして提供しているものです。Jupyter Notebook を使うには、自分の PCにインストールする必要があります。しかし、Colaboratory と同じで、Web ブラウザー上でPython のプログラムを書いて、実行ボタンを押すと、すぐに結果が表示されます。そのため、気軽にプログラムを実行できます。ノートブック (Notebook) というだけあって、1つのノートブックのなかに複数の Python プログラムを記述できます。そして、実行結果もノートの中に残ります。過去に作成したノートブックを開くと、プログラムとその結果を確認できます。加えて、メモや表、画像を書き込むこともできます。しかも、Python の対話実行環境の「IDLE Shell」のように、それ以前のプログラムで設定した変数を、プログラムを実行した後も参照できます。

機械学習のプログラム開発に役立つ

Jupyter Notebook の主な機能をまとめてみましょう。・Web ブラウザー上でプログラムを開発できる・Python のプログラムをすぐに実行できる・1つのノートに複数のプログラムとその結果を記録できる・プログラムと一緒にドキュメントも記録できる上記のような特徴があるため、Python の文法を確認したいケースなど、初心者の人にもお勧めです。しかし、Jupyter Notebook が本当に役立つのは、データ解析や機械学習など、試行錯誤しながらプログラムを完成させるような場面です。先ほど、機械学習のシナリオで確認したように、機械学習のプログラムを作る場合には、一度プログラムを作って動いたら終わりということは少ないでしょう。機械学習では、プログラムを実行したら実行結果を確認し、結果に応じてアルゴリズムを変更したり、パラメーターを調整しながらプログラムを編集したりする場面が多くあります。そのため、JupyterNotebook が大いに役立つことでしょう。

Jupyter Notebook を実行しよう

Anaconda およびJupyter Notebook のインストールは、検索エンジンで調べるとリソースは無限に出てくる上、インストール方法も複雑ではないので試しにインストールしてみましょう。インストールが完了したら、Jupyter Notebook を起動してみましょう。Windows であれば、スタートメニューから [Anaconda > Jupyter Notebook] で実行できます。macOS では、Spotlight から[Anaconda-Navigator] を起動し、一覧にあるJupyter Notebook のアイコンから起動します。

コマンドラインからの起動

Jupyter Notebookはコマンドラインのツールとしても提供されています。そのため、Anaconda がインストールされており、インストールディレクトリーにパスが通っている状況であれば、コマンドラインから、以下のようにタイプすることで起動できます。

$ jupyter notebook

「Jupyter Notebook」コマンドを実行すると、コマンドを実行したディレクトリーをカレントディレクトリーとして、Jupyter Notebookが起動します。その際、デフォルトのWeb ブラウザーを起動してくれます新規ノートブックを作成して実行してみようJupyter Notebook を起動すると、次のようなファイルとディレクトリー一覧の画面が表示されます。そこで、画面右上にある[New]のボタンをクリックしましょう。すると、ポップアップでメニューが出るので[Python3]をクリックしましょう。

画像:起動するとファイル一覧画面が出るので、【New > Python3】をクリックしよう

すると、以下のようなノートブックの画面が表示されます。メニューの下に表示されている In[]というテキストボックス Python のプログラムを記述して、メニューにある実行ボタン国をクリックします。するとプログラムの実行結果が、テキストボックスの直下(Out [1]の部分)に表示されます。「3+5」などと入力して実行してみましょう。

 

ノートブックには複数のセルを挿入できる

Jupyter Notebook の特徴は、1つのノートブックのなかに複数のプログラムを記述できる点にあります。先ほど、簡単な計算を行ったノートに、別のプログラムを追加してみましょう。Jupyter Notebook のメニューから Insert > Insert Cell Belowl(セルを下側に追加)を選んでクリックします。すると、空白のセルが下に追加されます。

画像:セルを追加

ちなみに、セル (Cell) には、小区画(小部屋)という意味があります。Jupyter Notebook ではプログラムを記述するためのテキストボックスとその結果をセットにしたものがセルとなります。これで、1つのノートブックに複数のセルを追加できます。

一度に複数のセルを実行できる

さらに、複数のセルをノートブックに追加していたとき、上から順にすべてのセルを実行することも可能です。メニューから[Cell > Run All] を選んでクリックすると、一番上のセルから順に下へと実行していきます。プログラムの内容を再計算したいときなどに便利です。

画像:複数のセルを一度に実行できる

Python をリセットしたい場合

もしも、Jupyter Notebook で、うまくプログラムが実行できなくなってしまった場合は、Python をリセットしてみましょう。その場合、メニューから [Kernel > Restart] をクリックします。そもそもJupyter Notebook では、ノートブックを開くと、そのタイミングでPython の対話実行環境が起動します。そこでセルを実行すると、その実行環境上でプログラムが実行される仕組みになっています。そのため、プログラムがうまく作動しない場合に、Python をリセットすると問題が解決することがあります。また、変数を初期化したい場合にもリセットが役立ちます。

便利なショートカットキーも利用可能

Jupyter Notebook で素早くセルを挿入するには、[ESC]+[B] キーを押します。 Jupyter Notebookでは、[ESC] キーを押すとキーボード操作可能な「コマンドモード (Command Mode)」になり、B] キーを押すことで、セルを追加できます。そして、プログラムの入力中は「エディットモード (Edit Mode)」と呼ばれる状態になり、[Ctrl]+[Enter] キーを押すことで、プログラムを実行できます。なお、ショートカットキーの一覧を確認するには、[Help > Keyboard Shortcuts] をクリックします。キーをカスタマイズすることも可能です。

画像:キーボードでも Jupyter を操作できる

値を確認できるだけでなくグラフも表示できる

Jupyter Notebookには、プログラムの実行結果が表示されますが、実行結果にグラフの出力が可能です。たとえば、簡単なサイン波のグラフを描画してみましょう。新規セルを挿入し、以下のプログラムを記述します。

import numpy as npimport

matplotlib.pyplot as plt

x = np. arange (0, 10, 0.1)

y = np.sin(x)

plt.plot (x, y)

plt.show()

実行ボタンを押すと、以下のグラフが表示されます。ここでは、NumPy や matplotlib.pyplot などのモジュールを利用してグラフを描画しています。

画像: サイン波のグラフを出力したところ

Markdown 記法でドキュメント生成も可能Jupyter Notebook がおもしろいのは、プログラムだけでなく、Markdown 記法を使って本格的なドキュメントの作成が可能というところです。新規セルを作成したら、メニューより[Cell > Cell Type >Markdown] をクリックしましょう。

画像: Markdown 記法でドキュメントの作成も可能

なお Markdown 記法というのは、「# 見出し」や「-リスト」などの記号を使って、テキストをマークアップする記法です。Markdown 記法でドキュメントを記述し、実行ボタンを押すと、Markdown がHTMLにレンダリングされて表示されます。このように、Jupyter Notebook はとても便利なので、基本的な操作方法をマスターしておくと良いでしょう。

この節のまとめ

→ Jupyter Notebook を使うと機械学習のプログラム開発がはかどる

→1つのノートブックのなかに複数のセルを作成できるグラフを出力したり、コメントを書き込むことができる

個別にプログラムを実行する方法

大半のプログラムは Jupyter Notebook 上で実行できますが、いくつかのブログラムはコマンドラインから実行する必要があります。ここでは、簡単にコマンドラインの使い方を紹介します。

コマンドラインとは?

コマンドラインは、コンピューターへの命令を、キーボードから『コマンド』と呼ばれる文字列を入力することによって行う入力方法のことです。本書で『コマンドライン』という記述があれば、Windows なら『Anaconda Prompt』、macOS や Linux なら『ターミナル』を利用してプログラムを実行することを意味します。

Windows10 で Anaconda Prompt を起動する方法

Windows では、スタートメニューから[Anaconda > Anaconda Prompt] をクリックします。

画像:Anaconda Prompt が起動したところ

macOS でターミナルを起動する方法

macOS では、Spotlight( スクリーン右上にある虫眼鏡のアイコン)をクリックし、ウィンドウが表示されたら「ターミナル.app」と入力し、ターミナルを起動します。

画像:ターミナルが起動したところ

プログラムを実行するには?

コマンドラインから Python のプログラムを実行するには、以下のように入力します。このとき、「$」はコマンドラインに入力をすることを意味する記号で、実際に入力する必要はありません。

$ python(プログラムファイル.py)

Windows の AnacondaPrompt や、macOS のターミナルでは、ファイルをコマンドラインにドラッグ&ドロップするとファイルのパスが自動的に入力されます。なお、Ubuntu/Linux では、「python」コマンド名が「python3」となっています。本書の「python」コマンドを「python3」と読み替えてください。

モジュールのインストールにも利用

コマンドラインは、プログラムを実行するだけでなく、Python の拡張モジュールをインストールする際にも利用します。

この節のまとめ

・コマンドラインから Python のブログラムを実行できる

・本書のプログラムのなかには、コマンドラインから実行しなくてはならないものもある

いかがでしたでしょうか。やや初心者の方には難しいコンテンツだったとは思いますが本記事を参考に環境構築の一辺に触れていただけたことで高尚な言い回しになりますが一生使える普遍的な財産になるでしょう。インプットした内容を踏まえて様々な開発統合環境をインストールし、様々なプログラミング及び用途に特化した環境をご自身のパソコンで構築してみてはいかがでしょうか。

プログラミングカテゴリの最新記事