シャドーイング練習: Vanishing & Exploding Gradient explained | A problem resulting from backpropagation - 動画で英語スピーキングを学ぶ

レッスンを作成中...
1
Hey, what's going on everyone?
2
In this video, we're going to discuss a problem
3
that creeps up time and time again during the training process of an artificial neural network.
4
This is the problem of unstable gradients, and is most popularly referred to as the vanishing gradient problem.
5
So let's get to it.
6
Alright, what do we really already know about gradients as it pertains to neural networks?
7
Well, for one, when we use the word gradient by itself, we're typically referring to the gradient of the loss function with respect to the weights in the network network.
8
We also know how this gradient is calculated, using backpropagation, which we covered in our earlier videos dedicated solely to backprop.
9
And finally, as we saw in our video that demonstrates how a neural network learns, we know what to do with this gradient after it's calculated.
10
We update our weights with it.
11
Well, we don't, per se, but stochastic gradient descent does, with the goal in mind to find the most optimal weight for each connection
12
that will minimize the total loss of the network.
13
So, with this understanding, we're now going to talk about the vanishing gradient problem.
14
We're first going to answer, well, what the heck is the vanishing gradient problem anyway?
15
Here we'll cover the idea conceptually.
16
We'll then move our discussion to talking about how this problem occurs.
17
Then, with the understanding that we'll have developed up to this point, we'll discuss the problem of exploding gradients, which we'll see is actually very similar to the vanishing gradient problem,
18
and so we'll be able to take what we learned about that problem and apply it to this new one.
19
So what is the vanishing gradient problem?
20
We'll first talk about this kind of generally, and then we'll get into the details in just a few moments.
21
In general, this is a problem that causes major difficulty when training a neural network.
22
More specifically, this is a problem that involves the weights in earlier layers of the network work.
23
Recall that during training, Stochastic Gradient Descent, or SGD, works to calculate the gradient of the loss with respect to weights in the network.
24
Now, sometimes, and we'll speak more about why this is in a bit, the gradient with respect to weights in earlier layers of the network becomes really small,
25
like vanishingly small.
26
Hence, vanishing gradient.
27
Okay, what's the big deal with a small gradient?
28
Well, once SGD calculates this gradient with respect to a particular weight, it uses this value to update that weight.
29
So the weight gets updated in some way that is proportional to the gradient.
30
If the gradient is vanishingly small, then this update is in turn going to be vanishingly small as well.
31
So if this new updated value of the weight has just barely moved from its original value, then it's not really doing much for the network.
32
This change is not going to carry through the network very well to help reduce the loss
33
because it's barely changed at all from where it was before the update occurred.
34
Therefore this weight becomes kind of stuck, never really updating enough to even get close to its optimal value,
35
which has implications for the remainder of the network to the right of this one weight
36
and impairs the ability of the network to learn.
37
So now that we know what this problem is, how exactly does this problem occur?
38
We know from what we learned about backpropagation
39
that the gradient of the loss with respect to any given
40
weight is going to be the product of some derivatives that depend on components that reside later in the network.
41
So given this, the earlier in the network a weight lives, the more terms will be needed in the product
42
that we just mentioned to get the gradient of the loss with respect to this weight.
43
What happens if the terms in this product, or at least some of them, are small?
44
And by small, we mean less than one small.
45
Well, the product of a bunch of numbers less than one is going to give us an even smaller number, right?
46
Okay, cool.
47
So as we mentioned earlier, we now take this result, the small number, and update our weight with it.
48
Recall that we do this update by first multiplying this number by our learning rate, which it itself is a small number,
49
usually ranging between 0 .01 and 0 .0001.
50
So now the result of this product is an even smaller number.
51
Then we subtract this number from the weight, and the final result of this difference is going to be the value of the updated weight.
52
Now you can think about if the gradient that we obtained with respect to this weight was already really small, i .e vanishing, then by the time we multiply it by the learning rate,
53
the product is going to be even smaller, and so when we subtract this teeny tiny number from the weight, it's just barely going to move the weight at all.
54
So, essentially, the weight gets into this kind of stuck state not moving,
55
not quote learning, and therefore not really helping to meet the overall objective of minimizing the loss of the network.
56
And we can see why earlier weights are subject to this problem.
57
Because as we said, the earlier in the network the weight resides, the more terms are going to be included in the product to calculate the gradient.
58
And the more terms we're multiplying together that are less than 1, the quicker the gradient is going to vanish.
59
So now let's talk about this problem in the opposite direction.
60
Not a gradient that vanishes, but rather a gradient that explodes.
61
Well, think about the conversation we just had about how the
62
vanishing gradient problem occurs with weights early in the network due to a product of at least some relatively small values.
63
Now think about calculating the gradient with respect to the same weight, but instead of really small terms, what if they were large?
64
And by large, we mean greater than 1.
65
Well, if we multiply a bunch of terms together that are all greater than 1, we're going to get something greater than 1, and perhaps even a lot greater than 1.
66
The same argument holds here that we discussed about the vanishing gradient, where the earlier in the network a weight lives, the more terms will be needed in the product we just mentioned.
67
And so the more of these larger value terms we have being multiplied together, the larger the gradient is going to be, thus essentially exploding in size.
68
And with this gradient, we go through the same process to proportionally update our weight with it that we talked about earlier.
69
But this time, instead of barely moving our weight with this update, we're going to greatly move it.
70
So much so, perhaps, that the optimal value for this weight won't ever be achieved
71
because the proportion to which the weight becomes updated with each epoch is just too large
72
and continues to move further and further away from its optimal value.
73
So a main takeaway that we should be able to gain from this discussion is
74
that the problem of vanishing gradients and exploding gradients is actually a more general problem of unstable gradients.
75
This problem was actually a huge barrier to training neural networks in the past, and now we can see why that is.
76
In a later video, we'll talk about techniques that have been developed to combat against this problem.
77
For now, let's take our discussion to the comments.
78
Let me know what you're thinking.

このレッスンの語彙とスピーキングのポイント

このスピーキングレッスンは、動画「Vanishing & Exploding Gradient explained」を教材にしています。 繰り返し出てくる語は次のとおりです:gradient, weight, network, vanishing, product。 この動画には、シャドーイング用の文が78文、単語が1279語あります。 音声の長さは7:19です。 話す速さは1分あたり約175語で、日常会話に近い自然なペースです。 単語の87%は英語の頻出3,000語に含まれるため、語彙は分かりやすいです。

この動画の重要語彙

動画に出てくる覚えておきたい単語15語を、発音と意味つきで紹介します。

単語発音意味
calculate 動詞/ˈkælkjʊleɪt/計算する
occur 動詞/əˈkɜː/起こる, 起る
optimal 形容詞/ˈɑptɪməl/最適な
explode 動詞/ɪkˈsploʊd/爆発する
refer 動詞/ɹɪˈfɜː/問い合わせる
layer 名詞/ˈleɪ̯ɚ/層, 膜
recall 動詞/ɹɪˈkɔl/呼び返す
descent 名詞/dəˈsɛnt/降下
unstable 形容詞/ʌnˈsteɪ.bəl/不安定
minimize 動詞/ˈmɪn.ɪˌmaɪz/最小化する
reside 動詞/ɹɪˈzaɪd/住む, 居住する
technique 名詞/tɛkˈniːk/技術
obtain 動詞/əbˈteɪn/手に入れる, 取得する
hence 副詞/ˈhɛns/ここから
objective 名詞/ɒbˈd͡ʒɛk.tɪv/目標, 目的

繰り返し練習したい文

動画に出てくる短く完結した文です。日常会話でそのまま使えます。

  • Hey, what's going on everyone?
  • Here we'll cover the idea conceptually.
  • For now, let's take our discussion to the comments.
  • Let me know what you're thinking.

この動画の文法

話し手がよく使っている文型を、動画の実際の表現とともに紹介します。

文型動画での表現
受動態 be + 過去分詞 — 誰がするかより、何が起きるかに焦点を当てるis calculated · will be needed · be included
現在完了形 have/has + 過去分詞 — 過去の出来事が今も関係しているhave developed · have been developed

注意したい発音

話し手はwe'll, we're, don'tなど、短縮形や弱形を20回使っています。聞こえたとおりの短い形で発音しましょう。

  • 「sh」と「zh」の音: essentially /ɪˈsɛnʃəli/, artificial /ˌɑː.tɪˈfɪʃ.əl/, proportion /pɹəˈpɔɹʃən/, implication /ˌɪmpləˈkeɪʃən/, vanish /ˈvænɪʃ/
  • 長い単語(アクセントの位置に注意): essentially /ɪˈsɛnʃəli/, difficulty /ˈdɪfɪkəlti/, artificial /ˌɑː.tɪˈfɪʃ.əl/, derivative /dɪˈɹɪvətɪv/, implication /ˌɪmpləˈkeɪʃən/

日本語話者が苦手な音:

  • /r/ と /l/ の区別 — /l/ は舌先を歯茎につけ、/r/ はどこにもつけない: neural /ˈnʊɹəl/, recall /ɹɪˈkɔl/, greatly /ˈɡɹeɪ̯t.li/, proportionally /pɹəˈpɔɹʃənəli/
  • /v/ — /b/ にならないように、上の歯を下唇に当てる: objective /ɒbˈd͡ʒɛk.tɪv/, involve /ɪnˈvɑlv/, derivative /dɪˈɹɪvətɪv/, vanish /ˈvænɪʃ/
  • /f/ — 「フ」ではなく、上の歯と下唇で出す: refer /ɹɪˈfɜː/, difficulty /ˈdɪfɪkəlti/, artificial /ˌɑː.tɪˈfɪʃ.əl/

この動画での練習方法

  1. まず声を出さずに動画を最後まで聞き、知らない単語をメモします。
  2. まず0.75倍速で一文ずつシャドーイングし、慣れてきたら通常の速度に戻します。
  3. 自分の声を録音して元の音声と比べます。calculate, occur, optimalなどの単語に特に注意しましょう。

シャドーイングとは?英語上達に効果的な理由

シャドーイング(Shadowing)は、もともとプロの通訳者養成プログラムで開発された言語学習法で、多言語習得者として知られるDr. Alexander Arguelles によって広く普及されました。方法はシンプルですが非常に効果的:ネイティブスピーカーの英語を聞きながら、1〜2秒の遅延で声に出してすぐに繰り返す——まるで「影(shadow)」のように話者を追いかけます。文法ドリルや受動的なリスニングと異なり、シャドーイングは脳と口の筋肉が同時にリアルタイムで英語を処理・再現することを強制します。研究により、発音精度、抑揚、リズム、連音、リスニング力、そして会話の流暢さが大幅に向上することが確認されています。IELTSスピーキング対策や自然な英語コミュニケーションを目指す方に特におすすめです。

シャドーイングのやり方: ステップ別の完全ガイドを読む →