Định danh người nói độc lập văn bản bằng mô hình thống kê

Đề tài nghiên cứu của luận văn này xoay quanh bài toán định danh người nói – một bài toán con trong lĩnh vực nhận dạng người nói, vốn là một nhánh của sinh trắc học (biometrics). Nhận dạng người nói tự động (Automatic Speaker Recognition – ASR) là tiến trình nhận dạng tự động một người dựa trên tiếng nói của người đó. Một hệthống ASR gồm hai giai đoạn chính là đăng ký (enrollment) và nhận dạng (test):

pdf10 trang | Chia sẻ: vietpd | Lượt xem: 1659 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Định danh người nói độc lập văn bản bằng mô hình thống kê, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1 Chương 1: GIỚI THIỆU 1.1 Dẫn nhập Đề tài nghiên cứu của luận văn này xoay quanh bài toán định danh người nói – một bài toán con trong lĩnh vực nhận dạng người nói, vốn là một nhánh của sinh trắc học (biometrics). Nhận dạng người nói tự động (Automatic Speaker Recognition – ASR) là tiến trình nhận dạng tự động một người dựa trên tiếng nói của người đó. Một hệ thống ASR gồm hai giai đoạn chính là đăng ký (enrollment) và nhận dạng (test): - Trong giai đoạn đăng ký, dữ liệu tiếng nói của mỗi người sẽ được thu nhận và rút trích đặc trưng trước khi đưa vào huấn luyện/xây dựng mô hình. Bước rút trích đặc trưng thực hiện thu gọn và biến đổi dữ liệu tiếng nói thành các vector đặc trưng mang thông tin phân biệt giữa những người nói khác nhau. Sau đó, các vector đặc trưng sẽ được đưa vào xây dựng mô hình tùy theo phương pháp cụ thể của hướng tiếp cận giải quyết bài toán. - Trong giai đoạn nhận dạng, vector đặc trưng của mẫu test sẽ được đánh giá qua các mô hình đã xây dựng ở bước đăng ký và rút ra kết luận. Về mặt ý nghĩa khoa học và thực tiễn, các hệ thống ASR có nhiều ứng dụng trong các tác vụ liên quan đến bảo mật. Ví dụ như nó có thể giúp cho việc xác thực các giao dịch từ xa thông qua điện thoại, hay kiểm soát truy cập các hệ thống mạng và máy tính. Ngoài ra, hệ thống ASR còn giúp hỗ trợ công tác điều tra tội phạm, hay phối hợp với các lĩnh vực khác như: truy tìm thông tin (information retrieval), nhận dạng lời thoại (speech recognition). Các mục còn lại của chương này sẽ trình bày chi tiết hơn về bài toán nhận dạng người nói mà cụ thể là định danh người nói – đối tượng nghiên cứu của đề tài – cùng với các lĩnh vực liên quan. 2 1.2. Sinh trắc học 1.2.1. Khái quát Sinh trắc học (biometrics) là lĩnh vực nghiên cứu các phương pháp toán học và thống kê áp dụng trên các bài toán phân tích dữ liệu sinh học. Cụm từ “biometrics” xuất phát từ chữ “bio” (life) và “metrics” (measure) trong tiếng Hy Lạp. Sinh trắc học gồm các phương pháp nhận diện một người dựa trên các đặc điểm sinh lý học (physiological) hay các đặc điểm hành vi (behavioral) của người đó. Các hệ thống sinh trắc đã và đang được phát triển trong các ứng dụng thực tế như hệ thống bảo mật giao tác, quản lý truy xuất, các hệ thống điều phối. Sinh trắc học đem lại một số ưu điểm so với các phương pháp bảo mật truyền thống (card, password…) như: không thể hoặc rất khó giả mạo, không bị đánh cắp hay bị mất... Tuy nhiên, kết quả của các công trình nghiên cứu trên lĩnh vực này vẫn chưa đủ hoàn thiện để có thể thay thế hẳn các phương pháp truyền thống. Hiện nay, kỹ thuật sinh trắc thường được sử dụng kết hợp với password hay card để tăng cường khả năng bảo mật cũng như tính an toàn của dữ liệu. Về phân loại, sinh trắc học có thể được chia thành hai nhóm chính là sinh trắc thể (physiological) và sinh trắc hành vi (behavioral): - Physiological: bao gồm các đặc điểm sinh học trên cơ thể như khuôn mặt (face), DNA, vân tay (fingerprint), tròng mắt (iris), giọng nói (voice)… Trong đó, vân tay là đặc điểm được nghiên cứu và sử dụng từ khá lâu. - Behavioral: các đặc điểm về hành vi của con người như thói quen gõ phím (keystroke), chữ ký (signature), giọng nói (voice)… Nếu xét theo độ cao thấp (pitch), giọng nói có thể được phân loại vào nhóm đặc điểm sinh trắc thể. Tuy nhiên, giọng nói còn được xem là một đặc điểm hành vi nếu ta xét về cách nói. 3 Hình 1.1: Phân loại sinh trắc học. Sinh trắc học được sử dụng theo hai thể thức chính là định danh (identification) và xác minh (verification): - Identification: xác định cụ thể mẫu sinh trắc thuộc về ai. Cơ chế định danh thông qua việc tìm một bộ khớp nhất trong database so với mẫu test. Phương pháp này đòi hỏi rất nhiều chi phí tính toán nếu kích thước database lớn. - Verification: xác định xem mẫu sinh trắc có phải thuộc về một chủ thể cho trước hay không. Cơ chế xác minh thông qua việc so khớp giữa mẫu test với các mẫu thuộc chủ thể đó trong database. Do vậy, phương pháp này đòi hỏi ít năng lực xử lý và thời gian tính toán hơn phương pháp định danh. 1.2.2. Kiến trúc cơ bản của một hệ thống sinh trắc Các thành phần chính của một hệ thống sinh trắc (biometric system): - Bộ cảm biến (sensor): thường là các đầu đọc hay thiết bị scan. Bộ phận này đảm nhận vai trò thu nhận các thông tin sinh trắc từ người trong thế giới thực. - Bộ số hóa (digitalizing module): thực hiện việc chuyển đổi thông tin thu được từ bộ cảm biến sang tín hiệu số và phân tích, rút trích đặc trưng từ tín hiệu đó. Đầu ra của bộ phận này sẽ được truyền sang bộ so khớp (matcher) ở bước nhận dạng (test) hoặc lưu vào database ở bước đăng ký (enrollment). Sinh trắc học Đặc điểm Cơ thể Đặc điểm Hành vi Khuôn mặt DNA Tròng mắt Vân tay Giọng nói Chữ ký Thói quen Gõ phím 4 Hình 1.2: Các thành phần chính của một hệ thống sinh trắc. - Bộ lưu trữ (database): lưu trữ các thông tin sinh trắc của người dùng. - Bộ so khớp (matcher): thực hiện đối sánh giữa mẫu test với các mẫu đã được đăng ký (enrolled) trong database. Kết quả đối sánh sẽ được truyền đến bộ ứng dụng. - Bộ ứng dụng (application device): bộ phận ứng dụng của hệ thống sinh trắc. Tùy từng ứng dụng cụ thể mà thành phần này sẽ thực hiện các chức năng tương ứng với quyết định của bộ so khớp. 1.3. Bài toán nhận dạng người nói Trong các đặc tính sinh học trên cơ thể người, tiếng nói là một đặc điểm mang tính phổ thông, dễ phát sinh và không cần đến các thiết bị thu phức tạp. Nhiều công trình đã được nghiên cứu trên tiếng nói nhằm khai thác các thông tin từ tiếng nói. Hình 1.3 minh họa các lĩnh vực nghiên cứu trên tiếng nói, tập trung vào bài toán nhận dạng tiếng nói. Nhận dạng tiếng nói (voice recognition) bao gồm: nhận dạng lời thoại (speech recognition), nhận dạng người nói (speaker recognition), nhận dạng ngôn ngữ nói (language recognition), nhận dạng phương ngữ nói (dialect recognition)… Trong đó, bài toán nhận dạng người nói lại bao gồm 2 loại là nhận dạng độc lập văn bản (text- đăng ký test testBộ cảm biến Bộ số hóa Database Bộ so khớp Bộ ứng dụng 5 independent) và nhận dạng phụ thuộc văn bản (text-dependent). Theo thể thức nhận dạng thì nhận dạng người nói gồm dạng xác minh (verification) và dạng định danh (identification). Hình 1.3: Các lĩnh vực về nhận dạng tiếng nói. Trong bài toán xác minh người nói tự động (Automatic Speaker Verification – ASV), máy tính chỉ việc xác định xem một mẫu tiếng nói có phải thuộc về một người nói cho trước hay không mà thôi (so sánh 1:1). Còn đối với bài toán định danh người nói tự động (Automatic Speaker Identification – ASI), máy tính sẽ phải Tiếng nói Nhận dạng Lời thoại Nhận dạng Người nói Nhận dạng Ngôn ngữ N.N. Phụ thuộc Văn bản (theo thể thức lời thoại) N.N. Độc lập Văn bản (theo thể thức lời thoại) Xác minh Người nói (theo thể thức nhận dạng) Định danh Người nói (theo thể thức nhận dạng) - N.N. : Nhận dạng Người nói Xử lý Tiếng nói Nhận dạng Tiếng nói Miền Thời gian Miền Tần số … … Nhận dạng Phương ngữ 6 chỉ ra cụ thể mẫu tiếng nói đó thuộc về ai trong số n người nói đã biết (so sánh 1:n). Định danh người nói còn được chia thành 2 loại: - Định danh người nói trên tập đóng (Closed-set speaker identification): tập dữ liệu test là tập đóng, tất cả các mẫu đều thuộc về những người nói đã biết. - Định danh người nói trên tập mở (Open-set speaker identification): tập dữ liệu test là tập mở, mẫu test có thể thuộc về một trong những người nói đã biết hoặc một người nói bất kỳ chưa biết. Hình 1.4: Phân biệt ASV và ASI. Hình 1.5: Phân biệt open-set ASI và closed-set ASI. Trong nhận dạng người nói phụ thuộc văn bản (text-dependent speaker recognition) hệ thống sẽ quy định trước một câu hay một cụm từ mà người nói cần phải phát âm. 7 Ngược lại, nhận dạng người nói độc lập văn bản (text-independent speaker recognition) không cần quy ước trước câu hay cụm từ cần phát âm; người nói có thể phát âm bất kỳ. Đề tài này tập trung vào bài toán định danh người nói độc lập văn bản trên tập dữ liệu mở (open-set text-independent speaker identification). 1.4. Các hướng tiếp cận Tùy thuộc vào từng bài toán nhận dạng người nói, các phương pháp thích hợp sẽ được áp dụng. Ở đây, các hướng tiếp cận sẽ được phân loại theo 2 nhóm: nhóm phụ thuộc văn bản và nhóm độc lập văn bản. 1.4.1. Nhóm phụ thuộc văn bản Đối với bài toán nhận dạng người nói phụ thuộc văn bản, các phương pháp thường được áp dụng là Dynamic Time Warping (DTW) và mô hình Markov ẩn (Hidden Markov Model – HMM): - Dynamic Time Warping (DTW): các training vectors sẽ được lưu trực tiếp trong database cùng với định danh (identity) của người nói tương ứng. Trong giai đoạn test, độ tương tự khoảng cách giữa test vector với các training vectors sẽ được tính, và mẫu test sẽ được phân vào lớp của training vector có độ tương tự khoảng cách nhỏ nhất. - Hidden Markov Model (HMM): là một mô hình thống kê được ứng dụng khá phổ biến trong nhiều lĩnh vực, trong đó có lĩnh vực nhận dạng lời thoại (speech recognition). Đối với bài toán nhận dạng người nói phụ thuộc văn bản, HMM được dùng để mô hình hóa cả thông tin về người nói lẫn lời thoại được nói. HMM được xem là phương pháp tốt hơn so với DTW cho bài toán nhận dạng người nói phụ thuộc văn bản. Tuy nhiên, trong các ứng dụng thực tế, DTW sẽ là một lựa 8 chọn tốt hơn trong trường hợp tập dữ liệu huấn luyện không đủ lớn để ước lượng các tham số của HMM. 1.4.2. Nhóm độc lập văn bản Đối với bài toán nhận dạng người nói độc lập văn bản, các phương pháp thường được áp dụng là Vector Quantization (VQ) và Gaussian Mixture Model (GMM): - Vector Quantization (VQ): là một kỹ thuật được lấy từ lĩnh vực xử lý tiếng nói (speech processing). Trong phương pháp này, dữ liệu học sẽ được đưa vào huấn luyện codebook cho từng người nói. Ở bước test, kết quả nhận dạng sẽ dựa trên sai số quantization error giữa mẫu test với codevector gần nhất trong codebook của từng người nói. - Gaussian Mixture Model (GMM): đây cũng là phương pháp gom cụm giống Vector Quantization. Tuy nhiên trong GMM, mỗi cụm được dại diện bởi một hàm Gauss qua 2 tham số là vector trung bình và ma trận hiệp phương sai. Mỗi GMM sẽ mô hình hóa cho một người nói. GMM có khả năng mô hình hóa tốt hơn VQ, tuy nhiên cũng đòi hỏi số lượng dữ liệu huấn luyện phải đủ lớn. 1.5. Tiếp cận của đề tài Mục tiêu (giả thiết) chính của đề tài là áp dụng mô hình Markov ẩn hợp Gauss (Mixture of Gaussians Hidden Markov Model – MGHMM) cho bài toán định danh người nói độc lập văn bản trên tập dữ liệu mở. Phân loại theo hàm mật độ xác suất của các tín hiệu quan sát, mô hình Markov ẩn (HMM) gồm 2 loại: HMM rời rạc và HMM liên tục. Trong trường hợp hàm mật độ xác suất là hàm Gauss, ta có mô hình Markov ẩn đơn Gauss (Gaussian HMM). Mô hình Markov ẩn hợp Gauss (MGHMM) là một dạng của HMM liên tục, trong đó hàm mật độ xác suất của các vector quan sát là hợp các hàm Gauss (GMM). 9 Hình 1.6: Phân loại mô hình Markov ẩn. Trong phương pháp tiếp cận của đề tài này, mỗi người nói sẽ được mô hình hóa bằng một MGHMM từ dữ liệu huấn luyện của người nói tương ứng. Sau đó, tiến trình nhận dạng một mẫu tiếng nói sẽ gồm 2 bước chính là phân lớp và tái xác định kết quả phân lớp. Chi tiết của phương pháp này sẽ được trình bày cụ thể hơn trong chương 2 và chương 3. Hệ thống xây dựng theo phương pháp này được thực nghiệm trên tập dữ liệu tiếng nói tiếng Việt bao gồm giọng nói của cả ba miền: Bắc, Trung và Nam. Kết quả thực nghiệm đạt được là 100% hiệu suất phân lớp và 96% hiệu suất xác minh. Nội dung các phần tiếp theo của luận vặn: - Chương 2 sẽ trình bày tổng quan về các thành phần và cơ chế hoạt động của một hệ thống định danh người nói trên tập mở, cùng với tóm tắt nội dung và kết quả đạt được của một số phương pháp trong các công trình nghiên cứu trước đây. Bộ phân loại Gauss HMM Gaussian Model Gaussian Mixture Model … HMM rời rạc HMM liên tục Gaussian HMM Mixture of Gaussians HMM - HMM: Hidden Markov Model 10 - Chương 3 trình bày chi tiết về mô hình MGHMM – đặc tả mô hình, các bước xây dựng mô hình, và áp dụng của nó trong đề tài. - Chương 4 mô tả dữ liệu thực nghiệm, chi tiết thực nghiệm và các kết quả đạt được. - Chương 5 đưa ra kết luận và hướng phát triển.