1. Trang chủ
  2. » Giáo Dục - Đào Tạo

nhận dạng tiếng nói rời rạc dùng mô hình markov ẩn và mạng nơ ron nhân tạo

33 283 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 33
Dung lượng 684,27 KB

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 ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI NHẬN DẠNG TIẾNG NÓI RỜI RẠC DÙNG MÔ HÌNH MARKOV ẨN VÀ MẠNG NƠ-RON NHÂN TẠO...  Tìm hiểu tổng quan về nhận dạng tiếng nói Tìm hiểu các phương pháp

Trang 1

-* -BÁO CÁO

ĐỒ ÁN TỐT NGHIỆP

ĐỀ TÀI NHẬN DẠNG TIẾNG NÓI RỜI RẠC DÙNG MÔ HÌNH MARKOV ẨN VÀ MẠNG NƠ-RON NHÂN TẠO

Trang 2

1. Đặt vấn đề

2. Mục tiêu của đồ án

3. Tổng quan về nhận dạng tiếng nói

4. Các phương pháp phân tích đặc trưng của tín hiệu tiếng nói

5. Mô hình Markov ẩn trong nhận dạng tiếng nói

6. Mạng nơ-ron nhân tạo

7. Thực hiện nhận dạng tiếng nói rời rạc dùng mô hình Markov ẩn

8. Giới thiệu công cụ Kaldi

9. Kết luận và định hướng phát triển trong tương lai

Trang 3

 Xu hướng tương tác giữa người và máy sử dụng ngôn ngữ tự nhiên ngày một phát triển

 Nhu cầu về những thiết bị có thể nhận biết và hiểu được tiếng nói đã trở thành một ước muốn tột bậc của con người

3

Trang 4

 Tìm hiểu tổng quan về nhận dạng tiếng nói

 Tìm hiểu các phương pháp phân tích đặc trưng của tín hiệu tiếng nói

 Tìm hiểu nhận dạng tiếng nói dùng mô hình Markov ẩn

 Tìm hiểu nhận dạng tiếng nói dùng mạng nơ-ron nhân tạo

 Thực hiện nhận dạng tiếng nói rời rạc dùng mô hình Markov ẩn

 Tìm hiểu công cụ Kaldi để thực hiện nhận dạng tiếng nói

Trang 5

 Nhận dạng tiếng nói:

o Là làm cho máy hiểu, nhận biết được ngữ nghĩa của lời nói

o Là quá trình biến đổi tín hiệu âm thanh thành một chuỗi các từ

5

Trang 6

 Cấu trúc của một hệ thống nhận dạng tiếng nói:

 Có 3 phương pháp:

o Phương pháp âm học – ngữ âm

o Phương pháp nhận dạng mẫu thống kê

Trang 7

a) Mô hình LPC

) Cho ta một xấp xỉ khá tốt của phổ âm thanh

) Chính xác về mặt toán học và đơn giản trong việc cài đặt

) Hoạt động tốt trong các ứng dụng nhận dạng

) Các bước cơ bản của quá trình:

7

Trang 8

a) Mô hình LPC

) Hiệu chỉnh tín hiệu:

) Phân khung tín hiệu:

 Lấy cửa sổ tín hiệu

Trang 10

a) Mô hình LPC

) Tính toán các hệ số Cepstral có trọng số

) Tính đạo hàm của các hệ số Cepstral

) Kết quả là vector đặc trưng 2Q thành phần

Trang 11

b) Phương pháp MFCC

) Dựa trên việc chuyển đổi dữ liệu âm thanh đầu vào về thang đo tần số mel

) Quá trình trích rút đặc trưng:

11

Trang 12

b) Phương pháp MFCC:

) Biến đổi Fourier nhanh:

) Chuyển đổi tấn số mel, tạo các bộ lọc tam giác

Trang 14

a) Các thành phần của HMM

) Tập các trạng thái:

) Tập các quan sát:

) Chuỗi các trạng thái có thể xảy ra:

) Chuỗi các quan sát có thể quan sát được:

) Ma trận chuyển đổi:

) Ma trận xác suất quan sát:

) Ma trận xác suất khởi tạo:

) Một mô hình HMM được ký hiệu :

Trang 15

b) Các vấn đề của HMM

) Vấn đề 1:

o Cho chuỗi quan sát và mô hình , tìm P(O|λ) ?

o Thủ tục forward: với biến forward

15

Trang 16

b) Các vấn đề của HMM

) Vấn đề 1:

o Thủ tục backward: biến backward

Trang 17

b) Các vấn đề của HMM

) Vấn đề 2:

o Cho chuỗi quan sát và mô hình , chọn chuỗi tối ưu theo nghĩa xác suất

o Thuật toán Viterbi: với

17

Trang 18

b) Các vấn đề của HMM

) Vấn đề 3: Xác định các tham số λ = (A, B, π) để P(O|λ) đạt cực đại?

Trang 19

 Mạng nơ-ron nhân tạo (Artificial neural network – ANN)

o Mô phỏng các hệ thống nơ-ron sinh học (trong bộ não con người)

o Được tạo nên bởi một số lượng các nơ-ron liên kết với nhau

Trang 20

 Cấu trúc và hoạt động của một nơ-ron

Trang 21

 Kiến trúc của một ANN:

o Số lượng các tín hiệu đầu vào và ra

o Số lượng các tầng

o Số lượng các nơ-ron trong mỗi tầng

o Số lượng các trọng số đối với mỗi nơ-ron

o Cách thức các nơ-ron liên kết với nhau

o Những nơ-ron nhận tín hiệu điều chỉnh lỗi

21

Trang 22

 Hàm mục tiêu (hàm đánh giá lỗi):

Xét một ANN có n nơ-ron đầu ra:

Đối với một ví dụ học (x,d), giá trị lỗi học gây bởi vector trọng số w:

Lỗi học gây ra bởi vector trọng số w đối với toàn bộ tập học D:

Trang 23

Mạng nơ-ron nhiều tầng và giải thuật lan truyền ngược:

 Có thể biểu diễn một hàm phân tách phi tuyến phức tạp

 Giải thuật học lan truyền ngược được sử dụng để học trong một mạng:

o Cấu trúc mạng cố định

o Hàm tác động phải có đạo hàm liên tục

 Giải thuật lan truyền ngược áp dụng chiến lược gradient descent

 Giải thuật học lan truyền ngược tìm kiếm một vector các trọng số giúp cực tiểu lỗi tổng thể của hệ thống đối với tập học

23

Trang 24

Mạng nơ-ron nhiều tầng và giải thuật lan truyền ngược:

Mạng nơ-ron gồm Q tầng, q= 1,2,…,Q

Netiq và Outiq là đầu vào tổng thể và giá trị đầu ra của nơ-ron i ở tầng q

Mạng có m tín hiệu đầu vào và n nơ-ron đầu ra

wijq là trọng số của liên kết từ nơ-ron j ở tầng (q-1) đến nơ-ron i ở tầng q

 Bước 0 (khởi tạo)

Chọn ngưỡng lỗi Ethreshold , Gán E=0

Khởi tạo giá trị ban đầu của các trọng số với giá trị nhỏ ngẫu nhiên

 Bước 1

Áp dụng vector đầu vào của ví dụ học k đối với tầng vào (q=1)

Outiq = Outi1 = xi(k) , ∀i

Bước 2: Lan truyền tiến các tín hiệu, giá trị đầu ra của mạng OutiQ

Trang 25

Mạng nơ-ron nhiều tầng và giải thuật lan truyền ngược:

Bước 3: Tính toán lỗi đầu ra của mạng và tín hiệu lỗi δiQ của mỗi nơ-ron ở tầng ra:

Bước 4: Lan truyền ngược lỗi để cập nhật các trọng số và tính toán các tín hiệu lỗi δiq-1 cho các tầng phía trước:

25

Trang 26

Mạng nơ-ron nhiều tầng và giải thuật lan truyền ngược:

 Bước 5: Kiểm tra nếu toàn bộ tập học đã được dùng thì chuyển đến bước 6, nếu không chuyển đến bước 1

Bước 6: Nếu lỗi tổng thể E < Ethreshold thì quá trình học kết thúc và trả về các trọng số học được

Ngược lại, gán E=0 và bắt đầu một kỳ học mới (quay lại bước 1)

Trang 27

 Bộ dữ liệu học và kiểm tra:

o Bộ mẫu gồm 9 từ: “một”, “hai”, …,“chín”

o Thực hiện thu 100 mẫu

 Thực hiện trích rút đặc trưng theo phương pháp MFCC

 Xây dựng mô hình máy nhận dạng tiếng nói rời rạc:

o Xây dựng mô hình cho mỗi từ thông qua quá trình huấn luyện (vấn đề 3)

o Tiếng nói cần nhận dạng được tính xác suất trên mô hình HMM của mỗi từ

o Từ được nhận dạng là từ có xác suất cao nhất

27

Trang 28

 Xây dựng mô hình máy nhận dạng tiếng nói rời rạc:

Trang 29

 Kết quả nhận dạng:

o Kết quả nhận dạng khá tốt Độ chính xác là 96,22%

o Tuy nhiên chương trình vẫn chỉ đang thực hiện với bộ dữ liệu nhỏ

o Mô hình được huấn luyện với chỉ một người nói

29

Trang 30

 Là bộ công cụ nhận dạng tiếng nói viết bằng C++

Năm 2009, trong hội thảo với chủ đề “Nhận dạng tiếng nói chất lượng cao, chi phí thấp cho ngôn ngữ và vùng miền mới” của Đại

học Johns Hopkins

 Phát hành vào ngày 14/5/2011

 Tải và cài đặt Kaldi:

git clone https://github.com/kaldi-asr/kaldi.git kaldi-trunk origin golden

cd kaldi-trunk

 Môi trường máy tính tối thiểu để chạy Kaldi là môi trường Unix bất kỳ

Trang 31

Chạy thử kịch bản mẫu nhận dạng tiếng nói “yes/no” rời rạc:

 Kết quả nhận dạng:

o Bộ dữ liệu test gồm 29 file tiếng nói, mỗi file gồm 8 lần phát âm yes hoặc no

 tổng cộng có 138 lần nói yes và 94 lần nói no.

o Kết quả nhận dạng là 100%  kết quả rất tốt

 Kaldi là bộ công cụ sử dụng kỹ thuật nhận dạng mới: deep learning (học sâu),

31

Trang 32

 Kết quả đã đạt được:

 Tìm hiểu được các kiến thức về nhận dạng tiếng nói:

 Thực hiện nhận dạng tiếng nói rời rạc trên mô hình Markov ẩn

 Tìm hiểu công cụ Kaldi

 Kết quả chưa đạt được:

 Chưa xây dựng được ứng dụng có giao diện hoàn thiện

 Quá trình nhận dạng mới chỉ làm việc trên bộ dữ liệu nhỏ, một người nói

 Chưa tìm hiểu sâu về công cụ Kaldi

 Định hướng trong tương lai:

 Xây dựng một ứng dụng hoàn thiện phục vụ người dùng

 Cải thiện tập huấn luyện về chất lượng và số lượng

 Tìm hiểu về kỹ thuật nhận dạng mới – Deep Learning

 Sử dụng công cụ Kaldi để nhận dạng tiếng nói

Ngày đăng: 13/12/2017, 23:21

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

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

w