
最近、いろいろなところで AI についての話題を耳にします。なんとなくは想像できますが、しかし、AI とは一体どんなものでしょうか? 実は簡単な AI は自分で作ることができます。作ってみることで、AI をより具体的に知り、イメージを持つことができるようになります。
絵を描く AI を例に、そんな AI を実現するにはどんな要素が必要なのか考えてみ、非常にざっくりとですがイメージを掴みます。
この講座の特徴と、学習する内容について概略を説明します。
AI 学習で使う Python というプログラミング言語について、どんなことができるものかを簡単に説明します。
Google Colaboratory (Google Colab と呼びます)を使えるようにするまでの流れを記しています。
Google Account の取得、Chrome のインストールと Google Drive の使い方について、ごんちさんから説明します。
Google Colaboratory を colab.research の webページからインストール(Colabファイルをコピー)する手順を説明します。
Google Colaboratory の使い方について、画面構成とボタンを確認しながら説明します。
Google Colaboratory の使い方について、画面構成とボタンを確認しながら説明します。
Google Colaboratory の設定によって、Colab を使いやすくしましょう。
Python 基礎のパートで作っていくプログラムについて概要を説明します。
最初は、赤ずきん一人 VS 魔王のバトルを作りましょう。
この講座用に用意した Colab ファイルを Google Drive からご自分のドライブにコピーして使用する方法を説明します。
最初に、赤ずきんと魔王が一度ずつ攻撃し合うプログラムを作ります。
最初のプログラムコードについて、内容を説明をします。
python プログラミングの基礎知識:変数と定数について学習しましょう。
データ型とリテラルというものについて説明します。
変数や定数のデータ型を確認する type() 関数についての説明です。
先程のプログラムに登場した変数のデータ型を確認してみましょう。
実行結果欄に変数の中身やメッセージを表示したい時などに使用する print() 関数について説明します。
データ型の変換に使う int(), float(), str() 関数について説明します。
プログラムの中での計算や代入などに使う演算子というものについて説明します。
文字列の結合と反復について説明します。プログラムでどのように扱うかを覚えましょう。
決着がつくまで繰り返すための修正の概要と、その実現のためのアプローチを考えましょう。
先ほど書いたコードについて説明します。
コードに登場した基礎文法を確認しましょう。
空白とインデント、コメントアウトについて、使い方を学習します。
まずはサラッと説明します。
制御構文にはいくつかの種類があります。
条件分岐のための「 if 文」について説明します。簡単な例文を簡単な例文で理解を深めましょう。
Colab に入っている python のベージョンによっては使える match ~ case 文について、参考までご紹介しておきます。
処理を順番に繰り返す for 文について説明します。
for 文の例で使った range() 関数について説明します。例文を書いて試してみましょう。
条件が満たされる間、同じ処理を繰り返す while 文について学習しましょう。
フラグというテクニックによるプログラムの制御について説明します。
for や while の中に書くことで、ループ処理を抜け出すことができる break と continue について学習します。
予約語という言葉についても理解しておきましょう。
戦いの結果に幅が出るように、攻撃の当たり判定を入れ、ダメージ数値計算に多少ランダムな要素を加えます。ここでは、そのための修正アプローチを考えます。
まずは、当たり判定とランダム化のコードを書いてみましょう。その後で一つ一つ説明をしていきます。
先ほど書いたコードに即して、ライブラリとモジュールをインポートする方法を説明します。
グーグルコラボのファイルボタンで、random モジュールと numpy ライブラリがどこに入っているかを確認します。少し難しいですが、モジュールやライブラリはファイルとして入ってくるのだとなんとなくイメージを持てるようになればOKです。
たくさんのデータを格納する箱である「リスト」について学習します。
あらかじめ決められた処理を実行してくれる「メソッド」というものについて学習します。
少し難しくなってきましたが、反復して、一つずつ覚えていきましょう。
メソッドと似ていますが、オブジェクトから呼び出さずにそのまま使える「関数」について学習します。
numpyライブラリの random クラスにある choice() メソッドについての説明です。
random モジュールの uniform() メソッドについての説明です。
上の np.random.choice に登場する np.rondom クラスとは別で、random モジュールというものなので、注意しましょう。
数字を四捨五入する round() 関数について説明します。
関数に関わる言葉について、概要を説明します。
文字列やリストの長さを計測する len() 関数についての説明です。
戻り値のない関数について、print() 関数の例で説明します。
関数は自分で作ることもできます。そのための def キーワードについて、使い方を説明します。
個別の変数を一行ずつ定義していましたが、これを list を使って簡潔にするためにコードを修正します。
まずは簡単に方針を考えましょう。
list を使ったプログラムコードへの修正と、コードの解説を行います。
list とはどのようなもので、どんな特徴を持つのか。ここから少し詳しく学習します。
list の生成、要素の指定、値の代入について、サンプルコードを書きながら学習します。
list に要素を追加する append() メソッドについて説明します。
list から要素を削除する pop() メソッドについて説明します。
list の要素を複数まとめて取得する「スライス」という方法について学習します。慣れるまでは少し難しめですので、反復して練習しましょう。
この講座は、AIって何? Python もプログラミングも初めて、という方が、少しずつ学習しながら機械学習 AI モデルを構築していくための入門者向けの講座です。
ただし、入門者向けと言ってもそこはAI。とっても簡単に、というわけにはいきませんが、その分説明を丁寧に行いますので、何度も反復しながら一つ一つ理解していきましょう。
ちょっとしたものかもしれませんが、ぜひ、データを生成するプログラムの構築からそのデータの分析と AI による予測を体験してみてください。