Các autoencoder
gói chỉ là một thực hiện các autoencoder được mô tả trong Andrew Ng của ghi chú lớp , mà có thể là một điểm khởi đầu tốt để đọc thêm. Bây giờ, để giải quyết câu hỏi của bạn
Mọi người đôi khi phân biệt giữa
các tham số , thuật toán học tự tính toán và
siêu đường kính , điều khiển quá trình học tập đó và cần được cung cấp cho thuật toán học tập.
Điều quan trọng là phải nhận ra rằng KHÔNG CÓ GIÁ TRỊ TUYỆT VỜI cho các siêu đường kính. Giá trị tối ưu sẽ khác nhau, tùy thuộc vào dữ liệu bạn tạo mô hình: bạn sẽ phải thử chúng trên dữ liệu của mình.
a) Lambda ( ) kiểm soát cách thức các trọng số được cập nhật trong quá trình truyền ngược. Thay vì chỉ cập nhật các trọng số dựa trên sự khác biệt giữa sản lượng của mô hình và sự thật cơ bản), hàm chi phí bao gồm một thuật ngữ phạt các trọng số lớn (thực tế là giá trị bình phương của tất cả các trọng số). Lambda kiểm soát tầm quan trọng tương đối của thời hạn phạt này, có xu hướng kéo trọng lượng về 0 và giúp tránh tình trạng thừa.λ
b) Độ thưa thớt kiểm soát Rho ( và beta ). Rho là kích hoạt dự kiến của một đơn vị ẩn (tính trung bình trên toàn tập huấn luyện). Các đại diện sẽ trở nên thưa thớt và thưa thớt hơn khi nó trở nên nhỏ hơn. Độ thưa thớt này được áp đặt bằng cách điều chỉnh thuật ngữ sai lệch và beta kiểm soát kích thước của các bản cập nhật. (Có vẻ như thực sự chỉ giảm tốc độ học tập chung .)( beta beta alphaρ )( ββα
c) Epsilon ( kiểm soát các giá trị trọng lượng ban đầu, được rút ngẫu nhiên từ .N ( 0 , ε 2 )ϵ)N(0,ϵ2)
Giá trị rho của bạn dường như không hợp lý vì cả hai đều ở gần cuối phạm vi của hàm kích hoạt (0 đến 1 cho logistic, -1 đến 1 cho tanh). Tuy nhiên, điều này rõ ràng phụ thuộc vào mức độ thưa thớt bạn muốn và số lượng đơn vị ẩn bạn sử dụng.
Mối quan tâm lớn của LeCunn với trọng lượng nhỏ rằng bề mặt lỗi trở nên rất phẳng gần gốc tọa độ nếu bạn đang sử dụng sigmoid đối xứng. Ở đâu đó trong bài báo đó, ông khuyên nên khởi tạo với các trọng số được rút ngẫu nhiên từ một phân phối bình thường với giá trị trung bình bằng 0 và độ lệch chuẩn , trong đó là số lượng kết nối mà mỗi đơn vị nhận được.
mm−1/2m
Có rất nhiều "quy tắc ngón tay cái" để chọn số lượng đơn vị ẩn. Dự đoán ban đầu của bạn (đầu vào 2x) có vẻ phù hợp với hầu hết trong số họ. Điều đó nói rằng, những dự đoán này là phỏng đoán nhiều hơn so với ước tính. Giả sử bạn đã có sức mạnh xử lý, tôi sẽ đứng về phía các đơn vị ẩn hơn, sau đó thực thi độ thưa thớt với giá trị rho thấp.
Một cách sử dụng bộ tạo tự động rõ ràng là tạo ra các biểu diễn tính năng nhỏ gọn hơn cho các thuật toán học tập khác. Một hình ảnh thô có thể có hàng triệu pixel, nhưng bộ mã hóa tự động (thưa thớt) có thể biểu diễn lại nó trong một không gian nhỏ hơn nhiều.
Geoff Hinton (và những người khác) đã chỉ ra rằng họ tạo ra các tính năng hữu ích để phân loại tiếp theo. Một số công việc học tập sâu sử dụng bộ điều khiển tự động hoặc tương tự để xử lý trước mạng.
Vincent và cộng sự. sử dụng bộ tự động trực tiếp để thực hiện phân loại.
Khả năng tạo các biểu diễn tính năng cô đọng cũng có thể được sử dụng trong các bối cảnh khác. Đây là một dự án nhỏ gọn trong đó các trạng thái do bộ tạo mã tự động được sử dụng để hướng dẫn thuật toán học tăng cường thông qua các trò chơi Atari .
Cuối cùng, người ta cũng có thể sử dụng bộ tự động để tái tạo lại đầu vào ồn ào hoặc xuống cấp, như vậy , đây có thể là một kết thúc hữu ích trong chính nó.
beta = 6
trongautoencoder
mã ví dụ?