Cũng y như các vấn đề Deep Learning khác, bài toán đầu tiên chúng ta cần có tác dụng là giải pháp xử lý dữ liệu. Vậy với dữ liệu audio, quá trình tiền cách xử trí sẽ như thế nào? Trong nội dung bài viết này, mình sẽ trình bày chi tiết về vụ việc này.
Bạn đang xem: Phân tích dữ liệu âm thanh
Sử dụng các thư viện music trong python để lấy đặc trưng
Thư viện python hỗ trợ xử lý âm thanh
Một số thư viện python cung cấp xử lý âm nhạc như librosa, scipy, torchaudio. Toàn bộ đều được cho phép bạn đọc các tệp âm nhạc ở các định dạng khác nhau.
Bước đầu tiên là thiết lập tệp lên:

Dữ liệu tín hiệu âm thanh (Audio Signal Data)
Khi âm nhạc được lưu giữ trong một tệp, nó vẫn ở định hình nén. Lúc tệp được tải, nó sẽ được giải nén và chuyển đổi thành một mảng Numpy.

Ví dụ với file âm nhạc ở trên dài 278.521s cùng với sample rate là 16000hz thì con số samples của file đã là 278.52 * 16000=4456336
Biên độ của tần số nghỉ ngơi giây thứ 1 là:

Bây giờ, chúng ta tiếp tục nhóm âm thanh lấy mẫu thành các đoạn dài trăng tròn mili giây.

Biểu diễn dưới dạng biểu vật dụng đường mang lại khoảng thời gian 20ms này:

Để khiến cho dữ liệu này thuận tiện hơn mang đến mạng nơ-ron xử lý, chúng ta sẽ tách sóng âm thanh tinh vi này thành các phần nguyên tố của nó. Vậy thì tách bóc như cụ nào ??? Thử tưởng tượng theo lấy một ví dụ này, mọi bạn sẽ thấy dễ hiểu hơn. Vào âm nhạc, ta thường xuyên có những hợp âm. Trả sử chúng ta đánh phù hợp âm C Major trên đàn piano. M thanh này là sự phối kết hợp của 3 nốt nhạc C, E và G. Họ cần tách bóc âm thanh phức hợp này thành các nốt cá biệt để hiểu được chúng là C, E với G. Đây đó là ý tưởng phân tích âm nhạc thành những thành phần của nó.Chúng ta triển khai việc so sánh này phụ thuộc vào biến thay đổi Fourier.
Biến đổi Fourier
Theo wikipedia, đặc điểm của biến đổi Fourier:



Spectrogram
Trong phần trước, bọn họ đã chia dấu hiệu thành những giá trị tần số của nó, chúng sẽ nhập vai trò là features cho mạng nơ ron nhấn dạng giọng nói. Nhưng mà khi áp dụng FFT cho bộc lộ của mình, nó chỉ cung cấp các quý hiếm tần số và họ bị mất dấu tin tức thời gian. Vì chưng đó, họ cần tìm kiếm một bí quyết khác để thống kê giám sát các features làm thế nào cho các giá trị tần số và thời hạn đều được quan tiền sát. Spectrogram có thể giải quyết được vấn đề này.Biểu diễn trực quan những tần số của một biểu thị nhất định với thời gian được call là Spectrogram. vào biểu đồ màn trình diễn Spectrogram - một trục bộc lộ thời gian, trục máy hai thể hiện tần số với màu sắc bộc lộ độ lớn (biên độ) của tần số quan gần cạnh tại 1 thời điểm thay thể. Màu sắc tươi sáng biểu hiện tần số mạnh. Các tần số nhỏ hơn tự (0–1k
Hz) là mạnh dạn (sáng). (Các tần số mạnh bạo chỉ nằm trong tầm từ 0 đến 1k
Hz bởi đoạn âm thanh này là lời nói của nhỏ người. )

Tạo Spectrogram
Ý tưởng đó là chia tín hiệu âm thanh thành những khung nhỏ tuổi hơn (cửa sổ) và đo lường và tính toán DFT (hoặc FFT) cho từng cửa sổ đó. Bằng cách này, shop chúng tôi sẽ nhận ra tần số cho từng cửa sổ với số cửa sổ sẽ đại diện cho thời gian. Để không làm mất đi một vài ba tần số khi lấy các cửa sổ một cách liên tục, họ thường giữ cho các cửa sổ này ck lên nhau (overlap). Đối với tác vụ dấn dạng tiếng nói thông thường, bạn nên sử dụng cửa sổ dài từ đôi mươi đến 30 ms. Một con bạn không thể nói nhiều hơn thế nữa một âm vị trong khoảng thời hạn này.

Đầu ra của thuật toán DFT (hoặc FFT) là 1 mảng những số đại diện cho những biên độ của những tần số khác nhau trong cửa ngõ sổ. Ma trận 2 chiều thu được là biểu thứ Spectrogram.
Thử trình diễn Spectrograms bằng code:

Mel Spectrogram
Mel Scale
Các phân tích đã cho là con bạn không cảm thấy được tần số trên thang đo tuyến đường tính. Nhỏ người hoàn toàn có thể dễ dàng rành mạch được music với tần số thấp rộng tần số cao. Phần lớn con người rất có thể dễ dàng nhận biết sự khác hoàn toàn giữa âm thanh 100 Hz với 200 Hz nhưng lại khó nhận biết sự khác biệt giữa 2000 với 2100 Hz, khoác dù khoảng cách giữa hai bộ âm nhạc là như nhau. Đây là biện pháp con fan cảm nhận các tần số. Đây là điều khiến Mel Scale trở thành gốc rễ cơ bản trong những ứng dụng sản phẩm học đối với âm thanh, bởi nó bắt chước nhận thức của con fan về âm thanh.Sự biến hóa từ thang đo Hertz sang thang đo Mel như sau:
Decibel Scale
Trong thang đo này, 0 dB là trọn vẹn im lặng. Từ bỏ đó, những đơn vị đo lường và tính toán tăng lên theo cấp số nhân. 10 d
B to hơn 10 lần đối với 0 d
B, trăng tròn d
B to hơn 100 lần với 30 d
B to hơn 1000 lần. Bên trên thang đo này, âm thanh trên 100 d
B ban đầu trở nên lớn tới cả không thể chịu đựng nổi.



Xem thêm: Cách cài đặt network printer trên macbook, hướng dẫn cài máy in cho macbook đơn giản
Ngoài Mel Spectrogram, thì đặc trưng MFCC cũng thường xuyên được sử dụng để trích xuất đặc trưng âm thanh. Các chúng ta cũng có thể tìm phát âm kĩ rộng ở đây.
Kết luận
Ở bài xích này, mình đã trình diễn về một trong những đặc trưng âm nhạc thường được sử dụng trong việc Speech to Text. Bài tiếp sau mình sẽ trình bày về phương pháp tiếp cận các mô hình trong việc này. Cảm ơn các bạn đã đón đọc và xem tiếp bài của bản thân mình nhé.