とらりもんHOME  Index  Search  Changes  Login

機械学習入門: レポート課題6

2020/05/30(実用解析I)出題のレポート課題。PDFにして, manabaにアップロードすること。

1. 以下の言葉を説明せよ:

  • one hot表現
  • gradient (勾配)
  • 勾配法
  • 学習率 (learning rate)
  • ハイパーパラメータ

2. 以下のpythonコマンドを実行し, 結果を報告し, それぞれのコマンドの意味(機能)を述べよ:

In []: nijou = lambda x: x*x
In []: nijou(3)
In []: nijou(np.array([3,4]))

3. ch04/two_layer_net.pyの中で, numerical_gradientという関数を使っている。この関数の定義をしているソースコードを探し出し, その構造を説明せよ。

4. ch04/train_neuralnet.pyのソースコードを1行ずつ読み, 各行の後ろに解説コメントをつけよ (#を使う)。注: ソースコードにコメントをつけるスキルはプログラミングで重要である。これはその練習である。

5. ch05の以下のpythonプログラムを走らせ, 結果を報告し, 何をするプログラムか述べよ。

ch05/gradient_check.py
ch05/layer_naive.py
ch05/train_neuralnet.py
ch05/two_layer_net.py

6. 以下のチェックリストの各項目について, ○かXかで自分自身を評価せよ。

  1. テキスト(ゼロから作る...)の第4章を, とばさずに丁寧に読んだ。
  2. 第4章のソースコードを, 1行ずつ, 丁寧に読んで何をしているか自分で考え, 理解した。
  3. クラス, インスタンス, インスタンス変数, コンストラクタのそれぞれについて, 他の人にやさしく説明できるくらい理解を深めた。
  4. 人工知能で出てくる「シグモイド関数」と, 生物学で出てくる「ロジスティック曲線」と, 数学で出てくる「ハイパボリックタンジェント」はぜんぶ同じ関数(の拡大縮小平行移動)だと知っている。
  5. 微分の連鎖律を理解した。
  6. 「ゼロから作るDeep Learning」の正誤表をチェックし, 自分の持っているテキストの誤植箇所を修正した: https://github.com/oreilly-japan/deep-learning-from-scratch/wiki/errata

7. この授業に限らず, オンライン授業が続く中, 苦労していることや工夫していることを述べよ。

注: 他の人のレポートを見て, コメントの書き方を自分と比べて, うまいやり方を盗み合ってください。

Last modified:2020/06/01 13:49:36
Keyword(s):
References:[機械学習入門]