TỔNG QUAN
Lược sử về trích chọn thông tin
I.1.1 Tính cần thiết của trích chọn thông tin
Hiện nay, lượng dữ liệu văn bản điện tử đang gia tăng nhanh chóng, nhưng phần lớn vẫn chưa được khai thác hiệu quả Việc đọc và tổng hợp hàng terabyte văn bản hàng ngày là điều không khả thi Các nhà nghiên cứu đang tìm kiếm các phương pháp để khám phá và quản lý thông tin này, trong đó phương pháp thu thập thông tin (IR) và lọc thông tin là phổ biến Một phương pháp mới nổi bật là trích chọn thông tin (IE), được đề cập trong luận văn này Hệ thống IE hoạt động như một công cụ kết hợp, giúp rút ra thông tin hữu ích từ khối lượng lớn thông tin thô Với tiềm năng thông tin phong phú, hệ IE có khả năng chuyển đổi và tinh giản văn bản gốc, ví dụ như trong lĩnh vực phân tích tài chính, nơi các nhà đầu tư cần nắm bắt thông tin quan trọng về thiết bị bán dẫn.
Loại hoá chất nào lựa chọn để làm các lớp cách điện
Độ dày của các lớp này
Nhiệt độ mà tại đó các lớp này được hình thành
Ai sử dụng quy trình này
Hệ thống thông tin (IE) thu thập và phân tích các bài báo từ báo chí và tạp chí, bắt đầu từ các đoạn văn bản liên quan và chuyển đổi chúng thành thông tin có thể phân loại Mục tiêu là xây dựng hệ thống tìm kiếm và kết nối thông tin, đồng thời loại bỏ dữ liệu không liên quan IE có ứng dụng tiềm năng trong việc chuyển đổi thông tin không cấu trúc vào cơ sở dữ liệu truyền thống, cho phép người dùng truy cập qua các truy vấn chuẩn Ví dụ, để ghi lại lợi nhuận của các công ty lâm nghiệp ở Mỹ và so sánh với châu Âu, hệ thống sẽ thu thập thông tin như tên công ty, quốc gia, lĩnh vực hoạt động, tổng lợi nhuận và lợi nhuận hiện tại Hệ thống IE liên tục cập nhật cơ sở dữ liệu từ các nguồn có sẵn, giúp phát hiện xu hướng mới ngay khi có thông báo Mặc dù lý thuyết có thể xử lý nhiều sự kiện mới, hiện nay các hệ thống IE chỉ có khả năng xử lý một số dạng văn bản nhất định với độ chính xác nhất định.
I.1.2 IE với ngôn ngữ tự nhiên
Trên quan điểm của xử lý ngôn ngữ tự nhiên (NLP), IE hấp dẫn bởi nhiều lý do, trong đó có:
Công việc trích chọn được định nghĩa tốt
IE sử dụng văn bản ngôn ngữ thực
IE giải quyết các vấn đề khó và thú vị của NLP
Hiệu năng của IE có thể so sánh với hiệu năng của con người trên cùng một công việc
Các hệ thống thông tin và khai thác thông tin (IE) đang được đánh giá dựa trên lợi ích tiêu chuẩn của con người, mở ra cơ hội nghiên cứu cho các nhà khoa học trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP) Chính phủ cung cấp tài chính cho các hội thảo MUCs hàng năm và chương trình Tipster Text của ARPA, nhằm hỗ trợ các nhóm nghiên cứu và tổ chức chính phủ trong việc cải tiến công nghệ tìm kiếm thông tin (IR) và khai thác thông tin (IE), với hy vọng sẽ có những ứng dụng thực tiễn trong thời gian gần.
Cùng với sự quan tâm tích cực về IE, một câu hỏi lớn đối với cộng đồng NLP là liệu IE có đủ hấp dẫn để thu hút nguồn lực và tài năng cho việc phát triển phần mềm ứng dụng thực tiễn Để làm rõ vấn đề này, một cuộc khảo sát đã được thực hiện với người tham dự MUC-4 năm 1992, và những trích dẫn từ khảo sát này đã được công khai lần đầu Việc duy trì các hệ IE là yếu tố quan trọng để khuyến khích các nhà nghiên cứu NLP phát triển từ hệ thống quy mô nhỏ và dữ liệu nhân tạo đến các hệ thống lớn xử lý ngôn ngữ tự nhiên Một vấn đề tồn tại giữa các trường phái nghiên cứu là sự khác biệt giữa trích chọn văn bản và trích chọn tri thức Trích chọn tri thức cũng gặp nhiều thách thức tương tự như các hệ IE, nhưng cố gắng giảm thiểu cơ sở luật hoặc mô hình miền dựa trên kỹ thuật văn bản, đồng thời tích hợp thành phần học máy vào NLP Cơ sở tri thức cần trích chọn thường được thiết kế theo hướng hệ chuyên gia hoặc hệ suy diễn tình huống, với tham vọng cao hơn so với hệ IE đã nêu.
I.1.3 Một số hệ IE trong thời kỳ đầu
Các hệ IE đã sớm được phát triển từ khoảng những năm 1970 Sau đây là một vài ứng dụng trong thời kỳ đầu của các hệ IE:
Một trong những hệ thống thông tin đầu tiên được xây dựng bởi Gerald de Jong, hệ thống này xử lý các văn bản không giới hạn chủ đề Dựa trên dữ liệu nguồn từ các bức điện tín, chương trình FRUMP của de Jong xử lý các điện tín bằng cách sử dụng các kịch bản đơn giản được thiết kế để xử lý nội dung của bản tin Với mỗi bản tin, FRUMP tìm kiếm một kịch bản liên quan dựa trên từ khóa và phân tích khái niệm câu FRUMP là một hệ thống hướng ngữ nghĩa, sử dụng các kỳ vọng miền cụ thể cho các mô tả sự kiện dựa trên tri thức kịch bản.
Dự án Linguistic String Project, được thành lập trước năm 1970 và do Naomi Sager tại đại học New York lãnh đạo, đã nhận được tài trợ từ American Medical Association Mục tiêu của dự án là tìm cách chuyển đổi thông tin bệnh nhân bằng tiếng Anh thành định dạng phù hợp để sử dụng làm đầu vào cho hệ quản trị cơ sở dữ liệu truyền thống, được gọi là Conference on Data Systems Languages (CODASYL).
Năm 1980, DaSilva và Dwiggins đã trích xuất thông tin bay của vệ tinh từ các báo cáo của hệ thống giám sát toàn cầu Tuy nhiên, hệ thống này gặp hạn chế với các câu riêng lẻ và thiếu phương thức để trích xuất các miêu tả sự kiện hoàn chỉnh.
Zarri bắt đầu làm việc với các hệ thống thông tin từ những năm 1980, sử dụng văn bản để mô tả các hoạt động minh họa lịch sử Pháp Hệ thống này có khả năng tìm kiếm và trích xuất thông tin về các mối quan hệ và cuộc gặp gỡ giữa các nhân vật lịch sử.
Những khác biệt chính giữa các hệ thống phát triển trong những năm 1980 và 1990 nằm ở thời gian và công sức cần thiết để thu thập tài liệu Điều này dẫn đến việc tạo ra các mẫu biểu và khóa để xây dựng các tập thử nghiệm với văn bản và đáp số chính xác Ví dụ, việc phát triển một văn bản và khóa đi kèm thông qua phân tích con người trong lĩnh vực vi điện tử là rất tốn kém và phức tạp Các tài nguyên này đã tạo ra hệ thống thông tin tìm kiếm (IE) đặc biệt, nổi bật hơn so với các hệ thống xử lý ngôn ngữ tự nhiên Những mẫu biểu này không chỉ được sử dụng để đánh giá hiệu suất của các hệ thống IE mà còn đóng vai trò quan trọng trong việc phát triển các hệ thống này.
Xây dựng các hệ trích chọn thông tin
I.2.1 Phương pháp xây dựng hệ trích chọn thông tin
Có hai phương pháp cơ bản để thiết kế các hệ IE là: Phương pháp máy tri thức (Knowledge Enginering)và Phương pháp học tự động
Phương pháp máy tri thức được xác định bởi sự phát triển của văn phạm trong hệ thống IE, thông qua sự can thiệp của một "kỹ sư tri thức" - người có hiểu biết sâu sắc về hệ thống này Kỹ sư tri thức chịu trách nhiệm xây dựng các luật cho hệ thống, có thể tự mình thực hiện hoặc tham khảo ý kiến chuyên gia để trích xuất thông tin quan trọng Họ thường sử dụng một tập mẫu văn bản có kích thước trung bình liên quan đến lĩnh vực, kết hợp với trực giác cá nhân Kỹ năng của kỹ sư tri thức là yếu tố then chốt, ảnh hưởng trực tiếp đến hiệu suất của toàn bộ hệ thống.
Phương pháp máy tri thức không chỉ yêu cầu kỹ năng và kiến thức chi tiết về một hệ thống IE cụ thể, mà còn đòi hỏi nhiều công sức để xây dựng hệ thống hiệu suất cao Quá trình này thường bao gồm việc lặp lại, trong đó tập luật đã biết được áp dụng Hệ thống sẽ chạy trên một tập mẫu học các văn bản, và kết quả đầu ra sẽ được kiểm tra để xác định các luật phát sinh dưới mức hoặc quá mức Kỹ sư tri thức sẽ thực hiện các thay đổi và chỉnh sửa luật phù hợp, sau đó lặp lại quá trình này để tối ưu hóa hệ thống.
Phương pháp huấn luyện tự động không yêu cầu người thực hiện phải có kiến thức sâu về hệ thống IE hay cách viết các luật cho nó Chỉ cần có người hiểu biết về miền và có khả năng lấy mẫu, cùng với việc chú giải các văn bản phù hợp để trích xuất thông tin Các chú giải thường tập trung vào một khía cạnh cụ thể của quá trình xử lý của hệ thống Ví dụ, để huấn luyện một bộ nhận biết tên riêng, chỉ cần chú giải một tập mẫu các văn bản với các tên miền liên quan Tương tự, thành phần đồng tham chiếu có thể được huấn luyện với một tập mẫu chỉ ra các lớp tương đương cho từng văn bản.
Khi mẫu phù hợp được chú giải, thuật toán huấn luyện sẽ được chạy để cung cấp thông tin cho hệ thống phân tích văn bản mới Một phương pháp khác để thu thập dữ liệu huấn luyện là tương tác với người dùng trong quá trình xử lý văn bản, cho phép người dùng xác nhận hoặc điều chỉnh các giả thuyết của hệ thống Các hệ huấn luyện tự động thu hút sự quan tâm của các nhà khoa học hơn, vì phương pháp máy tri thức yêu cầu hiểu biết sâu sắc về tri thức miền, điều này trở thành một hạn chế trong lĩnh vực tin học Dựa trên lý thuyết thống kê, có thể đo lường hiệu quả của các phương pháp này thông qua chất lượng dữ liệu đầu vào, giữ được sự độc lập miền và không phụ thuộc vào các yếu tố không thể đo lường như "kỹ năng của một kỹ sư tri thức".
Không nên đánh giá thấp trực giác và kiến thức của con người Những người ủng hộ phương pháp máy tri thức cho rằng hiệu suất có thể cao hơn nhờ vào các hệ thủ công, đặc biệt khi dữ liệu huấn luyện thưa Điều này có thể dẫn đến tranh cãi giữa hai trường phái về cách tiếp cận nào là ưu việt hơn Thực tế, mỗi phương pháp đều có ưu nhược điểm riêng và cần được áp dụng vào từng tình huống cụ thể để tận dụng tối đa lợi ích của chúng.
Phương pháp máy tri thức hiện nay vẫn chủ yếu dựa vào các hệ thống thủ công để thực hiện các tác vụ trích chọn thông tin Mặc dù các hệ thống huấn luyện tự động đã tiến gần đến khả năng của các hệ thống thủ công trong việc dự đoán các mẫu chưa thấy và cấu trúc các luật một cách tổng quát, nhưng chúng vẫn có những ưu điểm nhỏ nhưng đáng kể Kinh nghiệm cho thấy, với một hệ thống được thiết kế hợp lý, sinh viên đại học có thể viết các luật trích chọn chỉ sau một tuần huấn luyện, cho thấy rằng "sự tinh thông về hệ IE" không phải là rào cản lớn như nhiều người vẫn nghĩ.
Các tiếp cận huấn luyện tự động có những điểm mạnh và yếu tương ứng với phương pháp máy tri thức Thay vì tập trung vào việc sản xuất luật, chúng chú trọng vào việc tạo ra dữ liệu huấn luyện Các thống kê mẫu và luật được tự động dẫn xuất từ dữ liệu huấn luyện và được sử dụng để xử lý dữ liệu mới Nếu ai đó thành thạo trong lĩnh vực chú giải văn bản, các hệ thống có thể được tùy biến mà không cần sự can thiệp của nhà phát triển Nhận biết tên là một tác vụ lý tưởng cho cách tiếp cận huấn luyện tự động, vì việc tìm ra các chú giải để sản xuất dữ liệu huấn luyện lớn rất dễ dàng, do hầu hết mọi người đều có thể nhận biết "tên công ty".
Nhược điểm của phương pháp huấn luyện tự động chủ yếu liên quan đến việc phụ thuộc vào dữ liệu huấn luyện Dữ liệu này có thể không đủ, khó thu thập hoặc tốn kém Đôi khi, việc phát triển hệ thống trích chọn cho các chủ đề với ít ví dụ liên quan trong tập mẫu là rất thách thức Những tình huống này nhấn mạnh vai trò của trực giác con người trong việc thiết kế các quy tắc Nếu các mối quan hệ cần tìm là phức tạp hoặc mang tính kỹ thuật, việc tìm kiếm chú giải trở nên khó khăn, và sản xuất đủ dữ liệu chú giải cho một tập mẫu huấn luyện chất lượng cũng là một thách thức lớn.
Trong các miền đơn giản như tên riêng, luôn tồn tại nhiều trường hợp biên mà các hướng dẫn chú giải cần được phát triển Ví dụ, khi giải thích tên công ty, liệu các tổ chức phi lợi nhuận như trường đại học hay Hội Chữ thập đỏ có thể được coi là "các công ty"? Không có câu trả lời đúng cho những câu hỏi này; điều này cần được quy định và hiểu rõ bởi mọi bộ chú giải Do đó, cần chú trọng vào chất lượng dữ liệu hơn là số lượng Việc có được các hệ thống chất lượng cao thực sự là khó khăn nếu dữ liệu huấn luyện không nhất quán, cho thấy việc thu thập dữ liệu huấn luyện còn tốn kém hơn nhiều so với dự kiến Thực tế, trong nhiều miền, việc thu thập dữ liệu huấn luyện cũng tốn kém về mặt thời gian và nhân sự, chẳng hạn như trong việc soạn thảo các luật.
Việc chuyển đổi đặc tả trong viết luật và huấn luyện tự động là một vấn đề quan trọng Người dùng cuối thường nhận ra rằng họ cần giải pháp cho những vấn đề liên quan và khác biệt sau một vài trải nghiệm Ảnh hưởng của việc thay đổi đặc tả đến các hệ thống máy tri thức và huấn luyện tự động phụ thuộc vào cách thức thay đổi đó Ví dụ, nếu một bộ nhận biết tên được phát triển cho cả chữ hoa và chữ thường, người dùng có thể yêu cầu xử lý văn bản chỉ với một dạng chữ Hệ thống huấn luyện tự động có thể dễ dàng thích ứng bằng cách ánh xạ mẫu huấn luyện thành chữ hoa và chạy lại thuật toán Tuy nhiên, hệ thống dựa trên luật thường cần nhiều kinh nghiệm thực tế và có thể phải viết lại hoàn toàn thuật toán huấn luyện nếu có sự thay đổi lớn Chẳng hạn, nếu đặc tả ban đầu chỉ nhằm trích xuất tên các vùng miền, nhưng sau đó cần nhận biết thêm tên các đỉnh núi, dòng sông và hồ, nhà viết luật có thể tạo ra các luật phụ trợ Trong khi đó, các hệ thống huấn luyện tự động phải đối mặt với thách thức lớn hơn, đó là phải chú giải lại toàn bộ dữ liệu huấn luyện sang đặc tả mới và tiến hành huấn luyện lại, điều này có thể liên quan đến hàng triệu từ.
Không phải tất cả các mô-đun trong hệ thống IE đều cần tuân theo cùng một lược đồ thiết kế Có thể xây dựng một hệ thống với bộ nhận biết tên dựa trên luật học công khi dữ liệu thưa Hình 1 trình bày các trường hợp để lựa chọn giữa hai phương pháp xây dựng hệ IE.
Hệ thống trích chọn thường sử dụng phương pháp máy tri thức khi có sẵn các nguồn tài nguyên ngôn ngữ như bảng từ vựng, và khi cần tăng hiệu suất một chút mà không yêu cầu thay đổi đặc tả nhiều theo thời gian Ngược lại, các hệ huấn luyện tự động phù hợp trong trường hợp không có nguồn tài nguyên ngoài văn bản thô, với dữ liệu huấn luyện dễ dàng và chi phí thấp, trong khi các tác vụ đặc tả ổn định và không cần đạt hiệu suất tối đa.
Bảng 1: Một số tiêu chí cần xem xét để lựa chọn phương pháp xây dựng hệ trích chọn thông tin
Dùng phương pháp máy tri thức khi: Dùng phương pháp học tự động khi:
Các nguồn (ví dụ như bảng từ vựng) là sẵn có
Các nguồn không sẵn có
Có người đưa ra được các luật huấn luyện
Không có người có kĩ năng viết ra luật huấn luyện
Dữ liệu huấn luyện khó thu thập hoặc rất tốn công sức để thu thập
Dữ liệu sẵn có và dễ dàng thu thập
Yêu cầu trích chọn có thể thay đổi theo thời gian
Cần một hệ thống ổn định trong đối với yêu cầu trích chọn thay đổi
Hiệu năng cao nhất có thể Hiệu năng của phương pháp là phù hợp với công việc cần thực hiện
I.2.2 Kiến trúc của hệ trích chọn thông tin
Mặc dù các hệ trích chọn thông tin và phương pháp xây dựng chúng có mục đích khác nhau, nhưng nhìn chung, chúng đều bao gồm các thành phần cơ bản như được mô tả trong hình I.2.
Để thực hiện trích chọn thông tin, có bốn bước chính cần thực hiện, như minh họa trong hình 1 Tuy nhiên, đối với một số hệ thống, chẳng hạn như hệ thống gán nhãn tên (name tagger), có thể chỉ cần dừng lại ở bước thứ hai.
Hình 1: Các bước cơ bản trong một hệ trích chọn thông tin
Phụ thuộc vào yêu cầu thực tế của từng hệ thống mà các bước như trên được cụ thể hóa thành các mô-đun như sau:
Hình 2: Cụ thể hóa các bước cơ bản của một hệ trích chọn thông tin
I.2.2.1 Bước cá thể hóa các thành phần của hệ thống (Tokenization) Đây là bước rất đơn giản đối với ngôn ngữ ở các nước châu Âu, bởi nó chỉ cần thực hiện việc phân tách các từ dựa trên các dấu cách Tuy nhiên điều này thật không dễ dàng đối với một số ngôn ngữ như Trung Quốc hay Việt Nam, bởi không
Part-of-speed tagging Word sense tagging
Phương pháp đánh giá hệ thống
Hệ thống IE truyền thống được đánh giá dựa trên các tiêu chuẩn là precision (độ chính xác) và recall (độ hồi tưởng):
Precision = correct answers/answers produced o số kết quả tìm được và đúng trên tổng số kết quả hệ thống đưa ra (ký hiệu là P)
Recall = correct answers/total possible correct answers o số kết quả tìm được và đúng /tổng số kết quả thực tế đúng (ký hiệu là R)
Trong các hệ thống, sự cân bằng giữa hai đại lượng P và R là rất quan trọng, vì vậy giá trị trọng số trung bình F-measure (ký hiệu là F) thường được áp dụng để đánh giá hiệu suất.
Trong đó là đại lượng biểu thị độ quan trọng trong mối liên hệ giữa P và R
Ví dụ: Trong hệ thống trích chọn tên riêng để nhận biết 4 loại tên riêng là: tên người
(per), tên địa danh (loc), tên tổ chức (org), cụm từ xác định thời gian (time), ta có câu:
Hội chợ thu hút gần 500 gian hàng từ nhiều đơn vị tham dự, đặc biệt có sự góp mặt của nhiều đại sứ quán và doanh nghiệp quốc tế Các quốc gia như Bỉ, Ấn Độ, Israel, Indonesia, Trung Quốc, Thái Lan, Hàn Quốc và Nhật Bản đã tham gia trưng bày và giới thiệu sản phẩm của mình tại sự kiện này.
Hội chợ đã thu hút gần 500 gian hàng từ các đơn vị tham dự, đặc biệt là sự tham gia của nhiều đại sứ quán và doanh nghiệp từ các nước, trong đó có Bỉ, để trưng bày và giới thiệu sản phẩm.
[Ấn Độ], [Israel], [Indonesia],
[Trung Quốc], [Thái Lan], [Hàn Quốc],
Hệ thống đưa ra là:
Hội chợ thu hút gần 500 gian hàng từ các đơn vị tham dự, đặc biệt có sự tham gia của nhiều đại sứ quán và doanh nghiệp từ các nước, trưng bày và giới thiệu sản phẩm đa dạng.
[Bỉ], [Ấn Độ], [Israel],
[Indonesia], [Trung Quốc], [Thái Lan],
[Hàn Quốc], [Nhật Bản]
Trong bài viết này, ta có tổng số nhãn được dự đoán là 9, trong đó số nhãn được dự đoán đúng so với thực tế là 6 Tuy nhiên, số nhãn đúng thực tế chỉ là 8.
Bài toán trích chọn tên riêng
Một trong những bài toán quan trọng trong phân tích từ vựng và cú pháp câu là xác định các đặc trưng từ vựng tương ứng với các mục loại danh từ riêng, như tên địa danh, tên công ty, và cụm từ chỉ thời gian Đây là nội dung chính của bài toán trích chọn tên riêng (NER tagging).
Tên riêng đóng vai trò quan trọng trong hệ trích chọn, vì chúng thường được sử dụng để trích xuất các sự kiện, thuộc tính và mối liên hệ giữa các thực thể Tuy nhiên, hệ thống này gặp khó khăn trong việc phân loại tên riêng, do nhiều tên có thể thuộc nhiều nhóm khác nhau Chẳng hạn, hàng trăm nghìn địa danh trên thế giới chỉ có một số ít được thu thập trong quá trình thiết kế hệ thống, dẫn đến khả năng nhầm lẫn với các mục khác trong từ điển Đối với tên riêng thay đổi theo thời gian, như tên công ty, việc cập nhật và liệt kê trở nên phức tạp, khi hàng ngàn công ty mới ra đời mỗi ngày Thêm vào đó, thứ tự họ, tên và tên đệm khác nhau giữa các quốc gia, và không có quy định nào áp dụng cho cách đặt tên sản phẩm hay chủng loại mới Do đó, việc phân loại tên riêng dễ dẫn đến nhầm lẫn.
Để xây dựng hệ trích chọn tên riêng, có hai phương pháp tiếp cận chính: phương pháp máy tri thức và phương pháp học tự động Phương pháp máy tri thức xây dựng hệ thống các luật thông qua kỹ sư tri thức, trong khi phương pháp học tự động sử dụng các mô hình học thống kê, phương pháp này được biết đến nhiều nhất và là nội dung chính trong chương 2 của luận văn Ngoài ra, còn có nhiều phương pháp khác cũng cho kết quả tốt trong các hệ cụ thể.
Kết luận
Chương này cung cấp cái nhìn tổng quan về bài toán trích chọn thông tin, từ ứng dụng thực tiễn đến các vấn đề xây dựng hệ thống Để phát triển hệ thống trích chọn thông tin, có thể áp dụng hai phương pháp cơ bản: máy tri thức và học tự động, cùng với các tình huống sử dụng phù hợp cho từng phương pháp Bên cạnh đó, chương còn đề cập đến kiến trúc cơ bản của hệ thống trích chọn thông tin và bài toán trích chọn tên riêng, sẽ được thảo luận chi tiết trong luận văn Phần tiếp theo sẽ trình bày các lý thuyết cơ bản về học thống kê, loại phương pháp học tự động đã được đề cập trước đó.
CÁC KIẾN THỨC NỀN TẢNG VỀ HỌC THỐNG KÊ
Mô hình Markov ẩn (HMMs)
Mô hình Markov ẩn được giới thiệu và nghiên cứu vào cuối những năm
1960 và đầu những năm 1970 Cho đến nay nó đươ ̣c ứng du ̣ng nhiều trong nhâ ̣n dạng tiếng nói, tin sinh ho ̣c và xử lý ngôn ngữ tự nhiên
II.1.1 Tổng quan về HMMs
HMMs (Hidden Markov Models) là mô hình máy trạng thái hữu hạn, sử dụng các tham số để biểu diễn xác suất chuyển trạng thái và xác suất sinh dữ liệu quan sát tại mỗi trạng thái.
Mô hình Markov ẩn (HMMs) là một loại máy với hai tiến trình ngẫu nhiên kép, trong đó chỉ có các ký hiệu quan sát được nhìn thấy trong một khoảng thời gian nhất định, trong khi các trạng thái và sự chuyển đổi trạng thái diễn ra ẩn bên trong mô hình Để tìm ra dãy trạng thái phát sinh từ một dãy quan sát, cần phải suy diễn từ các tham số của mô hình và chính dãy quan sát Điều này có nghĩa là sử dụng thông tin đã biết và các quan sát để dự đoán gần đúng dãy trạng thái ẩn, phản ánh vấn đề trong bài toán nhận dạng thực thể sử dụng HMMs Để định nghĩa HMMs một cách chính xác, ta sử dụng các ký hiệu thích hợp.
N – Số trạng thái trong mô hình
M – Số ký hiệu quan sát có thể
T – Độ dài của dãy quan sát (Số ký hiệu trong dãy quan sát)
Các trạng thái được gán số hiệu: 1, 2, , N
Y t biểu thị trạng thái của mô hình tại thời điểm t
V = {v 1, v 2, , v M }: Tập rời rạc các ký hiệu quan sát có thể
Các phân bố xác suất cho trạng thái đầu (initial state probability distribution): = {1, 2, , N }, i là xác suất để trạng thái i được chọn tại thời điểm khởi đầu t=1
Ma trận xác suất chuyển (transition matrix) A = {a ij } thể hiện xác suất xuất hiện trạng thái j tại thời điểm t + 1 khi trạng thái i đã xảy ra tại thời điểm t Giả thiết rằng a ij là độc lập với thời gian t, cho thấy dãy y 1, y 2, v.v là xích Markov rời rạc và thuần nhất, với công thức a ij = P(y t+1 = j|y t = i).
Các hàm đo xác suất phát xạ mẫu (emision functions) B {b j (v k )}, b j (v k ) = P(v k phát sinh tại thời điểm t: y t = j)
x t biểu thị ký hiệu quan sát tại thời điểm t, x t V
Bộ ba = ( A , B , ) được coi là ký pháp gọn của một HMM A , B và được gọi là những tham số (parameters) của mô hình
Hoạt động của Mô hình Ẩn Markov (HMMs) diễn ra qua các giai đoạn thời gian, bắt đầu từ thời điểm t = 1, khi mô hình ở trạng thái Y1 và phát sinh một ký hiệu quan sát x1 Tiếp theo, tại t = 2, mô hình chuyển sang trạng thái Y2 và phát sinh ký hiệu quan sát x2 Quá trình này tiếp tục cho đến thời điểm t = T, nơi mô hình tạo ra dãy quan sát x = (x1, x2, , xT) dựa trên dãy trạng thái y = (y1, y2, , yT) Dãy trạng thái y phụ thuộc vào xác suất chọn trạng thái khởi đầu πi và xác suất chuyển aij, trong khi dãy ký hiệu quan sát xt được phát sinh dựa trên dãy trạng thái y và các hàm xác suất phát xạ mẫu bj(.).
Hình 3: Mô hình Markov ẩn
Từ định nghĩa HMMs ta có các tính chất: a) 1 1; 1,
Có ba vấn đề được đặt ra với HMMs
Vấn đề thứ nhất Cho mô hình = (A, B, ) và một dãy quan sát x = (x 1 , x 2, , x T ) Cần phải tính P( x ) − xác suất phát sinh dãy quan sát x với mô hình
Để tính P(x | λ) theo công thức trực tiếp, độ phức tạp tính toán lên tới O(T.N^T), một mức độ phức tạp rất lớn Với các giá trị nhỏ như N = 5 và T = 100, số phép tính sơ cấp cần thực hiện có thể lên tới khoảng 10^72 Do đó, cần tìm các phương pháp tính P(x | λ) hiệu quả hơn, trong đó phương pháp tính xuôi và tính ngược (Forward - Backward Procedure) là những phương pháp phổ biến Hai phương pháp này có độ phức tạp khoảng O(N^2 T), thấp hơn nhiều so với O(T.N^T) của phương pháp trực tiếp.
Vấn đề thứ hai liên quan đến mô hình = (A, B, ) và một dãy quan sát x = (x 1, x 2, , x T) Nhiệm vụ là chọn một dãy trạng thái y = (y 1, y 2, , y T) sao cho xác suất P(x, y | ) - xác suất mô hình phát sinh dãy quan sát x và chuyển trạng thái theo dãy y - đạt giá trị cực đại.
Để tối đa hóa xác suất P(x, y | λ), chúng ta cần tìm dãy trạng thái y = (y1, y2, , yT) Giải thuật Viterbi là một phương pháp nổi tiếng để giải quyết vấn đề này, hoạt động theo cách lưu giữ các dãy trạng thái tốt nhất tại mỗi bước t Thuật toán này đánh giá và tìm ra dãy trạng thái tối ưu nhằm cực đại hóa xác suất P(x1, x2, , xt+1, y1, y2, , yt+1 | λ) Kỹ thuật lập trình động có thể được áp dụng để thực hiện giải thuật Viterbi, giúp hình dung mô hình của thuật toán một cách rõ ràng.
Xét một đồ thị có hướng và không có chu trình, thuật toán Viterbi tìm đường đi dài nhất từ một đỉnh ở hàng 1 đến một đỉnh ở hàng T bằng cách ghi nhận các số hiệu cột của những nút đi qua, tạo thành dãy trạng thái y = (y1, y2, , yT) Trọng số của đường đi này được tính bằng ln(P(x, y | λ)) Độ phức tạp tính toán của thuật toán Viterbi là O(N²T), cho phép tối ưu hóa theo từng lớp (critical path).
Hình 4: Dạng đồ thị của thuật toán Viterbi
Vấn đề thứ ba Cho mô hình = (A, B, ) và một dãy quan sát x = (x 1, x 2,
, x T ) Cần phải hiệu chỉnh các tham số của mô hình để cực đại hoá tiêu chuẩn tối ưu P( x )
Vấn đề huấn luyện mô hình Markov ẩn (HMMs) liên quan đến việc mã hóa dãy quan sát để có thể nhận diện các dãy quan sát tương tự trong tương lai Khác với các bài toán trước có giải thuật rõ ràng, bài toán huấn luyện HMMs phức tạp hơn do tính chất cảm tính của nó Câu hỏi đặt ra là làm thế nào để xác định sự khác biệt hay tương đồng giữa hai dãy quan sát, và nếu có sự tương đồng thì ở mức độ nào Do đó, tiêu chuẩn và quy trình huấn luyện sẽ phụ thuộc vào từng vấn đề cụ thể.
Phương pháp huấn luyện mô hình ẩn Markov (HMM) chủ yếu dựa vào việc tối ưu hóa các tham số để đạt được tính tương thích cao với dãy huấn luyện Để thực hiện điều này, cần tìm các tham số xác suất \( \lambda = (A, B, \pi) \) sao cho xác suất P(x | λ) đạt giá trị tối thiểu, tức là P(x | λ) ≥ P(x | λ) với dãy huấn luyện x Quá trình này bao gồm việc điều chỉnh các tham số xác suất cho đến khi đạt đến điểm giới hạn, đảm bảo mô hình có khả năng dự đoán tốt nhất cho dữ liệu huấn luyện.
Ta có thể sử dụng giải thuật ước lượng Baum-Welch để hiệu chỉnh lại các tham số tại mỗi bước huấn luyện
II.1.2 Thuật toán gán nhãn triagram HMMs
Trong bài viết này, chúng tôi sẽ trình bày một trường hợp đặc biệt của mô hình ẩn Markov (HMMs) với ứng dụng trong thuật toán gán nhãn triagram Trong thuật toán này, mỗi triagram của nhãn và mỗi cặp nhãn/từ đều có các tham số tương ứng Cụ thể, tham số tương ứng với triagram (x, y, z) được ký hiệu là α x,y,z, trong khi tham số cho cặp nhãn/từ (t, w) là α t,w Phương pháp phổ biến sử dụng các tham số này để ước lượng xác suất điều kiện, với α x,y,z = log(P(z | x, y)) và α w,t = log(P(w | t)).
Chuỗi từ được ký hiệu là [w1, w2, , wn] và chuỗi nhãn là [t1, t2, , tn] Trong thuật toán gán nhãn triagram, điểm số của cặp nhãn t[1:n] và chuỗi từ w[1:n] được tính bằng tổng các tham số xác suất điều kiện Khi các tham số này là xác suất điều kiện, điểm số sẽ được tính theo log của xác suất đồng thời P(w[1:n], t[1:n]) Thuật toán Viterbi được sử dụng để tìm chuỗi gán nhãn có điểm số cao nhất Để thay thế ước lượng tham số theo cực đại hóa độ đo likelihood, một thuật toán được phát biểu với đầu vào là tập huấn luyện gồm n câu đã được gán nhãn, trong đó câu thứ i có độ dài ni và các mẫu được ký hiệu là (wi[1:n], ti[1:n]) với i = 1…n.
Thuật toán huấn luyện gồm các bước sau:
Chọn một tham số T là số lần lặp trên tập huấn luyện
Khởi tạo tất cả các tham số α x,y,z và α t,w bằng 0
Sử dụng thuật toán Viterbi, chúng ta tìm chuỗi nhãn tốt nhất cho câu i trong w[1:i] với các tham số hiện tại, giả sử là [1:n] ni z Đối với mỗi triagram nhãn (x, y, z), nếu c1 là số lần xuất hiện trong in t[1:i] và c2 là số lần xuất hiện trong [1:n] ni z, thì khi c1 ≠ c2, ta cập nhật tham số theo công thức: αx,y,z = αx,y,z + c1 – c2 Ngoài ra, với mỗi cặp nhãn/từ (t, w) xuất hiện c1 lần trong
( i n w [ 1 : i ] , i n t [ 1 : i ] ) và c 2 lần xuất hiện trong ( i n w [ 1 : i ] , [ 1 : ] n i z ) Nếu c 1 ≠ c 2, ta sẽ cập nhật tham số: α t,w = α t,w + c 1 – c 2
Trong ví dụ này, một chuỗi thứ i được gán nhãn trong dữ liệu huấn luyện là: "the/D man/N saw/V the/D dog/N" Theo tham số hiện tại, chuỗi có điểm cao nhất được xác định là: "the/D man/N saw/N the/D dog/N".
Khi đó α D,N,V , α saw/V , α N,D,V , α V,D,N được tăng lên 1, α D, N, N , α N,N,D , α N,D,N , α saw/N bị giảm đi 1,…
Các tham số của thuộc tính bị bỏ qua sẽ tăng lên 1, trong khi tham số của thuộc tính không đúng sẽ giảm đi.
1 Chú ý rằng i n t [ 1 : i ] = [ 1 : ] n i z có nghĩa là chuỗi nhãn đã được gán đúng, và khi đó giá trị của các tham số là không đổi
II.1.3 Một số hạn chế của HMMs
Conditional Random Field trong bài toán trích chọn thông tin
Dữ liệu quan hệ có hai đặc trưng cơ bản: thứ nhất là các phụ thuộc thống kê giữa các thực thể cần mô hình hóa, và thứ hai là mỗi thực thể thường có một tập các đặc trưng phong phú cần thiết cho quá trình phân loại Mô hình đồ thị là một dạng đơn giản thường được sử dụng để biểu diễn phụ thuộc giữa các thực thể, thường dùng để biểu diễn các phân phối xác suất đồng thời p(y, x), trong đó biến y thể hiện các thuộc tính của thực thể cần dự đoán, còn biến đầu vào x đại diện cho tri thức dạng chuỗi về các thực thể Tuy nhiên, việc mô hình hóa các phân phối đồng thời trở nên khó khăn khi cần biểu diễn các đặc trưng cục bộ phức tạp trong dữ liệu quan hệ, dẫn đến mô hình trở nên phức tạp và khó xử lý Nếu bỏ qua các đặc trưng này, hiệu năng của mô hình sẽ bị giảm sút.
Giải pháp cho vấn đề là sử dụng xác suất điều kiện p(y|x) thay vì xác suất đồng thời Conditional Random Fields (CRFs), như được Lafferty và các đồng tác giả đề cập, là một phân phối điều kiện p(y|x) với cấu trúc đồ thị kết hợp Mô hình này cho phép các điều kiện giữa các biến đầu vào x không cần phải biểu diễn một cách tường minh, từ đó sử dụng các đặc trưng toàn cục và phức tạp cho đầu vào Trong xử lý ngôn ngữ tự nhiên, các đặc trưng như từ liền kê, bigrams, tiền tố, hậu tố, từ viết hoa và thành phần trong từ điển chuyên ngành được áp dụng Hiện nay, CRFs đã được áp dụng thành công trong nhiều lĩnh vực như xử lý văn bản, tin sinh (bioinformatics) và thị giác máy tính.
Một số qui ước kí hiệu:
Chữ viết hoa X, Y, Z,…kí hiê ̣u các biến ngẫu nhiên
Chữ thường đậm x , y , t , s ,…kí hiệu các vector như vector biểu diễn chuỗi các dữ liê ̣u quan sát, vector biểu diễn chuỗi các nhãn,…
Chữ viết thường in đậm và có chỉ số là ký hiệu của một thành phần trong vector Ví dụ, x_i đại diện cho thành phần tại vị trí i trong vector x.
Chữ viết thường không đậm như x, y,… là kí hiê ̣u các giá trị đơn như một dữ liê ̣u quan sát hay một tra ̣ng thái
S − Tâ ̣p hữu ha ̣n các tra ̣ng thái của mô ̣t mô hình CRF
O − Tập các dữ liệu quan sát được II.2.1 Từ HMMs đến CRFs
Ta có thể viết lại (II.1.1) như sau:
(,) là các tham số của phân phối với:
xi = log P(y t =i| x , ) = b i là xác suất để mô hình ở trạng thái i tại thời điểm t khi phát sinh dãy quan sát x = (x 1 , x 2, , x T )
Xác suất chuyển trạng thái trong mô hình được biểu diễn bằng công thức ij = log P(y t =i, y t+1=j| x , ), trong đó a ij là xác suất mô hình đang ở trạng thái i tại thời điểm t và chuyển sang trạng thái j tại thời điểm t + 1, dựa trên dãy quan sát x = (x 1, x 2, , x T ).
Z là thừa số chuẩn hóa để đảm bảo các tổng các phân phối luôn bằng 1
1{k=p} xác định một hàm chỉ định (indicator function) của x, hàm nhận giá trị 1 khi k=p và nhận giá trị 0 trong trường hợp ngược lại
Có thể tổng quát hóa (II.2.1) bằng cách đưa ra khái niệm hàm đặc trưng, với mỗi hàm có dạng f k (y t , y t-1, x t ) Để đồng nhất với (II.2.1), sử dụng đặc trưng f ij (y, y’, x) = 1 {y=i} 1{y’=j} cho mỗi cặp chuyển trạng thái (i, j) và đặc trưng f io (y, y’, x) = 1 {y=i} 1 {x=o} cho mỗi cặp trạng thái quan sát (i, o) Như vậy, (II.2.1) có thể được viết lại như sau:
Cuối cùng ta viết phân phối điều kiện p(y|x) từ HMMs như sau:
Phân phối điều kiện này là một CRF đặc biệt, chỉ sử dụng các đặc trưng liên quan đến từ hiện thời Tuy nhiên, trong nhiều trường hợp, CRFs thường áp dụng các đặc trưng phong phú hơn từ dữ liệu đầu vào, bao gồm tiền tố, hậu tố của từ hiện thời, và các thực thể xung quanh từ.
Kí hiệu X là biến ngẫu nhiên chứa chuỗi dữ liệu cần gán nhãn, trong khi Y là biến ngẫu nhiên tương ứng với chuỗi nhãn Mỗi thành phần của chuỗi dữ liệu X sẽ được liên kết với một nhãn cụ thể từ chuỗi Y.
Y i của Y là một biến ngẫu nhiên nhận giá trị trong tập hữu hạn các trạ ng thái S
Trong bài toán nhận biết các loại thực thể, X có thể nhận giá trị là các câu trong ngôn ngữ tự nhiên Y là một chuỗi ngẫu nhiên các tên thực thể tương ứng với các câu này, trong đó mỗi thành phần Y_i của Y có miền giá trị là tập tất cả các nhãn tên thực thể như tên người, tên địa danh, v.v.
Cho một đồ thị vô hướng không có chu trình G=(V, E), trong đó V là tập các đỉnh và E là tập các cạnh nối các đỉnh Các đỉnh V biểu diễn các thành phần của biến ngẫu nhiên Y, sao cho tồn tại ánh xạ một-một giữa một đỉnh và một thành phần của Y với v ∈ Y Ta nói (Y|X) là một trường ngẫu nhiên điều kiện.
(Conditional Random Field - CRF) khi vớ i điều kiê ̣n X, các biến ngẫu nhiên Y v tuân theo tính chất Markov đối với đồ thi ̣ G:
P(Y_v | X, Y_ω, ω ≠ v) = P(Y_v | X, Y_ω, ω ∈ N(v)) (II.2.4) Ở đây, N(v) là tập hợp tất cả các đỉnh kề với v Điều này cho thấy rằng một CRF (Conditional Random Field) là một trường ngẫu nhiên phụ thuộc hoàn toàn vào X Trong các bài toán xử lý dữ liệu dạng chuỗi, G đơn giản chỉ là dạng chuỗi G = (V = {1, 2,…, m}, E = {(i, i+1)}).
Kí hiệu X=(X 1, X 2,…, X n ), Y=(Y 1, Y 2, , Y n ) Mô hình đồ thi ̣ cho CRF có dạng:
Hình 5: Đồ thị vô hướng mô tả CRF
Gọi C là tập hợp tất cả các đồ thị con đầy đủ của đồ thị G, thể hiện cấu trúc của một CRF Kết quả của Hammerley - Clifford được áp dụng cho các trường hợp này.
Y 2 Y n với điều kiê ̣n biết chuỗi dữ liê ̣u quan sát , bằng tích của các hàm tiềm năng như sau :
Trong các bài toán xử lý dữ liệu dạng chuỗi, cấu trúc của một CRF được biểu diễn dưới dạng đường thẳng, do đó tập C cần phải là hợp của E và
V Trong đó , E là tập các cạnh của đồ thị G và V là tập các đỉnh của G, hay nói cách khác đồ thị con A hoặc chỉ gồm mô ̣t đỉnh hoă ̣c chỉ gồm mô ̣t ca ̣nh của G
Bằng cách áp du ̣ng nguyên lý cực đa ̣i hóa Entropy , Lafferty xác đi ̣nh hàm tiềm năng của mô ̣t CRF có da ̣ng mô ̣t hàm mũ:
x x (II.2.6) Ở đây f k là một thuộc tính của chuỗi dữ liệu quan sát và k là trọng số chỉ mức đô ̣ biểu đa ̣t thông tin của thuô ̣c tính f k
Tùy thuộc vào A, đồ thị con có thể bao gồm một đỉnh hoặc một cạnh của G, với hai loại thuộc tính chính là thuộc tính chuyển (ký hiệu t) và thuộc tính trạng thái (ký hiệu s) Bằng cách thay thế các hàm tiềm năng vào công thức (3.2) và bổ sung một thừa số chuẩn hóa Z(x), chúng ta đảm bảo rằng tổng xác suất của tất cả các chuỗi nhãn tương ứng với một chuỗi dữ liệu quan sát luôn bằng 1.
Trong bài viết này, chúng ta sẽ xem xét mối quan hệ giữa chuỗi dữ liệu quan sát x và chuỗi trạng thái tương ứng y Cụ thể, t_k đại diện cho thuộc tính của toàn bộ chuỗi quan sát và các trạng thái tại vị trí i-1, i trong chuỗi trạng thái Đồng thời, s_k thể hiện thuộc tính của toàn bộ chuỗi quan sát và trạng thái tại vị trí i trong chuỗi trạng thái Ví dụ, s_i =
1 nếu x i = “Bill” và y i =I_PER ̣c la ̣i
Thừa số chuẩn hóa Z( x ) được tính như sau:
Perceptron trong bài toán trích chọn thông tin
Thuật toán perceptron được phát triển bởi Rosenblatt vào năm 1958, cùng với phiên bản vote perceptron hay average perceptron được giới thiệu bởi Freund & Schapire trong năm 1999, nhằm cạnh tranh với các thuật toán như support vector machine Mặc dù các thuật toán này đã được áp dụng rộng rãi trong các bài toán phân loại, nhưng chúng vẫn chưa được sử dụng phổ biến trong các nhiệm vụ xử lý ngôn ngữ tự nhiên như gán nhãn hay phân loại từ.
Thuật toán perceptron và các biến thể của nó được mô tả trong phần này, tập trung vào bài toán gán nhãn Thuật toán này dựa trên giải mã Viterbi của các mẫu huấn luyện, kết hợp với việc cập nhật giá trị tham số một cách đơn giản Micheal Collins đã trình bày kết quả cho bài toán gán nhãn phân loại nhãn (POS tagging) và gán nhãn phân loại cụm danh từ (NP chunking), cho thấy thuật toán đạt hiệu suất cao hơn so với thuật toán gán nhãn Maximum Entropy, với việc giảm 11.9% lỗi cho gán nhãn phân loại và 5.1% lỗi cho NP chunking Mặc dù phần này chủ yếu tập trung vào bài toán gán nhãn, nhưng mô hình và thuật toán được trình bày có thể áp dụng cho nhiều bài toán khác sử dụng thuật toán kiểu Viterbi trong giải mã, như Probabilistic Context-Free Grammars và các mô hình phân loại từ.
Perceptron là một mạng nơron đơn giản, được giới thiệu lần đầu vào năm 1958 bởi Rosenblatt và các cộng sự Họ đã phát triển một ứng dụng cho bài toán nhận diện mẫu, đánh dấu bước khởi đầu cho sự phát triển của các ứng dụng mạng nơron sau này.
II.3.1.1 Kiến trúc của một perceptron
Một vectơ vô hướng đầu vào p nhân với một trọng số vô hướng W được
Giá trị đầu vào của mạng perceptron được tính bằng cách cộng giá trị n với một giá trị bias b Tổng giá trị này, thường được gọi là đầu vào của mạng (net input), sau đó sẽ được đưa qua hàm chuyển (hàm hardlim) để tạo ra kết quả a Kết quả a chính là đầu ra nơron vô hướng của mạng perceptron.
Cặp (W, b) được gọi là một vectơ đoán nhận (sử dụng vectơ đoán nhận này để thực hiện việc tính kết quả đầu ra của mạng)
Trong đó hàm hardlim được định nghĩa như sau: a p
Hardlim Limit Layer a = hardlim (Wp + b)
Luật học của perceptron là một dạng của luật học có giám sát Trong đó luật học được cung cấp một tập các cặp:
Trong mạng nơ-ron, x_i là đầu vào và y_i là đầu ra mong muốn Mỗi đầu vào được đưa vào mạng sẽ tạo ra một giá trị đầu ra, và giá trị này sẽ được so sánh với giá trị mong muốn Dựa trên kết quả so sánh, luật học sẽ điều chỉnh trọng số (W) và bias (b) của mạng, nhằm tối ưu hóa để giá trị đầu ra ngày càng gần với đầu ra mong muốn.
Đầu ra của mạng tương ứng với đầu vào \( y_i \) được biểu diễn là \( \hat{y}_i \) Số lỗi của mạng được xác định bằng \( e = y_i - \hat{y}_i \) Giá trị của trọng số \( w \) sẽ được cập nhật theo công thức: \( w_{new} = w_{old} + e_i = w_{old} + (y_i - \hat{y}_i)x_i \) và \( b_{new} = b_{old} + e \) Lưu ý rằng khi \( e = 0 \), tức là không có lỗi xảy ra, thì giá trị của trọng số \( w \) và bias \( b \) sẽ được giữ nguyên.
Quá trình này thực hiện tuần tự từng cặp {x i , y i } và lặp lại cho đến khi đạt được vectơ tham số chính xác cho mọi x i.
Nghiên cứu đã chỉ ra rằng, khi dữ liệu được phân tách một cách tuyến tính, thuật toán perceptron chỉ có thể gặp một số lượng hạn chế các lỗi Do đó, quá trình huấn luyện lặp đi lặp lại trên tập huấn luyện sẽ dẫn đến việc tìm ra một vectơ phân lớp chính xác cho tất cả các mẫu huấn luyện.
II.3.2 Vectơ đặc trưng cục bộ và toàn cục
Phần này trình bày các biểu diễn vector đặc trưng phổ biến trong mô hình gán nhãn Maximum Entropy và thuật toán perceptron.
Mô hình Maximum Entropy được áp dụng trong bài toán gán nhãn như trình bày trong nghiên cứu của Ratnaparkhi 96 và các tài liệu khác Vấn đề gán nhãn được phân tách thành chuỗi quyết định từ trái sang phải, trong đó mỗi quyết định được hỗ trợ bởi một “history” – ngữ cảnh liên quan Ngữ cảnh thường bao gồm hai nhãn đã gán trước (t i-2, t i-1), chuỗi từ cần gán nhãn (w [1:n]), và từ hiện tại đang quan sát (từ thứ i trong chuỗi) Tập hợp tất cả các ngữ cảnh có thể được ký hiệu là H Mô hình Maximum Entropy sử dụng biểu diễn vectơ đặc trưng cho cặp ngữ cảnh-nhãn để thực hiện việc gán nhãn.
Hàm ánh xạ là công cụ chuyển đổi trực tiếp mỗi cặp ngữ cảnh-nhãn thành vectơ đặc trưng d chiều Mỗi thành phần s (h,t) với s = 1…d có thể được xác định bởi một hàm tùy ý tương ứng với cặp (h,t).
Mỗi đặc trưng s có thể được xem như một hàm chỉ định, nhận giá trị 0 hoặc 1, như đã nêu trong bài báo của Ratnaparkhi (1996) Ví dụ, khi từ hiện thời w i là "the" và t=DT, điều này minh họa cho việc áp dụng hàm chỉ định trong ngữ cảnh ngôn ngữ.
Các đặc trưng tương tự có thể được xác định cho mỗi cặp từ hoặc nhãn trong dữ liệu huấn luyện Ngoài ra, một kiểu đặc trưng khác có thể áp dụng cho mỗi trigram của các nhãn.
1 nếu từ hiện thời wi là the và t=DT
0 trong trường hợp ngược lại
Các đặc trưng tương tự có thể được xác định cho tất cả các trigram của các nhãn trong dữ liệu huấn luyện Một ưu điểm của mô hình này là tính tự do trong việc định nghĩa các đặc trưng, trong khi nhiều đặc trưng không thể đưa vào mô hình sinh được Để tiện lợi, chúng ta sử dụng ký hiệu vectơ các cặp từ/nhãn là (w [1:n], t [1:n]), trong đó w [1:n] là chuỗi n từ và t [1:n] là chuỗi nhãn đầu vào Chúng ta sử dụng biểu diễn “toàn cục” (global presentation) cho w và biểu diễn “cục bộ” (local presentation) cho Các biểu diễn toàn cục trong bài báo này được hiểu là các hàm đơn giản của các đặc trưng cục bộ.
Trong đó, h i = Mỗi đặc trưng toàn cục s (w [1:n] , t [1:n]) đơn giản là tổng giá trị của các biểu diễn cục bộ trên tất cả các cặp ngữ cảnh/nhãn trong (w [1:n] , t [1:n]) Nếu các đặc trưng cục bộ là các hàm chỉ định (chỉ nhận giá trị 0 hoặc 1), thì thuộc tính toàn cục chính là một hàm đếm.
1000 được định nghĩa như trên, thì 1000(w [1:n], t [1:n]) chính là số lần xuất hiện của từ the được gán nhãn DT xuất hiện trong (w [1:n] , t [1:n] )
II.3.3 Thuật toán perceptron cho bài toán gán nhãn dữ liệu dạng chuỗi
Kết luận
Chương này đã trình bày một số phương pháp học máy thống kê như HMMs, CRFs và perceptron, được ứng dụng rộng rãi trong các hệ thống trích chọn tên riêng cho văn bản tiếng Anh, Đức, Trung Quốc, và nhiều ngôn ngữ khác Tại Việt Nam, một số hệ thống trích chọn tên riêng đã được phát triển bằng các phương pháp CRF, MEMM, và SVM Tuy nhiên, phương pháp perceptron vẫn chưa được đề cập trong các hệ thống này Phần tiếp theo của luận văn sẽ giới thiệu hệ thống trích chọn tên riêng cho văn bản tiếng Việt dựa trên mô hình CRF và perceptron.
XÂY DỰNG HỆ THỐNG TRÍCH CHỌN TÊN RIÊNG CHO VĂN BẢN TIẾNG VIỆT
Môi trươ ̀ ng thực nghiê ̣m
Máy Pentium 1.73GHz, chip 798 MHz, Ram 448 MB
Hệ thống trích chọn tên riêng cho tiếng Việt của tôi được xây dựng trên nền tảng Framework CRF++, một công cụ mã nguồn mở do Taku Kodu phát triển CRF++ được thiết kế đặc biệt cho các bài toán gán nhãn dữ liệu dạng chuỗi, bao gồm trích chọn tên riêng, trích chọn thông tin và Text chunking Công cụ này hỗ trợ thực hiện với cả hai thuật toán CRF và perceptron, mang lại hiệu quả cao trong việc xử lý ngôn ngữ tự nhiên.
Dữ liê ̣u cho thực nghiê ̣m gồm 260 bài báo lĩnh vực kinh doanh (khoảng gần
6400 câu) lấy từ nguồn http://www.vnexpress.net
Dữ liệu ban đầu được xử lý để loại bỏ các thẻ HTML và chuyển đổi từ mã hóa UTF-8 sang tiếng Việt không dấu theo dạng Telex Sau đó, dữ liệu được phân tách từ và gán nhãn bằng tay nhằm phục vụ cho quá trình thực nghiệm.
Các tham số huấn luyện và đánh giá thực nghiệm
Các bước để gán nhãn cho một trang Web tiếng Việt được minh ho ̣a như hình vẽ dưới đây
Hình 11: Cấu trúc hê ̣ thống trích chọn tên riêng
III.3 Các tham số huấn luyện và đánh giá thực nghiệm
III.3.1 Huấn luyện Dùng lệnh crf_learn
Cú pháp: % crf_learn template_file train_file model_file
- Template_file: file mô tả các mẫu của thẻ
- Train_file: file dùng để huấn luyện
Input (text) Tiền xử lý
Lựa cho ̣n thuô ̣c tính
CRF++ framework Khôi phu ̣c + tagging
- Model_file: file mô hình huấn luyện
III.3.1.1 Các tham số huấn luyện
Mô ̣t số tùy cho ̣n trong CRF++ framework cho quá trình huấn luyê ̣n:
Tham số -a được dùng để lựa chọn thuật toán huấn luyện Tham số này có
Nếu tham số -a là CRF-L1 hoặc CRF-L2 ta có các tham số:
Tham số Giá trị Ý nghĩa
Tham số này điều chỉnh độ bất cân đối của dữ liệu, và việc thiết lập giá trị tối ưu phụ thuộc vào dạng phân bố của dữ liệu Giá trị tối ưu có thể được xác định thông qua các phương pháp thủ công hoặc bằng cách sử dụng kỹ thuật lựa chọn mô hình như cross-validation.
Tham số thiết lập ngưỡng cho các đặc trưng trong CRF++ yêu cầu các đặc trưng xuất hiện ít nhất NUM lần trong dữ liệu huấn luyện Khi áp dụng CRF++ cho tập dữ liệu lớn, số lượng đặc trưng có thể lên tới hàng triệu, do đó việc sử dụng tham số NUM trở nên cần thiết.
Nếu PC có nhiều CPU, khi đó ta có thể thực hiện việc huấn luyện nhanh hơn bằng cách sử dụng đa luồng NUM là số luồng
Bảng 2: Các tham số trong quá trình huấn luyện đối với thuật toán CRF
Nếu tham số -a là MIRA thì ta có các tham số tiếp theo:
Tham số Giá trị Ý nghĩa
Tham số này có ý nghĩa tương tự như tham số -c trong thuật toán CRF Khi giá trị C lớn, thuật toán có xu hướng overfit với dữ liệu huấn luyện.
Thiết lập độ co của dữ liệu là quá trình loại bỏ những câu huấn luyện không được sử dụng để cập nhật giá trị của vectơ tham số sau một số lần nhất định Khi một câu huấn luyện không còn được áp dụng, nó sẽ không còn được xem là một phần của dữ liệu huấn luyện Quá trình này được gọi là sự co lại của dữ liệu (shrinking).
Bảng 3: Các tham số trong quá trình huấn luyê ̣n đối với thuật toán MIRA
Hệ thống trích chọn tên riêng có thể được đánh giá ở hai mức độ: nhãn và cụm từ Để làm rõ hơn về vấn đề này, chúng ta có thể xem xét một ví dụ cụ thể.
Hệ thống gán nhãn cụm từ "Phan Văn Khải" đạt độ chính xác 2/3, vì nó gán đúng 2 trong 3 nhãn Tuy nhiên, khi xét ở mức độ cụm từ, cụm này cần được đánh dấu là tên người, và nhãn tương ứng phải là "B _PER I_PER I_PER" Độ chính xác ở mức độ cụm từ chỉ đạt 0/1, do hệ thống không đánh dấu đúng cụm nào, mặc dù có một cụm tên thực thể.
III.3.1.2 Phương pháp “10-fold cross validation”
Hệ thống thử nghiệm sử dụng phương pháp "10-fold cross validation", trong đó dữ liệu được chia thành 10 phần bằng nhau Mỗi lần, 9 phần được sử dụng để huấn luyện và 1 phần còn lại để kiểm tra Kết quả sau 10 lần thực nghiệm được ghi lại và đánh giá tổng thể.
III.3.2 Kiểm tra Sử dụng lệnh crf_test
Cú pháp: % crf_test -m model_file test_files
- file model_file: chính là file model của lệnh huấn luyện
- test_files: file dùng để chạy kiểm tra kết quả huấn luyện
Lư ̣a cho ̣n các thuô ̣c tính
Lựa chọn các thuộc tính dữ liệu huấn luyện là nhiệm vụ quan trọng nhất, quyết định chất lượng của hệ thống trích chọn tên riêng Các thuộc tính được lựa chọn càng tinh tế thì độ chính xác của hệ thống càng tăng Do tiếng Việt thiếu thông tin ngữ pháp (POS) và các nguồn tài nguyên tra cứu, để đạt được độ chính xác gần với các hệ thống xây dựng cho tiếng Anh, cần lựa chọn các thuộc tính một cách cẩn thận và hợp lý.
Các thuộc tính tại vị trí i trong chuỗi dữ liệu quan sát bao gồm thông tin ngữ cảnh và nhãn tương ứng Việc lựa chọn các thuộc tính thực chất liên quan đến việc xác định các mẫu vị từ ngữ cảnh, thể hiện thông tin quan trọng tại bất kỳ vị trí nào trong chuỗi dữ liệu Áp dụng các mẫu ngữ cảnh tại vị trí i sẽ cung cấp thông tin ngữ cảnh tương ứng Mỗi thông tin ngữ cảnh kết hợp với nhãn tại vị trí đó sẽ tạo ra một thuộc tính của chuỗi dữ liệu quan sát Khi đã có các mẫu ngữ cảnh, chúng ta có thể tự động rút ra hàng nghìn thuộc tính từ tập dữ liệu huấn luyện.
Các thuộc tính được nêu trong các file mẫu và file huấn luyện, trong đó file mẫu mô tả các ngữ cảnh về từ vựng, còn file huấn luyện cung cấp thông tin về dữ liệu được sử dụng để đào tạo.
Mỗi file huấn luyện chứa nhiều token, với mỗi token được mô tả trên một dòng, và số cột trên mỗi dòng là giống nhau Trong các bài toán khác nhau, định nghĩa về token cũng khác nhau; ví dụ, trong bài toán trích chọn tên riêng, các token được hiểu như các từ Các token liên tiếp tạo thành một chuỗi quan sát, và dòng trắng trong file huấn luyện tương ứng với việc kết thúc một chuỗi quan sát.
Với mỗi dòng, cột đầu tiên luôn là nội dung của token, cột cuối cùng là nhãn đúng của token
Trong hệ thống trích chọn tên riêng mà tôi xây dựng, mỗi dòng mô tả token bao gồm ba cột: cột đầu tiên chứa nội dung của từ, cột thứ hai mô tả thuộc tính chính tả của từ (orthographic), và cột thứ ba là nhãn đúng của từ.
Bài viết này trình bày các thuộc tính và ý nghĩa của chúng liên quan đến định dạng văn bản Các thuộc tính bao gồm "all_cap" (wf:ac) chỉ định rằng tất cả đều là chữ cái viết hoa, ví dụ như TCVN; "all_cap_and_digit" (wf:acd) cho phép cả chữ cái viết hoa và chữ số như 12ABC; "all_digit" (wf:ad) chỉ chứa số như 123; và "alphanumeric" (wf:alm) chứa cả chữ cái và số như tp23 Ngoài ra, "all_cap_and_hyphen" (wf:cah) kết hợp chữ cái viết hoa và dấu gạch ngang như BC-VT Các thuộc tính khác như "contain_comma_sign" (wf:ccs) chứa dấu phẩy (12,21), "contain_dot_sign" (wf:cds) chứa dấu chấm (21.32), "contain_colon_sign" (wf:cls) có dấu hai chấm (12:21:15), và "contain_slash_sign" (wf:css) có dấu gạch chéo (QD123/BGDDT/07) Các định dạng khác bao gồm "initial_cap" (wf:ic) với chữ cái đầu là chữ hoa như Nguyễn, "initial_cap_and_dot_sign" (wf:icds) có chữ cái đầu hoa và dấu chấm như Tp.Hồ Chí Minh, "initial_cap_and_hyphen" (wf:ich) có chữ cái đầu hoa và dấu gạch ngang như Bưu chính - Viễn thông, "all_lower_case" (wf:lower) chỉ chứa chữ thường, và "all_digit_and_hyphen" (wf:adh) chứa số và dấu gạch ngang như 12-21-2007.
Bảng 4: Các thuộc tính chính tả của từ
Lamingo wf:ic B-loc ĐạiLải wf:ic I-loc Resort wf:ic I-loc được O O quyhoạch O O bởi O O
Côngty wf:ic B-org Kiến wf:ic I-org trúc wf:lower I-org ViệtNam wf:ic I-org và O O
Trungtâm wf:ic B-org Pháttriển wf:ic I-org vùng wf:lower I-org Sena wf:ic I-org
Hình 12: Mô tả một chuỗi quan sát trong file huấn luyện
Có hai loại: mẫu đơn (Unigram), mẫu kép (Bigram)
Loại mẫu đơn : mẫu này được bắt đầu bằng chữ cái „U‟ Mẫu đơn có dạng
%x[row,col], mẫu này được dùng để xác định một token trong dữ liệu đầu vào
Row đại diện cho vị trí tương đối của token được quan sát tại thời điểm hiện tại, trong khi col phản ánh vị trí cố định trong file huấn luyện.
Với mẫu U01:%x[0,1], Bộ Bưu chính – Viễn thông đã quyết định cho phép thêm 2 doanh nghiệp tham gia cung cấp dịch vụ viễn thông từ tháng 1/2007.
Bộ wf:ic wf:iorg B-org Bưu chính – Viễn thông wf:icah wf:iorg I-org vừa O O