Chào mọi người,
Hiện mình mới học về Machine Learning và đang học Multi-Layer-Peceptron(MLP).
Sau khi học xong, mình định ứng dụng MLP vào bài toán phân loại số với bộ dữ liệu MNIST.
Tuy nhiên kết quả là máy vẫn không học được. Theo mình quan sát, sau khi chạy qua mỗi batch và mỗi epoch thì các bias cứ tăng mãi không chịu dừng cho đến inf. Mình không hiểu lý do gì khiến các bias và hơn nữa là hàm mất mát không hội tụ.
Mô tả cơ bản về thuật toán của mình:
+ MLP gồm 1 hidden layer với 500 units
+ activation funtion cho hidden layer là hàm ReLU, cho output layer là softmax
+ Sử dụng mini-batch gradient descent để tìm nghiệm. Số lần lặp (epoch) là 100 lần. Mỗi batch chứa 50 điểm dữ liệu
Có đính kèm code bằng python của mình (gần 90 dòng).
Bộ dữ liệu MNIST: http://yann.lecun.com/exdb/mnist/
Các phần về tính toán đạo hàm mình tham khảo theo trang web : https://machinelearningcoban.com/2017/02/24/mlp/
Mong mọi người giúp mình tìm ra vấn đề trong quá trình tính toán và code của mình.
Hiện mình mới học về Machine Learning và đang học Multi-Layer-Peceptron(MLP).
Sau khi học xong, mình định ứng dụng MLP vào bài toán phân loại số với bộ dữ liệu MNIST.
Tuy nhiên kết quả là máy vẫn không học được. Theo mình quan sát, sau khi chạy qua mỗi batch và mỗi epoch thì các bias cứ tăng mãi không chịu dừng cho đến inf. Mình không hiểu lý do gì khiến các bias và hơn nữa là hàm mất mát không hội tụ.
Mô tả cơ bản về thuật toán của mình:
+ MLP gồm 1 hidden layer với 500 units
+ activation funtion cho hidden layer là hàm ReLU, cho output layer là softmax
+ Sử dụng mini-batch gradient descent để tìm nghiệm. Số lần lặp (epoch) là 100 lần. Mỗi batch chứa 50 điểm dữ liệu
Có đính kèm code bằng python của mình (gần 90 dòng).
Bộ dữ liệu MNIST: http://yann.lecun.com/exdb/mnist/
Các phần về tính toán đạo hàm mình tham khảo theo trang web : https://machinelearningcoban.com/2017/02/24/mlp/
Mong mọi người giúp mình tìm ra vấn đề trong quá trình tính toán và code của mình.
Comment