Liên quan đến tài nguyên:
Dưới đây là một số trích dẫn trung tâm từ ADADELTA: Phương pháp tỷ lệ học tập thích ứng , cùng với một số ví dụ và giải thích ngắn:
QUẢNG CÁO
Các nguyên tắc cập nhật ADAGRAD là như sau:
Ở đây mẫu số tính toánđịnh mứcl2của tất cả các gradient trước đó trên cơ sở mỗi chiều và η là tỷ lệ học tập toàn cầu được chia sẻ bởi tất cả các chiều. Mặc dù có tỷ lệ học tập toàn cầu được điều chỉnh bằng tay, mỗi chiều có tốc độ động riêng.
Δ xt= - ηΣtτ= 1g2τ√gt( 5 )
l 2
Tức là nếu độ dốc trong ba bước đầu tiên là , sau đó: Δ x 3 = - ηg1= ⎛⎝một1b1c1⎞⎠,g2= ⎛⎝một2b2c2⎞⎠,g3= =⎛⎝một3b3c3⎞⎠
Ở đây dễ thấy hơn rằng mỗi chiều có tốc độ học tập năng động riêng, như đã hứa.
Δ x3= - ηΣ3τ= 1g2τ-------√g3= - η⎛⎝⎜một21+ một22+ một23b21+ b22+ b23c21+ c22+ c23⎞⎠⎟--------------⎷⎛⎝một3b3c3⎞⎠↓Δ x3= - ⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜ηmột21+ một22+ một23----------√một3ηb21+ b22+ b23---------√b3ηc21+ c22+ c23---------√c3⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟
Các vấn đề về ADAGRAD mà ADADELTA cố gắng khắc phục
Ý tưởng được trình bày trong bài viết này được lấy từ ADAGRAD để cải thiện hai nhược điểm chính của phương pháp: 1) sự phân rã liên tục của tỷ lệ học tập trong suốt quá trình đào tạo và 2) nhu cầu về tỷ lệ học tập toàn cầu được lựa chọn thủ công.
Hạn chế thứ hai là khá tự giải thích.
Dưới đây là một ví dụ khi nhược điểm đầu tiên là một vấn đề:
Hãy xem xét một trường hợp trong đó giá trị tuyệt đối của từng thành phần của lớn hơn nhiều so với giá trị tuyệt đối của thành phần tương ứng của gradient trong bất kỳ bước nào khác.
Đối với bất kỳ t > 2 , nó cho rằng mọi thành phần của √g2
t > 2Σtτ= 1g2τ-------√g2g2gtΔ xt
Δ xt
QUẢNG CÁO
w
wtE[ g2]t
E[g2]t=ρE[g2]t−1+(1−ρ)g2t(8)
where ρ is a decay constant [...]. Since we require the square root of this quantity
in the parameter updates, this effectively becomes the RMS
of previous squared gradients up to time t:
RMS[g]t=E[g2]t+ϵ−−−−−−−−√(9)
where a constant ϵ is added to better condition the denominator
(RMS stands for Root Mean Square.)
Similarly:
E[Δx2]t−1=ρE[Δx2]t−2+(1−ρ)Δx2t−1
RMS[Δx]t−1=E[Δx2]t−1+ϵ−−−−−−−−−−−−√
And finally:
[...] approximate Δxt by compute the exponentially
decaying RMS over a window of size w of previous Δx to
give the ADADELTA method:
Δxt=−RMS[Δx]t−1RMS[g]tgt(14)
where the same constant ϵ is added to the numerator RMS as
well. This constant serves the purpose both to start off the first
iteration where Δx0=0 and to ensure progress continues to
be made even if previous updates become small.
[...]
The numerator acts as
an acceleration term, accumulating previous gradients over a
window of time [...]
I.e. if the gradient in step r is gr=⎛⎝arbrcr⎞⎠ and Δxr=⎛⎝irjrkr⎞⎠, then:
Δxt=−RMS[Δx]t−1RMS[g]tgt=−E[Δx2]t−1+ϵ−−−−−−−−−−−√E[g2]t+ϵ−−−−−−−−√gt=−ρE[Δx2]t−2+(1−ρ)Δx2t−1+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−√ρE[g2]t−1+(1−ρ)g2t+ϵ−−−−−−−−−−−−−−−−−−−−√gt=−ρ(ρE[Δx2]t−3+(1−ρ)Δx2t−2)+(1−ρ)Δx2t−1+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√ρ(ρE[g2]t−2+(1−ρ)g2t−1)+(1−ρ)g2t+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√gt=−ρ2E[Δx2]t−3+p1(1−ρ)Δx2t−2+p0(1−ρ)Δx2t−1+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√ρ2E[g2]t−2+p1(1−ρ)g2t−1+p0(1−ρ)g2t+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√gt=−ρt−1E[Δx2]0+∑r=1t−1ρt−1−r(1−ρ)Δx2r+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−√ρt−1E[g2]1+∑r=2tρt−r(1−ρ)g2r+ϵ−−−−−−−−−−−−−−−−−−−−−−−−−−−√gt
ρ is a decay constant, so we choose it such that ρ∈(0,1) (typically ρ≥0.9).
Therefore, multiplying by a high power of ρ results in a very small number.
Let w be the lowest exponent such that we deem the product of multiplying sane values by ρw negligible.
Now, we can approximate Δxt by dropping negligible terms:
Δxt≈−∑r=t−wt−1ρt−1−r(1−ρ)Δx2r+ϵ−−−−−−−−−−−−−−−−−−−−−√∑r=t+1−wtρt−r(1−ρ)g2r+ϵ−−−−−−−−−−−−−−−−−−−−√gt=−∑r=t−wt−1ρt−1−r(1−ρ)⎛⎝⎜i2rj2rk2r⎞⎠⎟+ϵ−−−−−−−−−−−−−−−−−−−−−−−−⎷∑r=t+1−wtρt−r(1−ρ)⎛⎝⎜a2rb2rc2r⎞⎠⎟+ϵ−−−−−−−−−−−−−−−−−−−−−−−−⎷⎛⎝atbtct⎞⎠↓Δxt≈−⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜∑r=t−wt−1ρt−1−r(1−ρ)i2r+ϵ−−−−−−−−−−−−−−−−−−−−√∑r=t+1−wtρt−r(1−ρ)a2r+ϵ−−−−−−−−−−−−−−−−−−−−√at∑r=t−wt−1ρt−1−r(1−ρ)j2r+ϵ−−−−−−−−−−−−−−−−−−−−√∑r=t+1−wtρt−r(1−ρ)b2r+ϵ−−−−−−−−−−−−−−−−−−−−√bt∑r=t−wt−1ρt−1−r(1−ρ)k2r+ϵ−−−−−−−−−−−−−−−−−−−−√∑r=t+1−wtρt−r(1−ρ)c2r+ϵ−−−−−−−−−−−−−−−−−−−−√ct⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟