Trong cuộc sống hàng ngày, tiếng nói tự nhiên chính là phương tiện giao tiếp đơn giản, hiệu quả và thông dụng nhất giữa người với người. Tiếng nói đã trở nên quá quen thuộc đối với con người ngay từ khi mới lọt lòng. Tầm quan trọng của tiếng nói trong cuộc sống hàng ngày là điều không thể phủ nhận. Tuy nhiên, ngày nay khi “vạn vật đều được kết nối” và máy móc có ở khắp mọi nơi xung quanh chúng ta thì loại hình giao tiếp cơ bản nhất giữa con người và máy móc lại là các dòng lệnh, các chỉ thị thông qua việc gõ phím hay nhấn nút. Các dòng lệnh đó thường rất máy móc và khó nhớ đỗi với mỗi con người, đồng thời các thao tác bằng tay cũng chậm hơn so với việc sử dụng tiếng nói. Chúng ta hãy thử tưởng tượng xem cuộc sống sẽ trở nên dễ dàng như thế nào nếu chúng ta có thể giao tiếp được với máy móc bằng ngôn ngữ tiếng nói, chúng ta có thể điểu khiển quay số, mở cửa, soạn thảo văn bản đều bằng tiếng nói.
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 VIỆN CÔNG NGHỆ THÔNG TIN
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Khoa học máy tính
Người hướng dẫn khoa học
TS Nguyễn Năng An
HÀ NỘI - NĂM 2020
Trang 2LỜI CẢM ƠN
Em xin chân thành cảm ơn thầy TS Nguyễn Năng An, giảng viên ViệnCông nghệ thông tin, trường Đại học Sư phạm Hà Nội 2, người đã trực tiếphướng dẫn em trong suốt thời gian qua để em có thể hoàn thành khóa luận
Em xin gửi lời cảm ơn tới các thầy, cô giáo trong Viện Công nghệ thôngtin, các bạn lớp K43 – Công nghệ thông tin đã tạo điều kiện, động viên khích lệ
em trong suốt quá trình học tập và nghiên cứu
Do thời gian nghiên cứu còn hạn chế nên những vấn đề mà em trình bàytrong khóa luận sẽ không tránh khỏi những thiếu xót Em kính mong nhận đượcnhững ý kiến đóng góp từ thầy cô và các bạn để bài khóa luận của em đượchoàn thiện hơn
Em xin trân thành cảm ơn!
Hà Nội, ngày tháng 5 năm 2021
Sinh viên
Bùi Trung Dũng
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan khóa luận này được hoàn thành bằng sự cố gắng củabản thân, dưới sự hướng dẫn tận tình của thầy giáo TS Nguyễn Năng An vàtham khảo một số tài liệu đã được ghi rõ nguồn
Khóa luận hoàn toàn không sao chép từ tài liệu có sẵn nào Kết quảnghiên cứu không trùng lặp với các tác giả khác
Nếu sai, tôi xin hoàn toàn chịu trách nhiệm!
Hà Nội, ngày tháng 5 năm 2021
Sinh viên
Bùi Trung Dũng
Trang 4DANH MỤC CÁC HÌNH
Trang 5MỤC LỤC
Trang 6CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 1.1 Lý do chọn đề tài
Trong cuộc sống hàng ngày, tiếng nói tự nhiên chính là phương tiện giaotiếp đơn giản, hiệu quả và thông dụng nhất giữa người với người Tiếng nói đãtrở nên quá quen thuộc đối với con người ngay từ khi mới lọt lòng Tầm quantrọng của tiếng nói trong cuộc sống hàng ngày là điều không thể phủ nhận Tuynhiên, ngày nay khi “vạn vật đều được kết nối” và máy móc có ở khắp mọi nơixung quanh chúng ta thì loại hình giao tiếp cơ bản nhất giữa con người và máymóc lại là các dòng lệnh, các chỉ thị thông qua việc gõ phím hay nhấn nút Cácdòng lệnh đó thường rất máy móc và khó nhớ đỗi với mỗi con người, đồng thờicác thao tác bằng tay cũng chậm hơn so với việc sử dụng tiếng nói Chúng tahãy thử tưởng tượng xem cuộc sống sẽ trở nên dễ dàng như thế nào nếu chúng
ta có thể giao tiếp được với máy móc bằng ngôn ngữ tiếng nói, chúng ta có thểđiểu khiển quay số, mở cửa, soạn thảo văn bản đều bằng tiếng nói
Xử lý tiếng nói là một dạng kỹ thuật phân biệt tín hiệu và xử lý tiếng nói lànghiên cứu tiếng nói con người dưới dạng tín hiệu Mặc dù có rất nhiều lýthuyết đã được đưa ra, tuy nhiên những gì đã đạt được vẫn là chưa đủ để tiếngnói có thể thay thế hoàn toàn những dòng lệnh hay nút bấm trong giao tiếp giữangười và máy Tuy nhiên những tành tựu đạt được đó cũng đã giúp con ngườigiải quyết khá nhiều bài toán trong cuộc sống Một số điện thoại di động đã cóthể cho phép quay số tự động khi người dùng đọc tên người cần gọi có trongdanh bạ, hay con người đã điều khiển được robot bằng giọng nói bằng nhữngchỉ thị ngắn nằm trong tập hữu hạn các chỉ thị đã được huấn luyện trước đó
Xử lý tiếng nói dựa vào kỹ thuật xử lý không đồng nhất về đặc trưng âmthanh để thực hiện phân biệt và nhận dạng Kỹ thuật xử lý tiếng nói là kỹ thuật
bị ảnh hưởng bởi các nguyên nhân chính như môi trường, thông tin và độ dàicủa thời gian Đối với các kỹ thuật xử lý tiếng nói trước kia vẫn chưa khác phụcđược hết các nguyên nhân kể trên Từ đó dẫn đến các kỹ thuật xử lý tiếng nóitruyền thống đã không còn nhận được sự quan tâm của các chuyên gia và đòihỏi yêu cầu bắt buộc phải cải tiến Trong những năm gần đây theo xu thế pháttriển của các thiết bị thông minh sử dụng nhiều đến xử lý tiếng nói, đồng thờilợi dụng vào sự phát triển mạnh mẽ của lý thuyết học sâu thì kỹ thuật xử lýtiếng nói trở thành một lĩnh vực được rất nhiều người quan tâm Cùng với sựphát triển của kỹ thuật nhận dạng vân tay và nhận dạng khuôn mặt Kỹ thuậtphân biệt tiếng nói ngày nay có tên gọi phân biệt “Vân âm”, công việc chủ yếu
Trang 7là phân biệt tiếng nói tại môi trường thực tại, tiến hành nhận dạng thân phận dựavào các kỹ thuật cơ bản của phân biệt tiếng nói Chính vì vậy yêu cầu về tínhbảo mật, an toàn và chính xác của phân biệt tiếng nói ngày càng được coi trọng.Các kỹ thuật xử lý tiếng nói hiện nay chưa đáp ứng được các yêu cầu nêu trên vìvậy nhóm nghiên cứu chúng tôi đã đề xuất một phương pháp mới kết hợp các
kỹ thuật xử lý tiếng nói trước cùng với máy hỗ trợ vector (SVM) kết hợp vớihọc sâu để đưa ra một mô hình xử lý tiếng nói mới
Xử lý tiếng nói là làm cho máy hiểu, nhận biết được ngữ nghĩa của lời nói.Đây là quá trình biến đổi tín hiệu âm thanh thu được bằng micro, qua các thiết
bị thu thanh khác thành một chuỗi các từ, sau đó được nhận dạng để sử dụngtrong ứng dụng điều khiển thiết bị, nhập dữ liệu hoặc soạn thảo văn bản bằnglời hoặc đưa đến một quá trình xử lý ngôn ngữ ở mức cao hơn Tiếng nói làcông cụ truyền đạt thông tin quan trọng nhất của người Như bình thường,chúng ta không để ý quá trình nhận dạng tiếng nói diễn ra như thế nào? tại saochúng ta hiểu được các từ, các câu, các đoạn một cách đơn giản như vậy? Trênthực tế, thi quá trình nhận dạng tiếng nói của người là một quá trình phức tạp.Hiện nay, các nhà nghiên cứu cố gắng tìm hiểu và mô phỏng quá trình nhậndạng tiếng nói của người dưới dạng các chương trình máy tính Nhưng đây làvấn đề rất rộng, có liên quan tới nhiều ngành nghiên cứu như sinh học, hoá học,vật lý,… Do vậy, việc mô phỏng tiếng nói cũng gặp nhiều khó khăn
1.2 Kết quả hiện trạng nghiên cứu trong và ngoài nước
1.2.1 Kết quả hiện trạng nghiên cứu trong nước
Trong cuộc sống hiện nay, tiếng nói đóng vai trò rất quan trọng đối vớicon người Cùng với tiếng nói là sự xuất hiện của nhiều các loại dịch vụ thoạinhư ngày nay Tuy nhiên việc bảo toàn hết được tín hiệu tiếng nói trên các dịch
vụ này là điều vô cùng khó khăn do sự mất mát và suy giảm tín hiệu và nhất làảnh hưởng của nhiễu sẽ làm cho tín hiệu tiếng nói không còn như lúc ban đầu
Bước đầu cho công nghệ xử lý tiếng nói bằng tiếng Việt Phòng thínghiệm Trí tuệ Nhân tạo TPHCM (AILab) của Trường Đại học Khoa học Tựnhiên vừa công bố bộ sản phẩm có tiềm năng ứng dụng, gồm: iSago - ứng dụnggiao tiếp bằng giọng nói tiếng Việt trên điện thoại iPhone (phiên bản 1.0) vàVIS (Viet Voice Systems) - tổng đài hỏi đáp thông tin tự động bằng tiếng Việt,
sử dụng công nghệ nhận dạng và tổng hợp giọng nói tiếng Việt với độ chính xáccao và tốc độ xử lý nhanh
Trang 81.2.2 Kết quả hiện trạng nghiên cứu ngoài nước
Xử lý tiếng nói được dùng đến đầu tiên trong lĩnh vực quân sự, trong thời
kỳ chiến tranh thế giói thứ 2 để nghe trộm được điện thoại và phán đoán đượcngười nói là tướng lĩnh nào và từ đó thì lĩnh vực xử lý tiếng nói đã được bắt đầuđược nghiên cứu
Năm 1945 L G Kesta đã đưa ra khái niệm về xử lý tiếng nói (vân âm),sau đó ông phát hiện được những người có giọng nói gần giống nhau thì sẽ cóphổ tiếng nói gần giống nhau, từ đó thì kỹ thuật xử lý tín hiệu bắt đầu được ứngdụng trong xử lý tiếng nói
Những năm 70 của đầu thế kỷ 20 B S Atal đã đưa ra được những đặngtrưng khác nhau của ngữ âm, ông phát hiện ra rằng thông qua hệ thống phânbiệt tiếng nói DSP thì phân tích đặc trưng ngữ âm MFCC và LPCCC có hiệuquả tốt hơn
Những năm 80 của thế kỷ 20 là bước chuyển mình mạnh mẽ của xử lýtiếng nói với việc các mô hình về xử lý tiếng nói được xây dựng một cách mạnh
mẽ và mang lại hiệu quả cao như mô hình Markov ẩn (HMM), Dynamic TimeWarping (DTW), mô hình mạng neron thần kinh (ANN), vector lượng hóa (VQ)
…
Năm 1999 tại Mỹ đã đưa ra kỹ thuật nghiên cứu nhận dạng tiếng nói conngười đồng thời đưa ra mô hình nhận dạng tiếng nói không dựa vào bản mẫuGMM-UBM (Gaussian Mixture Model – Universal Background Model)
1.3 Mục tiêu của đề tài
Nhận dạng tiếng nói là một quá trình nhận dạng mẫu, với mục đích là phầnlớn thông tin đầu vào là tín hiệu tiếng nói thành một dãy tuần tự các mẫu đãđược học trước đó và được lưu trữ trong bộ nhớ Các mẫu là các đơn vị nhậndạng, có thể là các từ hay là các âm vị Nếu các mẫu này bất biến và không thayđổi thì công việc nhận dạng tiếng nói trở nên đơn giản bằng cách so sánh dữ liệutiếng nói cần nhận dạng với các mẫu đã được học và lưu trữ ở trong bộ nhớ.Nhận dạng tiếng nói là một lĩnh vực tuy không mới nhưng rất phức tạp Nhậndạng tiếng nói được thế giới nghiên cứu cách đây hơn 50 năm, tuy nhiên nhữngkết quả thực tế đạt được vô cùng khiêm tốn Còn phải rất lâu nữa con người mớiđạt đến việc xây dựng một hệ thống hiểu được tiếng nói như con người, Trongphạm vi chỉ là một đồ án môn học phần này em sẽ xây dựng chương trình nhậndạng mười chữ số tiếng Việt bằng những công cụ có sẵn của Matlab Địnhhưởng xây dựng chương trình nhận dạng được tất cả các từ, câu trong tiếng việt
để có thể ứng dụng được vào thực tế Tuy nhiên do chỉ mới tiếp xúc ở lĩnh vực
Trang 9này nên khả năng, kiến thức của em còn rất hạn chế công vào đó là những khókhăn về thời gian, phương tiện nên em chỉ có thể xây dựng một hệ thống nhậndạng nhỏ Trong tương lai nếu có điều kiện tiếp xúc và nghiên cứu sâu hơn vềlĩnh vực này, em mong muốn phát triển đô án này lên để có thể ứng dụng trongthực tế.
Trang 10CHƯƠNG 2: CÁC KỸ THUẬT TƯƠNG QUAN CỦA XỬ LÝ TIẾNG NÓI 2.1 Các kỹ thuật cơ bản của xử lý tiếng nói
Tiếng nói là một phương tiện giao tiếp cơ bản của con người nhằm trao đổithông tin bằng ngôn ngữ cũng tình cảm của người nói, xử lý tiếng nói là sựnghiên cứu tiếng nói của con người dưới dạng tín hiệu, và phương pháp xử lýnhững tín hiệu này [6] Tín hiệu tiếng nói được thể hiện dưới dạng số, tức làđược “số hóa”, do đó xử lý tiếng nói có thể được coi là giao của “xử lý tín hiệusố” và “xử lý ngôn ngữ” Các kỹ thuật của xử lý tiếng nói rất rộng điển hìnhnhư:
• Nhận dạng tiếng nói: là phân tích và xử lý về mặt nội dung ngôn ngữ của tínhiệu tiếng nói Mục đích để chuyển nội dung nói thành tín hiệu đầu vào củamáy tính, giúp cho máy tính có thể xử lý và tương tác được với người nói
• Nhận dạng người nói: mục đích để nhận ra người nói là ai và/hoặc là xác minhliệu người đang nói có đúng là người mà máy tính đã được biết trước haykhông (tính xác thực của giọng nói)
• Tăng chất lượng tiếng nói: là nhằm tăng sự cảm nhận của người nghe về chấtlượng tiếng nói Nó bao gồm: giảm nhiễu ồn của tín hiệu tiếng nói, giảm hoặckhử tiếng vọng (trong kỹ thuật điện thoại), v.v
• Mã hóa tiếng nói: là một dạng của nén dữ liệu, có vai trò rất quan trọng tronglĩnh vực viễn thông Ví dụ trong thể thức truyền tiếng nói qua internet (voIP),việc nén dữ liệu tiếng nói là điều bắt buộc để giảm băng thông đường truyền
• Tổng hợp tiếng nói: là tạo ra tiếng nói một cách nhân tạo nhờ máy tính
• Phân tích giọng nói: được ứng dụng chủ yếu trong y học, nhằm phát hiện rakhuyết tật hay các vấn đề của dây thanh âm, thanh quản, v.v
• Định vị nguồn âm thanh: xử lý tín hiệu tiếng nói để xác định vị trí của nguồnphát ra âm thanh (có thể là âm thanh, người nói, v.v ) Được ứng dụng tronghội nghị hình thoại (videoconference) hội nghị mà người tham gia ở các nơikhác nhau, hình ảnh và âm thanh ở hai hay nhiều đầu cầu của hội nghị đượctruyền tải cho nhau qua hệ thống trên điện thoại số, internet hoặc sóng vệ tinh.Khi vị trí người nói trong hội nghị được xác định thì máy ghi hình được lậptrình sẽ tự động quay đến vị trí đó và gửi hình ảnh đi Ngoài ra định vị nguồn
âm thanh còn có thể ứng dụng trong các kỹ thuật tăng chất lượng tiếng nói,trong theo dõi an ninh, v.v
Trang 112.2 Phân loại xử lý tiếng nói và các thành phần cơ bản của tiếng nói
Xử lý tiếng nói được phân làm 2 loại chính là nhận dạng tiếng nói phụthuộc vào mẫu và nhận dạng tiếng nói không phụ thuộc vào mẫu
- Nhận dạng tiếng nói phụ thuộc vào mẫu với mục đích là phân lớp (classify)thông tin đầu vào là tín hiệu tiếng nói thành một dãy tuần tự các mẫu đã đượclưu trữ trong bộ nhớ Các mẫu là các đơn vị nhận dạng, có thể là các từ, hoặccác âm vị Nếu các mẫu này bất biến và không thay đổi thì công việc nhận dạngtiếng nói trở nên đơn giản bằng cách so sánh dữ liệu tiếng nói cần nhận dạngvới các mẫu đã được lưu trữ trong bộ nhớ
- Nhận dạng tiếng nói không phụ thuộc vào mẫu là một phương pháp đang
được sử dụng rộng rãi hiện nay, về bản chất thì các mẫu cũng được phân lớp vàtiếng nói cũng trở thành một dãy tuần tự các mẫu, nhưng nhờ vào tính tự họccủa công nghệ mạng nơron nên ngoài việc đơn giản là so sánh dữ liệu cần nhậndạng với dữ liệu mẫu đã được lưu trong bộ nhớ thì máy tính còn có thể nhậndạng ngoài các mẫu đã được lưu trữ sẵn Do bản chất khó khăn cơ bản của nhậndạng tiếng nói đó là tiếng nói luôn biến thiên theo thời gian và có sự khác biệtlớn giữa tiếng nói của những người nói là khác nhau, tốc độ nói, ngữ cảnh vàmôi trường âm học khác nhau Xác định được những thông tin biến thiên nàocủa tiếng nói là có ích và những thông tin nào là không có ích đối với nhận dạngtiếng nói là rất quan trọng Đây là một nhiệm vụ khó khăn mà ngay cả với các
kỹ thuật xác suất thống kê mạnh cũng khó khăn trong việc tổng quát hoá từ cácmẫu tiếng nói là những biến thiên quan trọng cần thiết trong nhận dạng tiếngnói
Các nghiên cứu của nhận dạng tiếng nói dựa trên ba nguyên tắc cơ bản:
• Tín hiệu tiếng nói biểu diễn chính xác bởi các giá trị phổ trong một khungthời gian ngắn (short-term amplitude spectrum) Nhờ vậy chúng ta có thểtrích ra các đặc điểm tiếng nói từ những khoảng thời gian ngắn và dùng cácđặc điểm này làm dữ liệu để nhận dạng tiếng nói
• Nội dung của tiếng nói được biểu diễn dưới dạng chữ viết, là một dãy các
ký hiệu ngữ âm Do đó nên ý nghĩa của một phát âm được bảo toàn khichúng ta phiên âm phát âm thành dãy các ký hiệu ngữ âm
• Nhận dạng tiếng nói là một quá trình nhận thức Thông tin về ngữ nghĩa
và suy đoán có giá trị trong quá trình nhận dạng tiếng nói, nhất là khi thôngtin về âm học là không rõ ràng
Nhờ vào sự phát triển của học sâu nên các phương pháp nhận dạng tiếng nóikhông phụ thuộc vào mẫu ngày càng phát triển và là một hướng đi mới cho
Trang 12những nghiên cứu về xử lý tiếng nói đã bị chậm lại trong một thời gian dài.Luân văn cũng dựa trên những phát triển của học sâu để đưa ra phương phápnhận dạng và xử lý tiếng nói có kết quả tốt hơn so với những nghiên cứu đã có.
2.3 Các kết quả đạt được của xử lý tiếng nói
Hiện tại, các thuật toán nhận dạng người nói chính thống về cơ bản sửdụng việc chuyển đổi giọng nói thành các hệ số MFCC, sau đó sử dụng các tínhnăng I-Vector trích xuất để mô tả thông tin người nói và thông tin kênh, và cuốicùng sử dụng phân tích phân biệt tuyến tính xác suất (Probabilistic LinearDiscriminant Analysis, PLDA) để thiết lập mô hình nhận dạng [13] Loại hệthống nhận dạng tiếng nói con người dựa trên I-Vector này đã trở thành mộthướng nghiên cứu nóng trong lĩnh vực nhận dạng giọng nói do hiệu suất tuyệtvời của nó Kể từ khi thuật toán được đề xuất, rất nhiều công việc nghiên cứuvẫn đang tập trung vào việc cải thiện các tính năng âm thanh đầu vào, cải thiệnquy trình trích xuất I-Vector hoặc cải thiện PLDA Tuy nhiên, vì bản thân giọngnói của người nói dễ bị ảnh hưởng bởi nhiều yếu tố, chẳng hạn như cảm xúc củangười nói, tình trạng sức khỏe của người nói và môi trường xung quanh củangười nói, ảnh hưởng của khung I-Vector đối với các tác vụ nhận dạng ngườinói cũng bị hạn chế Nhìn chung, nhiệm vụ nhận dạng giọng nói vẫn còn rấtnhiều thách thức
Trong những năm gần đây, học sâu còn được gọi là mạng nơ-ron sâu., đã
có những thành công trong các nhiệm vụ nhận dạng quy mô lớn cho thấy môhình sâu và thuật toán hướng dữ liệu là những thuật toán hiệu quả và khả thi, vàchúng đã phá vỡ ranh giới của nhiều thuật toán truyền thống [4] Ví dụ, học sâu
đã chứng minh trong xử lý tín hiệu giọng nói và xử lý tín hiệu hình ảnh rằng nó
có thể tìm thấy các đặc điểm cấu trúc từ một lượng lớn dữ liệu, làm cho các lĩnhvực này đã đạt được những tiến bộ quan trọng trong những năm gần đây [14].Tuy nhiên, đối với lĩnh vực nhận dạng tiếng nói con người, khung thuật toán I-Vector chủ yếu dựa vào các mô hình nông (chẳng hạn như GMM hoặc PLDA[11]) và mô hình sâu (chẳng hạn như mạng nơ-ron tích chập sâu), nhưng các môhình nông vốn đã thiếu một số lượng lớn khả năng khai thác thông tin hữu ích
từ dữ liệu thoại [2] Vì vậy, các thuật toán học sâu cũng sẽ là một thanh kiếm sắcbén để đột phá nhiệm vụ nhận dạng giọng nói
Mặc dù học sâu đã đạt được thành công trong việc công nhận, nhưng chỉ
có một số tài liệu áp dụng thành công học sâu vào nhận dạng người nói Điềuquan trọng nhất là khuôn khổ học sâu hiện có chỉ có thể đạt được hiệu suất nhậndạng gần với I-Vector, và rõ ràng không thể vượt qua [5] Vì học sâu chỉ là giaiđoạn bắt đầu trong nhận dạng người nói, nên chỉ một số cấu trúc liên kết mạng
nơ ron sâu đơn giản được sử dụng, chẳng hạn như mạng nơ ron truyền thẳng sâu
Trang 13hoặc mạng nơ ron tái phát sâu Trên thực tế, có nhiều cấu trúc liên kết mạng ron mới và hiệu quả, chẳng hạn như mạng nơ-ron tích tụ sâu và mạng nơ-rontích tụ được kết nối đầy đủ sâu [10], chưa được sử dụng trong nhận dạng giọngnói Điều này cho thấy cần phải tìm ra một cấu trúc liên kết mạng thần kinh sâuphù hợp cho việc nhận dạng giọng nói
nơ-Ngoài việc tối ưu hóa cấu trúc liên kết của các mạng nơron sâu, mộtnghiên cứu cơ bản liên quan khác chưa được xem xét Đó là loại tính năng âmthanh phù hợp để nhận dạng giọng nói dựa trên học sâu Rõ ràng, các tính năngđầu vào đóng một vai trò rất quan trọng trong các mô hình học máy Tuy nhiên,theo tổng quan mới nhất về nhận dạng tiếng nói, hệ số tiếng trống Mel cổ điểnvẫn là tính năng chính của các hệ thống nhận dạng giọng nói khác nhau Hơnnữa, các hệ thống nhận dạng tiếng nói sử dụng học sâu đã được công bố chỉ sửdụng trực tiếp các tính năng âm thanh thường được sử dụng trong nhận dạnggiọng nói
Với sự phát triển của học sâu, các khung học sâu từ đầu đến cuối đượcngày càng nhiều nhà nghiên cứu ưa chuộng Khung học sâu end-to-end chỉ sửdụng một mạng để kết nối trực tiếp đầu vào và đầu ra [2] So với I-Vectorframework truyền thống, loại khung end-to-end này không chỉ đơn giản về mặtkhái niệm mà còn có thể được tối ưu hóa toàn cầu theo nhiệm vụ nhận dạng.Nhưng cho đến nay, có rất ít tài liệu về sự công nhận của người nói về học sâuend-to-end [1] Do đó, một hệ thống nhận dạng tiếng nói học sâu end-to-end rấtđáng được xem xét
Trang 14CHƯƠNG 3: CÁC KỸ THUẬT HỌC SÂU 3.1 Lý luận cơ bản về học sâu
Với sự phát triển của Internet vạn vật (Internet of Things, IoT), các sảnphẩm liên quan đến Internet vạn vật đã giúp cải thiện đời sống con người rấtnhiều, chẳng hạn như nhà thông minh và ô tô tự lái Hầu hết các thiết bị đầucuối của các thiết bị được sử dụng trong nhà thông minh được điều khiển bằnggiọng nói Vì vậy, để nâng cao trải nghiệm người dùng, công nghệ xử lý giọngnói vẫn cần phát triển không ngừng và cải tiến liên tục Nói chung, các hệ thốngnhận dạng người nói truyền thống bắt đầu bằng việc trích xuất các đặc điểm âmthanh, chẳng hạn như Hệ số Frequency Cepstrum (MFCC), và sau đó sử dụngmột lượng lớn dữ liệu giọng nói không được gắn nhãn để đào tạo mô hình,nhằm thu được các đặc điểm giọng nói của người nói thông qua học có giám sátcuối cùng, bộ phân loại dựa trên giọng nói được đào tạo để phân loại người nói.Hiện nay, có nhiều phương pháp xử lý giọng nói được áp dụng thành công chohướng nhận dạng giọng nói, bao gồm: thay đổi wavelet, mô hình Markov ẩn(HMM) , lượng tử hóa véc tơ (VQ), thưa Mã hóa, Mô hình hỗn hợp Gaussian(GMM), khung hệ thống GMM-UBM, I-Vector, Máy vectơ hỗ trợ (SVM),Mạng thần kinh sâu (DNN)v.v Đặc biệt bằng cách sử dụng máy vectơ hỗ trợ đểánh xạ dữ liệu đầu vào sang không gian đa chiều, sau đó sử dụng siêu phẳng đểphân đoạn các danh mục khác nhau và cuối cùng kết hợp SVM với khái niệmsiêu vectơ GMM để phân tích và truy xuất các yếu tố tiềm ẩn, đồng thời, cả mất
âm thanh và mất kênh đều được bù trừ [12]
Hệ thống I-Vector sử dụng phân tích nhân tố GMM sẽ bù kênh âm thanh
và kênh biến được sử dụng trong không gian chiều thấp, thường được gọi làkhông gian con biến đổi Ngoài ra, Mô hình nền chung (UBM) tạo ra sự sắp xếp
ở mức khung trong vectơ thông qua một quá trình dự đoán I-Vector thường sửdụng thuật toán phân tích quyết định tuyến tính (LDA) để xử lý nhằm tạo ra mộthàm bù giảm kích thước và số kênh Hàm bù như vậy có thể thiết lập mô hình
và kết quả tính toán một cách cụ thể Sau khi tính toán xong, nó sẽ sử dụng phụCác công cụ, bộ phân loại như SVM để tạo thành hệ thống lai [9] Không thểphủ nhận thành công to lớn của hệ thống nhận dạng I-Vector, hệ thống khôngchỉ đạt được kết quả nhận dạng tốt mà còn chiếm vị trí thống trị trong lĩnh vựcnhận dạng và xử lý giọng nói trong một thời gian dài
Tuy nhiên, do khả năng hoạt động hiệu quả của mạng nơ-ron, các mô hìnhI-Vector truyền thống này không còn thể hiện được tính ưu việt của mình nữa,
vì chúng chủ yếu được thiết kế và đào tạo theo nhiều cách khác nhau, không chỉđược xây dựng trên các mô-đun khác nhau mà mỗi mô-đun còn tồn tại Các tiêu
Trang 15chuẩn khác nhau sẽ gây ra những trở ngại đáng kể cho việc hoàn thành nhiệm
vụ nhận dạng giọng nói của con người trong các thiết bị IoT Hiện nay với sựphát triển của học sâu trong nhận dạng giọng nói, một số DNN đã được áp dụngthành công để nhận dạng giọng nói của con người Lei và các cộng sự đã đềxuất một phương pháp sử dụng DNN để nhận dạng và xử lý giọng nói Lần đầutiên, DNN được sử dụng để thay thế GMM tiêu chuẩn để tạo sự liên kết khungnội bộ Âm thanh này sau đó được sử dụng để nâng cao mô hình giọng nói trong
mô hình nền phổ quát I-Vector Tuy nhiên, hệ thống vẫn phụ thuộc quá nhiềuvào nhu cầu về dữ liệu huấn luyện trong miền và độ phức tạp tính toán là rấtlớn Để rút ngắn thời gian chạy của thuật toán, hệ thống nhận dạng giọng nóidựa trên mạng nơ-ron đã trở thành một lĩnh vực nghiên cứu rất tích cực Hệthống dựa trên mạng nơ-ron có thể tối ưu hóa hiệu quả nhận dạng giọng nóigiữa các tiếng nói khác nhau sau khi thiết kế hoàn thành Các thiết kế này chỉcần sử dụng khẩu lệnh đã được đào tạo, đồng thời thu thập và trích xuất các tínhnăng của giọng nói dựa trên dữ liệu lớn Nếu thông tin thời gian được nhúngtrong âm thanh, các phương pháp trên có thể được bỏ qua Trong mô hình nhậndạng giọng nói này, nếu sử dụng thêm SVM để tách âm thanh, giọng nói có thểđược phân loại theo cách nhanh nhất
Do đó, bài viết này đề xuất một mô hình nhận dạng giọng nói hoàn toànmới, đó là một mô hình nhận dạng giọng nói kết hợp giữa Mạng nơ-ron hìnhthành (CNN) và Máy vectơ hỗ trợ (SVM) Bài viết này sử dụng những ưu điểmcủa hai mô hình này để thích ứng với tín hiệu giọng nói một cách nhanh nhất
Tự động ghi lại các đặc điểm dữ liệu bằng cách sử dụng các cấp mạng khácnhau Bài báo này sử dụng các thí nghiệm để phân tích lợi thế của việc kết hợpmạng nơ-ron sâu (DNN) và SVM trong nhận dạng giọng nói để xây dựng một
hệ thống Kiến trúc mạng kết hợp mới này là cơ sở cho sự phát triển tiếp theocủa các thiết bị nhà thông minh Kết quả thực nghiệm trên bộ dữ liệu Voxcelebchuẩn cho thấy so với phương pháp I-Vector truyền thống hoặc các phươngpháp CNN khác, mô hình được đề xuất trong bài viết này có khả năng nhậndạng giọng nói vượt trội
3.2 Các kỹ thuật CNNs
Nghiên cứu về nhận dạng người nói bắt nguồn từ năm 1926, khi công nghệlúc bấy giờ là một hệ thống nhận dạng giọng nói dựa trên các dạng sóng giọngnói Sau một thời gian phát triển, lần đầu tiên khái niệm về giọng nói được đềxuất và hệ số tiếng trống cũng được áp dụng cho công nghệ xác nhận của ngườinói Năm 1970, danh tính của người nói được xác định bằng phương pháp kýhiệu Tiếp theo là Hệ số dự đoán tuyến tính (Linear Predictive Coding, LPC),
Hệ số cepstrum dự đoán tuyến tính (Linear Predictive Cepstrum Coefficients,
Trang 16LPCC) [13] và Hệ số cepstrum tần số Mel (Mel-Frequency CeptrumCoefficients, MFFC) Hàng loạt các phương chuẩn hóa với các tính năng khácnhau cũng dần được đề xuất, các kỹ thuật và phương pháp này được sử dụng đểcải thiện hệ thống nhận dạng tiếng nói Sau đó, các công nghệ trong lĩnh vựctính năng âm học dần phát triển, chẳng hạn như các biến thể của MFCC: SuperMFCC (Super MFCC), MFCC dựa trên logarit (Log-Mel),…
Hình 3 1 Cấu trúc của mô hình âm thanh trong hệ thống nhận dạng giọng
nói hiện tại
Hình 3.1 là sơ đồ cấu trúc của mô hình mạng nơ ron điển hình của hệthống nhận dạng giọng nói Cấu trúc bắt đầu từ phổ tần số, các đặc điểm phát
âm được học qua CNN 3 lớp, các đặc tính tĩnh và động của tín hiệu được họcqua RNN 7 lớp và xác suất sau của âm vị đầu ra (hoặc đơn vị giọng nói khác)thu được thông qua mạng kết nối hoàn chỉnh 1 lớp Lớp RNN có thể áp dụngcấu trúc hai chiều hoặc cấu trúc GRU hoặc LSTM Trong quá trình đào tạo,CTC (Connectionist Temporal Classification) là mục tiêu, RN (BatchNormalization) và các phương pháp khác để kiểm soát Gradient để đảm bảo sựhội tụ của quá trình tạo ra Hiện tại, hầu hết các hệ thống nhận dạng tiếng nóihoàn thiện đều dựa trên Mô hình hỗn hợp Gaussian (Gaussian Mixture Model,GMM) Trong số đó, mô hình HMM / GMM (Hidden Markov Model/Gaussianmixture Model) có thể đảm bảo sự hội tụ nhanh chóng, có cấu trúc đơn giản vàkhả năng mở rộng mạnh mẽ Nó luôn là phương pháp chủ đạo trong lĩnh vựcnhận dạng giọng nói Nhiều phần mở rộng khác nhau và các phương pháp cảitiến tương ứng được đề xuất dựa trên mô hình HMM / GMM đã lần lượt xuấthiện, chẳng hạn như phương pháp thích ứng, phương pháp phân biệt, phươngpháp Bayes năng động kết hợp với thông tin ngữ cảnh, HMM / NN (HiddenMarkov Model/self-organized Neural Networks) Phương pháp mô hình lai, v.v
Trang 17Những phương pháp này đã có tác động lớn đến lĩnh vực và đặt nền móng vữngchắc cho việc nghiên cứu công nghệ nhận dạng giọng nói sau này.
Mô hình GMM là một mô hình xác suất không có giám sát điển hình, cóthể tiếp cận chính xác phân phối của bất kỳ biến liên tục nào thông qua một sốđường cong phân phối chuẩn Dựa trên đặc điểm này, Reynolds và cộng sự đã
áp dụng thành công GMM để nhận dạng người nói phi văn bản vào năm1995[15] Tuy nhiên, trong các ứng dụng thực tế, Reynolds và cộng sự nhậnthấy rằng dữ liệu tạo ra thường chứa ngữ âm tương đối ngắn và lượng dữ liệucũng nhỏ, không thể mô tả chính xác đặc điểm của người nói Để cải thiện vấn
đề này, vào năm 2000 Reynolds và cộng sự đã đề xuất hệ thống mô hình nềnphổ quát-mô hình hỗn hợp Gaussian (Gaussian mixture model-universalbackground model, GMM-UBM), đây là một GMM cấp cao được tạo ra dựatrên một lượng lớn dữ liệu lời nói Mô hình này được sử dụng để mô tả sự phân
bố đặc điểm âm thanh của người nói, do đó, sự phân bố đặc điểm trong UBM cóthể được sử dụng để ước tính các phần đặc điểm âm thanh hoặc giọng nói ngắnkhông được che phủ
Sau khi hệ thống GMM-UBM được đề xuất, nó đã thể hiện hiệu quả xuấtsắc trong các cuộc thi nhận dạng giọng nói khác nhau, chẳng hạn như cuộc thinhận dạng giọng nói do Viện Công nghệ Tiêu chuẩn Quốc gia (NationalInstitute of Standard of Technology) nổi tiếng tổ chức , Cuộc thi ASVspoofđược tổ chức cùng với hội nghị diễn thuyết quốc tế INTERSPEECH [4], kể từ
đó mô hình GMM-UBM đã thống trị lĩnh vực nghiên cứu nhận dạng giọng nói.GMM-UBM về cơ bản là một quá trình xử lý tính năng âm thanh, quá trìnhnày chỉ tìm hiểu sự phân bố của các tính năng âm thanh Tuy nhiên, nhận dạngtiếng nói là một vấn đề phân loại học máy điển hình, vì vậy ngoài việc xem xétviệc xử lý các tính năng âm học, chúng ta cũng nên xem xét cách lập mô hình
và xác định dựa trên tính năng
Vào đầu thế kỷ này, với sự ổn định và hiệu suất vượt trội của mô hình(Support Vector Machine, SVM) trong các bài toán phân loại khác nhau, trongnghiên cứu nhận dạng tiếng nói, mô hình SVM có thể được sử dụng để cải thiệnhiệu suất khả năng nhận dạng Đối với hệ thống GMM-UBM / SVM, trước tiên
sử dụng một lượng lớn dữ liệu lời nói để đào tạo mô hình GMM-UBM độc lậpvới người nói, sau đó sử dụng giá trị trung bình của mỗi thành phần Gauss củavectơ khung để tạo thành siêu vectơ Gauss có độ dài cố định (Gaussian MixtureModel-Supervector , GMM-Supervector), và cuối cùng là Supervector Gaussđược tạo ra sử dụng SVM hạt nhân KL (Kullback-Leibler) để có được mô hìnhphân loại Sau đó, các học giả đã bị ảnh hưởng bởi việc áp dụng thành công hạtnhân KL tuyến tính trong nhận dạng cảm xúc giọng nói và sử dụng hạt nhân KL
Trang 18tuyến tính SVM trong nhận dạng người nói Hạt nhân KL tuyến tính SVM tốthơn hạt nhân phi tuyến SVM về hiệu suất [5] Sau đó, You và cộng sự nhận thấyrằng SVM sử dụng nhân Bhattacharyya có thể nhận được kết quả nhận dạng tốthơn so với nhân KL tuyến tính [8] Sự thành công của hệ thống GMM-UBM /SVM không chỉ phụ thuộc vào khả năng mô tả chính xác các đặc tính của từngtiếng nói của GMM-UBM mà còn phụ thuộc vào khả năng mô hình hóa mạnh
mẽ của SVM Tuy nhiên, supervector Gauss được tạo ra dựa trên mô hìnhGMM-UBM có kích thước lớn khiến dữ liệu đầu vào SVM quá lớn, từ đó gây ranhiều khó khăn cho quá trình học SVM
Trong những năm gần đây, khung nhận dạng I-Vector dựa trên phân tíchnhân tố trong thuật toán nhận dạng người nói là phổ biến nhất Thuật toán I-Vector ánh xạ thông tin nhận dạng người nói và thông tin thay đổi kênh trongbài phát biểu vào một không gian tuyến tính chiều thấp Bằng cách này, mỗiphần của bài phát biểu có thể được biểu diễn bằng một vectơ chiều thấp có độdài cố định, đó là I-Vector Hệ thống nhận dạng người nói dựa trên I-Vector chủyếu bao gồm ba giai đoạn: tính toán số liệu thống kê đủ, trích xuất và nhận dạngI-Vector Việc tính toán (Sufficient Statistics) trước tiên cần sử dụng mô hìnhGMM-UMB để căn chỉnh các đặc trưng âm học, sau đó tính toán thống kê đủbậc cao, sau đó sử dụng (Sub-Space Factor Analysis) để phân tích số liệu thống
kê bậc cao Đại lượng được ánh xạ tới vector I-Vector chiều thấp, và cuối cùngmột thuật toán được giám sát được sử dụng để xác định và phân tích Trongkhuôn khổ I-Vector, Phân tích (Probabilistic Linear Discriminant Analysis,PLDA) thường được sử dụng để tạo các mô hình nhận dạng
Với sự thành công lớn của mạng nơ-ron sâu trong nhận dạng hình ảnh vànhận dạng giọng nói quy mô lớn, lĩnh vực nhận dạng người nói cũng đã bắt đầukhám phá cách sử dụng mạng thần kinh sâu để cải thiện hiệu suất của hệ thốngnhận dạng người nói
Học sâu là một thuật toán mà "nhiều lớp xử lý thực hiện việc trừu tượnghóa dữ liệu ở mức cao".Ứng dụng của học sâu trong lĩnh vực nhận dạng giọngnói bắt đầu vào năm 2009 " Deep Belief Networks for phone recognition "được xuất bản bởi Mohamed và cộng sự tại hội thảo NIPS workshop đã báo cáorằng mô hình âm học dựa trên DNN đạt tỷ lệ lỗi 23% trên tập dữ liệu TIMIT.Tốt hơn nhiều so với các mô hình phức tạp khác [11] Sau đó, các công ty nhưMicrosoft, IBM và Google đã tiến hành khám phá sâu về các mô hình học sâu
và thử các mô hình học sâu khác nhau trên các nhiệm vụ nhận dạng khác nhau.Ngày nay, công nghệ học sâu đã trở thành phương pháp chủ đạo trong nhậndạng giọng nói Hệ thống nhận dạng giọng nói dựa trên học sâu tốt hơn nhiều sovới hệ thống nhận dạng giọng nói dựa trên HMM / GMM về tỷ lệ nhận dạngthành công và độ mạnh mẽ