1. Trang chủ
  2. » Luận Văn - Báo Cáo

nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima

50 535 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Nghiên cứu và phát triển các công cụ xử lý tiếng Việt trên UIMA
Tác giả Nguyễn Đức Nam
Người hướng dẫn TS. Phạm Bảo Sơn
Trường học Đại Học Công Nghệ - Đại Học Quốc Gia Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2010
Thành phố Hà Nội
Định dạng
Số trang 50
Dung lượng 1,77 MB

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

Nội dung

vi Danh sách thuật ngữ AE Analysis Engine: các máy phân tích dùng trong xử lý Annotator: các chú giải dùng để phân tích tài liệu Aggregate AE Aggregate Analysis Engine: máy phân tích tổ

Trang 1

ĐẠI HỌC CÔNG NGHỆ ĐẠI HỌC QUỐC GIA HÀ NỘI



Nguyễn Đức Nam

Nghiên cứu và phát triển các công cụ xử lý

tiếng Việt trên UIMA

KHÓA LUẬN TỐT NGHIỆP HỆ CHÍNH QUY

Ngành: Công Nghệ Thông Tin

Hà Nội – 2010

Trang 2

ĐẠI HỌC CÔNG NGHỆ ĐẠI HỌC QUỐC GIA HÀ NỘI



Nguyễn Đức Nam

Nghiên cứu và phát triển các công cụ xử lý

tiếng Việt trên UIMA

KHÓA LUẬN TỐT NGHIỆP HỆ CHÍNH QUY

Hà Nội – 2010

Trang 3

i

Lời cảm ơn

Trước tiên, em xin gửi lời cảm ơn sâu sắc nhất đến thầy Phạm Bảo Sơn, người

đã không quản vất vả hướng dẫn em trong suốt thời gian làm khóa luận tốt nghiệp vừa qua Em cũng xin chân thành cảm ơn anh Nguyễn Quốc Đại đã luôn chỉ bảo và giải đáp vướng mắc cho em trong quá trình làm khóa luận

Em xin bày tỏ lời cảm ơn sâu sắc đến các thầy cô giáo trong Trường Đại Học Công Nghệ đã tận tình dạy dỗ em suốt bốn năm học qua

Tôi xin cảm ơn tập thể phòng HMI những người luôn động viên và cho tôi những lời khuyên có ích trong quá trình làm khóa luận

Xin cảm ơn những người bạn luôn ở bên cạnh quan tâm, ủng hộ và động viên tôi

Con xin cảm ơn bố, mẹ và gia đình đã luôn bên con, cho con động lực để làm việc tốt hơn

Hà Nội, ngày 20 tháng 5 năm 2010

Nguyễn Đức Nam

Trang 4

ii

Lời mở đầu

Kiến trúc xử lý thông tin phi cấu trúc (Unstructured Information Management Architecture - UIMA) giúp phân tích nguồn thông tin không có cấu trúc thành những thông tin có cấu trúc mang giá trị cao Kiến trúc này linh hoạt và hiệu quả trong việc ghép nối giải pháp nhỏ thành một công cụ lớn hơn, hoàn thiện hơn Chúng tôi tận dụng những đặc điểm này để xây dựng công cụ phân tích tiếng Việt bằng cách tích hợp các công cụ xử lý tiếng Việt có sẵn lên UIMA và đưa ra một số phương hướng để phát triển chúng

Trang 5

iii

Mục lục

Lời cảm ơn i

Lời mở đầu ii

Mục lục iii

Danh sách hình vẽ v

Danh sách thuật ngữ vi

Chương 1: Giới thiệu 1

Chương 2: Tổng quan kiến trúc xử lý thông tin phi cấu trúc 3

2.1 Giới thiệu UIMA 3

2.2 Nền tảng phân tích 6

2.2.1 Hệ thống kiểu và chú giải 9

2.2.2 Máy phân tích 10

2.2.3 Bộ miêu tả XML 15

2.3 Mô tả đối tượng trong tài liệu 17

2.4 Xây dựng ứng dụng và xử lý tập tài liệu 17

2.4.1 Tương tác giữa ứng dụng và UIMA 18

2.4.2 Giới thiệu máy xử lý tập tài liệu 20

2.4.3 Quản lý xử lý tập tài liệu 21

2.5 Khai thác kết quả phân tích 21

2.5.1 Tìm kiếm ngữ nghĩa 22

2.5.2 Cơ sở dữ liệu 22

2.6 Xử lý đa phương tiện 24

Chương 3: Xây dựng công cụ phân tích tiếng Việt trên UIMA 24

3.1 Cài đặt Plugins cho UIMA 26

3.2 Document Analyzer 28

3.3 Các công cụ phân tích tiếng Việt 29

Trang 6

iv

3.3.1 Giới thiệu tách từ tiếng Việt 29

3.3.2 Giới thiệu nhận dạng thực thể tiếng Việt có tên 30

3.4 Ứng dụng công cụ phân tích tiếng Việt trên UIMA 30

3.4.1 Tách từ tiếng Việt trên UIMA 30

3.4.2 Áp dụng nhận dạng thực thể có tên trên GATE vào UIMA 34

3.4.3 Kết hợp nhận dạng các chú giải 37

Chương 4: Tổng kết và hướng phát triển 40 Tài liệu tham khảo A

Trang 7

v

Danh sách hình vẽ

Hình 2.1 – UIMA là cầu nối 2 “thế giới” thông tin có cấu trúc và phi cấu trúc 4

Hình 2.2 – Các chú giải trong hệ thống kiểu 7

Hình 2.3 – Kết hợp các chú giải 8

Hình 2.4 – Máy phân tích tổng hợp 10

Hình 2.5 – Biểu diễn đối tượng trong tài liệu 16

Hình 2.6 – UIMA tương tác với các ứng dụng 17

Hình 2.7 – Luồng làm việc của CPE 19

Hình 2.8 – CPM tương tác với ứng dụng 20

Hình 2.9 – Xử lý audio 22

Hình 3.1 – Cài đặt Plugins cho UIMA 25

Hình 3.2 – Các công cụ trong SDK 26

Hình 3.3 – Document Analyzer 26

Hình 3.4 –Kết quả phân tích sử dụng Token_VN 27

Hình 3.5 – Style Map Editor 28

Hình 3.6 –Kết quả chạy tách từ tiếng Việt 33

Hình 3.7 –Gán nhãn từ loại 34

Hình 3.8 – Kết quả phân tích một số chú giải 36

Hình 3.9 – Kết quả phân tích tổng hợp 39

Trang 8

vi

Danh sách thuật ngữ

AE (Analysis Engine): các máy phân tích dùng trong xử lý

Annotator: các chú giải dùng để phân tích tài liệu

Aggregate AE (Aggregate Analysis Engine): máy phân tích tổng hợp

CAS (Common Analysis Structure): cấu trúc phân tích thường gặp, nó là một cấu trúc

dữ liệu lưu lại các mô tả về đối tượng trong tài liệu

CAS Consumer: tổng hợp các cấu trúc dữ liệu từ các CAS và là thành phần kết nối dữ liệu tới máy tìm kiếm hay cơ sở dữ liệu

CPE (Collection Processing Engine): máy phân tích dùng để xử lý các tập tài liệu bao gồm từ khâu lấy tài liệu tới trích xuất kết quả ra cơ sở dữ liệu hay máy tìm kiếm

CPM (Collection Processing Management): bộ quản lý hoạt động của máy xử lý tập tài liệu

Primitive AE (Primitive Analysis Engine): máy phân tích đơn nó dùng để phân tích tài liệu mà chỉ dùng một chú giải

Type System: hệ thống kiểu lưu lại các kiểu của hệ thống và các chú giải được đăng ký vào hệ thống

UIMA (Unstructured Information Management Architecture): kiến trúc xử lý thông tin phi cấu trúc

UIMA SDK (UIMA Software Development Kit): bộ phần mềm của UIMA bao gồm thành phần hỗ trợ việc phát triển kiến trúc

Trang 9

Thông tin phi cấu trúc là nguồn thông tin lớn nhất, nhanh nhất và ngày càng tăng trong nguồn thông tin có sẵn cho các doanh nghiệp và chính phủ hiện nay Xem xét các thông tin được lưu trữ trong các doanh nghiệp và phương tiện truyền thông trên thế giới bao gồm văn bản, âm thanh, video v.v…Các nội dung có giá trị cao trong các nguồn thông tin phi cấu trúc thường nằm lẫn lộn trong kho nội dung lớn Chúng được giấu trong các nguồn thông tin khác nhau Tự động tìm ra những thông tin mang giá trị cao, chuyển chúng thành những thông tin có cấu trúc, lưu trữ vào cơ sở dữ liệu hay sử dụng những thông tin có cấu trúc này vào các ứng dụng khác là hướng phát triển của một kiến trúc quản lý thông tin hiện đại Kiến trúc quản lý thông tin phi cấu trúc (Unstructure Information Management Architecture - UIMA) [10][11] được xây dựng

để thực hiện nhiệm vụ trên

Trên thế giới đã có rất nhiều các ứng dụng kiến trúc UIMA để xử lý tiếng Anh, tiếng Đức v.v… Kho dữ liệu về tiếng Việt ngày càng phát triển và các nhu cầu xử lý nguồn thông tin này ngày càng tăng Xây dựng các hệ thống xử lý tiếng Việt trên UIMA trở nên cấp thiết Điểm khó khăn trong xử lý trên ngôn ngữ tiếng Việt ở chỗ tiếng Việt đa dạng, phong phú và có nhiều điểm còn nhập nhằng

Trang 10

2

Các công cụ xử lý tiếng Việt tại thời điểm hiện tại thường tách ra thành những phần riêng biệt như tách từ, gán nhãn từ loại, nhận dạng tên thực thể v.v…Các công cụ này cũng hoạt động trên các hệ thống khác nhau

Trong khóa luận chúng tôi nghiên cứu về UIMA, tích hợp các công cụ xử lý tiếng Việt như tách từ [1][2] và nhận dạng thực thể tiếng Việt có tên [3] trên kiến trúc UIMA nhằm tạo ra một hệ thống phân tích tiếng Việt bao gồm nhiều công cụ nhỏ, tận dụng được các ưu điểm của kiến trúc UIMA và tiết kiệm được thời gian để xây dựng một hệ thống hoàn toàn mới

Phần còn lại của khóa luận được chia thành 4 chương:

 Chương 2: Giới thiệu một cách tổng quan nhất về UIMA cũng như các ứng dụng cơ bản của UIMA

 Chương 3: Xây dựng công cụ phân tích tiếng Việt từ các công cụ có sẵn như tách từ và nhận dạng thực thể có tên

 Chương 4: Tổng kết lại kết quả và đưa ra những hướng phát triển mới cho đề tài trong tương lai

Trang 11

2.1 Giới thiệu UIMA

UIMA là một kiến trúc quản lý thông tin phi cấu trúc được phát triển bởi IBM giúp phân tích các nguồn dữ liệu phi cấu trúc và chuyển chúng thành nguồn dữ liệu có cấu trúc, mang giá trị cao UIMA là một kiến trúc dùng để tạo ra, tìm kiếm, khai thác thông tin; triển khai các phương pháp phân tích và tích hợp những phương pháp này với kỹ thuật tìm kiếm Kiến trúc quản lý thông tin phi cấu trúc bao gồm các thành phần giao diện, mẫu thiết kế, biểu diễn thông tin và đóng vai trò là người phát triển Framework UIMA là một mã nguồn mở, nó cung cấp một môi trường để các nhà phát triển có thể chạy các chương trình của riêng mình, khai phá các ứng dụng của kiến trúc quản lý thông tin phi cấu trúc Thành phần của framework viết bằng Java hoặc C++ cho việc phát triển, khai thác các thành phần và ứng dụng UIMA Những Framework này cũng cung cấp cho lập trình viên một môi trường phát triển dựa trên Eclipse [11] bao gồm các ứng dụng và tiện ích để khai thác kiến trúc quản lý thông tin phi cấu trúc

Trang 12

4

UIMA là một mã nguồn mở, có khả năng mở rộng để tạo ra, khai thác các biện pháp quản lý thông tin phi cấu trúc từ các văn bản hay các tài liệu đa phương tiện sau

đó ghép nối các kết quả thu được vào các thành phần tìm kiếm

Hình 2.1- UIMA là “cầu nối” giúp liên kết hai thế giới thông tin có cấu trúc và

phi cấu trúc [11]

UIMA giúp xây dựng “cây cầu” giữa hai thế giới thông tin có cấu trúc và phi cấu trúc (hình 2.1) Thế giới thông tin phi cấu trúc là những thông tin trên các kho dữ liệu như Web, văn bản, audio, video v.v…Thế giới thông tin có cấu trúc bao gồm các cấu trúc chức năng, nội dung kết quả phân tích và thường được lưu trong cơ sở dữ liệu

“Cây cầu” giữa hai thế giới được xây dựng thông qua các thành phần, khung phần mềm của kiến trúc UIMA và khai thác khả năng phân tích trên chính kiến trúc này UIMA hỗ trợ việc tạo ra, khám phá, tận dụng các khả năng phân tích và liên kết chúng với các dịch vụ thông tin có cấu trúc

Một ứng dụng quản lý thông tin phi cấu trúc có thể coi như một hệ thống phần mềm dùng để phân tích một khối lượng lớn thông tin phi cấu trúc (văn bản, âm thanh, video, hình ảnh ) để tìm ra, tổ chức và cung cấp các thông tin có ích liên quan đến người dùng hoặc đưa ra kết quả được dùng trong các ứng dụng khác Ví dụ: ứng dụng trong quá trình xử lý hàng triệu phản ứng thuốc từ đó tìm ra mối liên hệ giữa các loại

Trang 13

ý kiến, phản hồi hay các sự kiện đặc biệt Cao hơn nữa là các mối quan hệ giữa các thực thể ví dụ vị trí, tài chính, hỗ trợ, thanh toán, sửa chữa v.v…Các khái niệm này trong tài liệu phi cấu trúc phải rộng, đa dạng và thường có miền cụ thể Những thành phần dùng cho việc phân tích phải được tương thích dễ dàng và có khả năng kết hợp

để tạo thuận lợi cho sự phát triển các ứng dụng của UIMA [11]

Kết quả phân tích được định dạng vào các cấu trúc để thuận tiện trong việc xử lý thông tin, kết hợp với sử dụng công cụ tìm kiếm và đưa các kết quả này vào cơ sở dữ liệu dùng trong phân tích thông tin online hay khai phá dữ liệu Kết quả phân tích cung cấp những nội dung mới nhất, hiệu quả nhất cho khách hàng trong các quá trình phản hồi hay truy vấn

Trong phân tích nội dung phi cấu trúc, các ứng dụng UIMA sử dụng một loạt các công nghệ phân tích đa dạng như:

 Thống kê và xử lý ngôn ngữ tự nhiên

 Thông tin phản hồi

 Học máy

 Ontologies

 Trả lời tự động

 Khai phá nguồn kiến thức (CYC, WordNet, Framnet v.v…)

Kỹ thuật phân tích sử dụng các công nghệ này đã được phát triển độc lập bằng cách sử dụng giao diện hay nền tảng khác nhau

UIMA cho phép các nhóm phát triển chia nhỏ một project lớn thành các thành phần nhỏ sau đó xây dựng giải pháp cho từng thành phần và tích hợp lại nhanh chóng thông qua các kỹ thuật hay giao diện sử dụng khác nhau

Trang 14

6

Framework UIMA cung cấp một môi trường thời gian chạy trong đó người dùng chạy bất cứ plugin nào của UIMA để xây dựng, triển khai các ứng dụng UIM

UIMA Software Development Kit (SDK) bao gồm UIMA framework, các công

cụ và tiện ích cho việc sử dụng UIMA

2.2 Nền tảng phân tích

Các nền tảng cơ bản của kiến trúc quản lý thông tin phi cấu trúc bao gồm: hệ thống kiểu, chú giải, bộ miêu tả XML, máy phân tích, kết quả phân tích, mô tả kết quả phân tích

xây dựng kiểu Top là nền tảng của các kiểu khác, FSArray định nghĩa mảng của một

cấu trúc chức năng và các chú giải Các chú giải có thể được xây dựng bởi người dùng sau đó đăng ký vào hệ thống kiểu của UIMA Một chú giải thường chứa 3 trường (đặc

trưng): begin, end lưu trữ các vị trí của ký tự xác định chú giải trong tài liệu và sofa

(subject of annotator) xác định tài liệu chứa chú giải (được bỏ qua trong các chú giải đơn giản) Ngoài ra còn có các đặc trưng của chú giải do người phát triển kiến trúc UIMA tạo ra [11]

UIMA có một công cụ chạy trên Eclipse giúp người dùng định dạng các chú giải và tìm hiểu thông tin về hệ thống kiểu là Component Descriptor Editor Trong hình 2.2 là các chú giải được chúng tôi tạo ra và đăng ký vào trong hệ thống kiểu Ví dụ: kiểu Location_VN là chú giải về các tên địa phương trong tiếng Việt Chúng được

kế thừa từ lớp uima.tcas.annotator, đặc trưng posTag hay componentId kế thừa từ các lớp uima.cas.String Các đặc trưng mặc định như begin, end không được thể hiện

ra trong hình vẽ nhưng chúng vẫn là các đặc trưng của Person_VN

Trang 15

7

Hình 2.2 – Các chú giải trong hệ thống kiểu Các chú giải thực chất là các lớp được sử dụng trong máy phân tích để xử lý tài liệu Mục tiếp theo trình bày về máy phân tích, chức năng, phương thức hoạt động cũng như cách xây dựng chúng trên UIMA Một lớp chú giải chứa 3 phương thức:

initialize(), process() và destroy()

Initialize() được gọi bởi framework một lần khi khởi tạo lớp chú giải

Process() được gọi mỗi khi có một tài liệu được xử lý

Trang 16

8

Destroy() có thể được gọi khi ứng dụng sử dụng xong các chú giải

Chú giải được dùng để nhận dạng các thực thể tìm thấy trong tài liệu Các thực thể có thể là các tên người, tên tổ chức, tên quốc gia v.v…Các miêu tả về chú giải được xây dựng bằng bộ miêu tả XML xác định tên của chú giải, dùng lớp nào để định nghĩa và đầu ra tương ứng

Các chú giải như tên người, tên tổ chức, tên quốc gia v.v… đều được xây dựng

để nhận dạng một loại thực thể có trong tài liệu Chúng đều được sử dụng trong máy phân tích đơn (2.2.2)

Mỗi một chú giải thường được dùng để nhận ra một loại thực thể do vậy tồn tại yêu cầu ghép nối các chú giải này với nhau để tạo ra một chú giải mới nhận dạng nhiều loại thực thể một lúc

Một đặc điểm cần quan tâm khi ghép nối các chú giải với nhau đó là khi các chú giải có thể cùng nhận dạng một đối tượng khác nhau nhưng đưa vào cả 2 chú giải

Do đó khi thực hiện kết hợp các chú giải cần xử lý tốt việc tranh chấp giữa các chú giải và thực hiện nhận dạng thực thể một cách chính xác Ví dụ: một chú giải về nhận dạng các từ trong văn bản kết hợp với chú giải nhận dạng các dấu ngắt câu thành một chú giải mới có khả năng nhận dạng cả về từ và các dấu ngắt câu trong tài liệu

Trang 17

9

Trong hình 2.3, các TokenizerVN là các chú giải được xác định bởi các lớp chú giải Tokenizer Vietnamese Các chú giải TokenizerVN là các chú giải về các từ vựng trong tiếng Việt, nhiệm vụ của chú giải là tách ra được các từ tiếng Việt chuẩn xác SplitVN là chú giải về các phân tách trong câu (bao gồm | ! | ?), nhiệm vụ của chú giải này là tách được chính xác các dấu phân tách trên trong văn bản Ngoài ra còn có nhiều chú giải khác về thực thể như tên người, tên địa phương, dân tộc v.v… Các chú giải này sẽ được đưa vào cùng một chú giải để xử lý trong máy phân tích tổng hợp Các chú giải lấy ra từ các chú giải đơn sẽ được ghép lại với nhau để sử dụng trong một máy phân tích tổng hợp Máy phân tích này sẽ thực hiện phân tích tất cả chú giải và xử lý trong tài liệu như các máy phân tích đơn

2.2.2 Máy phân tích

Một trong những khối cơ bản quan trọng nhất của UIMA là máy phân tích (Analysis Engine) Chúng được tạo ra để phân tích một tài liệu, suy luận sau đó lưu lại các mô tả thuộc tính về một phần tài liệu hay toàn bộ tài liệu Các mô tả này được gọi chung là kết quả phân tích Kết quả phân tích thường đại diện cho nội dung của tài liệu Kết quả phân tích có thể ghi lại những câu khác nhau về nội dung của cùng một tài liệu Máy phân tích sẽ xử lý tài liệu và ghi lại siêu dữ liệu về nội dung tài liệu

Ví dụ: trong tài liệu về trường đại học Công Nghệ, kết quả phân tích có thể ghi lại các câu sau:

(1) Chủ đề của tài liệu là về trường đại học Công Nghệ

Trang 18

10

UIMA cung cấp một thành phần cơ bản hướng tới việc các thuật toán phân tích chạy bên trong máy phân tích Thành phần đó chính là các chú giải (2.2.1) Các thuật toán của nhóm phát triển chủ yếu quan tâm đến việc nghiên cứu và phát triển các chú giải Trong UIMA, người lập trình thuật toán giữ vai trò của nhà nghiên cứu và phát triển chú giải

Có hai loại máy phân tích là máy phân tích đơn (Primitive AE) và máy phân tích tổng hợp (Aggregate AE)

Hình 2.4 - Máy phân tích tổng hợp Một máy phân tích đơn có thể xử lý một hoặc một vài chú giải Các công cụ phân tích phức tạp hơn được gọi là máy phân tích tổng hợp Các chú giải có xu hướng thể hiện các chức năng một cách ngang bằng Ví dụ: phát hiện ngôn ngữ, tách từ, gán nhãn

từ loại v.v… Các chức năng này thường chỉ là một phần trong số các nhiệm vụ của công cụ phân tích tổng hợp Một quy trình làm việc của động cơ thành phần có thể đem ra để thực hiện các nhiệm vụ phức tạp hơn

Hình 2.4 miêu tả một AE phát hiện thực thể có tên có luồng làm việc như sau: bắt đầu với phát hiện ngôn ngữ sau đó là tách từ, xác định nhãn từ loại, tiếp theo là phân tích sâu về ngữ pháp và cuối cùng là xác định thực thể Kết quả mỗi bước trong luồng làm việc là yêu cầu đầu vào của các bước tiếp theo Nhận dạng thực thể chỉ có thể thực hiện khi phân tích sâu về ngữ pháp đã được ghi trong CAS

UIMA cung cấp các phương pháp cần thiết cho việc tạo ra chú giải và máy phân tích, đó là các bộ miêu tả XML

Trang 19

 Tên, miêu tả về chú giải, phiên bản và tác giả

 Đầu vào và đầu ra của những chú giải định nghĩa các kiểu trong hệ thống kiểu Định nghĩa các tham số cấu hình cho các chú giải

Định dạng chi tiết cho file XML của máy phân tích đơn:

2.2.3.1 Cấu trúc cơ bản

File XML bắt đầu bằng định dạng mặc định của phần đầu mục XML thông thường

Thẻ <analysisEngineDescription> định nghĩa nguồn nào đang được sử dụng,

nó bắt buộc là uima.apache.org nếu không các bộ miêu tả XML bị lỗi khi cập nhật

Trang 20

12

Thẻ <framworkImplementation> chỉ có 2 giá trị org.apache.uima.java hoặc

org.apache.uima.cpp bởi các thực thi của framework trong thời điểm hiện tại mới

được viết bằng java hay C++

Thẻ <primitive> chứa giá trị boolean mang giá trị true khi bộ miêu tả này miêu

tả về máy phân tích đơn

Thẻ <annotatorImplementationName> xác định xem máy phân tích sẽ sử dụng

lớp chú giải nào

Thẻ <analysisEngineMetaData> chứa thông tin miêu tả máy phân tích và

nhiệm vụ của nó là gì (mục 2.2.3.2)

2.2.3.2 AnalysisEngineMetaData

Thẻ <analysisEngineMetaData> chứa 4 trường : name, descriptor, version và vendor

Trong đó chỉ có trường name yều phải điền đầy đủ

Chỉ có thẻ <capabilities> yêu cầu bắt buộc phải khai báo còn các thẻ khác đều

là tùy vào việc xây dựng máy phân tích của người dùng (mục 2.2.3.3)

Thẻ <typeSystemDescription> định nghĩa một hệ thống kiểu dùng trong một

máy phân tích Muốn sử dụng thẻ này chỉ việc đưa đường dẫn file miêu tả XML về hệ

thống kiểu được sử dụng vào trong thẻ <import>, các kiểu được định nghĩa trong file

XML trên sẽ được máy phân tích sử dụng tự động

Trang 21

13

2.2.3.3 capabilities

Thẻ capabilities chứa các thẻ con <inputs>, <outputs>, <languagesSupported>,

<inputSofas> và <outputSofas> Thẻ <Inputs> và <Outputs> có thể được để trống

còn các thẻ còn lại có thể không cần bắt buộc khai báo

Thẻ <Inputs> xác định các kiểu được sử dụng trong máy phân tích gồm những

kiểu gì Nó thường bắt khai báo đặc trưng tên của kiểu

Thẻ <Outputs> xác định kiểu đầu ra mong muốn, nó sẽ là các lớp chú giải định

nghĩa đặc trưng của chú giải được sử dụng

Thẻ <InputSofas> và <outputSofas> xác định tên các sofa được sử dụng bởi

thành phần này, tất cả tên sofa phải được đặt khác nhau và có phần định dạng riêng về mỗi sofa này

Thẻ <languagesSupported> chứa mã ngôn ngữ ISO, ví dụ: en cho tiếng Anh

hoặc en-US cho tiếng Anh Mỹ

Trang 22

14

2.2.3.4 Cấu trúc file XML miêu tả máy phân tích tổng hợp

Cấu trúc của file XML của máy phân tích tổng hợp có một vài điểm khác biệt so với cấu trúc file XML của máy phân tích đơn

Thẻ <primitive> chứa giá trị false thay vì true

File miêu tả này sẽ không chứa thẻ <annotatorImplementationName> thay vào

đó là <delegateAnalysisEngineSpecifiers> dùng để phân biệt giữa việc dùng

một máy phân tích tổng hợp thay vì một máy phân tích đơn Các thẻ này sẽ đưa vào các máy phân tích nào sẽ được sử dụng và đường dẫn đến các file XML miêu tả máy phân tích tương ứng

Trang 23

15

Thẻ <flowConstraints> sẽ giúp định hướng xem thứ tự xử lý các chú giải như

thế nào trong việc phân tích Các chú giải sẽ được xử lý lần lượt, mỗi một chú giải

sẽ thông qua các máy phân tích chạy ra kết quả và lưu lại các kết quả đó trong CAS

Thành phần cuối cùng là thẻ <capabilities> có cấu trúc giống với cấu trúc của

thẻ <capabilities> của file XML (mục 2.2.3.3)

2.2.4 Mô tả đối tượng trong tài liệu

UIMA định nghĩa một cấu trúc phân tích chung (Common Analysis Structure) để thực hiện hai nhiệm vụ: đại diện các chú giải và chia sẻ kết quả phân tích cho các thành phần trong kiến trúc

CAS là một cấu trúc dữ liệu dựa trên đối tượng cho phép đại diện giá trị bao gồm đặc trưng và giá trị Theo logic, cấu trúc này bao gồm tài liệu sắp được đưa vào phân tích UIMA bao gồm lớp thực thi và giao diện cho kiến trúc này

Trang 24

16

Trong hình 2.5 là ví dụ biểu diễn đối tượng trong CAS về câu: “Nam là sinh viên trường đại học Công Nghệ Cuối năm nay cậu ấy sẽ ra trường” CAS sẽ chứa đối tượng của kiểu Người và đối tượng về kiểu Tổ chức Đối với mỗi kiểu Người, Tổ chức tìm thấy trong tài liệu, máy phân tích sẽ tạo ra một đối tượng Người, Tổ chức trong CAS và liên kết nó với các chuỗi ký tự tương ứng trong tài liệu

Nam là sinh viên trường Đại học Công Nghệ Cuối năm nay cậu ấy sẽ ra trường

Hình 2.5 - Biểu diễn đối tượng trong tài liệu Trong khi CAS là một cấu trúc dữ liệu thì UIMA định nghĩa một số kiểu cơ bản

và hỗ trợ nhà phát triển hoàn thiện hệ thống kiểu của riêng mình Có thể coi nó như là một lược đồ đối tượng cho CAS Các kiểu tạo ra nhằm xác định một vài loại đối tượng được phát hiện trong tài liệu thông qua máy phân tích rồi ghi lại vào hệ thống kiểu Như vậy Người có thể định nghĩa là một kiểu Các kiểu có đặc trưng và giá trị

Ví dụ tuổi và nghề nghiệp có thể định nghĩa là các đặc trưng của Người Các kiểu khác

có thể là tổ chức, công ty, ngân hàng, cơ sở… Không có giới hạn cho các kiểu khác nhau mà có thể định nghĩa trong cùng một hệ thống kiểu Hệ thống kiểu có thể là miền hay ứng dụng cụ thể Các kiểu trong hệ thống của UIMA có thể được tổ chức thành một phân loại Ví dụ công ty có thể định nghĩa là một phân nhóm của tổ chức, nounpharse có thể là phân nhóm của một parsenode

Nam

(thực thể)

Đại học Công Nghệ (thực thể)

Người(P1)

(chú giải)

Tổ chức (chú giải) Người(P2) (chú giải)

Trang 25

17

UIMA cũng cung cấp phân tích giả lập về nhiều khung nhìn của một tài liệu Nó được dùng để hỗ trợ xử lý nhiều dạng tài liệu như là audio Máy phân tích xử lý một hay nhiều khung nhìn của tài liệu Mỗi khung nhìn chứa một chủ đề của việc phân tích cụ thể và đánh chỉ mục dữ liệu trong khung nhìn đó CAS sẽ giữ một hoặc nhiều khung nhìn thêm vào đó là các miêu tả về đối tượng và thể hiện kết quả phân tích được trong mỗi khung nhìn đó Một ví dụ cho việc sử dụng khung nhìn CAS là cho việc dịch các tài liệu Mỗi một bản dịch sẽ đại diện cho một khung nhìn CAS khác nhau [11]

2.4 Xây dựng ứng dụng và xử lý tập tài liệu

Trong mục 2.4 chúng tôi trình bày về cách thức tương tác giữa ứng dụng với UIMA và máy xử lý tập tài liệu

2.4.1 Tương tác giữa ứng dụng và UIMA

Hình 2.6 - UIMA tương tác với các ứng dụng

Ngày đăng: 18/02/2014, 00:42

HÌNH ẢNH LIÊN QUAN

Hình 2.1- UIMA là “cầu nối” giúp liên kết hai thế giới thơng tin có cấu trúc và phi cấu trúc [11] - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.1 UIMA là “cầu nối” giúp liên kết hai thế giới thơng tin có cấu trúc và phi cấu trúc [11] (Trang 12)
Hình 2.2 – Các chú giải trong hệ thống kiểu - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.2 – Các chú giải trong hệ thống kiểu (Trang 15)
Hình 2.3 - Kết hợp các chú giảiTokenizerVN  Vietnamese Tokenizer - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.3 Kết hợp các chú giảiTokenizerVN Vietnamese Tokenizer (Trang 16)
Hình 2.4 - Máy phân tích tổng hợp - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.4 Máy phân tích tổng hợp (Trang 18)
Trong hình 2.5 là ví dụ biểu diễn đối tượng trong CAS về câu: “Nam là sinh viên trường  đại  học  Công  Nghệ - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
rong hình 2.5 là ví dụ biểu diễn đối tượng trong CAS về câu: “Nam là sinh viên trường đại học Công Nghệ (Trang 24)
Hình 2.6 -UIMA tương tác với các ứng dụng - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.6 UIMA tương tác với các ứng dụng (Trang 25)
Hình 2.7 - Luồng làm việc của CPE - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.7 Luồng làm việc của CPE (Trang 27)
Hình 2.7 miêu tả luồng làm việc của CPE. Từ các tập dữ liệu hay siêu dữ liệu thông qua Collection Reader lấy ra được một tài liệu, khởi tạo CAS rồi đưa tài liệu qua  máy phân tích trả về các kết quả phân tích được lưu trong CAS Consumer - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.7 miêu tả luồng làm việc của CPE. Từ các tập dữ liệu hay siêu dữ liệu thông qua Collection Reader lấy ra được một tài liệu, khởi tạo CAS rồi đưa tài liệu qua máy phân tích trả về các kết quả phân tích được lưu trong CAS Consumer (Trang 28)
Hình 2.9 -Xử lý audio trong UIMA - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 2.9 Xử lý audio trong UIMA (Trang 30)
Hình 3.1- Cài đặt Plugins cho UIMA - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 3.1 Cài đặt Plugins cho UIMA (Trang 32)
Hình 3.3 - Document Analyzer - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 3.3 Document Analyzer (Trang 33)
Hình 3.2- các cơng cụ có sẵn trong SDK - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 3.2 các cơng cụ có sẵn trong SDK (Trang 33)
Hình 3.4 - Kết quả phân tích sử dụng chú giải Token_VN Document Analyzer cũng cung cấp ứng dụng để thay đổi các bảng hiện ra. - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 3.4 Kết quả phân tích sử dụng chú giải Token_VN Document Analyzer cũng cung cấp ứng dụng để thay đổi các bảng hiện ra (Trang 35)
Hình 3.5 - Style Map Editor - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 3.5 Style Map Editor (Trang 35)
Hình 3.6 - Kết quả chạy tách từ tiếng Việt - nghiên cứu và phát triển các công cụ xử lý tiếng việt trên uima
Hình 3.6 Kết quả chạy tách từ tiếng Việt (Trang 41)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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