Lesson 1 ディープラーニングを始めるための、Python基礎文法入門機械学習&ディープラーニング入門(Python編)

一般的にディープラーニングはPython言語で開発する。実際に開発でよく使うPython言語の基本文法を厳選し、それらを図解で解説していく連載の初回である今回は、Python言語のバージョンについて説明する。

» 2018年12月26日 05時00分 公開
[一色政彦デジタルアドバンテージ]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「機械学習&ディープラーニング入門(Python編)」のインデックス

連載目次

ご注意:本記事は、@IT/Deep Insider編集部(デジタルアドバンテージ社)が「deepinsider.jp」というサイトから、内容を改変することなく、そのまま「@IT」へと転載したものです。このため用字用語の統一ルールなどは@ITのそれとは一致しません。あらかじめご了承ください。

はじめに

【これを学ぼう】Pythonの基礎文法


マナブ:にんまり

ディープラーニングのプログラムって、Python言語で作るんだよね?


藍:厳しく教える

そうよ。今日からはプログラミングの基本的な考え方も含めて、Pythonの基礎中の基礎の文法を説明していくね。


読者対象

  • 初めてディープラーニングや機械学習を学び始めるが、プログラミングも初めて学ぶ方

学習内容

 ディープラーニングのモデルを作成するためのプログラムは、Pythonを使って開発するのが一般的だ。そのPython言語の基礎文法を、本当によく使うものに絞って解説する。

 本連載は、「プログラミングがまったくの未経験で、知識ゼロの状態から、すばやくディープラーニングの実践に入りたい人」を意識して書いている。つまり、文法解説としては、必要最低限のラインを狙っており、逆にデメリットを見ると「完ぺきではない」と言える。

 「Python言語の文法をしっかりと丁寧に学びたい」という人は、『Python入門連載』やPython言語の公式リファレンスなど、完全な文法解説(Web上の連載や紙の書籍など)を活用することをお勧めする。もちろん本稿でざっと概要を学んでから、本格的に別の連載や書籍に当たるというのでもよいだろう。

実行環境

 本連載は、Pythonコードを手元で実行しながら、読み進めることを想定している。

 Pythonの実行環境についてあまり知らないという人は、『Google Colaboratory入門』を、プログラミング自体も初めてという方は、『機械学習&ディープラーニング入門(コンピューター概論編)』を一読しておくことをお勧めする。

 Pythonコードの実行環境としては、Google Colaboratory(以下、Google Colab)を用いる。Google Colabは、インタラクティブシェルを活用したノートブック形式のオンラインPython実行環境で、(2018年12月時点では)誰でも無償で利用できる。初心者や学習者にはうってつけの環境である。

 Python言語のバージョンは3系を使うことを想定している。Pythonのバージョンについては、本稿で解説する。

デモとサンプルコード

 本連載のすべてのサンプルコードは、下記のリンク先で実行もしくは参照できる。


Google Colabで実行する
GitHubでソースコードを見る

 基本的には自分の手を動かしながらコードを書くことをお勧めするが、時間節約のために簡単にコードを実行しながら学びたいという方は、上記のGoogle Colabのノートブックを開いて、それを自身のGoogleドライブにコピーしてほしい(具体的には、Google Colabのメニューバーにある[ファイル]メニューの[ドライブにコピーを保存]をクリックすればよい)。コピー後のノートブックを上から順に実行していき、分からないところだけ、本連載の本文を参照すれば、より短時間で文法を学べるだろう(ただし、現時点ではすべてのサンプルコードはまだそろっていない。本連載が完結してはじめてそろう予定なので、この手順を実行するには3月ごろまで待ってほしい)。

本連載のゴール

 Pythonによるディープラーニングの実装を学び始めたときに、「ディープラーニングの理解の前に、そもそもPythonコードそのものが何をやっているか分からない……」と戸惑ってしまわないためには、どのくらいの基礎知識を身に付けておけばよいだろうか?

 この疑問に対する解答を、本連載は、ライブラリ「TensorFlow」の公式チュートリアルのサンプルコードの読み方が、ある程度分かるレベルに達すること、と定義した。

 具体的には、以下の図1-a/b/c/dのコードが読めるし、意味も理解できようになることが、本連載の最終的なゴールである(各図のコードは、2018年10月時点のもの。公式チュートリアルの内容やコードは頻繁に更新されており、読者が本稿を読むときには違うコードになっている可能性が高いので注意してほしい)。

TensorFlowの公式チュートリアルのサンプルコード(1) 図1-a TensorFlowの公式チュートリアルのサンプルコード(1)

TensorFlowの公式チュートリアルのサンプルコード 図1-b TensorFlowの公式チュートリアルのサンプルコード(2)

TensorFlowの公式チュートリアルのサンプルコード 図1-c TensorFlowの公式チュートリアルのサンプルコード(3)

TensorFlowの公式チュートリアルのサンプルコード 図1-d TensorFlowの公式チュートリアルのサンプルコード(4)

Python言語が使いこなせるようになるには

 ただし、筆者の経験から言っても、コードを読めるようになったからといって、自分でコードがスラスラと書けるレベル、すなわち「Pythonプログラミングができるレベル」にすぐに達するわけではない。Python言語の文法書などを参考にしながら何とかコードが書けるようになるのが1〜数週間後、自信を持ってPython言語を使いこなせるようになるのが1〜数カ月後、といった期間がかかることが一般的だ。その理由は、プログラミングには知識の定着と慣れが、ある程度必要だからである。

 だからといって、じゃあ数カ月かけてマスターしてください、と言うつもりはない。とりあえず、Python言語の文法を一通り学習&体験したら、あとはOJT(オン・ザ・ジョブ・トレーニング)的にディープラーニングのサンプルプログラムなどを書き写したりする中で、分からない部分があれば自分で調べたり勉強し直したりしながら、Python言語を徐々に体得していけばよい。いわゆる「習うより慣れろ」形式の学習スタイルである。

Python言語の基礎文法

 それではさっそく、基礎文法についての説明を開始しよう。まず今回は、Python言語のバージョンについて説明する。

Python言語のバージョン

 Python言語のバージョンには、次の2つの系統がある。

 当然、バージョン3系が新しく、冒頭の「実行環境」でも示したように、本連載ではそちらを利用する(なお、「最新」としたバージョン番号は2018年12月時点のもの。最新のバージョン番号については、Python.orgの公式ダウンロードページなどを参考にしてほしい)。

 Python言語の文法仕様は2系と3系で一部互換性がない。よって本連載の基礎文法の解説は「3系でのみ通じる話」となっているので注意してほしい。

 ただし、何らかの理由で2系を利用せざるを得ない場面もあるかもしれない。そこで、2系の実行環境であっても、3系の文法をある程度使えるようにする方法について、Lesson 13で説明する*1全18レッスンの予定)。

*1 ここですぐに説明しない理由は、3系の文法を有効化するためのコードを何行か書く必要があるためだ。そのコードの内容・意味を説明するには、事前に、ある程度の基礎文法を理解しておかなければならない。


Google ColaboratoryでのPython 3選択

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。