とらりもんHOME  Index  Search  Changes  Login

とらりもん - 機械学習入門: レポート課題6 Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

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

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

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