【日記】Pytorch学習日記①
あなたの実力チェック
今回私が疑問に思ったことは3点です。果たして,この質問に答えていただけますか?(上から目線と下から目線のダブルパンチ)
- sklearnってどんなライブラリ?
- Resudual block とはどんなモデル?
- 変数「_」って何?
それでは,見ていきましょう。
sklearnって何?
- Scikit-Learnとは,機械学習のライブラリ。
- データセットがサンプルとして入っているので機械学習の練習に使える。
Residual blockとはどんなモデル?
- ResNetのも呼ばれるモデル
- 2015年に考案された
- ニューラルネットワークのモデル
- 入力, Conv, Pooling, Conv, Pooling, Conc, Affine, 出力
- 低,中,高レベルの特徴を多層形式で自然に統合し認識レベルを強化
- Convolution層はフィルタを持ち,Poolingと組み合わせて特徴を検出する
- 単純に層を深くすると性能は悪化してしまう
- ResNetは,ある層で求める最適な出力を学習するのではなく,層の入力を参照した残差関数を学習する
- ある層で求める最適な出力を学習するのではなく,層の入力を参照した残差関数を学習する
ResNetのアルゴリズムはよくわからなかった。
参照
変数「_」(アンダースコアのみ)の意味は?
_, y_pred = torch.max(net(X),1)
このアンダーバーの意味。
- 慣例的に必要のない値の代入先として使われる。
例
- for文のインデックスが必要ない時。
for _ in range(10):
print('Hello Hatena Blog!')
- 必要のない値の代入先
list = [0,1,2]
a, _, _ = list
print(a) # 0
print(_) # 2
まとめ
今回学んだことはこちら。
- scikit-learn はデータセットを含む機械学習のライブラリ。
- ResNet は段階に分けて様々な規模の特徴を掴むことができるようになったモデル
- 変数アンダーバーはどうでもいいものを格納する時に扱う変数。
それではこの辺で。感想や補足をしていただけると嬉しいです!