1. Trang chủ
  2. » Luận Văn - Báo Cáo

Ứng dụng thuật toán theo dõi cao Độ Đơn Âm Để tự Động hóa kí Âm nhạc

73 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng thuật toán theo dõi cao độ đơn âm để tự động hóa kí âm nhạc
Tác giả Dương Tiến, Đoàn Minh Nhật
Người hướng dẫn TS. Nguyễn Viết Hưng
Trường học Trường Đại học Sư phạm TPHCM
Chuyên ngành Khoa học Máy tính
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2023
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 73
Dung lượng 4,79 MB

Nội dung

Mé dau Lido chon dé tai Âm nhạc là một hình thức nghệ thuật không thể thiều trong đời sống của con ngư Một trong những cách mã các nhạc sĩ thường sảng tác nhạc là ghỉ âm hoặc ghỉ hình k

Trang 1

TRUONG DAI HỌC SƯ PHẠM TPHCM

KHOA CÔNG NGHỆ THÔNG TIN

DUONG TIEN

DOAN MINH NHAT

UNG DUNG THUAT TOAN THEO DOI CAO DO DON AM DE TU DONG HOA Ki AM NHAC

KHOA LUAN TOT NGHIEP

TP.HO CHi MINH - NAM 2023

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM TPHCM

KHOA CÔNG NGHỆ THÔNG TIN

DƯƠNG TIÊN

ĐOÀN MINH NHẬT

UNG DUNG THUAT TOAN THEO DOI CAO DO DON AM DE TY DONG HOA ki AM NHAC

CHUYEN NGANH: KHOA HỌC MÁY TÍNH

KHÓA LUẬN TÓT NGHIỆP

NGƯỜI HƯỚNG DÁN KHOA HỌC: TS NGUYEN VIET HUNG

TP.HCM - NĂM 2023

Trang 3

Đầu tiên, chúng tôi bày tỏ lòng biết ơn đến TS Nguyễn Viết Hưng đã hướng dẫn, động

suốt quá trình nghiên cứu, Qua đó, chúng tôi được học hỏi, tích lũy nhiều kiến thức,

kinh nghiệm chuyên môn để phục vụ cho nghiên cứu nảy

Chúng tôi xin chân thành cảm ơn các quí Thầy, Cô trong khoa Công nghệ Thông tin

truyền đạt kiến thức trong những năm chúng tôi học tập ở trường Được tham gia học

tập, tích lầy kiến thức tại Khoa Công nghệ Thông tin trường Đại học Sư Phạm TPHCM

là một trải nghiệm tuyệt vời và vinh dự của chúng tôi

Chúng tôi cũng xin phép gửi lời cảm ơn đến TS Phan Lê Sơn, một đồng nghiệp đã giúp

đỡ chúng tôi rat nhiều về chuyên môn

Cuối cùng, chúng tôi xin dành lời cảm ơn đến gia đình, bạn bè đã động viên chúng tôi hoàn thành khóa luận tốt nghiệp nảy

Xin chân thành cảm ơn!

Tp Hồ Chí Minh, ngày 11 tháng 3 năm 2023

Trang 4

Y nghia khoa hge va thye tiễn

Ý nghĩa thực tiễn

Cấu trúc khóa luận

Chương 1: Cơ sở lí thuyết

1.1 Các khái niệm liên quan trong âm nhạc

1.1.1 Lí thuyết âm nhạc

1.1.2 Dinh dang MIDI

1.1.3 Chuẩn kí hiệu cao độ khoa học và A440.,

Trang 5

1.2 Xử lí tín hiệu sô

1.2.1 Các khái niệm chung

1.2.2 Phép biến đổi Fourier rời rạc

1.2.3 Thuật toán biến đôi Fourier ngắn hạn

1.2.4 Spectrogram và Mel-Spectrogram

1.3 Học máy và Học sâu

1.3.1 Học máy

1.3.2 Học sâu

1.4 Mạng nơ-ron nhân tạo và các mô hình Học sâu

1.4.1 Convolutional Neural Networks

1.4.2 Recurrent Neural Networks va Gated Recurrent Unit: 1.4.3 Co lutional-R‹ Neural Network: 31

1.5 Ngôn ngữ lập trình Python và các thư viện hỗ trợ

1.5.2 PyTorch

1.5.3 Mido 3 1.5.4 Các thư viện xử lí tín hiệu số

Chương 2: Tổng quan và tình hình nghiên cứu

2.1 Tổng quan về lĩnh vực Truy hồi Thông tin Âm nhạc

Trang 6

2.3 Một số thành tựu trong lĩnh vực Truy hồi Thong tin am nhac 2.3.1 Google MusicLM

3.5.3 Raw pitch accuracy

3.5.4 Raw chroma accuracy

3.5.5 Overall accuracy

Chương 4: Thiết lập ứng dụng kí âm tự động

4.1 Hậu xử lí kết quả từ mô hình rút trích giai điệu

Trang 7

Chương 5: Thực nghiệm và kết quả

5.1 Môi trường thực nghiệm

Trang 8

Convolutional-Recurrent Neural Network Discrete Fourier Transform Fast Fourier Transform

Gated Recurrent Units

International Society of Music Information Retrieval

Long Short-term Memory

Musical Instrument Digital Interface Music Information Retrieval Music Information Retrieval Evaluation eXchange

Overall Accuracy

Raw Chroma Accuracy

Recurrent Neural Networks

Raw Pitch Accuracy

Scientific Pitch Notation

Short-time Fourier Transform

Voicing False Alarm

Voicing Recall

Trang 9

Bang:

Bang 3.1: Thống kê các bộ dữ liệu thu thập được

Bảng 5.1: Các tham số huấn luyện mô hìnl

Bảng 5.2: Các tham số huấn luyện

Bảng 5.3: So sánh kết quả mô hình rút trích giai điệu của chúng tôi (Thesis2023) đối với các nghiên cứu khác

Biểu đồ:

Biểu đỏ 3.: Sự phân bố thể loại của MedleyDB [5]

Biểu đồ 3.2: Sự phân bố dữ liệu MedleyDB của các tập train, validation va test

Hình ảnh:

Hình 1.1: Các thông số điện tử trên đản piano 88 phim [39

Hình 1.2: Một ban nhac “Cake walk from the Follies of 1911” trén dain piano [1] L5

Hinh 1.3: Signal, m6t phin mém mi nguén mé dé chinh sira MIDI [2] 16

Hình 1.4: Các chú thích theo các định nghĩa giai điệu 1 (trên cùng), giai điệu 2 (chính giữa) và giai điệu 3 (đưới cing), phin mém sir dung li Sonic Visualizer (4)

Hình 1.5: Dạng sóng của các tín hiệu

Hình 1.6: Các thông số của Short-time Fourier Transform (chinh sửa từ [6])

Hình 1.7: Ap dung ham cửa số Hann (chính giữa) đẻ làm cho hai đầu của tín hiệu mang cùng một giá trị 0 [6]

Trang 10

Transform 24 Hình 1.9: Spectrogram (a) và Mel-spectrogram (b) của một của tệp âm thanh trong bộ

dữ liệu MedleyDB

Hình 1.10: Minh hoạ một mạng nơ-ron nhân tạo [ 10]

Hình 1.11: Minh họa một mạng nơ-ron tích chập [12]

Hình 1.12: Kiến trúc của mạng nơ-ron hồi qui [13]

Hinh 1.13: Co ché Gated Recurrent Units [17]

Hình 1.14; Minh hoạ một mang no-ron tích chập hồi qui (18)

Hình 2.1: Các nhiệm vụ của lĩnh vực Truy hồi Thông tin Âm nhạc Hình 2.2: MusieLM, một mô hình sinh ra âm nhạc dựa vào nội dung văn bản Hình 2.3: Giao diện của Basic Pitch

Hình 3.1: Sơ đồ luồng các thành phần của ứng dụng kí âm tự động

Hình 3.2: Các bước tiền xử lí dữ liệu

Hình 3.3: Cấu trúc một patch gồm 210 khung hình phân tích, mỗi khung hình phân tích

có thời lượng 0.058s

Hình 3.4: Mô hình rút trích giai điệu đề xuất

Hình 3.5: Kết quả sau mỗi khối CNN,

Hình 3.6: Minh họa cách tính voicing recall

Hình 3.7: Minh họa cách tính voicing recall

Hình 3.8: Minh hoa raw pitch accuracy trên bản phim piano

Trang 11

với đản piano 88 phím

Hình 3.10: Minh họa cách tính overall accuracy

Hình 4.1: Minh họa gộp các khung hình phân tích có giá trị giống nhau sau khi đã kéo

dan cdc khung hình phân tích thành mảng một chiều

Hình 4.2: Loại bỏ các khung hình phân tích không có giai điệu

Hình 4.3: audio2midi, chương trình kỉ âm tự động của chủng tôi Hình 4.4: Kết quả kí âm (màu xanh lá) so với chú thích (màu trắng) của bải hát

Auetioneer_OurFutureFaces, được biểu diễn trên Sonic Visualizer .60

Hình 4.5: Kết quả kí âm của bài hát Auetioneer_OurFutureFaces, được biểu diễn trên

Trang 12

Lí do chon dé ti

Âm nhạc là một hình ệ không thể thiế: đời sống cú i, Mot trong những cách mả các nhạc sĩ thường sảng tác nhạc lả ghỉ âm hoặc ghi hinh kém âm viết thành một bản nhạc, Một bản nhạc có thể hiểu là một bán hướng dẫn nhạc công chơi cũng mang tính lưu trừ cũng như tỉnh lịch sử

KPa V4) ghữ0E6h ng wo , \ sốc hoặc đãi iêu độ tấ nhạc đó có thể chơi trên nhạc cụ khác Để kí âm một bản nhạc, nhạc sĩ không chỉ cần có

trường độ của âm thanh được phát ra Dó đó, quá trình nảy tốn rất nhiều thời gian, công sức vả cũng đòi hỏi trình độ âm nhạc tốt

Chúng tôi chọn để tài “Ứng dụng thuật toán theo dõi cao độ đơn âm để tự động hóa hát của họ một cách tự động đề giảm thời gian sáng tác Đồng thời chúng tôi cũng muốn

âm thanh cũng như lĩnh vực Truy hồi Thông tin Âm nhạc

Mục tiêu nghiên cứu

Nghiên cứu nảy nhằm mục đích tìm hiểu, áp dụng kiến thức của chúng tôi để xây dựng

âm nhạc tự động dưới dang MIDI

Trang 13

'Từ mục tiêu trên

« _ Tìm kiểm vả thu thập dữ liệu âm nhạc chứa chủ thích giai điệu phủ hợp

* _ Xây dựng mô hình Học sâu đẻ rút trích giai điệu của bài hát

chúng tôi chỉ rút trích giai điệu chính của bài nhạc với các thông tin sau:

«_ Cao độ của nốt nhạc gồm 88 nốt nhạc dựa trên bàn phím piano 88 phim

© Trường độ của nốt nhạc

©_ Thời điểm mà nốt nhạc của giai điệu chính xuất hiện Chúng tôi sẽ không rút trích các khái niệm trừu tượng như phương pháp chơi nhạc như một bản nhạc

Ý nghĩa khoa học và thực tiễn

Ý nghĩa khoa học

Đống 800 V468 hiên cửu sos vi ur đổ của siai điều chink trong bải hát Đóng góp vào quả trình nghiên cứu ứng dụng AI vào trong lĩnh vực âm

nhạc.

Trang 14

Giúp nhạc sĩ kí âm lại phần ghi âm nhạc cụ của họ để giảm thời gian sáng tác bải hát Giúp cho con người dễ dàng học hỏi nhạc lí thông qua ứng dụng nảy Cấu trúc khóa luận

Chương Mở đầu

Chương nảy giới thiệu tổng quan về để tải và cũng là chương hiện hành Nội dung : lỉ đo chọn đề tải, mục tiêu nghiên cứu, nhiệm vụ nghiên cứu, phạm vỉ

chương bao gỗi

nghiên cứu, ý nghĩa vả cấu trúc của khóa luận

Chương 1: Cơ sở lí thuyết

Chương này giới thiệu vẻ giải thích vé các kiển thức được sir dung trong dé tai nay, bao

gdm:

© Métsé kign thức về lí thuyết âm nhạc

« _ Các khái niệm, phương pháp trong lĩnh vực xử li tín hiệu số

® _ Kiến thức về lĩnh vực Học máy, Học sâu và các mạng nơ-ron nhân tạo

« _ Ngôn ngữ lập trình Python và các thư viện hỗ trợ

Những kiến thức trên sẽ là tiền đề để phát triển một mỏ hình Học máy trích xuất cao độ của giai điệu cũng như ứng dụng nó để tạo ra một hệ thống kí âm tự động Chương 2: Tổng quan và tình hình nghiên cứu

Chương nảy giới thiệu tổng quan vẻ lĩnh vực nằm trong phạm trù cúa để tải lả Truy hồi khăn trong lĩnh vực, các công trình và các phương pháp nghiên cứu đã có liên quan đến việc rút trích cao độ vả ứng dụng kí âm tự động

Chương 3: Mô hình rút trích cao độ giai điệu chính từ bài hát

Trang 15

đó chúng tôi cũng đề xuất một mô hình rút trích giai điệu và giải thích phương pháp tiền

xử lí dữ liệu

Chương 4: Thiết lập ứng dụng kí âm tự động

Chương này mô tả phương pháp hậu xử lí kết quả của mô hình rút trích giai điệu và xây dựng một ứng dụng kí âm cơ bản bằng cách biến đổi kết quả đã hậu xử lí sang định dạng

MIDI

Chương 5: Thực nghiệm và kết quả

Chương này sẽ mô tả quá trình thực nghiệm, hướng dẫn cài đặt, đồng thời nhận xét và

sánh với các nghiên cứu khác

Chương 6: Kết luận

Chương nảy kết luận những điều đã làm được và những hướng phát triển đối với mô hình trích xuất cao độ giai điệu và ứng dụng kí âm

Trang 16

1.1 Các khái niệm liên quan trong âm nhạc

Lí thuyết âm nhạc

Ki ấm là một thuật ngữ dùng trong lĩnh

vực âm nhạc, chỉ việc ghi chép lại âm

hiệu âm nhạc Ví dụ: người A đang hát

nghe vi lại các nốt nhạc của người A

hát thành một bản nhạc, việc nghe và ghỉ

viết trên giấy hoặc ghi chép lại sử dụng

MIDI

“Âm sắc là một đặc trưng sinh lí của âm

thanh, giúp ta phân biệt âm do các nguồn

khác nhau phát ra Ví dụ, tiếng đản piano

cao độ vả âm lượng, thì âm sắc lả chất

chúng ta phân biệt được sự khác nhau

thanh phụ thuộc vào đạng sóng của âm

thanh, nó thay đôi theo số lượng các dải

tần số phụ hoặc các dải tằn số cộng hưởng

Trang 17

cing bao gdm nhiéu hon mot tin số và hầu hết các tần số bổ sung nảy được gọi là dải tấn số cộng hưởng

Not nhac ndi chung 1a cdc ki higu duge sir dung dé biéu thi thoi gian tuong déi về cao La ) hoặc trường độ (nốt trỏn, nốt đen ) của chỉnh nó

Cao độ là độ cao, thấp của một âm thanh mà tai người có thể phân biệt được Cao độ dạng sóng của một âm thanh vả được định lượng bằng tần số (Hz) Trong bải viết này,

chúng tôi sẽ sử dụng 2 thuật ngữ cao độ và tần số cơ bán với cùng một ý nghĩa Trong

âm nhạc phương Tây, các kí hiệu chữ cái A,B,C,D.E,G,F kết hợp với các chữ số được

sử dụng để kí hiệu cao độ của một nốt nhạc, cách kí hiệu này được gọi là chuẩn kí hiệu

cao độ khoa học

Trang 18

nhạc đỏ kết thúc

1.1.2 Dinh dang MIDI

Giao dién ki thudt số dành cho nhạc cu (tieng Anh: Musical Instrument Digital Interface, viết tắt là MIDI) là một chuẩn về nghỉ thức giao thông điện tứ định rõ các nết âm nhạc

trong nhạc cụ điện tử như là bộ tổng hợp chính xác vả ngắn gọn, để nhạc cy điện tử và

tệp MIDI có kích thước

nốt nào được chơi khi nào vả cách chơi Điều nảy giúp cho cả:

nhỏ hơn nhiều vả trở nên lí tưởng để chia sé thong tin âm nhạc giữa các ứng dụng tương

Trang 19

tả khác có thể được lưu trữ cùng với dữ liệu MIDI

Có nhiều loại khác nhau Ở cấp độ thắt, các thông điệp

phản loi la Thong điệp Kênh hoặc Thông điệp Hệ he ‘Thang điệp Kênh được sứ

được gửi trên một kênh cụ thể vả chỉ ảnh hưởng đến các thiết bị được định cấu hình để nhận thông tin trên kênh đó, Sau đây là một số loại thông điệp Kênh:

© Note On va Note OfT được sử dụng đề kích hoạt vả tắt một nốt nhạc cụ thê

© _ Polyphonic Key Pressure cho phép điều chỉnh độ mạnh yếu của từng nốt nhạc

riêng biệt trên cùng một kênh

« _ Control Change cho phép điều chỉnh các thông số khác nhau cúa âm thanh như

âm lượng, cân bằng trái/phải và hiệu ứng

«_ Program Change cho phép thay đổi chương trình (chẳng hạn như chọn một loại nhạc cụ khác)

© Channel Pressure cho phép diéu chinh độ mạnh yếu của tắt cả các nốt nhạc trên cùng một kênh

* _ Pitch Bend cho phép thay đổi cao độ của tắt cả các nốt nhạc trên cùng một kênh giây trên mỗi nốt đen hay nót phần tư (4) Nều không có thông điệp Set Tempo

trong tệp tin MIDI, nhịp độ mặc định lả 500000 micro giây trên mỗi not nhac

phân nứa, tương đương với 120 nhịp trên mỗi phút

“Thông điệp Hệ thống được sử dụng đẻ gửi thông tin không liên quan trực tiếp đến các gồm các thông tin như đẳng bộ hóa thời gian và thiết lập chung

Để xây dựng một file MIDI cơ bản, ta cẩn ít nhất hai loại thông điệp Kênh: Note On và Note Off để kích hoạt và tắt các nốt nhac.

Trang 20

tin hiệu MIDI từ các đàn điện tử cũng như mô phỏng chúng để cho người đùng để dàng nguyên (Hình 1.1)

1.1.3 Chuẩn kí hiệu cao độ khoa học và A440

Chuẩn kỉ hiệu cao độ khoa học (tiếng Anh: Seientific Pitch Notation, viết tắt là SPN) là

€.D, E, F, G, A, B (với dẫu thăng # hoặc giảng b nếu cần) và một số nguyên xác định xác định một nốt nhạc theo kí hiệu văn ban thay vi tin s6, trong khi cùng lúc tránh các

guitar,

Chuẩn 4440 là một chuẩn về cao độ âm nhạc tương ứng với tần số âm thanh 440 Hz,

phục vụ như một chuẩn điều chỉnh cho nót nhạc A trên nốt C giữa Nó được chuẩn hóa bởi Tổ chức Tiêu chuẩn Hóa Quốc tế với tên gọi ISO 16

Nất C giữa (tiếng Anh: Middle C) là nốt nhạc C nằm giữa hai dãy phím trắng của đản

14 C4 vi nó nằm trong quãng âm thứ tư trên đàn piano tiêu chuẩn 88 phím Như vậy, theo chuẩn A440 thì nốt A4 sẽ mang giá trị là 440 Hz

Số quảng âm tăng lên ï khi có sự thăng hoa từ nốt B sang nốt C Do đó, nốt A0 chỉ đến

nốt A đầu tiên trên nốt C0 Ví dụ: C4 là một nốt trên B3 va AS la mot ndt tren GS

1.1.4 Giai điệu

Giái điệu là một khái niệm trừu tượng và tới nay vẫn còn

hả 2 pera 6 ra Abin h là một vấn để cần đang được ane dd; MIR Một định nghĩa phố biến [3] được sử dụng trong cộng đồng MIR cho rằng "giai điệu là chuỗi

18

Trang 21

nga một bản nhạc đa điệu, và người đó sé cho rang chuỗi âm thanh đơn đó là bản chât

của bản nhạc đa điệu” Dịnh nghĩa này vẫn còn mang tính chủ quan, vì những người

nghe khác nhau cỏ thế ngân nga các phần khác nhau sau khi nghe cùng một bài hát (ví

dụ: giọng ca chính so với guitar solo),

trích giai điệu (sẽ được giới thiệu chỉ tiết ở chương 3.2), được phát biều như sau: "Đường

[SJ Cũng giống như định nghĩa giai điệu trên, giai điệu trong định nghĩa này là một thể tại mỗi thời điểm trong bản nhạc Hình 1.4 được tạo ra trên phần mềm Sonic MedleyDB cé tên là Auctioneer_OurFutureFaces va cdc chi thich tương ứng, biểu diễn trên cho thấy sự khác biệt giữa các định nghĩa giai điệu trong tập dữ liệu MedleyDB:

19

Trang 22

suốt bải hát (trong trường hợp này là giọng hát của ca sĩ)

«_ Định nghĩa 2 kết hợp chú thích tẫn số của các nhạc cụ thành một đường chú thích day nhất,

Định nghĩa 3 bao gồm hai chú thích tần số của nhiều nhạc cụ độc lập với nhau

trên cùng một bải hát

Mặc dù yếu

(chúng ta định nghĩa chiếm ưu thể như thế nào?), chủng tôi quyết định chọn định nghĩa

hủ quan không thể hoản toản loại trừ ngay cả trong định nghĩa này

nảy để phủ hợp với phạm vi kiến thức của chúng

1.2 Xử lí tín hiệu số

1.2.1 Các khái niệm chung

Lấy mẫu là quả trình chuyển đổi một tin hiệu liên tục thành một tin hiệu rời rạc Quá

trình nảy bao gồm việc đo giá trị của tín hiệu liên tục ở các khoảng thời gian đều, được

sọi là chu kỉ lấy mẫu Tín hiệu rời rac thu được là một chuỗi các số biểu diễn biên độ của tin hiệu liên tục tại mỗi thời điềm lắy mẫu

Tân số lấy mẫu là tốc độ lẫy mẫu của tín hiệu liên tục, thường được đo bằng mẫu trên

giây (Hz) Việc chọn tẫn số lấy mẫu là quan trọng vì nó ảnh hưởng đến độ chính xác mà

tín hiệu rời rạc có thé biểu điễn tín hiệu liên tục ban đầu

"Theo định lí Lấy mẫu Nyquist-Shannon, đẻ biểu diễn chính xác một tin n tục có

giới hạn băng thông, tin hiệu liên tục đó phải được lẫy mẫu với một tan số lẫy miu it

la tan sé Nyquist

Trang 23

Phép biển đổi Fourier (tiếng Anh: Fourier Transform) là một phép toán phân rả một tin phiên bản rời rạc của phép biến đổi này gọi li phép biển doi Fourier rời rạc (tiếng Anh: chuỗi W số phức đại điện cho một tín hiệu số và tạo ra một chuỗi M số phức mới đại diện cho các tằn số thành phần của tín hiệu đầu vào lảm đầu ra

số 128, 384, 2048 và 2304 Hz với các biên độ khác nhau và một sóng hỗn hợp được tạo

Trang 24

vả biên độ của chúng (Hình 1.8a)

“Tuy nhiên, hạn chế của phép biến đổi Fourier rời rạc chính là ta chỉ phân tích được các

tần số thành phần của tín hiệu trên toản thời lượng của tin hiệu đó mà không biết các tần

số đó xuất hiện tại thời điểm nảo trong tín hiệu

1.2.3 Thuật toán biến đỗi Fourier ngắn hạn

Thuật toán biển đổi Fourier ngắn

han (tiéng Anh: Short-time Fourier a

‘Transform, viet tit li STFT) la mot f

chuỗi các biến đổi Fourier được thực

khoảng thời gian đều nhau (gọi là

cửa sổ) Chính vì thể, STET cung cấp

tín hiệu không phải là một sóng tuần hoản, tức là điểm bắt đầu và kết thúc của tín hiệu

không cùng một giá trị

Thuật toán STFT gồm ba thông số chỉnh:

* Kich thude khung hinh (frame size hay ny,,): 1a 86 mau tín hiệu được lấy tử tin

hiệu ban đầu để thực hiện DFT Kich thude này cảng lớn thì phổ tín hiệu thu

được cảng chỉ tiết, nhưng chiều thời gian sẽ bị kẻo dăn

Trang 25

được lấy giống với kích thước khung hình) cửa số trong đây là một vector trọng

số đề chuẩn hóa tín hiệu trước khi thực hiện DFT, cửa số thường được dùng là

cửa sô Hann (Hình 1.7)

* Bude nhay (hop size): la sé mau tin hiệu mả cửa số di chuyển sang phải để tiếp tục thực hiện DFT Đề đảm báo thông tin không bị mắt khi áp dụng hàm cửa số, khoáng một nửa Diểu này giúp ta lẫy được thông tỉn bị mắt ở các đoạn đầu và

đoạn cuối của mẫu tin hiệu ở các khung binh kể bên nó,

4 ” _ ” - = Hình 1.7: Áp dụng hảm cửa số Hann (chính giữa) đẻ lảm cho hai đầu của tin hiệu

Trang 26

fi hop size 2) Các phổ tần số thay đồi theo thời gian này thường được biểu diễn trực quan bằng một

spectrogram hay mel-spectrogram (Hinh 1.8b va Hinh 1.8c)

1.2.4 Spectrogram và Mel-Spectrogram

Spectrogram la biéu dé nhigt biéu dién truc quan tin sé cua mét tin higu nhat định va

thời gian Vige str dung Spectrogram rit hau ich trong vige phân tích các tín biệu âm thanh có cấu trúc phát triển tạm thời theo thời gian tuần hoàn Kết quả sau khi áp dụng phép bién déi Fourier Transform (a), Spectrogram (b) và Mel-spectrogram (c}

Mel spectrogram li m6t spectrogram được biểu diễn trên thang mel thay vì miễn tắn số Thang mel là một thang đo dựa trên sự cảm nhận của con người về các nốt nhạc được

Trang 27

tai người không cảm nhận tần số trên thang tuyến tính [8, 9] và chúng ta đễ nhận thấy

sự khác nhau giữa các tằn số thấp hơn là tằn số cao Ví dụ, chúng ta có thể dễ đảng nghe được 4 âm thanh khác nhau với các tin s6 100, 200, 300, 400 Hz được chơi củng một

chỉ nghe thấy ! âm thanh, mặc dù khoảng cách giữa các tần số là như nhau trong cá 2

trường hợp trên Việc thang mel mô phỏng cách mả con người cám nhận âm thanh cũng chính là lí do nó cũng được sử dụng trong các ứng dụng Học máy để phân tích âm thanh

Hình I.&b vả Hinh 1.§c mô tả cách biểu diễn tần số theo thời gian cia mét spectrogram

va mel spectrogram trén m6t tin hiệu hỗn hợp đẻ cập ở Hình 1.8a Ta có thể thấy khoảng được biểu điễn khác nhau ở mel spectrogram mặc dủ hai khoảng cách nảy lả giống nhau

Trang 28

1.3.1 Học máy

Học máy (tiếng Anh: Machine Learning) là một phân nhánh của trí tuệ nhân tạo (AI) cẩn được lập trình cụ thể Nó hoạt động bằng cách sử dụng các thuật toán đẻ phân tích của con người

Một trong các loại chính của Học máy là học có giám sát (supervised machine learning)

à học không gi i i Trong hoe c6 giim sát, mô hình

được huấn luyện trên một tập dữ liệu đã được gán nhãn và sau đó được sử dụng đẻ dự

đoán kết quả cho dữ liệu mới Ngược lại, trong học không giám sát, mô hình được huắn trúc trong dữ liệu

Trong học có giám sát, có hai loại bài toán chính: phân loại (classification) và hồi qui mẫu dữ liệu mới Ví dụ, chúng ta có thể xây dựng một mö hình phân loại dé dự đoán này, nhăn lớp la “thư rác” hoặc *không phải thư rác”, Trong hồi qui, mục tiêu là dự đoán hình hồi qui để dự đoán giá nhà dựa trên các thông tin như diện tích, số phòng ngủ vả vị

trí Trong trường hợp nảy, giá trị liên tục cẳn dự đoán lả giá nh

Học máy có nhiều ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm nhận diện khuôn

su tong ge sống hẳng ngây của chúng ta v có ti ki ks

ta tương tác với công nghệ

Trang 29

Học sâu (tiếng Anh: Deep Learning) là một phân nhánh của Học máy, sử dụng các mạng

nơ-ron nhân tạo để học vả đưa ra dự đoán hoặc quyết định Sự khác biệt chỉnh giữa học

máy và học sâu là cách thức chúng xử li đữ liệu Trong Học máy, chúng ta thường phải

thực hiện các bước tiền xử lí dữ liệu đề trích xuất các đặc trưng (feature) quan trọng từ

dữ liệu, Các đặc trưng này sau đỏ được sử dụng đề huấn luyện mô hình Trong Học sâu, huấn luyện trên nhiều lớp ẩn (hidden laycr)

Nói cách khác, Học sâu là một phương pháp Học máy tiên tiễn hơn, cho phép máy tính thiểu sự can thiệp của con người trong quả trình xây dựng mô hình và cho phép xây dựng các mỗ hình phức tạp hơn với độ chính xác cao hơn

1.4 Mạng nơ-ron nhân tạo và các mô hình Học sâu

Mang no-ron nhan tao (tiéng Anh: Artificial Neural Network, viết tắt là ANN) là một

mô hình tỉnh toán được xây dựng dựa trên cấu trúc và chức năng của não bộ Nó bao

gm một tập hợp các nút (nơ-ron) được kết nỗi với nhau thông qua các liên kết có trọng

Trang 30

kích hoạt để tạo ra đầu ra của nơ-ron

Mạng nơ-ron nhân tạo có thê được huấn luyện để thực hiện các tác vụ cụ thể bằng cách

điểu chinh các trọng số liên kết giữa các nơ-ron Quá trình huấn luyện này thường được

thực hiện bằng cách sử dụng thuật toán gradient descent để cập nhật các trọng số dựa

trên sai số giữa kết quả dự đoán vả kết quả thực tế

1.4.1 Convolutional Neural Networks

Mang no-ron tich chdp (tiéng Anh: Convolutional Neural Networks, viết tắt là CNN) là

một loại mạng nơ-ron nhân tạo thường được sử dụng trong các tác vụ nhận dạng vả xứ

li hình ảnh [1] Các mạng nảy được thiết kế để nhận dữ li

ảnh và xứ li chúng qua nhiễu lớp, mỗi lớp áp dụng một tập các bộ lọc khác nhau cho dữ liệu để trích xuất các đặc trưng khác nhau

uu đầu vào dưới dạng hình

Convolution

Hình 1.11; Minh họa một mạng nơ-ron tich chập [12],

Kiến trúc cơ bản của một CNN bao gồm một lớp đầu vào, nhiều lớp ấn vả một lớp đầu

và các lớp kết nổi đẩy đủ (fully connected)

Trang 31

phép toán tại mỗi vị trí để tạo ra một tập dữ liệu đầu ra mới, được gọi là feature map

Các bộ lọc được thiết kế đề phát hiện các đặc trưng cụ thẻ trong dữ liệu đầu vảo, chẳng

hạn như cạnh hoặc góc

Sau lớp tích chập, dữ liệu thưởng được truyền qua một lớp gộp Lớp này giảm kich được thực hiện bằng cách lấy giá trị lớn nhắt hoặc trung bình trong một vùng cua feature đặc trưng mạnh hơn

Sau một hoặc nhiều lớp tích chập và gộp, dữ liệu thường được truyền qua một hoặc truyền thống và được sử dụng để kết hợp các đặc trưng được trích xuất bởi các lớp trước

để đưa ra dự đoán

Do CNN được thiết kể dé hoạt động với dữ liệu có cấu trúc, tức là mối quan hệ không gian giữa các pixel lả quan trọng để hiểu nội dung của hỉnh ảnh Nếu bạn hoán đổi vị trí

của một số pixel trong một hình ảnh, nó sẽ thay đôi thông tin mà hình ảnh chứa Nhìn ở

một khía cạnh khác, tín hiệu âm thanh cũng là một đạng dữ liệu có cấu trúc, chính vì li

do đó mà CNN cũng được áp dụng trong việc phân tích xử lí âm thanh

Trang 32

loại mạng nơ-ron nhân tạo mä các kết nói giữa các nút có thể tạo ra một chu trình, cho

phép đầu ra từ một số nút ảnh hưởng đến đầu vào tiếp theo của cùng một nút [14] Điều thái nội bộ (bộ nhớ) để xử lí các chuỗi đầu vào cỏ độ đải biển đổi Do đó chúng có thể

áp dụng cho các bài toán chuỗi thời gian như nhận đạng chữ viết tay liên tục, nhận dạng

giọng nói hay phan tích âm thanh

Gated Recurrent Units (GRU) là một cơ chế công trong RNN, được giới thiệu vào năm (L§TM) [16] với một công quên, nhưng có ít tham số hơn LSTM, vì nó thiếu một cổng đầu ra Hiệu suất của GRU trên một số tác vụ của mô hình âm nhạc đa âm, mô hình tín hiệu giọng nói và xử lí ngôn ngữ tự nhiên được tim thay tương tự như LSTM

GRU cé ging giải quyết vấn đề gradient biển mắt của RNN bing ắ ioe cập nhật (update gate) và một cổng thiết lập lại (reset gate) Cổng cập nhật điều khiển thông tin truyền vào bộ nhớ và công thiết lập lại điều khiển thông tỉn ra khỏi bộ nhớ

Trang 33

1.4.3 Conyolutional-Recurrent Neural Networks

"Mạng nơ-ron tích chập hồi qui (tiểng Anh: Convolutional Recurrent Neural Networl

(CNN) vi mang nơ-ron hồi qui (RNN) CRNN thường được sử dụng trong các tác vụ

xử li chuỗi dữ liệu có cấu trúc không gian, chẳng hạn như nhận dạng chữ viết tay liên

tục hoặc nhận dạng giọng nói Trong CRNN, các lớp tích chập của CNN được sử dụng

để trích xuất các đặc trưng không gian từ dữ liệu đầu vảo, trong khi các lớp hồi qui của RNN được sử dụng để xử lí các thông tin theo thời gian Điều này cho phép mô hình học được cả các đặc trưng không gian và thời gian tử dữ liệu đầu vào

Kiến trúc cơ bản của CRNN bao gồm một lớp đầu vào CNN dé trích xuất các đặc trưng không gian từ dữ liệu đầu vào, sau đó là một lớp RNN để xử lí các thông tin theo thời giải quyết vấn để gradient biển mắt của RNN

Trang 34

“Trong lĩnh vực xử lí âm thanh, CRNN có thể được sử dụng để giải quyết các bài toán

phát hiện sự kiện âm thanh (Sound Event Detection) Các loại sự kiện âm thanh khác

nhau có thể có các đặc điểm tần số và thời gian khác nhau CRNN có thể kết hợp khả của RNN để phát hiện chính xác các sự kiện âm thanh

1.5 Ngôn ngữ lập trình Python và các thư viện hỗ trợ

1.5.1 Python

Python là một ngôn ngữ lập trình bậc cao được thiết kế với mục đích đọc vả viết dễ

đảng, Dược phát triển bởi Guido van Rossum vào cuối những năm 1980 và được phát học và sử dụng ngôn ngữ này trở nên dễ đàng hơn

Đython là một ngôn ngữ đa năng và có thể sứ dụng trong nhiều lĩnh vực khác nhau Nó vực khác Đặc biệt, Python rat phổ biển trong lĩnh vực Học máy Nhiễu thư viện Học đơn gián và dé đọc của Python cũng giúp cho việc xây dựng các mô hình Học máy trở

nên dé dang hon.

Trang 35

giản vả dễ đọc của nó, đến nỗi một khái niệm được tạo thành có tên là “pythonic" để

khuyến khich và cũng cố ưu điểm này Pythonic là một thuật ngữ được sử dụng để mô

a ié i i ủa đẳng lập trình vién Python

Điều này có nghĩa là mã nguồn được viết theo các nguyên tắc va qui ước của Python, sử

đụng các tính năng và cầu trúc dữ liệu của ngôn ngữ một cách hiệu quả vả rõ rằng Một

1

đoạn mã được coi là “pythonie° khi nỏ để đọc, đễ hiểu và tuân thủ các nguyên tắc t

kế của Python Điều này có thể bao gồm việc sử dụng các cấu trúc dữ liệu và hảm tích ước về cách đặt tên vả định dạng mã Ngoài ra, Python còn cỏ một cộng đồng lớn và nhiều thư viện hỗ trợ, giúp cho việc phát triển các ứng dụng trở nên đễ dàng hơn

Một trong những nhược điểm lớn nhất của Python là tốc độ chạy chậm hơn so với một

số ngôn ngữ khác như C hay C+©+, Ngoài ra, Python cũng không phù hợp cho việc phát triển ứng dụng di động

1.5.2 PyTorch

PyTorch [19] là một thư viện tối ưu hóa tensor dành cho ngôn ngữ lập trình Python, iên bởi Facebook, sử é ho Deep Learning tri va CPU Cùng với TensorFlow 2.0, PyTorch cũng là một trong những thư viện phố biển nhất

sở hữu lượng người dùng đông đảo vả cộng đồng lớn mạnh

“Trong đỏ án của đề tài nghiên cứu này, chúng tôi quyết định sử dụng PyTorch, cụ thể là lập trình của ngôn ngữ lập trình python (pythonic)

1.5.3 Mido

Mido lä một thư viện Python cho phép làm việc với các thông điệp và công MIDI Mido

33

Trang 36

gồm cả các thông điệp Hệ thống

1.5.4 Các thư viện xử lí tín hiệu số

1.5.4.1 Librosa

Librosa [20] l một thư viện Python đành cho phan tich âm thanh và âm nhạc Nó cung

bao gồm các chức năng dé tai âm thanh tử tệp, tính toán các biểu diễn khác nhau của âm thanh và thực hiện các thao tác phổ biến trên dữ liệu âm thanh

Librosa là một công cụ mạnh mẽ cho việc phân tích âm thanh và âm nhạc, giúp cho việc hơn Nó được sử dụng rộng rãi trong các lĩnh vực liên quan đến âm thanh và âm nhạc, bao gm nhận dạng giọng nói, phân tích cảm xúc trong âm nhạc, Ngoài ra, Librosa còn cỏ một cộng đồng lớn và tích cực, với nhiều tai liệu hướng dẫn

Ích cho bắt kỳ ai muốn lảm việc với âm thanh vả âm nhạc trong Python,

1.5.4.2 Madmom

Cũng giống như Librosa, Madmom [21] là một thư viện xử lí tín hiệu ẩm thanh được cũng cắp các triển khai tham chiếu cho một số thuật toán truy hồi thông tin âm nhạc Nó

thanh và thực hiện các thao tác phố biển trên dữ liệu âm thanh Madmom là một công

cụ mạnh mẽ cho việc phân tích âm thanh và nhạc, giúp cho việc xây dựng các ứng dụng lam việc với âm thanh và định dạng tệp nhạc trớ nên dễ dảng hơn

Ngày đăng: 30/10/2024, 10:55

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w