とらりもんHOME  Index  Search  Changes  Login

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

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

1. 前回レポート(5/08提出締め切り)について, 班の他のメンバーのレポートを閲覧し, 自分のレポートの改善すべき点を述べよ。

2. numpyのブロードキャストとはどのような機能か, 調べて説明せよ(テキストの解説だけでは不十分)。

3. 以下の用語を説明せよ。

パーセプトロン (重み, バイアスという言葉もいっしょに)
活性化関数
シグモイド関数
ReLU関数
ソフトマックス関数
損失関数
交差エントロピー誤差
one hot表現
gradient (勾配)
勾配法
学習率 (learning rate)
ハイパーパラメータ
コンストラクタ

4. pythonでは, クラスを定義する中で, どのようにコンストラクタを記述する?

5. pythonのラムダ式とはどういうものか, 調べて述べよ。

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

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

7. ch04/two_layer_net.pyのソースコード(テキストP114)の各行について, 何をやっているか解説コメントをつけよ (#を使う)

8. ch04/two_layer_net.pyの中で, numerical_gradientという関数を使っている。この関数の定義をしているソースコードを探し出し, 各行について解説コメントをつけよ。

9. ch04/train_neuralnet.pyのソースコードの各行について, 解説コメントをつけよ (#を使う)

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

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

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

  1. numpyで行列どうしの積(テキストでは内積と表現されている)を計算するやり方(np.dot)を理解した。
  2. 数値微分は, 基礎数学でやったやつだ! と思い出した。
  3. テキスト(ゼロから作る...)は, 第1章からとばさずに丁寧に呼んでいる。
  4. テキストのソースコードを, 1行ずつ, 丁寧に読んで何をしているか自分で考え, 理解している。
  5. クラス, インスタンス, インスタンス変数のそれぞれについて, 他の人にやさしく説明できるくらい理解を深めた。
  6. コンストラクタとは何かを理解した。
  7. プログラムの中で, コメントをうまく書けるようになった。
  8. 「ゼロから作るDeep Learning」の正誤表をチェックし, 自分の持っているテキストの誤植箇所を修正した: https://github.com/oreilly-japan/deep-learning-from-scratch/wiki/errata

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

Last modified:2019/05/09 15:11:06
Keyword(s):
References:[機械学習入門]