1. Trang chủ
  2. » Công Nghệ Thông Tin

Báo Cáo Môn Học Sâu Nhận Diện Khẩu lệnh tiếng việt

26 23 0

Đ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

Định dạng
Số trang 26
Dung lượng 1,24 MB
File đính kèm Code vao Bao Cao.zip (1 MB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset . Báo Cáo Môn Học Sâu về Nhận dạng giọng nói tiếng việt có Kèm code và dataset .

Trang 1

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN

NHẬP MÔN HỌC SÂU

ĐỀ TÀI:

XÂY DỰNG CHƯƠNG TRÌNH NHẬN DẠNG KHẨU TIẾNG VIỆT

SỬ DỤNG DEEP LEARNING Sinh viên thực hiện : PHẠM THANH PHONG,

PHÙNG VĂN PHƯƠNG

Giảng viên hướng dẫn : NGÔ HOÀNG HUY

Chuyên ngành : TRÍ TUỆ NHÂN TẠO & THỊ

GIÁC MÁY TÍNH

Hà Nội, tháng 03 năm 2022

Trang 3

MỤC LỤC

LỜI MỞ ĐẦU 2

CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY VÀ TÌM HIỂU VỀ KỸ THUẬT MẠNG RNN-LSTM 3

1.1 Giới thiệu về Học Sâu 3

1.1.1 Định Nghĩa : 3

1.1.2 Cách thức hoạt động của Deep Learning : 4

1.1.3 Ưu Điểm của Deep Learning : 6

1.1.4 Ứng Dụng của Deep Learning : 6

1.2 Mạng Hồi Quy RNN và Mạng LSTM 8

1.2.1 Giới thiệu Mạng Hồi Quy RNN 8

1.2.2 Giới thiệu Mạng LSTM 13

CHƯƠNG 2 ỨNG DỤNG NHẬN DIỆN KHẨU LỆNH GIỌNG NÓI 14

2.1 Ứng dụng trong nhận diện khẩu lệnh 14

2.2 Phát biểu bài toán 14

2.3 Mô hình ứng dụng: 14

2.4 Dữ Liệu 17

2.5 Train Model DeepSpeech 17

2.6 Kết Qủa Thực Nghiệm Mô Hình 19

KẾT LUẬN 21

TÀI LIỆU THAM KHẢO 22

Trang 4

LỜI CẢM ƠN

Lời đầu tiên của báo cáo môn học “Nhập môn học máy”, chúng em muốn gửilời cám ơn chân thành nhất của mình tới tất cả những người đã hỗ trợ, giúp đỡchúng em về kiến thức và tinh thần trong quá trình thực hiện báo cáo Em xin chânthành gửi lời cảm ơn tới các thầy cô giáo trong Trường Đại học Điện Lực nóichung và các thầy cô giáo trong Khoa Công nghệ thông tin nói riêng đã tận tìnhgiảng dạy, truyền đạt những kiến thức cũng như kinh nghiệm quý báu trong suốtquá trình học tập Đặc biệt, xin gửi lời cảm ơn đến thầy Ngô Hoàng Huy đã tậntình theo sát giúp đỡ, trực tiếp chỉ bảo, hướng dẫn trong suốt quá trình nghiên cứu

và học tập của chúng em

Do thời gian thực hiện có hạn kiến thức còn nhiều hạn chế nên bài làm củanhóm chắc chắn không tránh khỏi những thiếu sót nhất định Nhóm rất mong nhậnđược ý kiến đóng góp của thầy cô giáo và các bạn để hoàn thiện đồ án của mình

Em xin chân thành cám ơn!

Trang 5

LỜI MỞ ĐẦU

Công nghệ thông tin (CNTT) ngày càng có vai trò quan trọng trong cuộc sốnghằng ngày của chúng ta Việc ứng dụng CNTT vào các lĩnh vực trong đời sốnggiúp công việc được tiến hành nhanh chóng và hiệu quả hơn Có rất nhiều côngviệc mới phát triển song song với sự phát triển của CNTT, một trong những số đó

là phân tích chuẩn đoán dữ liệu – big data, hướng đi mang lại hiệu quả rất lớn.Nhóm chúng em chọn đề tài “Xây dựng chương trình nhận dạng khẩu lệnh tiếngnói sử dụng deep learning” nhằm tìm hiểu sâu hơn về dữ liệu cách khai thác và sửdụng hiệu quả, từ đó viết một ứng dụng cụ thể thử nghiệm làm cơ sở củng cố kiếnthức và định hướng, kế hoạch xây dựng các ứng dụng trong tương lai

Trang 6

CHƯƠNG 1 TỔNG QUAN VỀ HỌC MÁY VÀ TÌM HIỂU VỀ KỸ THUẬT

MẠNG RNN-LSTM 1.1 Giới thiệu về Học Sâu

1.1.1 Định Nghĩa :

Deep Learning là tập hợp con của Machine Learning và nó có tác dụng hỗtrợ cho máy tính tự huấn luyện chính nó để có thể thực hiện mọi tác vụ tương tựnhư con người Điều này chính là giúp máy tính bắt chước con người cách học hỏi

Deep Learning là gì?

Trang 7

Deep Learning có hỗ trợ cho việc dịch ngôn ngữ, phân loại các hình ảnh,nhận dạng giọng nói Chính vì thế, nó có thể được ứng dụng để giải quyết mọi nhucầu cần nhận dạng mẫu mà không cần đến sự can thiệp của con người

Ngoài khái niệm Deep Learning là gì thì bạn nên tìm hiểu thêm về khái

niệm mạng lưới thần kinh như sau: Deep Learning hoạt động dựa vào mạng lướithần kinh nhân tạo và nó bao gồm nhiều lớp chứa các dữ liệu mô phỏng cách thứcvận hành của não người

Bộ phận mạnh thần kinh nhân tạo này giống với não người bao gồm: Cácnode (nó là đơn vị thần kinh trong mạng thần kinh nhân tạo) là những neuron thầnkinh Hầu hết các node bản thân thường chỉ có khả năng trả lời cho những câu hỏi đơn giản và cơ bản nhất; với những tác vụ khó thì chúng sẽ tiến hành liên kết vớinhau để trả lời

Bạn có thể dạy hoặc có thể huấn luyện chúng bằng những thuật toán cụthể Những node giải đáp các câu hỏi phức tạp thì sẽ được gọi là mạng lưới thầnkinh sâu (DNN), nó được định nghĩa như sau: Mạng lưới thần kinh sâu có khảnăng thực hiện các hoạt động phức tạp như biểu diễn, trừu tượng có mang các ýnghĩa về âm thanh, văn bản và hình ảnh Chúng được đánh giá là lĩnh vực pháttriển nhất trong Machine Learning

1.1.2 Cách thức hoạt động của Deep Learning :

Deep Learning được xem là một phương pháp của học máy theo phươngpháp: lập trình AI sẽ được huấn luyện để dự đoán đầu ra dựa vào một tập đầu

vào.Ví dụ cụ thể: Dự đoán hành đầu của con mèo khi gặp chuột rồi tiến hành huấn

luyện nó bằng phương pháp học có giám sát

Trang 8

Mạng lưới thần kinh trong Deep Learning

Khi bạn muốn dự đoán được hành động của nó vào các đầu vào sẽ được thựchiện như sau:

 Lựa chọn con mồi phù hợp

 Lúc này: các bộ phận trên cơ thể của con mèo như mắt, móng vuốt, tai, củacon mèo sẽ trở nên rất nhanh nhạy

 Con chuột sẽ xuất hiện ở đâu

Về cơ bản thì Deep Learning sẽ không khác với học máy thông thường Tuynhiên, với ví dụ trên thì thời gian cần dành khá nhiều mới có thể thiết kế được cáctính năng đại diện cho con mèo Những gì cần làm là cung cấp cho hệ thống một sốlượng hình ảnh con mèo, video con mèo bắt chuột thì hệ thống có thể tự học đượcnhững tính năng đại diện dành cho 1 con mèo

Với những tác vụ như thị giác máy tính, nhận dạng giọng nói, robot hoặcdịch máy thì hiệu suất của Deep Learning có thể vượt xa những hệ thống máykhác Tuy nhiên, việc xây dựng được hệ thống Deep Learning lại không mấy dễdàng so với hệ thống máy móc thông thường

Trang 9

1.1.3 Ưu Điểm của Deep Learning :

Deep Learning giúp giải quyết một số vấn đề mà không cần đến con người

Deep Learning có độ chính xác cao, có thể học sâu rộng và đạt được độchính xác ở mức công nhận vô cùng cao Điều này sẽ đảm bảo cho thiết bị điện tửtiêu dùng có thể đáp ứng được mọi nhu cầu cũng như mong đợi từ phía ngườidùng Deep Learning rất trọng về độ an toàn đối với những mô hình xe khôngngười lái

Các dữ liệu của Deep Learning sẽ được dán nhãn bởi: Việc phát triển của xekhông người lái đòi hỏi hàng triệu hình ảnh cũng như hàng ngàn giờ để xemvideo

GPU có hiệu suất cao và có kiến thức song song nên rất hiệu quả cho DeepLearning Nếu như kết hợp với điện toán đám mây hoặc các cụm thì nó cho phépnhóm phát triển có thể giảm xuống tối đa thời gian đào tạo đối với mạng lưới họctập sau vài tuần hoặc vài giờ

1.1.4 Ứng Dụng của Deep Learning :

 Ứng dụng trong công nghệ cao

Ứng dụng vượt bậc của Deep Learning không thể không kể đến đó chính là chếtạo Robot Hiện nay, các phiên bản Robot giống con người với khả năng cảmnhận, phản ứng với môi trường đang dần được ra đời

Trang 10

Hiện nay, Robot còn có thể hợp tác với các hoạt động của con người và chúng

có thể thực hiện được các nhiệm vụ riêng biệt phù hợp với thế mạnh của chúng.Robot đang góp phần thay thế con người trong việc thực hiện các công việc khókhăn hơn Đây chính là phát minh tuyệt vời nhờ ứng dụng Deep Learning

 Ứng dụng trong nông nghiệp

Hiện nay, nhờ có Deep Learning mà người nông dân có thể triển khai nhữngthiết bị có khả năng phân biệt được cỏ dại với cây trồng Từ đó, các loại máy mócphun thuốc diệt cỏ có thể chọn lọc phun lên cỏ dại để đảm bảo cho cây trồngkhông bị ảnh hưởng

Ngoài vai trò loại bỏ cỏ dại bằng thuốc diệt cỏ thì nhờ Deep Learning màsản lượng nông nghiệp ngày càng được cải thiện Bên cạnh đó, Deep Learningđang được mở rộng hơn nữa sang các hoạt động như: thu hoạch, tưới tiêu, bónphân, gieo trồng,

Ứng dụng của Deep Learning trong lĩnh vực y tế

Trang 11

 Ứng dụng trong điện tử

Deep Learning được ứng dụng cho công việc nhận diện không mặt trong cácthiết bị điện tử như điện thoại, các phần mềm như facebook, messenger, Thêmvào đó, Deep Learning còn được dùng trong nghe dịch và nói tự động mà trangweb google dịch đang sử dụng Ngoài ra, một số thiết bị trợ giúp tại nhà cũng đượcứng dụng Deep Learning để đáp ứng giọng nói và hiểu được sở thích của bản (đâychính là ứng dụng học sâu)

1.2 Mạng Hồi Quy RNN và Mạng LSTM

1.2.1 Giới thiệu Mạng Hồi Quy RNN

Khi xử lý video ta hay gặp khái niệm FPS (frame per second) tức là bao nhiêuframe (ảnh) mỗi giây Ví dụ 1 FPS với video 30s tức là lấy ra từ video 30 ảnh, mỗigiây một ảnh để xử lý

Ta dùng 1 FPS cho video input ở bài toán trên, tức là lấy ra 30 ảnh từ video, ảnh

1 ở giây 1, ảnh 2 ở giây 2,… ảnh 30 ở giây 30 Bây giờ input là 30 ảnh: ảnh 1, ảnh2,… ảnh 30 và output là phân loại hành động Nhận xét:

Các ảnh có thứ tự ví dụ ảnh 1 xẩy ra trước ảnh 2, ảnh 2 xẩy ra trước ảnh 3,

… Nếu ta đảo lộn các ảnh thì có thể thay đổi nội dung của video Ví dụ: nộidung video là cảnh bắn nhau, thứ tự đúng là A bắn trúng người B và B chết,nếu ta đảo thứ tự ảnh thành người B chết xong A mới bắn thì rõ ràng bây giờ

A không phải là kẻ giết người suy ra nội dung video bị thay đổi

 Ta có thể dùng CNN để phân loại 1 ảnh trong 30 ảnh trên, nhưng rõ ràng là

1 ảnh không thể mô tả được nội dung của cả video Ví dụ: Cảnh người cướpđiện thoại, nếu ta chỉ dùng 1 ảnh là người đấy cầm điện thoại lúc cướp xongthì ta không thể biết được cả hành động cướp

Cần một mô hình mới có thể giải quyết được bài toán với input là sequence(chuỗi ảnh 1->30) suy ra RNN ra đời

Dữ liệu dạng sequence

Dữ liệu có thứ tự như các ảnh tách từ video ở trên được gọi là sequence, series data

Trang 12

time-Trong bài toán dự đoán đột quỵ tim cho bệnh nhân bằng các dữ liệu tim mạchkhám trước đó Input là dữ liệu của những lần khám trước đó, ví dụ i1 là lần khámtháng 1, i2 là lần khám tháng 2,… i8 là lần khám tháng 8 (i1,i2, i8) được gọi làsequence data RNN sẽ học từ input và dự đoán xem bệnh nhân có bị đột quy timhay không.

Ví dụ khác là trong bài toán dịch tự động với input là 1 câu, ví dụ “tôi yêuViệt Nam” thì vị trí các từ và sự xắp xếp cực kì quan trọng đến nghĩa của câu và

dữ liệu input các từ [‘tôi’, ‘yêu’, ‘việt’, ‘nam’] được gọi là sequence data Trong bài toán xử lý ngôn ngữ (NLP) thì không thể xử lý cả câu được và người ta tách ra từng từ làm input, giống như trong video người ta tách ra các ảnh (frame) làm input.

Phân loại bài toán RNN

Cácdạng bài toán RNN

One to one: mẫu bài toán cho Neural Network (NN) và Convolutional

Neural Network (CNN), 1 input và 1 output, ví dụ với CNN input là ảnh và output

là ảnh được segment

One to many: bài toán có 1 input nhưng nhiều output, ví dụ: bài toán

caption cho ảnh, input là 1 ảnh nhưng output là nhiều chữ mô tả cho ảnh đấy, dướidạng một câu

Many to one: bài toán có nhiều input nhưng chỉ có 1 output, ví dụ bài toán

phân loại hành động trong video, input là nhiều ảnh (frame) tách ra từ video,ouptut là hành động trong video

Trang 13

Many to many: bài toán có nhiều input và nhiều output, ví dụ bài toán dịch

từ tiếng anh sang tiếng việt, input là 1 câu gồm nhiều chữ: “I love Vietnam” vàoutput cũng là 1 câu gồm nhiều chữ “Tôi yêu Việt Nam”

Ứng dụng bài toán RNN

Về cơ bản nếu bạn thấy sequence data hay time-series data và bạn muốn ápdụng deep learning thì bạn nghĩ ngay đến RNN Dưới đây là một số ứng dụng củaRNN:

Speech to text: Chuyển giọng nói sang text.

Sentiment classification: phân loại số sao cho các bình luận, ví dụ: input:

“ứng dụng tốt”, output: 4 sao

Machine translation: Bài toán dịch tự động giữa các ngôn ngữ.

Video recognition: Nhận diện hành động trong video.

Heart attack: Dự đoán đột quỵ tim.

Mô Hình Bài Toán

Bài toán: Nhận diện hành động trong video 30s Đây là dạng bài toán many to onetrong RNN, tức nhiều input và 1 output

Input ta sẽ tách video thành 30 ảnh ở mỗi giây Các ảnh sẽ được cho qua modelCNN để lấy ra các feature thành các vector có kích thước n*1 Vector tương ứng

với ảnh ở giây thứ i là xi.

Output là vector có kích thước d*1, softmax function được sử dụng như trong bàiphân loại ảnh

Trang 14

Mô hình RNN cho bài toán.

activation function thường là tanh hoặc ReLU

Có thể thấy s_tst mang cả thông tin từ state trước (st−1) và input của state hiện tại =>st giống như memory nhớ các đặc điểm của các input từ x1 đến xt

s0 được thêm vào chỉ cho chuẩn công thức nên thường được gán bằng 0

hoặc giá trị ngẫu nhiên Có thể hiểu là ban đầu chưa có dữ liệu gì để học thìmemory rỗng

Do ta chỉ có 1 output, nên sẽ được đặt ở state cuối cùng, khi đó s30 học được thông tin từ tất cả các input :y^=g(V∗s30) g là activation function, trong bài

này là bài toán phân loại nên sẽ dùng softmax

Ta thấy là ở mỗi state các hệ số W, U là giống nhau nên model có thể được viết lạithành:

Trang 15

Mô hình RNN rút gọnTóm lại:

xi là vector có kích thước n*1, si là vector có kích thước m*1, yi là vector có

kích thước d*1 U là ma trận có kích thước m*n, W là ma trận có kích thướcm*m và V là ma trận có kích thước d*m

Trang 16

Loss function

1.2.2 Giới thiệu Mạng LSTM

Mạng LSTM là một dạng đặc biệt của RNN, nó có khả năng học được các phụthuộc xa LSTM được thiết kế để tránh được vấn đề phụ thuộc xa (long-termdependency) Việc nhớ thông tin trong suốt thời gian dài là đặc tính mặc định củachúng, chứ ta không cần phải huấn luyện nó để có thể nhớ được Tức là ngay nội tạicủa nó đã có thể ghi nhớ được mà không cần bất kì can thiệp nào

LSTM cũng có kiến trúc dạng chuỗi như vậy, nhưng các mô-đun trong nó cócấu trúc khác với mạng RNN chuẩn Thay vì chỉ có một tầng mạng nơ-ron, chúng cótới 4 tầng tương tác với nhau một cách rất đặc biệt

Trang 17

CHƯƠNG 2 ỨNG DỤNG NHẬN DIỆN KHẨU LỆNH GIỌNG NÓI 2.1 Ứng dụng trong nhận diện khẩu lệnh

Convolutional Neural Network là một trong những mô hình Deep Learningtiên tiến giúp chúng ta xây dựng được những hệ thông minh với độ chính xác cao

Mạng nơ-ron tích chập cho phép các máy tính có khả năng “nhìn” và phântích bằng cách đưa nó qua nhiều layer với một bộ lọc tích chập để sau cùng cóđược điểm số nhận dạng một cách tốt nhất

Trang 18

Chính vì những điều đó, CNN ngày nay càng được sử dụng rộng rãi trongcái bài toán nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên , và đặc biết hơn là nhậndạng khẩu lệnh nói con người đòi hỏi sự chính xác cao

Ngày càng nhiều những chiếc điện thoại hay đồng hồ thông minh được ứngdụng công nghệ nhận diện giọng nói giúp cho người dùng có thể xem thời tiết , đặtmột món hàng qua việc ra lệnh cho điện thoại của mình

2.2.Phát biểu bài toán

Bài nhận diện khẩu lệnh nói là bài toán nhận dạng lệnh nói dựa trên các tậpfile ghi âm có sẵn trên CommonVoice để phân tích ,huấn luyện để dự đoán rakhẩu lệnh nói của con người

2.3 Mô hình ứng dụng:

Em có sử dụng mô hình được đào tạo trước của DeepSpeech để Train tập dữliệu của mình

Mô hình DeepSpeech

Ta có x và nhãn yđược lấy mẫu từ một tập huấn luyện :

Mỗi câu nói,x^(i)là một chuỗi thời gian có độ dài T^(i) trong đó mỗi lát thờigian là một vectơ của các tính năng âm thanh, x^(i)t ở đâu t=1,…,T^(i) Chúng tôi

sử dụng các tính năng của MFCC; Vì thế x^(i)tp biểu thị p-Tính năng MFCC thứtrong khung âm thanh tại thời điểmt Mục tiêu của RNN của chúng tôi là chuyểnđổi một chuỗi đầu vàoxthành một chuỗi các xác suất ký tự cho quá trình phiên mã

y, với y^t = P(ct∣x), tiếng anh ở đâu ct∈{a,b,c, ,z,space,apostrophe,blank} (Ýnghĩa củablanksẽ được giải thích bên dưới.)

Mô hình RNN của chúng tôi bao gồm 5 các lớp đơn vị ẩn Đối với một đầu vàoxx, các đơn vị ẩn ở lớp l được biểu thị h(l) với quy ước rằng h(0)là đầu vào Ba lớp đầu tiên không lặp lại Đối với lớp đầu tiên, tại mỗi thời điểmtt, đầu ra phụ thuộc vào khung MFCC xt cùng với bối cảnh củaCCkhung ở mỗi bên (Chúng tôi

sử dụng C=9 cho các thử nghiệm của chúng tôi.) Các lớp không lặp lại còn lại hoạtđộng trên dữ liệu độc lập cho mỗi bước thời gian Do đó, mỗi lần t, người đầu tiên

3 các lớp được tính toán bởi:

Ngày đăng: 30/03/2022, 14:04

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w