【深層学習】GRU - RNN に記憶をもたせる試みその1【ディープラーニングの世界 vol. 10 】

  Рет қаралды 35,338

AIcia Solid Project

AIcia Solid Project

Күн бұрын

Пікірлер: 38
@CURRY_DE_DAIBAKUSHO
@CURRY_DE_DAIBAKUSHO Жыл бұрын
ヤバい図、意味不明すぎて放置してたけど、説明されたらめちゃくちゃ端的に表現された図だった。毎回わかりやすい解説ありがとうございます。
@AIcia_Solid
@AIcia_Solid Жыл бұрын
ご視聴コメントありがとうございます! でしょ!(^o^)/ 初見だと結構厳しい図ですが、なれてくると素敵な図なのです!
@sushisushi8362
@sushisushi8362 4 жыл бұрын
すごいわかりやすかったです。関数の使われ方、極端な値を考えることで、意味が見えてくるんですねー
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
そーなんです!😍✨ ぜひ今後の参考にしてみてください😋
@ゆるまんむと
@ゆるまんむと 4 жыл бұрын
これってzのhをどの程度更新するかだけ(rでのh(t-1)の更新がない)だとおかしなことになるんですか? z(t-1) = f(x(t), h(t-1)) h(t) = (1-z(t)◦h(t-1) + z(t)◦h(t)) だけでも過去の情報を覚えておくっていうことはできる気がしてしまいました。
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
reset gate vector なしの場合ですね! わたしは GRU の原論文は呼んでないので想像で話しますが、、、 その方がシンプルになるので、単純なタスクには r なしの方がよく汎化する場合もあると思います。 全ては、データとタスクによるので、色々実装して試してみるのがよいかと思います!
@apatite530
@apatite530 Жыл бұрын
最近チャンネル見つけてみてます。大変わかりやすいです。2つお聞きしたく。 ①記号だけですが、hの上に~ が乗っているのは数式上どういう意味になるのでしょうか?なんとなくh(t)になる前のhみたいな意味なのかなと見てるのですが....。また読み方も教えていただきたく。 ②学習時は関数:f-tanhの中のwを決定しているものと理解しているのですが、このwは各stepで共通ですか?異なりますか?  例えば、tのGRUcellの中のwと、t+1のGRUcellの中のwは共通でしょうか、異なるでしょうか?
@AIcia_Solid
@AIcia_Solid Жыл бұрын
ご視聴コメントありがとうございます! ご質問お答えしますね! ① h と \tilde{h} は、全く別の変数です。 ただ、\tilde{h} は次の h を作るために使われる変数なので、記号としてにたものを選びました。 この記号は、普通、「hチルダ」と読みます。 ②順次お答えします! > 学習時は関数:f-tanhの中のwを決定しているものと理解している → yes > このwは各stepで共通ですか?異なりますか? → 共通です (同じもので何度も処理するのが再帰的 (recursive) なので、 Recurrent Neural Network (RNN) と呼ばれています) ======== 以上です! 他にも疑問があればぜひご質問をご自由にどうぞ!
@apatite530
@apatite530 Жыл бұрын
@@AIcia_Solid お早い回答ありがとうございます! 理解が深まりました。他の動画も見て勉強させてください。
@AIcia_Solid
@AIcia_Solid Жыл бұрын
ぜひ、お楽しみください!🎉
@salsanotomo
@salsanotomo 3 жыл бұрын
電気回路図みたいで面白いです。
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
私的にはその発想は斬新です! たしかにそうかもですね!!
@まぬる-b7b
@まぬる-b7b 4 жыл бұрын
参考になりました!
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
良かったです😍 次回 LSTM もお楽しみに!
@canonicalaqua2700
@canonicalaqua2700 3 жыл бұрын
RNNはそうだと思うんですけどGRUってGlobal approximatorなんですか?
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
んー、 GRU は分からないです🤔 GRU を2段積んだらなるとは思います。 いかがでしょう?🤔🤔🤔
@naoyak6356
@naoyak6356 4 жыл бұрын
毎回分かりやすい解説ありがとうございますm(__)m
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
こちらこそ、毎回ご視聴ありがとうございます!😍😍😍🎉
@もりもん-m8p
@もりもん-m8p 4 жыл бұрын
単純な発想ですけど、実際にこれで動くとは深層学習すごいです... SimpleRNNとGRUの両方においてy_t = h_t としていますが、これは何故でしょうか? hは潜在的なものなのでyとは意味的に異なると思ったのですが、教えていただきたいです。
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
ですよね、すごいですよね😮 y と h は思想的には全然意味が違います! ですが、単純なモデルでは、同じ値に設定することもよくあります。 次回の LSTM では y と h は異なるので、それも楽しみにしてみてください!
@もりもん-m8p
@もりもん-m8p 4 жыл бұрын
@@AIcia_Solid それだと y_t を求めるときに用いる h_{t-1} は y_{t-1}でもあるので、直前の出力のみを潜在変数として入力しているということでしょうか? y_{t-2}やy_{t-3}などのそれよりも前の情報はh_{t-1}に含まれているのでしょうか?
@sunnyohno2718
@sunnyohno2718 3 жыл бұрын
難しい式をわかりやすい説明でありがとうございます。 わかったようで、ちょっと違いがわからなかったのが、rとZの違いです。前までの情報を忘れた場合のhにz(心の中の更新度合い)を掛け算する式の意味がついていけなかったです。 前までの情報を忘れるなら、心の中もリセットするように思ってしまい、その時はZの意味が??でした。
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
すみません、質問の意味がよくわかりません。 どういうことでしょう? たしかに、r, z は類似の役割を果たしていますが、微妙に異なる役割でもあると思います。 何故似たものが2つあるのかという問いですか、、、?
@sunnyohno2718
@sunnyohno2718 3 жыл бұрын
@@AIcia_Solid おはようございます。お返事をいただけるとは思っておりませんでした、ありがとうございます。 なにせ老人の初心者で、よくわかっていない中でご質問しました。 仰るようにrとZが似ていて、なぜあるのか、その違いということで、まずご質問いたします。
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
なるほど! r と z はたしかに役割がにていて、共に以前の h を次の h にどの程度渡すのかを制御しています。 r は、入力 x と h を混ぜる割合を制御し、 z は前の h と、今作った\tilde{h} を混ぜる割合を制御しており、 似て非なる役割をしています。 これか違いです。 何故あるかといえば、恐らくですが、ある ver、ない ver、他の形状(数式)などなど様々に実験をしたなかで、これがベストだったという、実験的な帰着ではないかと思います。 Deep Learning の世界では、何かの論理的な帰結で構造が決まる場合があれば、実験の結果で良いものが生き残ることもあります。 これが理由です。 いかがでしょうか?
@a.9516
@a.9516 4 жыл бұрын
研究室に一人で「あぁ!そっか!」とか言っちゃいました…
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
不審者ですね😎✌️
@yosukeshiraishi1781
@yosukeshiraishi1781 3 жыл бұрын
細かい事なんですけどGRUの模式図の一番上の線は(1-z)⚪︎h(t-1)ではないでしょうか?
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
その通りです! 図では、ごちゃごちゃするのを避けるため、 t-1 や t を全て略しています。 正確に書けばそうなると思います!
@なんぞや愛とは
@なんぞや愛とは 3 жыл бұрын
zの第1項は(1-z^(t+1))でしょうか
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
h(t)の定義の第1項ですか? であれば、 (1-z(t)) でよいかと思いますが、いかがでしょう?
@なんぞや愛とは
@なんぞや愛とは 3 жыл бұрын
ごめんなさい!hでした! ありがとうございます!!
@Sakura_Med_DS
@Sakura_Med_DS 4 жыл бұрын
最初のハローワールドでいいねを押している人〜〜
@AIcia_Solid
@AIcia_Solid 4 жыл бұрын
わー!さくらさーん!😍 いつもありがとうございます!🌸
@manbodama
@manbodama 3 жыл бұрын
シグモイド関数は0~1のゲート制御の為にいるとして、ハイパボリックタンジェント関数、お前はなんでおるんや?活性化関数?他で良くね?
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
活性化関数が他でも良さそうなのは同意します😋 ここで tanh を用いているのは、正負両方に値を持たせられるからだと思います。 例えばテキストに用いる場合、正負で意味が逆になるような表現とかを持たせられるのではないでしょうか。 想像ですが、そんな理解をしています😊
@manbodama
@manbodama 3 жыл бұрын
@@AIcia_Solid なるほど、ありがとうございます。確かに情報にベクトル的な意味を含むのならマイナスも表現できた方が良さそうですね。reluとかだとせっかくの連続的な情報が潰れちゃってダメそうな気がしますし。 だとしても似てるarctanとかでも良い気がするけど何か理由あるのかな。
@AIcia_Solid
@AIcia_Solid 3 жыл бұрын
y=arctan(x) は微分が 1/(1+x^2) と割り算を含みますが、 y=tanh(y) は微分が 1-y^2 と割り算を含まず高速だからとかではないでしょうか?🤔 なんとなくそう思っていますが、事実のほどはわかりません😋
When u fight over the armrest
00:41
Adam W
Рет қаралды 21 МЛН
Não sabe esconder Comida
00:20
DUDU e CAROL
Рет қаралды 68 МЛН
Osman Kalyoncu Sonu Üzücü Saddest Videos Dream Engine 275 #shorts
00:29
【Transformerの基礎】Multi-Head Attentionの仕組み
37:47
【12分で分かる】パーセプトロン(ディープラーニングの基礎)を徹底的に理解しよう!
12:46
スタビジ【誰でもAIデータサイエンス】byウマたん
Рет қаралды 11 М.
When u fight over the armrest
00:41
Adam W
Рет қаралды 21 МЛН