新・上級Cコーステキスト
学習指導案
学習指導案
■単元名
新・上級Cコース Unit1, 2 タイタニック号データの分析
■単元の学習目標
タイタニック号の乗船者のデータから情報を導き出す。
■テーマ選定の理由
ビッグデータから数学、統計学、計算機科学を駆使して、意味のある情報、法則、現象間の関連姓などを導き出し、新たな価値をもたらすデータサイエンスの分野が注目を浴びている。実際のデータから情報を導き出す経験は将来役に立つと期待される。
■単元の学習計画
カリキュラム
タイタニック号からの生還 Unit1 60分
タイタニック号からの生還 Unit2 60分
■育成したい思考力
ロジカルシンキング
■評価計画
PythonのライブラリであるPandas、Seabornなどを使って簡単なデータの処理ができる。
■応用・発展
他のデータを使って、そこから意味のある情報を引き出してみる。
講義
Unit 1
Unit 2
Unit 1 and 2 講義動画
学習指導案
学習指導案
■単元名
新・上級Cコース Unit3-8 AI(人工知能)の初歩
■単元の学習目標
AIの初歩として回帰、分類、クラスタリングについて学ぶ。
■テーマ選定の理由
AIが様々な分野で活用されるようになってくると、その中の仕組みをある程度は知っておいた方が良いと考えられる。しかしながら、多くの生徒にとって、その機会は少ない。ここでは、AIの初歩的なテーマとして、回帰、分類、クラスタリングの3つに焦点を当て、その原理を学び仕組みを理解する。
■単元の学習計画
カリキュラム
AI(人工知能)研究の歴史
回帰 Unit3, 4 60分
分類 Unit5, 6 60分
クラスタリング Unit7, 8 60分
■育成したい思考力
ロジカルシンキング
■評価計画
回帰について理解している。
分類について理解している。
クラスタリングについて理解している。
■応用・発展
ディープラーニングなどのAIの最先端技術について調べてみる。
講義
Unit 3
Unit 4
Unit 3 and 4 講義動画
Unit 5
Unit 6
Unit 5 and 6 講義動画
Unit 7
Unit 8
Unit 7 and 8 講義動画
学習指導案
学習指導案
■単元名
新・上級Cコース Unit9-12 主成分分析
■単元の学習目標
主成分分析について学ぶ。
分散と共分散にについて学ぶ。
分散共分散行列の固有値問題について学ぶ。
アイリスのデータセットで主成分分析を行ってみる。
乳がんのデータセットで主成分分析を行ってみる。
■テーマ選定の理由
高次元のデータセットの次元削減が行える主成分分析はデータサイエンスの基礎知識として重要である。その中身を理解することにより、今後のデータサイエンスやAIの学習をスムーズに進められるようにする。
■単元の学習計画
カリキュラム
主成分分析 分散と共分散など Unit9 60分
主成分分析 分散共分散行列の固有値問題など Unit10 60分
主成分分析 アイリスのデータセットの主成分分析など Unit11 60分
主成分分析 乳がんのデータセットの主成分分析など Unit12 60分
■育成したい思考力
ロジカルシンキング
■評価計画
主成分分析について理解している。
簡単なデータセットの主成分分析を行うことができる。
■応用・発展
様々なデータセットで主成分分析を行ってみる。
講義
Unit9, 10で使用する線形代数の初歩の補足資料を以下からダウンロードします。
Unit9, 10で使用する線形代数の初歩のテンプレートプログラムを以下からダウンロードします。
Unit11, 12で使用する主成分分析のテンプレートプログラムを以下からダウンロードします。
Unit 9
線形代数の初歩1
Unit 10
Unit 9 and 10 講義動画
Unit 11
Unit11, 12で使用する主成分分析のテンプレートプログラムを以下からダウンロードします。
Unit 12
Unit 11 and 12 講義動画
新・上級C 課題
課題1 回帰の問題
ある野菜の販売データに基づいて、価格と販売数量の関係を予測する線形回帰モデルを作成し、訓練してください。
モデルを使用して、価格が110円のときの販売数量を予測してください。
以下のデータを使用します:
価格 (円) 販売数量 (個) 50 200 60 180 70 160 80 140 90 120 100 100
ヒント:
1.Pythonライブラリのnumpyとsklearnを使用すると便利です。
2.sklearn ライブラリを使用して、線形回帰モデルを作成するために
from sklearn.linear_model import LinearRegression
を使用します。
3.データは
X = np.array([50, 60, 70, 80, 90, 100]) y = np.array([200, 180, 160, 140, 120, 100])
のように与えるとよいでしょう。
ただし、reshapeが必要です。
4.fit メソッドを使用してモデルを訓練します。
5.predict メソッドを使用して価格が110円のときの販売数量を予測します。
課題2 分類の問題
以下の花のデータを使用して、花が「アヤメ」か「チューリップ」かを分類するモデルを作成してください。
モデルを使用して、新しい花(花弁の長さが5.0cmで花弁の幅が1.5cmの花)の花がアヤメかチューリップかを予測してください。
花 花弁の長さ (cm) 花弁の幅 (cm) アヤメ (1) / チューリップ (0) 花1 5.1 1.4 1 花2 4.9 1.5 1 花3 5.8 1.8 1 花4 5.0 1.4 1 花5 5.9 2.0 1 花6 4.7 3.2 0 花7 4.6 3.1 0 花8 4.5 3.4 0 花9 5.5 4.1 0 花10 5.7 4.2 0
ヒント
1.Pythonライブラリのnumpyとsklearnを使用すると便利です。
2.データは
X = np.array([ [5.1, 1.4], [4.9, 1.5], [5.8, 1.8], [5.0, 1.4], [5.9, 2.0], [4.7, 3.2], [4.6, 3.1], [4.5, 3.4], [5.5, 4.1], [5.7, 4.2] ]) y = np.array([1, 1, 1, 1, 1, 0, 0, 0, 0, 0])
のように与えるとよいでしょう。
3.sklearn ライブラリを使用して、Perceptronモデルを作成してください。
from sklearn.linear_model import Perceptron
を使用します。
4.fit メソッドを使用してモデルを訓練します。
5.predict メソッドを使用して新しい花の分類予測を行います。
課題3 クラスタリングの問題
以下の果物データを使用し、k-means法に基づいて果物を3つのクラスタに分けてください。
果物 重さ (g) 直径 (cm) りんご (Apple) 150 7 バナナ (Banana) 120 3 さくらんぼ (Cherry) 5 1 ぶどう (Grape) 5 1.5 オレンジ (Orange) 180 8 レモン (Lemon) 100 6 メロン (Melon) 1000 15
ヒント
1.Pythonライブラリのmatplotlibとnumpyとsklearnを使用すると便利です。
2.データは
X = np.array([ [150, 7], [120, 3], [5, 1], [5, 1.5], [180, 8], [100, 6], [1000, 15] ])
のように与えるとよいでしょう。
3.sklearn ライブラリを使用して、k-meansクラスタリングを実行してください。
from sklearn.cluster import KMeans
を使用します。
4.fit メソッドを使用してクラスタリングを実行します。
5.labels_ 属性を使用してクラスタリング結果を確認します。
6.クラスタリング結果を表示し、各果物がどのクラスタに属するかを確認します。