2012-04-26 51 views
10

Tôi đang cố gắng hiểu một vài điều về mạng thần kinh. Đầu tiên, sau khi tìm kiếm trên web, có vẻ như không có cách nào để tính toán biến đổi Fourier (rời rạc) thông qua mạng thần kinh. Bạn có thể hack nó bằng cách cứng mã hóa điều để bao gồm các hằng số Fourier cho biến đổi và sau đó nhận được một kết quả khá. Tại sao máy có thể không tự mình tìm ra?mạng thần kinh không thể tìm ra biến đổi Fourier?

+0

Tôi chưa từng thấy sự kiện này trước đây (nhưng tôi không phải là chuyên gia mạng thần kinh). Bạn có thể đưa ra một vài tài liệu tham khảo? Tôi thấy một giấy tuyên bố điều này, nhưng không tạo ra một trường hợp mạnh mẽ. – tom10

Trả lời

7

DFT là toán tử tuyến tính. Một số mạng nơ-ron có một phần tử sigmoid hoặc phi tuyến tính khác trong đường dẫn tính toán, điều này có thể khiến việc mô phỏng toán tử tuyến tính trở nên khó khăn hơn.

Đã thêm: DFT đầy đủ là phép nhân ma trận N theo N. Một mạng thần kinh phải đủ lớn để đại diện cho nhiều phép nhân (ở mức tối thiểu O (NlogN)).

+0

Tôi có thể sử dụng chức năng kích hoạt tuyến tính. Bạn nghĩ rằng đó là tất cả phải mất? Sin/Cos không đưa tôi xuống một con đường suy nghĩ tuyến tính theo mặc định. – Brannon

+0

Đó chỉ là một yếu tố có thể. – hotpaw2

+1

Tôi đang tặng tiền thưởng ở đây vì tôi nghĩ câu trả lời này là gần nhất với câu trả lời của câu hỏi. Cảm ơn mọi người. – Brannon

4

Như tôi đã hiểu, mạng nơron chỉ là một phương pháp phân loại mà "học". Để giải quyết vấn đề sử dụng các mạng thần kinh bạn cần:

  1. Xác định các yếu tố đầu phân loại
  2. Xác định kết quả đầu ra phân loại
  3. Cung cấp một tập huấn luyện: nó là một tập hợp các cặp (input, output)
  4. Chọn một cấu trúc liên kết (bao nhiêu lớp, bao nhiêu nơ-ron trên mỗi lớp ..) và các chức năng mà các tế bào thần kinh riêng lẻ sẽ sử dụng để chuyển đổi đầu vào thành các đầu ra

Sau khi mạng nơron được đào tạo, đưa ra một đầu vào mới, mạng nơron tạo ra một đầu ra. Làm thế nào tốt đầu ra là phụ thuộc vào cách "tốt" là đào tạo. Thông thường, cách đại diện của dữ liệu là tập dữ liệu đào tạo. Kỹ thuật này có thể rất hữu ích khi cố gắng giải quyết các vấn đề phân loại trong đó có một mối quan hệ không xác định giữa đầu vào và đầu ra.

Chuyển đổi Fourier nhanh chỉ là một hàm. Bạn có thể có FFT trong một lần, được áp dụng cho các hiện tượng một chiều như sóng âm. Trong trường hợp này, bạn truyền một vectơ các giá trị (các mẫu cường độ của sóng âm thanh) và lấy lại một vectơ tần số. Cụ thể hơn, biên độ của sóng hài của các tần số khác nhau khi được tạo ra tạo ra sóng âm gốc. Trong hai chiều, FFT lấy làm ma trận đầu vào. Ví dụ, đối với một bức ảnh, nó có thể là cường độ màu tại các điểm trong lưới. FFT biến đổi nó thành ma trận hài. Chiều dài của vector, hoặc thứ tự của ma trận được cho bởi tốc độ lấy mẫu của tín hiệu gốc.

Để áp dụng mạng thần kinh để tính toán FFT:

  1. Thuật toán để tính toán FFT trong 1 và 2 kích thước cũng được xác định. Độ phức tạp của nó là O (n log n), làm cho nó rất hiệu quả. Việc thực hiện mạng thần kinh sẽ cần phải rất hiệu quả (song song?) Để biện minh cho việc sử dụng nó.
  2. Nếu bạn thay đổi tốc độ lấy mẫu, bạn cần phải đào tạo lại mạng thần kinh: giả sử rằng bạn có mạng lưới tính FFT cho tốc độ lấy mẫu nhất định, nếu bạn giảm đáng kể tốc độ lấy mẫu, mạng thần kinh sẽ "quá mức" dữ liệu và ngược lại.

Với tất cả điều này, tôi nghĩ mạng nơron có thể phù hợp rất tốt với việc triển khai cụ thể FFT miễn là các thông số (tỷ lệ lấy mẫu ...) không thay đổi.

+0

vài vấn đề ở đây: 1. * Cụ thể hơn, biên độ của sóng hài của các tần số khác nhau mà khi sáng tác tạo ra sóng âm gốc. * Không hoàn toàn đúng. đầu ra của fft là số phức. mỗi số phức đại diện cho biên độ và pha, nhưng ở dạng thô, không hoàn toàn như vậy. 2. khi người ta nói hài, họ có nghĩa là bội số nguyên của một tần số cơ bản (http://en.wikipedia.org/wiki/Harmonic). trong thực tế FT được bạn lấy mẫu tần số chỉ lên đến Nyquist, vì vậy * FFT biến đổi này thành một ma trận của sóng hài * là không đúng sự thật. – thang

2

Tôi nghĩ rằng tôi tìm thấy một bài nghiên cứu về chủ đề này: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.144.9688&rep=rep1&type=pdf

Nó nói rằng "để đạt được một mạng lưới thần kinh [rằng] xử lý một DFT, một chiến lược đã được áp dụng mà bản đồ các công thức toán học của DFT vào cấu trúc của mạng thần kinh ", và có vẻ như họ đã làm cho nó hoạt động (phần 6).

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