Mạng lưới thần kinh với số lượng đầu vào linh hoạt?


7

Có thể tạo ra một mạng lưới thần kinh cung cấp một đầu ra nhất quán cho rằng đầu vào có thể ở các vectơ có độ dài khác nhau?

Tôi hiện đang ở trong một tình huống mà tôi đã lấy mẫu rất nhiều tệp âm thanh, có độ dài khác nhau và phải đào tạo một mạng thần kinh cung cấp cho tôi đầu ra mong muốn được cung cấp một đầu vào nhất định. Tôi đang cố gắng tạo một mạng hồi quy có thể tạo ra tính năng MFCC, được cung cấp các mẫu của một tệp âm thanh, có độ dài khác nhau, làm cho đầu vào được đánh số khác nhau.

Câu trả lời:


9

Có, điều này là có thể bằng cách coi âm thanh là một chuỗi thành Mạng thần kinh tái phát (RNN) . Bạn có thể huấn luyện RNN dựa vào mục tiêu chính xác ở cuối chuỗi hoặc thậm chí để dự đoán một chuỗi khác bù từ đầu vào.

Tuy nhiên, xin lưu ý rằng có một chút để tìm hiểu về các tùy chọn đi vào xây dựng và đào tạo RNN , rằng bạn sẽ không nghiên cứu trong khi xem xét các mạng chuyển tiếp cấp dữ liệu đơn giản hơn. Các RNN hiện đại sử dụng các thiết kế lớp bao gồm các cổng bộ nhớ - hai kiến ​​trúc phổ biến nhất là LSTM và GRU, và chúng thêm các tham số có thể huấn luyện hơn vào mỗi lớp vì các cổng bộ nhớ cần tìm hiểu các trọng số ngoài các trọng số giữa và trong lớp.

Các RNN được sử dụng rộng rãi để dự đoán từ các chuỗi âm thanh đã được xử lý trong MFCC hoặc các bộ tính năng tương tự, vì chúng có thể xử lý dữ liệu tuần tự như đầu vào và / hoặc đầu ra, và đây là một tính năng mong muốn khi xử lý dữ liệu có độ dài thay đổi như từ được nói , âm nhạc, vv

Một số điều đáng chú ý khác:

  • RNN có thể hoạt động tốt đối với các chuỗi dữ liệu có độ dài thay đổi và ở đó có thứ nguyên được xác định rõ ràng theo đó các chuỗi phát triển. Nhưng chúng ít được điều chỉnh phù hợp cho các bộ tính năng có kích thước thay đổi khi không có thứ tự hoặc trình tự rõ ràng.

  • Các RNN có thể nhận được các kết quả tiên tiến để xử lý tín hiệu, NLP và các nhiệm vụ liên quan, nhưng chỉ khi có một lượng dữ liệu đào tạo rất lớn. Khác, đơn giản hơn, các mô hình có thể hoạt động tốt hoặc tốt hơn nếu có ít dữ liệu.

  • Đối với vấn đề cụ thể về việc tạo MFCC từ các mẫu âm thanh thô: Trong khi có thể tạo RNN dự đoán các tính năng MFCC từ âm thanh thô, điều này có thể mất một số nỗ lực và thử nghiệm để xử lý đúng và có thể mất nhiều sức mạnh xử lý để thực hiện một RNN đủ mạnh để đối phó với các chuỗi rất dài ở tốc độ mẫu âm thanh bình thường. Trong khi tạo MFCC từ âm thanh thô bằng cách sử dụng phương pháp tiêu chuẩn bắt đầu bằng FFT sẽ đơn giản hơn rất nhiều và được đảm bảo chính xác.


Ồ .. Tôi đoán tôi đã quên đề cập rằng đầu ra là một giá trị chứ không phải lớp => Tôi đoán RNN sẽ phân loại nó thành một lớp chứ không phải giá trị?
Ngân hàng Carlton

1
@CarltonBanks: Đầu ra RNN có thể được huấn luyện với cùng loại mục tiêu (sử dụng cùng chức năng mất) như các NN khác. Vì vậy, bạn có thể làm phân loại hoặc hồi quy.
Neil Slater

Đối với âm thanh, đây là một giải pháp tuyệt vời, đối với những người khác, bạn cần cẩn thận rằng các RNN giả định một dạng trật tự trong chuỗi làm cho nó ít hữu ích hơn đối với một số trường hợp sử dụng
Jan van der Vegt

@JanvanderVegt: Có nếu bạn có một "túi" các vectơ đặc trưng có kích thước thay đổi, thì RNN có thể ít hữu ích hơn. Tôi sẽ cố gắng làm cho điều đó rõ ràng hơn
Neil Slater

1
@ echan00: Không có đầu vào không thể có chiều dài thay đổi với CNN đơn giản. Bạn phải đệm hoặc cắt theo kích thước cố định. Có khả năng giấy bạn liên kết hoạt động trên các khung thời gian có cửa sổ với kích thước được đặt và đó cũng có thể là một tùy chọn cho dự án của bạn - tức là chia tín hiệu của bạn thành các phân đoạn (có thể chồng chéo) và xử lý riêng - điều này có thể hoạt động tốt theo trình tự phân loại -to-Sequence hoặc hồi quy, nhưng ít tốt hơn cho giá trị chuỗi-đến-đơn. Bạn cũng có thể nhận được các giống lai CNN / RNN khác nhau.
Neil Slater
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.