7

Rất nhiều giấy tờ tôi đã đọc cho đến nay đã đề cập đến "mạng đào tạo trước có thể cải thiện hiệu quả tính toán về lỗi truyền ngược" và có thể đạt được bằng RBM hoặc Autoencoders.Việc đào tạo trước cải thiện phân loại trong mạng nơron như thế nào?

  1. Nếu tôi đã hiểu một cách chính xác, AutoEncoders làm việc bằng cách học chức năng sắc, và nếu nó đã ẩn các đơn vị nhỏ hơn kích thước của dữ liệu đầu vào, sau đó nó cũng không nén, nhưng những gì thực hiện điều này thậm chí có có liên quan gì đến việc cải thiện hiệu quả tính toán trong việc truyền tín hiệu lỗi ngược? Có phải vì các trọng số của các đơn vị ẩn được đào tạo trước không phân kỳ nhiều so với các giá trị ban đầu của nó?

  2. Giả sử các nhà khoa học dữ liệu người đang đọc điều này sẽ do theirselves biết đã có AutoEncoders mất đầu vào như giá trị mục tiêu từ họ đang tìm hiểu chức năng danh tính, được coi là học không giám sát, nhưng phương pháp này có thể được áp dụng cho Convolutional Mạng nơron mà lớp ẩn đầu tiên là bản đồ đặc trưng? Mỗi bản đồ tính năng được tạo bằng cách liên kết hạt nhân đã học với trường tiếp nhận trong hình ảnh. Hạt nhân đã học được này, làm thế nào điều này có thể thu được bằng cách đào tạo trước (thời trang không giám sát)?

Trả lời

11

Một điều cần lưu ý là các bộ mã hóa tự động cố gắng tìm hiểu hàm không tầm thường xác định, không phải chính hàm đó. Nếu không, họ sẽ không hữu ích chút nào. Vâng việc đào tạo trước giúp di chuyển các vectơ trọng số về phía điểm bắt đầu tốt trên bề mặt lỗi. Sau đó, các thuật toán backpropagation, về cơ bản là làm gốc dốc, được sử dụng cải thiện theo trọng số đó. Lưu ý rằng gradient gốc bị kẹt trong minima đóng cục bộ.

enter image description here

[Bỏ qua các hạn toàn cầu Minima trong hình ảnh đăng lên và nghĩ về nó như một, tốt hơn, cực tiểu địa phương]

nói trực giác, giả sử bạn đang tìm kiếm một con đường tối ưu để có được từ nguồn gốc A đến đích B. Có một bản đồ không có tuyến đường hiển thị trên nó (các lỗi bạn có được ở lớp cuối cùng của mô hình mạng thần kinh) loại cho bạn biết phải đi đâu. Nhưng bạn có thể đặt mình vào một tuyến đường có rất nhiều chướng ngại vật, lên đồi và xuống đồi. Giả sử ai đó nói với bạn về một lộ trình mà anh ta đã đi qua trước đó (tiền huấn luyện) và đưa cho bạn một bản đồ mới (điểm bắt đầu của giai đoạn pre = đào tạo). Đây có thể là một lý do trực quan về lý do tại sao bắt đầu với trọng lượng ngẫu nhiên và ngay lập tức bắt đầu để tối ưu hóa mô hình với backpropagation có thể không nhất thiết giúp bạn đạt được hiệu suất bạn có được với một mô hình được đào tạo trước. Tuy nhiên, lưu ý rằng nhiều mô hình đạt được kết quả tối tân không sử dụng trước khi đào tạo và họ có thể sử dụng backpropagation kết hợp với các phương pháp tối ưu khác (ví dụ adagrad, RMSProp, Momentum và ...). bị kẹt trong một số xấu minima địa phương.

enter image description here

Here 's nguồn cho hình ảnh thứ hai.

+0

Cảm ơn lời giải thích sáng suốt. –

+0

@VM_AI Bạn được chào đón. Nếu bạn có nhiều dữ liệu, bạn có thể sử dụng các kỹ thuật tối ưu hóa mới và bạn sẽ có khả năng không cần thực hiện bất kỳ việc đào tạo trước nào về mô hình. – Amir

0

Tôi không biết nhiều về lý thuyết bộ mã hóa, nhưng tôi đã thực hiện một chút công việc với RBM. Những gì RBM làm là dự đoán xác suất nhìn thấy loại dữ liệu cụ thể để lấy trọng số được khởi tạo cho công viên bóng phải - nó được coi là mô hình xác suất (không giám sát), vì vậy bạn không sửa bằng cách sử dụng các nhãn đã biết . Về cơ bản, ý tưởng ở đây là có một tỷ lệ học tập quá lớn sẽ không bao giờ dẫn đến sự hội tụ nhưng có một cái quá nhỏ sẽ mất mãi mãi để luyện tập. Vì vậy, bằng cách "pretraining" theo cách này bạn tìm ra công viên bóng của trọng lượng và sau đó có thể thiết lập tỷ lệ học tập là nhỏ để có được chúng xuống các giá trị tối ưu.

Đối với câu hỏi thứ hai, không, bạn thường không tìm kiếm hạt nhân, ít nhất là không theo kiểu không giám sát. Tôi nghi ngờ rằng điều có nghĩa là bằng cách giả vờ ở đây khác đôi chút so với câu hỏi đầu tiên của bạn - điều này là để nói rằng điều đang xảy ra là họ đang dùng một mô hình giả vờ (nói từ vườn thú mô hình) và tinh chỉnh nó bằng một bộ mới Dữ liệu.

Mô hình nào bạn sử dụng thường phụ thuộc vào loại dữ liệu bạn có và nhiệm vụ trong tầm tay. Convnets tôi đã tìm thấy để đào tạo nhanh hơn và hiệu quả, nhưng không phải tất cả dữ liệu đều có ý nghĩa khi bị convolved, trong trường hợp đó dbns có thể là con đường để đi. Trừ khi nói, bạn có một lượng nhỏ dữ liệu sau đó tôi sẽ sử dụng một cái gì đó khác hơn so với các mạng thần kinh hoàn toàn.

Dù sao, tôi hy vọng điều này sẽ giúp xóa một số câu hỏi của bạn.

Các vấn đề liên quan