Làm thế nào tôi có thể tự động hóa sự lựa chọn cấu trúc liên kết của một mạng thần kinh cho một vấn đề tùy ý?


14

Giả sử rằng tôi muốn giải quyết một vấn đề với mạng thần kinh mà tôi không thể phù hợp với các cấu trúc liên kết hiện có (perceptron, Konohen, v.v.) hoặc đơn giản là tôi không biết về sự tồn tại của chúng hoặc tôi không thể hiểu được chúng cơ học và tôi dựa vào riêng của tôi thay vào đó.

Làm cách nào tôi có thể tự động hóa sự lựa chọn cấu trúc liên kết (nghĩa là số lớp, loại kích hoạt, loại và hướng của các kết nối, v.v.) của một mạng thần kinh cho một vấn đề tùy ý?

Tôi là người mới bắt đầu, nhưng tôi nhận ra rằng trong một số cấu trúc liên kết (hoặc, ít nhất là trong tri giác), rất khó để không hiểu được cơ học bên trong vì các nơ-ron của các lớp ẩn không thể hiện bất kỳ bối cảnh có ý nghĩa toán học nào.

Câu trả lời:


11

Tôi nghĩ trong trường hợp này, có lẽ bạn sẽ muốn sử dụng thuật toán di truyền để tạo cấu trúc liên kết thay vì tự làm việc. Cá nhân tôi thích NEAT (NeuroEvolution of Augmenting Topology) .

Bài báo NEAT ban đầu liên quan đến việc phát triển các trọng số cho các kết nối, nhưng nếu bạn chỉ muốn một cấu trúc liên kết, bạn có thể sử dụng thuật toán trọng số thay thế. Bạn cũng có thể trộn các chức năng kích hoạt nếu bạn không chắc chắn nên sử dụng chức năng nào. Dưới đây là một ví dụ về việc sử dụng backpropagation và nhiều loại nơ-ron.


5

Câu trả lời khác đề cập đến NEAT để tạo trọng số mạng hoặc cấu trúc liên kết. Bài báo NeuroEvolution: Tầm quan trọng của sự tiến hóa chức năng chuyển giao và mạng không đồng nhất , cũng đưa ra một bản tóm tắt ngắn về các kỹ thuật tiến hóa thần kinh, cung cấp một cách tiếp cận khác cho NEAT. Nó sử dụng lập trình di truyền học Cartesian để phát triển nhiều chức năng kích hoạt.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.