Trình tối ưu hóa thực hiện thuật toán Adam.
Tối ưu hóa Adam là một phương pháp giảm độ dốc ngẫu nhiên dựa trên ước tính thích ứng của các khoảnh khắc bậc nhất và bậc hai.
Theo Kingma và cộng sự, 2014, phương pháp này "hiệu quả về mặt tính toán, yêu cầu ít bộ nhớ, không thay đổi tỷ lệ theo đường chéo của độ dốc và rất phù hợp cho các vấn đề lớn về dữ liệu/tham số".
@see Kingma và cộng sự, 2014, Adam: Phương pháp tối ưu hóa ngẫu nhiên .
Hằng số
trôi nổi | BETA_ONE_DEFAULT | |
trôi nổi | BETA_TWO_DEFAULT | |
trôi nổi | EPSILON_DEFAULT | |
Sợi dây | KHOẢNH KHẮC ĐẦU TIÊN | |
trôi nổi | LEARNING_RATE_DEFAULT | |
Sợi dây | SECOND_MOMENT |
Hằng số kế thừa
Nhà xây dựng công cộng
Phương pháp công cộng
tĩnh <T mở rộng TType > Op | createAdamMinimize (Phạm vi phạm vi, Mất toán hạng <T>, float learningRate, float betaOne, float betaTwo, float epsilon, Tùy chọn... tùy chọn) Tạo Hoạt động giảm thiểu tổn thất |
Sợi dây | getOptimizerName () Lấy tên của trình tối ưu hóa. |
Sợi dây | toString () |
Phương pháp kế thừa
Hằng số
float cuối cùng tĩnh công khai BETA_ONE_DEFAULT
float cuối cùng tĩnh công khai BETA_TWO_DEFAULT
float cuối cùng tĩnh công khai EPSILON_DEFAULT
Chuỗi cuối cùng tĩnh công khai FIRST_MOMENT
float cuối cùng tĩnh công khai LEARNING_RATE_DEFAULT
Chuỗi cuối cùng tĩnh công khai SECOND_MOMENT
Nhà xây dựng công cộng
public Adam (Biểu đồ đồ thị , float learningRate)
Tạo trình tối ưu hóa Adam
Thông số
đồ thị | đồ thị TensorFlow |
---|---|
tỷ lệ học | tỷ lệ học tập |
public Adam (Biểu đồ đồ thị , float learningRate, float betaOne, float betaTwo, float epsilon)
Tạo trình tối ưu hóa Adam
Thông số
đồ thị | đồ thị TensorFlow |
---|---|
tỷ lệ học | tỷ lệ học tập |
betaOne | Tốc độ phân rã theo cấp số nhân cho ước tính thời điểm đầu tiên. Mặc định là 0,9. |
betaHai | Tốc độ phân rã theo cấp số nhân cho ước tính thời điểm thứ 2. Mặc định là 0,999. |
epsilon | Một hằng số nhỏ cho sự ổn định về số. Epsilon này là "epsilon hat" trong bài báo Kingma và Ba (trong công thức ngay trước Phần 2.1), không phải epsilon trong Thuật toán 1 của bài báo. Mặc định là 1e-8. |
public Adam (Biểu đồ đồ thị , Tên chuỗi, float learningRate)
Tạo trình tối ưu hóa Adam
Thông số
đồ thị | đồ thị TensorFlow |
---|---|
tên | tên Trình tối ưu hóa, mặc định là "Adam" |
tỷ lệ học | tỷ lệ học tập |
public Adam (Biểu đồ đồ thị , Tên chuỗi, float learningRate, float betaOne, float betaTwo, float epsilon)
Tạo trình tối ưu hóa Adam
Thông số
đồ thị | đồ thị TensorFlow |
---|---|
tên | tên Trình tối ưu hóa, mặc định là "Adam" |
tỷ lệ học | tỷ lệ học tập |
betaOne | Tốc độ phân rã theo cấp số nhân cho ước tính thời điểm đầu tiên. Mặc định là 0,9. |
betaHai | Tốc độ phân rã theo cấp số nhân cho ước tính thời điểm thứ 2. Mặc định là 0,999. |
epsilon | Một hằng số nhỏ cho sự ổn định về số. Epsilon này là "epsilon hat" trong bài báo Kingma và Ba (trong công thức ngay trước Phần 2.1), không phải epsilon trong Thuật toán 1 của bài báo. Mặc định là 1e-8. |
Phương pháp công cộng
public static Op createAdamMinimize ( Phạm vi phạm vi, Mất toán hạng <T>, float learningRate, float betaOne, float betaTwo, float epsilon, Tùy chọn... tùy chọn)
Tạo Hoạt động giảm thiểu tổn thất
Thông số
phạm vi | phạm vi TensorFlow |
---|---|
sự mất mát | sự mất mát để giảm thiểu |
tỷ lệ học | tỷ lệ học tập |
betaOne | Tốc độ phân rã theo cấp số nhân cho ước tính thời điểm đầu tiên. |
betaHai | Tốc độ phân rã theo cấp số nhân cho ước tính thời điểm thứ 2. |
epsilon | Một hằng số nhỏ cho sự ổn định về số. Epsilon này là "epsilon hat" trong bài báo Kingma và Ba (trong công thức ngay trước Phần 2.1), không phải epsilon trong Thuật toán 1 của bài báo. |
tùy chọn | Thuộc tính Trình tối ưu hóa tùy chọn |
Trả lại
- Hoạt động giảm thiểu tổn thất
Ném
Ngoại lệ Đối số bất hợp pháp | nếu phạm vi không biểu thị Biểu đồ |
---|
Chuỗi công khai getOptimizerName ()
Lấy tên của trình tối ưu hóa.
Trả lại
- Tên trình tối ưu hóa.