コース
7年生のAI:AIプログラミングの基礎
Pythonを学び、データをあつかい、モデルを学習させて、小さなAIアプリを作ろう。
レッスンをじゅんばんにやろう。おわるころには、変数、if文、ループ、関数、リスト、辞書を使ってPythonを書き、点数を記録するクイズのプログラムを作れる。実行する前にAIが書いたコードを説明でき、AIにエラーを説明させて直せて、どの部分を自分が書いたか言える。CSVファイルを読み、平均と中央値を求め、グラフを作れる。Pythonのライブラリで分類器のモデルを学習させて正解率を測り、10問に答えるチャットボットを作り、答えを確かめる練習アプリを見せられる。
このレッスンのつかいかた
- 「これをやる」のレッスンからはじめよう。なまえの下のぶんが、ひとりでできたら、つぎにすすもう。
- はじめにゲームをしよう。それからクイズをしよう。10問中8問正解で合格。ワークシートは紙。答えは下にある。
- どのレッスンも、まえのレッスンの上に積み重なる。コードは自分で打ち、実行して、一つ変えて何が起きるか見よう。
- プログラミングのレッスンはPythonを使う。無料のオンラインエディタで足りる。先生が認めたAIツールだけを使い、AIが書いたコードは実行する前に読み、個人情報をチャットボットに貼り付けない。
どのレッスンにもゲーム、クイズ、ワークシートがあります。
0/36
Pythonの基礎
- 1こんにちは、Pythonこんにちはのメッセージを表示するPythonプログラムを実行する。
- Pythonのエディタを開く。
- printで文字を表示する。
- 簡単なエラーメッセージを読んで直す。
- 2変数変数に値を入れて、値を変える。
- 数と文字の変数を作る。
- 変数の値を変える。
- わかりやすい変数名を選ぶ。
- 3Pythonの計算Pythonの演算子で計算する。
- +、-、*、/、//、% を使う。
- 計算の順序に従う。
- 文字と数を変換する。
- 4入力と出力数を聞く、入力と出力の電卓を作る。
- ユーザーから入力を読む。
- 入力を数に変える。
- わかりやすい答えを表示する。
制御の流れ
- 5if文if、elif、elseで、何が起きるか選ぶ。
- ==、<、> で値を比べる。
- if、elif、else のブロックを書く。
- インデントを正しく使う。
- 6whileループ条件が変わるまで、whileループで繰り返す。
- whileループを書く。
- 条件かbreakでループを止める。
- 無限ループを見つけて直す。
- 7forループ決まった回数、forループで繰り返す。
- forとrangeを使う。
- ループの中で数を合計する。
- forとwhileのどちらを使うか選ぶ。
- 8クイズのプログラム点数を記録するクイズのプログラムを作る。
- 5問出す。
- それぞれの答えを確かめる。
- 最後の点数を表示する。
関数とデータ
- 9関数引数とreturnの値がある関数を書く。
- defで関数を定義する。
- 引数を渡す。
- returnで結果を返して、その結果を使う。
- 10リストリストに項目を入れて、リストの項目を繰り返す。
- リストを作り、追加し、削除する。
- リストを繰り返す。
- いちばん大きい項目を見つける。
- 11辞書辞書でキーから値を調べる。
- キーと値の辞書を作る。
- 値を調べ、追加し、変える。
- キーと値を繰り返す。
- 12データの整理記録を並べ替え、検索するデータの整理プログラムを作る。
- 記録を辞書のリストとして保存する。
- 項目で検索する。
- 項目で並べ替える。
AIといっしょにプログラミング
- 13AIにコードを頼むAIにコードを頼む、はっきりした依頼を書く。
- 目的、入力、出力を言う。
- 例を出す。
- あいまいな依頼と、はっきりした依頼を比べる。
- 14実行する前に読む実行する前に、AIが書いたコードを説明する。
- 各行を自分の言葉で説明する。
- わからない行を見つけて調べる。
- データを消したり送ったりしそうなコードを見つける。
- 15AIでデバッグAIでデバッグし、エラーを説明させて直す。
- エラーと、原因のコードを共有する。
- 直し方だけでなく、説明を頼む。
- 直しをテストする。
- 16自分のコード、自分の作品どの部分が自分のコード、自分の作品で、どの部分をAIが提案したか説明する。
- AIが提案したコードにコメントを付ける。
- クラスのAI利用のルールに従う。
- AIの部分を一つ、自分で書き直す。
データのあつかい
- 17CSVファイルPythonでCSVファイルを読む。
- CSVファイルを開く。
- 各行を読む。
- 数の列を数に変える。
- 18基本の統計平均、中央値、範囲を求める。
- コードで平均、中央値、範囲を計算する。
- 平均と中央値を比べる。
- 外れ値を見つける。
- 19グラフ棒グラフと折れ線グラフを作る。
- 棒グラフを描く。
- 折れ線グラフを描く。
- タイトルと軸のラベルを付ける。
- 20データセットを調べる小さなデータセットについて、3つの質問に答える。
- 3つの質問を書く。
- コードで答える。
- 一つの答えをグラフで示す。
機械学習
- 21特徴とラベルデータを特徴とラベルに分ける。
- ラベルの列を選ぶ。
- 特徴の列を選ぶ。
- コードでXとyを作る。
- 22モデルを学習させるPythonのライブラリで分類器のモデルを学習させる。
- scikit-learnから分類器をインポートする。
- 学習データでfitする。
- 新しい例を予測する。
- 23モデルをテストするモデルをテストし、テストデータで正解率を測る。
- データを学習用とテスト用に分ける。
- 正解率を計算する。
- まちがえた例を表示する。
- 24分類のプロジェクト自分の小さなデータセットで、分類のモデルを学習させてテストする。
- データセットを集めるか選ぶ。
- 分類器を学習させ、テストする。
- まちがいを一つ説明する。
チャットボットづくり
- 25会話の流れ短い会話の流れを描く。
- あいさつ、質問、さよならを地図にする。
- ボットが理解できないときの流れを計画する。
- 地図をルールのリストにする。
- 26キーワードの照合キーワードの照合でメッセージに答える。
- キーワードと返事を辞書に入れる。
- メッセージの中のキーワードを見つける。
- 標準の返事を返す。
- 27テキストを整える照合の前に、テキストを小文字にして句読点を取る。
- メッセージを小文字にする。
- 句読点を取る。
- メッセージを単語に分ける。
- 28ルール型チャットボット10問に答えるルール型チャットボットを作る。
- 学校の図書館のようなテーマを選ぶ。
- 質問と返事のルールを10個書く。
- 友だちとテストする。
AIの組み込み
- 29関数としてのモデルモデルを、入力を入れて予測を出す関数として説明する。
- 学習済みモデルを関数で包む。
- プログラムの別の部分から呼び出す。
- 使えない入力を処理する。
- 30APIとはアプリがAPIでサービスに答えを頼むしくみを説明する。
- リクエストとレスポンスが何か言う。
- サンプルのレスポンスを読む。
- キーを秘密にする理由を言う。
- 31AI機能を加える先生が認めたAI機能をプログラムに加える。
- クラスのAIツールを使う。
- プログラムから質問を送る。
- 返事を表示する。
- 32ルールとモデルルールの答えとモデルの答えを見分ける。
- 自分のチャットボットとAIモデルを比べる。
- どちらがテストしやすいか言う。
- どちらが新しい質問に強いか言う。
アプリのプロジェクト
- 33アプリを計画する練習アプリが何をするか書く。
- 教科を選ぶ。
- 機能をリストにする。
- 画面を描く。
- 34中心を作る問題、答え、点数計算の中心を作る。
- 問題をファイルに保存する。
- ランダムな順で出す。
- 点数を記録して表示する。
- 35アプリをテストするまちがった答え、空の答え、変な答えでアプリをテストする。
- テストのリストを書く。
- すべてのテストを実行する。
- 失敗したところを直す。
- 36宿題の練習アシスタント答えを確かめる宿題の練習アシスタントをデモする。
- AIサービスなしで動くことを見せる。
- 加えた場合は、任意のAI機能を見せる。
- どの答えがルールから来て、どの答えがモデルから来るか説明する。