HCM KHOA: CÔNG NGHỆ THÔNG TIN MÔN HỌC: CÔNG NGHỆ PHẦN MỀM Đề tài: TÌM HIỂU CÔNG NGHỆ NHẬN DIỆN GIỌNG NÓI Giảng viên hướ ng dẫn: Mạnh Thiên Lý Sinh viên thực hiện:... GIỚI THIỆU VỀ CÔNG N
Trang 1BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM
TP HCM KHOA: CÔNG NGHỆ THÔNG TIN
MÔN HỌC: CÔNG NGHỆ PHẦN MỀM
Đề tài:
TÌM HIỂU CÔNG NGHỆ NHẬN DIỆN GIỌNG NÓI
Giảng viên hướ ng dẫn: Mạnh Thiên Lý
Sinh viên thực hiện:
Trang 2LỜI MỞ ĐẦU
Ng ày nay, công nghệ thông tin ngày càng phát tri ển cùng vớ i nhữ ng tiến bộ vượ t bậ c củ a khoa họ c kỹ thuậ t nói chung, có rấ t nhiề u công nghệ mới được cho ra mắt
Hơ n mộ t thậ p kỷ qua, vớ i sự phát triể n mạ nh mẽ củ a công nghệ thông tin, công nghệ xử l ý tiế ng nói như mã hoá, nhậ n dạ ng tiế ng nói, chuyể n lời
nói thành văn bả n, chuyển chữ viết thành lờ i nói, … đã trở th ành vấ n đề nghiên cứ u trọ ng điểm được nhiề u nh à khoa họ c quan tâm ở nhiề u lĩnh vực khác nhau như : tin họ c, toán họ c, điề u khiển, điệ n tử , sinh học, … Trong thờ i gian g ần đây, các nhà nghiên cứ u đang tập trung vào công nghệ nhậ n dạ ng giọ ng nói và đã có mộ t số thành công đố i vớ i việ c nhận
dạ ng tiếng Anh và mộ t số ngôn ngữ khác Đã có nhiề u công tr ì nh nghiên cứu
về l ĩnh vự c nhậ n dạ ng giọ ng nói (Speech recognition) trên cơ sở l ý thuyết các
hệ thố ng thông minh nhân tạ o, nhiề u kế t quả đã trở thành sả n phẩ m như ViaVoice Gold củ a hãng IBM, Dragon Natural Speaking của Dragon System,Speech SDK của Microsoft, … Triển khai những công trình nghiên cứ u và đưa
vào thự c tế ứ ng dụ ng vấ n đề này là mộ t việ c làm hế t sức có ý
nghĩa trong giai đoạ n công nghiệp hoá, hiện đạ i hoá củ a nước nhà
Vì thế, nhóm em đã chọ n đề t ài “Tìm hiể u Công nghệ nhậ n diệ n giọng nói” để t ìm hiểu và trình bày về nộ i dung cũng như tổ ng quan về công nghệ.
Tuy đã rất cố gắng học hỏi và tìm hiểu tài liệu từ nhiều nguồn thông tin nhưng điều kiện thời gian và khả năng có hạn nên cũng không tránh được thiếu sót Kính mong được sự đóng góp ý kiến từ cô và các bạn
để nhóm em có thể hoàn thiện hơn về bài báo cáo công nghệ này
Nhóm em xin chân thành cảm ơn
Thành phố Hồ Chí Minh, ngày 28 tháng 02 năm 2021
Trang 4MỤC LỤC
DANH SÁCH HÌNH ẢNH
Trang 5I. GIỚI THIỆU VỀ CÔNG NGHỆ NHẬN DIỆN
GIỌNG NÓI
Công nghiệp 4.0 tập trung vào công nghệ kỹ thuật số từ những thập kỷ gần đây lên một cấp độ hoàn toàn mới với sự trợ giúp của kết nối thông qua Internet vạn vật, truy cập dữ liệu thời gian thực và giới thiệu các hệ thống vật lý không gian mạng Công nghiệp 4.0 cung cấp một cách tiếp cận toàn diện hơn, liên kết và toàn diện hơn cho sản xuất Nó kết nối vật lý với kỹ
thuật số và cho phép cộng tác và truy cập tốt hơn giữa các bộ phận, đối tác, nhà cung cấp, sản phẩm và con người Công nghiệp 4.0 trao quyền cho các chủ doanh nghiệp kiểm soát và hiểu rõ hơn mọi khía cạnh hoạt động của họ
và cho phép họ tận dụng dữ liệu tức thời để tăng năng suất, cải thiệnquy trình và thúc đẩy tăng trưởng
Công nghiệp 4.0 cho phép các nhà máy thông minh, sản phẩm thông minh
và chuỗi cung ứng cũng thông minh, và làm cho các hệ thống sản xuất và dịch
vụ trở nên linh hoạt, linh hoạt và đáp ứng khách hàng hơn Các thuộc tính của
hệ thống sản xuất và dịch vụ với Công nghiệp 4.0 đã được nêu bật và những lợi ích mà Công nghiệp 4.0 mang lại cho các doanh nghiệp đã được thảo luận Trong tương lai, khoa học và công nghệ tiếp tục phát triển và đóng vai trò ngày càng quan trọng đối với quá trình phát triển kinh tế xã hội của mỗi quốc gia Tri thức được xác định là lực lượng sản xuất trực tiếp và là động lực phát
triển hàng đầu đối với mọi quốc gia Để phát triển bền vững, các quốc gia phải tiếp tục đẩy mạnh đầu tư phát triển khoa học và công nghệ nhằm ứng dụng thành tựu khoa học và công nghệ vào sản xuất, đặc biệt là những thành
tựu của cách mạng công nghiệp lần thứ tư nhằm tạo ra các sản phẩm vàcông nghệ sản xuất mới Tới đó công nghệ nhận diện và giả lập giọngnói được ra đời để đáp nhu cầu phát triển của con người
2 Sơ lược về lịch sử công nghệ nhận diện giọng nói
Trước đây, việc điều khiển một cỗ máy bằng cách nói chuyện với chúng chỉ là những câu chuyện trong khoa học viễn tưởng Nhưng viễn tưởng này đang dần trở thành hiện thực với sự phát triển vượt bậc về công nghệ, đặc biệt là sự phát triển của Trí tuệ nhân tạo (AI) và những nền tảng khác để tạo
Trang 6ra mộ t giao diện ngườ i dùng cho phép sử dụ ng giọ ng nói để điề u khiển các thiết bị công nghệ.
Năm 1877, ứ ng dụ ng nhậ n diện giọ ng nói đầ u tiên đượ ctạo ra khi Thomas Edison phát minh ra máy ghi âm, thiết bịđầu tiên ghi và tái tạo âm thanh
Năm 1952, các kỹ sư tạ i Bell Labs đã phát triển mộ t bộ nhậ n dạng chữ số tự độ ng có tên Audrey Audrey cao 6 feet, có nhiề u tín hiệu
tươ ng tự vớ i tụ điệ n, bộ khuế ch đạ i và bộ lọ c, chỉ nhậ n ra 10 chữ số đượ c nói bở i mộ t giọ ng nói duy nhấ t Mặ c dù thiế t bị có thể nhận ra
đầ u vào bằ ng giọ ng nói vớ i độ chính xác 9799% nhưng chính vì kích thướ c lớ n, chi ph í cao và thiết bị điệ n tử phứ c tạp nên nó đã không th
ể trở thành mộ t sả n phẩ m đượ c thươ ng mạ i h óa Tuy nhiên, thiết bị Audrey này cũng đã đánh dấ u sự khở i đầ u củ a công nghệ nhận
dạ ng giọ ng nói v à tiếp tụ c cho nhữ ng nghi ên cứ u sau đó Hệ thống Audrey còn đượ c xem là thiết bị nhậ n dạ ng giọ ng nói đầu tiên.
Năm 1962, máy Shoe box được IBM phát triển, có thể nhận ra
16 từ tiếng anh, 10 chữ số và 6 lệnh số học
Từ những năm 1971 – 1976, Bộ Quốc phòng Mỹ đã tài trợ chochương trình DARPA SUR (Nghiên cứu hiểu về lời nói), dẫn đến sự phát triển của Harpy tạo ra bởi Carnegie Mellon có thể hiểu được 1011 từ
Vào năm 1984, Công nghệ nhận dạng giọng nói thế hệ đầu tiên được SpeechWorks và Nuance giới thiệu thông qua các hệ thống tổng đài trả lời tự động (IVR) Những IVR này có thể nhận ra giọng nói của con người qua cuộc gọi và thực hiện các nhiệm vụ được giao cho chúng Bất cứ ai có điện thoại đều có thể nhận được tất cả thông tin
như tìm thời gian chiếu phim địa phương, nghe thông tin giao thông, báo giá cổ phiếu, đặt chuyến bay máy bay, chuyển tiền giữa các tài
khoản, đặt mua thuốc theo toa, Mọi thứ chỉ xoay quanh chiếc điện thoại cầm tay và giọng nói của con người Các hệ thống IVR đã trở thành xu hướng chủ đạo trong những năm 2000 và là một phần chính của các dịch vụ chăm sóc và hỗ trợ khách hàng ngày nay Năm 1992, Apple cũng sản xuất hệ thống nhận dạng giọng nói liên tục theo thời gian thực hiện, có thể nhận ra lên đến 20.000 từ.
Trang 7Năm 2006, Apple đã giớ i thiệu khái niệm về Siri, cho phép người
dùng tươ ng tác với các máy sử dụ ng giọng nói Sau đó, Google đã
giớ i thiệu mộ t nghiên cứ u hỗ trợ giọ ng nói vào năm 2007 Những gã khổ ng lồ c ông nghệ như Microsoft, Apple và Google sau đó đã tung ra trợ l ý giọ ng nói cho thiết bị di động
Đến năm 2008, Google nổ i lên vớ i ứ ng dụng Google Voice Search dành cho Iphone
Năm 2010, Google đã giớ i thiệu và nhậ n dạ ng được cá nhân hoá, các thiết bị Android sẽ ghi lại các truy vấ n giọ ng nói củ a người dùng
khác nhau để phát triển mộ t mô hình giọ ng nói nâng cao Nó bao gồm 230 tỷ từ tiếng anh
Năm 2011, cuối cùng Siri của Apple đã được triển khai trong Iphone 4S, cũng dựa trên điện toán đám mây
Năm 2014 Amazon đã giới thiệu Amazon Echo, một loa thông minh tích hợp với trợ lý ảo (Alex, Siri ) Những lời này có thể được kết hợp với các ứng dụng di động thông qua kỹ năng Alexa Tương tự,các đối thủ cạnh tranh để giới thiệu Google home, AppleHomepod để cải thiện trải nghiệm người dùng khi họ ở vănphòng, nhà hoặc thậm chí tại trung tâm mua sắm
Năm 2015, Microsoft đã công bố sự sẵn có của Cortana cho máytính để bàn và thiết bị di động Windows 10 như một phần củaviệc hợp nhất Windows Phone vào hệ điều hành nói chung
Vào tháng 5 năm 2016, Trợ lý Google (Google Assistant) là một trợ
lý cá nhân ảo được phát triển bởi Google cho thiết bị di động và nhà thông minh, được ra mắt lần đầu tại hội nghị nhà phát triển của
hãng Không như Google Now, Trợ lý Google có thể tham gia các cuộc trò chuyện hai chiều Trợ lý Google được đưa vào ứng dụng nhắn tin Google Allo, và loa thông minh Google Home.
năm 2017, Google Assistant đã và đang được tiếp tục mở rộng hỗ trợ cho một lượng lớn thiết bị, bao gồm cả xe hơi và các thiết bị nhàthông minh Các chức năng của Assistant cũng có thể được
bổ sung bởi các nhà phát triển bên thứ ba
Trang 83. Giới thiệu về c ông nghệ nhận diện giọng nói
a Công nghệ nhận diện giọng nói là gì?
Công nghệ nhận diện giọ ng nói là mộ t bộ máy hoặ c hệ thố ng có khả năng nhận và dịch (hoặc hiểu và thực hiện) các lệnh thu được từ giọng nói con người Nó được sử dụng rất nhiều trong lĩnh vực trí tuệ nhân tạo (AI),
Google Assistant là một ví dụ điển hình Đây là một bộ máy hoặc hệ thống có khả năng nhận và dịch (hoặc hiểu và thực hiện) các lệnh thu được từ giọng nói con người
Nhận diện giọng nói gồm 2 thuật ngữ: Voice recognition và
Speech recognition
Voice recognition liên quan đến việc xác định giọng nói chính xác của một cá nhân nào đó, tương tự một phương pháp nhận diện sinh trắc học
Speech recognition là việc xác định những từ ngữ trong câu nói rồi dịch chúng sang ngôn ngữ máy tính
Để chuyển giọng nói sang văn bản hoặc câu lệnh máy tính, hệ thống
phải thực hiện một quá trình gồm nhiều bước phức tạp Khi nói, bạn sẽ tạo ra những rung động trong không khí Bộ chuyển đổi tín hiệu tương tự sang số(AnalogtoDigital Converter, ADC) chuyển các sóng tương tự (analog) này thành dữ liệu mà máy tính có thể hiểu được
Để làm điều này, hệ thống thu thập các mẫu (hoặc số hóa) âm thanh
bằng cách đo chính xác sóng âm ở các khoảng thời gian gần nhau, sau đó lọc
âm thanh đã được số hoá để loại bỏ tiếng ồn, đôi khi tách chúng thành các dải tần số khác nhau Nó cũng "bình thường hóa" hoặc tinh chỉnh âm thanh đến một mức âm lượng không thay đổi hoặc sắp xếp theo thời gian Không phải lúc nào con người cũng nói với tốc độ như nhau nên âm thanh phải được điều chỉnh cho phù hợp với tốc độ mà âm thanh mẫu được ghi nhận trong bộ nhớmáy
Tiếp theo, tín hiệu được chia thành nhiều phần nhỏ (thời gian khoảngvài phần trăm giây, thậm chí là phần ngàn giây trong trường hợp có phụ âmcuối khó phân biệt như "p" hoặc "t") Chương trình sau đó đặt những phần
âm thanh này vào các âm vị có sẵn trong ngôn ngữ thích hợp
Trang 9Vớ i sự phát triển củ a công nghệ , ứ ng dụ ng nhậ n dạ ng giọng nói ngày càng được hoàn thiện với tính chính xác cao hơn Thay vì nhận dạng từng chữ
cái, công nghệ này còn có khả năng nhận dạng được theo ngữ nghĩa của câunói để giảm thiểu sai sót trong quá trình nhận dạng
Ưu điểm của phần mềm nhận diện giọng nói:
Khả năng truy cập: Đây là một thuận lợi đối với người khuyết tất khi họ không thể dùng chuột hay bàn phím, nhưng có thể dùng giọng nói
để hệ thống chuyển thành văn bản, giúp nhập liệu hay điều khiển một cách dễ dàng
Kiểm tra chính tả: Người dùng có thể truy cập vào các công cụ chỉnh sửa tương tự một giải pháp xử lý văn bản chuẩn Đương nhiên mọi thứ sẽ không chính xác 100% nhưng phần mềm có thể nhận diện
và xử lý phần lớn lỗi chính tả, ngữ pháp
Tốc độ nhanh: Phần mềm nhận dạng giọng nói có thể nắm bắt giọng nói của người dùng với tốc độ nhanh hơn so với khi nhập liệu bằng bàn phím, vì vậy tốc độ khi nhập liệu bằng giọng nói sẽ cải thiện đáng kể
Nhược điểm của phần mềm nhận diện giọng nói:
Thiết lập và "dạy": Mặc dù tất cả phần mềm nhận dạng giọng nóihiện nay đều hứa hẹn có thể hoạt động sau vài phút thiết lập, nhưng thực sự quá trình ghi nhận, làm quen với giọng nói, âm điệu và tốc độ nói của ngườidùng có đôi chút phức tạp và tốn thời gian Một số phần mềm nhậndạng giọng nói còn bắt người dùng nói lại, thậm chí không thể nhậndiện được bạn đang nói gì
Chưa thực sự ổn định: Việc đang nói mà bị ngắt giữa chừng
có thể khiến người dùng cảm thấy khó chịu Đặc biệt, một số ngườikhông thích phần mềm nhận dạng giọng nói vì nó gây bối rối chongười dùng khi lên xuống giọng hay bỗng dưng nói nhỏ lại
Kho từ vựng hạn chế: Người dùng phải sẵn sàng chấp nhận trường hợp phần mềm xử lý quá lâu vì những từ vừa nói không nằm trong từ điển có sẵn Đó là điều các nhà nghiên cứu đang cố gắng cải tiến ở phần mềm nhận dạng giọng nói hiện nay
Trang 10d Một số thư viện hỗ trợ cho công nghệ nhậ n diệ n giọng nói
Nuance l à cái tên được nhắ c đế n nhiề u nhấ t trong việc cung cấp thư viện giọ ng nói cho app di độ ng Chí nh nhờ v ào nhữ ng thư viện như thế này mà lậ p trình viên không cầ n phả i tự mình thiế t kế hệ thố ng nhậ n dạ ng, phiên dị ch cho app mà chỉ cầ n xài lạ i cái có sẵ n, tiết kiệm đượ c nhiề u thời gian, công sứ c và tiệ n bạ c Nuance có hỗ trợ
cho tiếng Việt trong ứng dụng Dragon Dictation do chính
hãng này phát triển
OpenEars cũng là mộ t th ư viện khác như ng nó thuộ c dạ
ng nguồn mở và hoạ t độ ng offline, hạ n ch ế l à chỉ hỗ trợ tiếng Anh và Tây Ban Nha Vài cái tên khác có thể kể đế n như Ivona, iSpeech, Vocalkit and Acapela
Mộ t cách khác mà nhiều phầ n mềm hiện cũng đang xài đó là tận
dụ ng bộ nguồ n nhậ n dạ ng có sẵ n trên các hệ điề u hành di động.
Ngườ i dùng có thể kích hoạ t tính năng này ở nhữ ng chỗ cầ n nhập văn
bản Từ iOS 7 về trước thì tính năng này không hỗ trợ tiếng Việt,
phải lên iOS 8 mới có Google thì bắt đầu hỗ trợ nhập liệu tiếng Việt
cho Android khoảng một năm về trước Ngoài ra, Apple, Google cũng
có cung cấp các hàm API giúp app của lập trình viên biết nói chỉ với
vài dòng mã nguồn
Trang 11AI. TỔNG QUAN VỀ CÔNG NGHỆ NHẬN DIỆN
GIỌNG NÓI
Hình Mô hình công nghệ nhận diện giọng nói
Có nhiều cách thứ c mà các công ty hiện nay đang triển khai, có thể kể đến 2 phương pháp phổ biến như sau:
Điện toán đám m ây: Trong trườ ng hợ p này, việ c nhậ n dạ ng,
xử lý ngôn ngữ sẽ diễn ra trên máy chủ củ a các công ty cung cấ
p dị ch vụ Phươ ng pháp đám mây giúp việ c nhậ n dạ ng đượ cchính xác hơ n, ứng dụ ng thì có dung lượng nhỏ , như ng bù lại
th ì thiế t bị ở phía người dùng phả i luôn kết nố i vớ i Internet
Độ trễ trong quá trình gử i giọng nói từ máy lên server rồi trả kết quả từ server về lại máy cũng là những thứ đáng cân nhắc
Tích hợp thẳng vào app: Với phương thức này, quá trình xử lý giọng nói sẽ diễn ra trong nội bộ ứng dụng, không cần giao tiếp với bên ngoài, chính vì thế tốc độ sẽ nhanh hơn Người dùng cũng không bắt buộc phải kết nối vào mạng thường trực Tuy nhiên, giải pháp này gặp nhược điểm đó là khi có cập nhật hoặc thay đổi gì đó về bộ máy nhận dạng, nhà sản xuất sẽ phải cập nhật lại cả một app, trong khi với phương thức đám mây thì những thay đổi đó chỉ cần làm ở phía
Trang 12server Kích thướ c ứ ng dụ ng cũng sẽ t ăng lên, có thể l ên
tớ i cả vài trăm MB
2 Các kỹ thuật đượ c áp dụng trong công nghệ nhận diệ n giọng nói
Thoạt nhìn thì việc triển khai công nghệ nhậ n dạ ng giọ ng nói khá đơn giả n, như ng thự c chấ t thì không phả i như thế:
Thứ nhất, các nhà phát triển phả i xây dự ng nên mộ t công nghệ
có thể lắ ng nghe, phân tích và phiên dị ch mộ t cách chính xác giọ ng
n ói củ a người dùng Nếu không thì làm sao app biết bạn đang nói gì, còn nế u độ chính xác không cao thì cũng như không
Thứ hai, vấn đề bả n đị a hóa (localization) cũng là mộ t chuyện làm đau
đầ u các lậ p tr ì nh viên Mỗ i quố c gia sẽ có ngôn ngữ củ a riêng m ình, vấ n
đề đó l à làm thế nào để có thể hỗ trợ càng nhiề u ngôn ngữ càng tố t Hiện nay
hầ u hết nhữ ng dịch vụ giọ ng nói đề u hỗ trợ tiếng Anh, Google Voice Input trong Android và Voice Dictation trong iOS 8 thì có hỗ trợ tiếng Việt nhưng cũng còn nhiều hạ n chế Đó là chư a n ói đế n việ c mỗ i v ùng miề n lại có cách nói, giọ ng điệu khác nhau mặ c dù họ sử dụ ng cùng mộ t ngôn ngữ.
Tuy nhiên, với cách các máy dịch thuật hiện nay đang hoạt động, chúng ta chỉ cầ n truyền đoạ n ghi âm vào mạ ng nơ ron và đào tạ o nó để tạ o ra "bản dị ch", đó cũng là điều mà nhậ n diện giọ ng nói vớ i deep learning hướ ng tới:
Hình Input và output của Công nghệ nhận diện giọng nói
Vấ n đề lớ n nhấ t chính là tố c độ nói biế n thiên Mộ t ngườ i có thể nói
"Hello" rất nhanh và ngườ i khác nói "heeeellllllloooooo!" cực chậm, tạo ra âm thanh dài hơ n vớ i nhiều dữ liệu hơ n Cả 2 âm đề u nên đượ c nhậ n dạng chính
xác là từ một "hello!" Tự động chỉnh file âm thanh với nhiều biến thể độdài khác nhau của từng từ để tạo ra văn bản đồng nhất lại khá khó
Trang 13Để xử l ý vấ n đề này, chúng ta sẽ sử dụ ng mộ t số kỹ thuậ t đặ cbiệt và thêm mộ t vài bướ c vào mạng deep learning.
a Kỹ thuật xử lý ngôn ngữ tự nhiên (Natural Language Processing)
Xử l ý ngôn ngữ tự nhi ên (Natural Language Processing – NLP) là tậ p hợp
củ a nhiều thuậ n toán phứ c tạ p nhằ m phân tích mệ nh lệ nh củ a người dùng như ng không bắ t buộ c họ phả i nói theo mộ t cấ u trúc câu đị nh sẵ n Nhiều năm trướ c khi muố n điề u khiể n bằ ng giọ ng nói, bạ n chỉ có thể nói nhữ ng thứ như
"Mở bả n đồ , "Báo thứ c lúc 5 giờ sáng" Còn bây giờ thì nhờ có NLP, ta
có thể nói các câu như "Siri, hãy đánh thứ c tôi lúc 5 giờ sáng ngày mai"
NLP cũng không phả i l à đơ n giả n để phát triển Cả Apple,Google và Microsoft đều phả i đầ u tư rấ t nhiề u tiề n bạ c và nguồ n
lự c để có thể đưa NLP lên đến mứ c ti ến bộ như hiện nay Mặ c dù
vậ y, các công ty vẫ n phải tiếp tụ c nghiên cứ u để cả i thiệ n độchính xác cũng như hỗ trợ thêm nhiều ngôn ngữ khác nhau
b Chuyển âm thanh thành số
Bướ c đầ u tiên trong nhậ n diện giọ ng nói kh á rõ r àng chúng ta cần truy
ền sóng âm v ào máy t ính, xem hình ả nh là tậ p hợ p giá trị , vớ i mỗ i giá trị đạ
i diện cho độ s áng củ a điể m ả nh, để truyề n vào mạ ng nơron S óng âm có
mộ t chiều dữ liệu Ở mỗ i thờ i điể m, chúng có mộ t giá trị cao độ Để chuyển sóng âm thành số, chúng ta chỉ cần ghi lại độ cao của sóng ở từng khoảng:
Hình Ví dụ về lấy mẫu sampling 1