深層学習の仕組み, 勾配降下 | Chapter 2, 深層学習(ディープラーニング)
HTML-код
- Опубликовано: 6 сен 2024
- この動画は3Blue1Brownの動画を東京大学の学生有志団体が翻訳・再編集し公式ライセンスのもと公開しているものです。
チャンネル登録と高評価をよろしくお願いいたします。
このシリーズが良いと思った方はぜひ共有もよろしくお願いします!
前回(第一回)
• ニューラルネットワークの仕組み | Chap...
(英語版概要欄より)-------------------------------------
さらに学びたい方へ、Michael Nielsenの本
neuralnetworksa...
こちらの本ではシリーズで扱われている例のコードを説明していきます:
github.com/mni...
MNIST database:
yann.lecun.com/...
Chris Olah's blog:
colah.github.io/
すべての投稿が素晴らしいですが、ニューラルネットワークとトポロジーについての投稿は特に美しいです。
distill:
distill.pub/
「でももうNielsen、Olah、Welchの内容はすべて消費しました」という方にはGoodfellow, Bengio, そしてCourvilleによる本、『Deep Learning』をおすすめいたします。
Thanks to Lisha Li (@lishali88) for her contributions at the end, and for letting me pick her brain so much about the material. Here are the articles she referenced at the end:
arxiv.org/abs/...
arxiv.org/abs/...
arxiv.org/abs/...
第3回は誤差逆伝播法についてです。
---------------------------------------------------------------------------------------------------------
(日本語版より)
前回の動画では色覚的な見やすさのために英語版での赤緑の色分けを青緑に変更している箇所がありましたが、第2回以降は青赤になっています。混乱させてしまった場合申し訳ございません。また今回の元の動画が前回の元の動画の一部を使用しているため赤緑の箇所がありますが、少なくとも、理解のために致命的な部分では混乱が生じないようになっているはずです。
日本語版X
/ 3b1bjp
元チャンネル(英語)
/ 3blue1brown
元動画(英語)
• Gradient descent, how ...
This video was supported by Amplify Partners.
For any early-stage ML startup founders, Amplify Partners would love to hear from you via 3blue1brown@amplifypartners.com
----------------------------------------
英語版翻訳元チャンネルの支援
/ 3blue1brown
アニメーションはmanimで作られています
github.com/3b1...
英語版公式ソーシャルメディア
Webサイト: www.3blue1brow...
Twitter: / 3blue1brown
Facebook: / 3blue1brown
Reddit: / 3blue1brown
----------------------------------------
Music by Vincent Rubinetti
Download the music on Bandcamp:
vincerubinetti...
Stream the music on Spotify:
open.spotify.c...
3:43「こら!この出力は殆どのニューロンが0で!このニューロンだけ1になるようなアクティベーションになってないとダメで!」まではそこそこ怒ってるのに、「君の出した答えは全くのゴミです。」で急に冷静になって耐え切れなかった。
確かにwwww
これまじ笑った
同じく電車の中で吹き出してしまいましたw
うちの教授とおんなじようなキレ方
なんなのこれ、死ぬほど面白い。これが無料でいいの?日本語化してくれた方々にも感謝しかない。バックプロパゲーションくるー!
これを見て、将棋のAI(ボナンザ、だったかな?)開発者が、「コンピューターに何を教えたかはわかるが、何を考えているのかはわからない」って言葉の意味が分かった気がします。
突然ゴミ扱いされるネットワーク君かわいそう(かわいい)
かわいそうはかわいいをネットワークにも見出せるのか…
クールジャパン
深層学習は天下り的にできるから理解しやすいんだよなあ
正直2年前の自分はガウス過程とか避けてた
LSTMも出てくるのか
もしかしたらTransformerもあり得るかも???
とても興味深い内容です
次の動画も楽しみにしてます!
自分が習った順番とは少し違うので違和感がありますが、初学者にわかりやすい順番で解説されてらっしゃるのだと思います。
内容はとてもわかりやすいです!コスト関数がゴミですっていうのが面白いし直感的!
大学の講義でつまずいた時に見つけてとても分かりやすかったです
次も楽しみにしています
この情報が無料で得られる事に驚いた。
動画最後のおまけが面白過ぎる… へぇ。
ランダムな画像を数字と認識してしまう問題、出力層のノードを一つ増やして、それに「無効」という意味を持たせれば解決できるのかな?
でも無効な画像のパターンなんていくらでもあるし、正しく学習させるのが難しそう
@@ano5041ノイズを作って突っ込んで判定漏れを再学習?
局所平衡の解も最適解も大して変わらなかったって話ね。
結局学習データの質なんですよ。難しい事は何もやっていないのが機械学習の真髄。
3:43
ひどい…
動画見て思ったが画像認識AI君が90°回転させた画像だと全然認識がダメになる理由ってインプットする行列の順番が変わってしまうからなのかな?
(人間の目だと問題無いけど)
その通り
回転させた画像を正しく認識したい場合は、回転した画像を学習させる必要がある
機械学習は学ばせたこと以上のことは出来ない
残念ながら、人間の目も回転させた画像を、元の画像と同じように認識はしません。
それを実感する一番簡単な方法は、180度回転させた顔を、写生することです。殆どの人は、さかさまの顔を正確に認識できません。
一応動画だと全結合層だけで使ってるからそれであってるかな.ただ畳み込みニューラルネットワークってやつに回転対称性(と平行移動での不変性はもとから畳み込みで得られてるし,あと鏡映に対しても不変にしてた気がする)とかを与えることができるようにしてる研究とかあったと思うよ(帰納バイアスの問題)
なるほど、現状の深層学習の仕組みは言語学でよく言う所の「記号のメリーゴーランド」に過ぎないわけだ。
記号を別の記号によって判別しているに過ぎないため、現状のAIは、言ってしまえば我々の考える(SF的)AIのような何かに過ぎないのでしょう。
現代の言語学では人間特有の認知能力として「アブダクション推論」が言語習得に大きく寄与していると考えられている。特に、与えられた記号Aが別の記号Bを象徴することに対し、記号Bが記号Aを象徴するという推測が立てられることである。(論理学的には必ずしも真ではない)
このある種、非-論理的な人間的思考を如何に機械化するかが今後の課題であるような気がする。
17:40
最後の間違ったラベルを付けて学習させてもうまくいったってのは、つまりライオンの画像を見てフォークと分類できるようなモデルが作れたってこと?
この動画を見みたうえで他の動画を見ると理解度がおそろしく上がります。初学者にとても良いです。日本のAIレベルの底上げにつながると思います。ありがとうございます。一点教えてください。動画の中で説明している誤差伝搬法はどの動画で説明されているのでしょうか?
先ほど動画が上がりましたよ
ウォーーーー!!!勾配ベクトル!!講義でやったヤツだ!!
この辺を理解し切れないと
想像の映像化はできないんだろうな
良い動画
5:20
なぜコスト関数の入力が1万3千と説明されているのでしょうか?
ニューラルネットワーク側の出力の数、つまり10という数がコスト関数側の入力数になるのではないですか?
あまり自信はありませんが、回答させていただきます。
前提として28×28ピクセルの数字が書かれている画像を認識させることが目的です。
Chapter1の動画で数字を円や線の基本的な形に分解して数字を判別することを考えています。
そこで4つの層に分けて判別させることを考えます。(この4つは動画の説明のために少なく仮で設定しています。)1層目は写真を28×28=784の1個1個のアクティベーション(白黒の強さを0〜1を0.01刻みで表したもの)で表した層。
最後の4層目は数字を0-9で出力するものですね。
3層目は数字を円や線の簡単な形で表現したことを考える層です。
2層目は3層目で円や線を認識してもらうためにより細かくどこに円や線があるか(上下左右)を判定する層です。
また、各層で移動する際にバイアスというもの(説明は前回の動画みて)を考えます。
ここからが本筋になりますが、1層目は784の入力があり、それを16個の円や線のパターンとして認識させます。(実際にはもっと多いですがここでは動画用に以下略)
なので784×16=12544
2層目から3層目も同様に考えます。
3層目も16パターンあると設定すると16×16=256。
そして最後は10個の数字のパターンにわけるので、16×10=160。
これらの合計は12960。
バイアスは1-2層目は16。2-3層目は16。3-4層目は10。よって合計は42。
よって12960+42=13002となります。
求めている回答と違ったりトンチンカンなこと言ってたらすみません。
@@user-td4sb3sx2m
返信ありがとうございます、そこは理解できておりました
コスト関数の入力にニューラルネットワークの出力ではなくパラメータを用いる事が理解できずにいます...
(ニューラルネットワークの出力-ラベル)^2の平均がコスト関数の出力ではなかったのか?という意味です
@@user-iw3ws9td6j
返信ありがとうございます。
それは恐らくニューラルネットワークの出力は結局のところ13002個のパラメータによって定まるため、13002個の入力と言っているのだと思います。
回答になっていますでしょうか?
とても勉強になりました。
ところで、ランダムな画像を与えた時に、何らかの回答を出力するという点についてですが、それは数字を表していない入力に対して「それは数字ではない」という出力を期待する学習をしていないからではないか、という気がします。たとえば真っ白な画像を与えた場合に0~9のいずれに対しても0という出力を正解として期待し、0から9までを重ねて書いた画像に対しては0~9に0.1を出力することを正解として期待するような学習を行っていないから、ではないかという気がします。
端的に書くと、教えていないことに対して、正解を出力することは有りえない、ということで、それは人間であっても理論的にそうなる話だと思うのです。どう思われますか?
横から失礼します
ここでおっしゃる「教える」というのは,教師データ(ラベル付けされた学習データ)を与えるということですよね?この動画で扱っているようなニューラルネットワークは正解をラベル付けした教師データが必要なので,人間は「教えられたことしかできないのでは」という問いですよね.
人間はラベル付けされた学習データ,つまり,過去の経験を膨大に持っているので,明示的に教えられていなくても,自らモデルを作成して学習できると思います.つまり,「教えられてないけどやれる」状態ですね.さらにいえば,人間は「正解を疑う」ことができるので,自ら説明力の高い学習データやモデルを作ることで,教えられていないことに対して正解を返すことはできると思います.
もちろんそういう人間ばかりではないので,中には「教えられないとやれない」人間もいると思います.これは,自らモデルを作成する能力がないのではなく,周りが「教えて」くれるので,その必要を感じていないからだと個人的には思います.
@@user-zl6jl4cu1k それを問うているのではないのですが、それは別として、人間は環境からの刺激を入力として与えられr、それに対して行動し、その結果を正解として学習しており、その範囲の中で行動していると私は思います。
ディープラーニングは、間違い学習の修正が難しいのです。
修正用のプログラムを作ったり、再学習処理を作ったり面倒でした。
勾配降下法…実質Adam一択のやつか
adaptive系統便利だよね~
Adabeliefとかいいゾ~
thank you
AIはきっと人よりずっと寿命が長い、人よりずっと長く学習できる
人の存在意義が消失する瞬間に立ち会った感が怖い
もし我々が神に作られたモノだとしたら我々はAIとして作られた
人類の存在理由が関数で記述できてしまう
・・・
数学の無限も感じる、莫大な計算量が可能になって数学はさらに先に進む
そろばんや電卓ではどんな天才でも思いつかなかったろう世界
こんな動画を誰もが見られる事自体がもうね、すごい時代だよね
正しく構造化されたラベル名前なら早く結論に辿り着くってことから、日本語が難しい理由に構造化されていないってことだと思うんだよね。扱いやすくするために名前を付けるんだけど、昔の日本人は島国で井の中の蛙だから遅れている。近年はインターネットによって正しい名前付けが浸透してきたから、変な解釈になる内容は構造化して分類分けされてるんだろうね
こういうグラフというか…
突き詰めると脳細胞に似てるな〜って
自信がないと回答する意味がないから、現状のChatGPTも間違った答えを自信満々に述べるんだなぁ
nice.
〜12:55
なるほど。
貴方は機械が人類の知能が持つすべての特徴をシミュレーションすることができるとお考えになりますか。
最初の学習の後のチューニングがくっそだるい…
なんか漸化式みたい
コスト関数は分散みたいなものってこと?
その場合もある。
コスト関数には色んな種類があって、その一つにMean Squared Errorという、まさに分散とほぼ同じものがある(平均が正解のデータに置き換わっているだけ)。