深層学習について
分かりにくいところもあると思うが、まずは深層学習について自分が学んだことをアウトプットしたい
1 なぜすごいのか?
①圧倒的精度がある
画像認識のコンペで圧倒的に優勝し、かつ毎年指数関数上に精度が向上している、人間の誤差をすでにこえているから。
②EndtoEndの機能開発である
これまでの機械学習では、前処理であったり特徴量の抽出が必要であったがDNNの場合はどちらも必要がない
③ 汎用性が非常に高い
様々なものに実現する可能性がある。
④開発が非常に簡単
これは、ライブラリーをインポート後のPythonで深層学習(2層のニューラルネット)を行うときのコード。わずか7行で完成する
深層学習とはいったい何なのか?
深層学習の目的は、すべてのものを識別できるくらいいい関数を作ること。いい関数とは何か?複雑で計算可能な関数である。
モチベーション…「単純なことの繰り返し」で「複雑性」を得たい!!
「単純なこと」…一次関数の繰り返しで
「複雑性を」…非線形関数を用いることで
ニューラルネットを構築する。
y=f(f'(f''(f'''(a1x1+a2x2+a3x3+・・・+b))))
(かっこがたくさんあるから深い→深層学習)
パラメータは、中学校の時にやった二次関数の最大最小に微分を出したようなもの(パラメータがたくさんあるので、くそめんどくさい偏微分になるが)
ようはこういうこと
上記はパラメータが二つの場合、深層学習の場合はパラメータが数百万という数で存在する。
<深層学習の活性化関数である非線形関数Φの種類>
1SoftMax関数(最後の出力の前に確率の和を1にするために使用する)
ReLU関数について
Sigmoid関数について
問題点「知識のブラックボックス化が進む」
特徴量の把握をデータが行ってきた場合、それを人間が解読できない形になっているのではないのかということが怖いところ。
<結論>
ディープラーニングはめちゃめちゃ夢がある!!
おもしろい!!!
きむにいの成長を優しく見守っていただける方はよろしければサポートもお願いします! 頂いたサポートは自分が新しい知見を得るための本への投資に使わせていただきます。