1.1.2 Định nghĩa Về bản chất, Nhận dạng Thực thể được Đặt tên NER là một nhiệm vụ chuyên biệt trong lĩnh vực Xử lý ngôn ngữ tự nhiên NLP, tập trung vào việc xác định và phân loại các thự
NAMED ENTITY RECOGNITION: NER
Nhận dạng thực thể được đặt tên (NER)
Trong bối cảnh sự phát triển không ngừng của Xử lý ngôn ngữ tự nhiên
Nhận dạng Thực thể được Đặt tên (NER) là một công nghệ nổi bật trong lĩnh vực Xử lý ngôn ngữ tự nhiên (NLP), giúp máy móc hiểu và phân tích ngôn ngữ con người Kỹ thuật này cho phép máy móc không chỉ nắm bắt nội dung văn bản mà còn xác định và phân loại các thực thể quan trọng như tên cá nhân, địa điểm, tổ chức và thời gian NER mở ra cơ hội cho sự hiểu biết sâu sắc hơn về ngôn ngữ, từ đó thúc đẩy các ứng dụng thông minh và sáng tạo trong nhiều lĩnh vực khác nhau.
Nhận dạng Thực thể được Đặt tên (NER) là một nhiệm vụ quan trọng trong Xử lý ngôn ngữ tự nhiên (NLP), nhằm xác định và phân loại các thực thể trong văn bản Các thực thể này bao gồm tên cá nhân, tổ chức, địa điểm, ngày tháng và các giá trị số khác NER giúp máy móc hiểu và phân tích nội dung văn bản một cách hiệu quả và chính xác.
1.1.3 Nhận dạng thực thể được đặt tên (NER) hoạt động như thế nào?
NER hoạt động như một kỹ thuật trích xuất thông tin, và quy trình của nó có thể được tóm tắt qua một số bước chính sau:
Tiền xử lý văn bản là bước quan trọng đầu tiên trong việc chuẩn bị dữ liệu cho phân tích Quá trình này bao gồm việc tách văn bản thành các từ hoặc cụm từ và gán nhãn từ loại cho từng đơn vị, giúp tăng cường độ chính xác trong phân tích sau này.
Nhận dạng thực thể (NER) là quá trình quan trọng trong xử lý văn bản, trong đó thuật toán sẽ quét văn bản để xác định các chuỗi từ tương ứng với các thực thể cụ thể.
Phân loại thực thể là bước quan trọng trong nhận dạng thực thể tên (NER), nơi các thực thể được phân loại vào các nhóm đã được xác định trước Các loại thực thể phổ biến bao gồm Người, Tổ chức, Địa điểm và Ngày tháng.
Phân tích theo ngữ cảnh trong NER không chỉ tập trung vào việc nhận diện và phân loại thực thể, mà còn chú trọng đến ngữ cảnh xuất hiện của chúng Điều này đảm bảo rằng việc phân loại thực thể diễn ra chính xác và phù hợp hơn.
1.1.4 Các loại hệ thống NER
Có bốn hệ thống Nhận dạng Thực thể được Đặt tên (NER) khác nhau, bao gồm hệ thống dựa trên quy tắc, dựa trên từ điển, dựa trên học máy (ML) và học sâu.
Hệ thống NER dựa trên từ điển là phương pháp đơn giản nhất, sử dụng một từ điển chứa tập hợp từ vựng để xác định các thực thể trong văn bản Các thuật toán khớp chuỗi cơ bản sẽ kiểm tra sự xuất hiện của các thực thể bằng cách so sánh với các mục trong từ điển Mặc dù dễ triển khai, phương pháp này có hạn chế lớn, bao gồm việc cần phải liên tục cập nhật và duy trì từ điển để đảm bảo độ chính xác và tính đầy đủ của thông tin.
Ưu điểm: Dễ thực hiện và dễ hiểu.
Nhược điểm: Giới hạn ở các thực thể trong từ điển, yêu cầu cập nhật liên tục và có thể bỏ sót các biến thể hoặc lỗi chính tả.
Trường hợp sử dụng này rất phù hợp với các lĩnh vực có thuật ngữ ổn định và được định nghĩa rõ ràng, chẳng hạn như trong văn bản y khoa hoặc pháp lý.
Hệ thống dựa trên quy tắc
Phương pháp trích xuất thông tin này sử dụng một bộ quy tắc đã được xác định trước, bao gồm hai loại quy tắc chính: quy tắc dựa trên mẫu, tập trung vào hình thái của từ, và quy tắc dựa trên ngữ cảnh, phụ thuộc vào cách sử dụng từ trong tài liệu Một ví dụ điển hình cho quy tắc dựa trên ngữ cảnh là việc xác định rằng nếu chức danh của một người được theo sau bởi một danh từ riêng, thì danh từ đó có thể được coi là tên của người đó.
Dựa trên mẫu: Sử dụng biểu thức chính quy và mẫu để xác định các thực thể.
Dựa trên ngữ cảnh: Xem xét các từ xung quanh và ngữ cảnh để xác định các thực thể.
Ưu điểm: Linh hoạt hơn so với phương pháp dựa trên từ điển, có thể nắm bắt được các biến thể.
Nhược điểm: Đòi hỏi kiến thức chuyên môn để xác định các quy tắc, có thể trở nên phức tạp.
Trường hợp sử dụng: Hiệu quả trong việc trích xuất các định dạng cụ thể như ngày tháng, số điện thoại hoặc địa chỉ email.
Hệ thống dựa trên máy học
Các hệ thống Nhận dạng Thực thể được Đặt tên (NER) sử dụng máy học (ML) với các mô hình thống kê để phát hiện thực thể Những mô hình này tạo ra biểu diễn dựa trên đặc trưng của dữ liệu quan sát, giúp khắc phục nhiều hạn chế của phương pháp dựa trên từ điển và quy tắc Nhờ đó, NER có khả năng nhận diện thực thể ngay cả khi có sự khác biệt nhỏ về chính tả.
Quá trình sử dụng giải pháp Nhận diện thực thể (NER) dựa trên Machine Learning (ML) bao gồm hai giai đoạn chính Đầu tiên, mô hình ML được huấn luyện trên các tài liệu đã được chú thích, với thời gian đào tạo phụ thuộc vào độ phức tạp của mô hình và kích thước tập dữ liệu Sau khi hoàn tất, mô hình có khả năng tự động chú thích các tài liệu thô, xác định và phân loại các thực thể trong văn bản một cách hiệu quả.
Thuật toán: Các thuật toán phổ biến bao gồm Cây quyết định,
Kỹ thuật đặc điểm: Sử dụng các đặc điểm như hình dạng từ, thẻ từ loại và các từ xung quanh.
Ưu điểm: Có thể áp dụng vào nhiều lĩnh vực khác nhau, có thể học hỏi từ ví dụ.
Nhược điểm: Yêu cầu dữ liệu đào tạo có nhãn, có thể gặp khó khăn với các thực thể hiếm.
Trường hợp sử dụng: Phù hợp với các miền có dữ liệu đào tạo khả dụng và nhiều loại thực thể khác nhau.
Trong những năm gần đây, mô hình học sâu (Deep Learning - DL) đã trở thành lựa chọn hàng đầu cho việc phát triển hệ thống Nhận dạng Thực thể được Đặt tên (NER) tiên tiến Sự áp dụng của các kỹ thuật học sâu mang lại nhiều lợi ích vượt trội so với các phương pháp truyền thống.
Phương pháp học sâu ánh xạ dữ liệu đầu vào thành các biểu diễn phi tuyến tính, giúp mô hình nắm bắt các mối quan hệ phức tạp trong dữ liệu Lợi ích nổi bật của phương pháp này là giảm thiểu thời gian và tài nguyên cần thiết cho việc kỹ thuật hóa đặc trưng, điều mà các phương pháp truyền thống thường yêu cầu Nhờ đó, các hệ thống NER dựa trên học sâu không chỉ nâng cao độ chính xác mà còn cải thiện hiệu suất tổng thể trong việc nhận diện và phân loại các thực thể.
Mô hình: Sử dụng các mô hình như RNN, LSTM, BERT, v.v.
Nhúng từ: Biểu diễn các từ dưới dạng vectơ, nắm bắt ý nghĩa ngữ nghĩa.
Ưu điểm: Độ chính xác cao, có thể nắm bắt được các mối quan hệ phức tạp.
Nhược điểm: Tính toán phức tạp, đòi hỏi bộ dữ liệu đào tạo lớn.
Trường hợp sử dụng của công nghệ này là lý tưởng cho các ứng dụng phức tạp và quy mô lớn, như phân tích phương tiện truyền thông xã hội và xử lý đa ngôn ngữ.
Phương pháp phân loại trong Nhận dạng thực thể được đặt tên (NER)
Phân loại trong Nhận dạng Thực thể được Đặt tên (NER) là một bước quan trọng, giúp phân loại các thực thể đã được xác định thành các nhóm cụ thể Quá trình này không chỉ làm cho việc phân tích văn bản trở nên có cấu trúc và dễ hiểu hơn mà còn mở ra nhiều ứng dụng, cho phép trích xuất thông tin chi tiết từ dữ liệu.
Các danh mục được xác định trước
Tổ chức: Các thực thể đại diện cho các công ty, tổ chức hoặc cơ quan, chẳng hạn như 'Netflix', 'NASA' hoặc 'Liên hợp quốc'.
Người: Tên của cá nhân, bao gồm cả nhân vật hư cấu.
Vị trí: Vị trí địa lý như quốc gia, thành phố, núi hoặc sông.
Thời gian: Ngày, tháng, năm hoặc bất kỳ cách diễn đạt nào liên quan đến thời gian.
Giá trị tiền tệ: Số tiền tài chính, tiền tệ và các ký hiệu liên quan.
Tùy thuộc vào nhu cầu cụ thể và phạm vi ứng dụng, NER cũng có thể xác định các danh mục tùy chỉnh Ví dụ:
Thuật ngữ chăm sóc sức khỏe: Tình trạng bệnh lý, phương pháp điều trị, thuốc men, v.v.
Thuật ngữ pháp lý: Văn bản pháp lý, tên tòa án
1.2.1 Ví dụ về mô hình phân loại trong NER
"Nguyễn Hà Đông phát triển trò chơi Flappy Bird tại Hà Nội vào năm 2013 và hiện tại anh đang là một nhà phát triển độc lập."
Khi câu này được xử lý bằng NER, các thực thể được xác định và phân loại như sau:
Cá nhân: "Nguyễn Hà Đông" được công nhận là tên riêng và được phân loại vào danh mục 'Cá nhân'.
Vị trí: "Hà Nội" được công nhận là một vị trí địa lý và được phân loại vào danh mục 'Vị trí'.
Thời gian: "2013" được xác định là ngày tháng và được đặt trong danh mục
Phương pháp LSTM
Tối ưu hóa tìm kiếm là một yếu tố quan trọng, vì nếu văn bản này nằm trong một tài liệu lớn hơn, các công cụ tìm kiếm có thể sử dụng các thực thể được phân loại để mang lại kết quả tìm kiếm chính xác và liên quan hơn.
Doanh nghiệp có thể sử dụng phân tích dữ liệu để nắm bắt thông tin phân loại, từ đó hiểu rõ hơn về các sự kiện lịch sử, các cá nhân quan trọng và địa điểm liên quan đến hoạt động của công ty.
Hệ thống hỗ trợ khách hàng tự động có khả năng sử dụng thông tin phân loại để nhanh chóng trả lời các câu hỏi liên quan đến lịch sử công ty, người sáng lập và ban lãnh đạo hiện tại.
1.3 Phương pháp dùng mô hình LSTM (Long Short Term Memory)
Mạng bộ nhớ dài hạn ngắn hạn (LSTM) là một loại mạng nơ-ron tuần tự trong học sâu, cho phép lưu giữ thông tin qua các bước thời gian Được phát triển bởi Hochreiter và Schmidhuber, LSTM là một biến thể của mạng nơ-ron hồi quy (RNN) nhằm khắc phục vấn đề gradient biến mất mà RNN thường gặp LSTM giúp xử lý thông tin dài hạn hiệu quả hơn, cho phép người dùng nhớ lại các cảnh trong video hoặc bối cảnh từ chương trước khi đọc sách, điều mà các RNN truyền thống gặp khó khăn do hiện tượng gradient biến mất.
LSTM, với kiến trúc độc đáo, cho phép mạng ghi nhớ thông tin lâu dài, nâng cao hiệu suất trong các bài toán như dịch ngôn ngữ và nhận diện giọng nói Mô hình LSTM có thể dễ dàng triển khai trong Python qua thư viện Keras, mang lại sự linh hoạt và hiệu quả cho các nhà phát triển trong lĩnh vực học máy.
Bộ nhớ dài hạn ngắn hạn (LSTM) khắc phục vấn đề gradient biến mất mà mạng nơ-ron hồi quy (RNN) thường gặp thông qua kiến trúc phức tạp của nó Mặc dù LSTM hoạt động tương tự như RNN, nhưng bên trong nó có các cơ chế cho phép quản lý thông tin hiệu quả hơn Kiến trúc LSTM bao gồm ba thành phần chính, mỗi thành phần đảm nhiệm một chức năng riêng biệt.
Cấu trúc của LSTM cho phép duy trì thông tin quan trọng trong thời gian dài, từ đó nâng cao hiệu suất trong nhiều bài toán phức tạp mà RNN truyền thống gặp khó khăn.
Chu kỳ LSTM bao gồm ba phần chính: đầu tiên, ô lưu trữ thông tin từ dấu thời gian trước đó, xác định thông tin nào có thể được ghi nhớ hoặc quên; thứ hai, ô học thông tin mới từ đầu vào hiện tại; và cuối cùng, ô chuyển thông tin đã cập nhật từ dấu thời gian hiện tại sang dấu thời gian tiếp theo Mỗi chu kỳ này được xem như một bước thời gian đơn trong quá trình xử lý dữ liệu.
Trong một đơn vị LSTM, có ba cổng chính là cổng Forget, cổng Input và cổng Output, chúng đóng vai trò quan trọng trong việc kiểm soát luồng thông tin vào và ra khỏi ô nhớ Một ô nhớ LSTM có thể được xem như một lớp nơ-ron trong mạng nơ-ron truyền thẳng truyền thống, với mỗi nơ-ron bao gồm một lớp ẩn và một trạng thái hiện tại.
Giống như RNN đơn giản, LSTM có trạng thái ẩn với H(t-1) là trạng thái ẩn của dấu thời gian trước và Ht là trạng thái ẩn hiện tại LSTM còn có trạng thái ô, với C(t-1) và C(t) tương ứng cho dấu thời gian trước và hiện tại Trong đó, trạng thái ẩn được gọi là Bộ nhớ ngắn hạn, còn trạng thái tế bào được gọi là
LSTM có cấu trúc bao gồm:
Trạng thái ô (cell state): Là một đường ngang cho phép thông tin được truyền qua mà không bị thay đổi nhiều.
Cổng (gates): Ba cổng chính trong LSTM:
Cổng quên (forget gate): Xác định thông tin nào sẽ bị loại bỏ.
Cổng đầu vào (input gate): Xác định thông tin nào sẽ được thêm vào.
Cổng đầu ra (output gate): Xác định thông tin nào sẽ được xuất ra.
1.3.5 Phương pháp sử dụng LSTM trong NER
1 Tiền xử lý dữ liệu:
Để mô hình có thể hiểu dữ liệu văn bản, cần phải chuyển đổi nó thành dạng số hóa hoặc sử dụng các vector từ như Word2Vec, GloVe, hoặc BERT.
Phân đoạn văn bản thành các câu và sau đó thành các từ Mỗi từ sẽ được gán với một nhãn phù hợp, chẳng hạn như "PER" cho tên người và "LOC" cho địa điểm.
2 Xây dựng mô hình LSTM:
Mô hình LSTM có thể được chia thành hai loại: đơn hướng (unidirectional) và song hướng (bidirectional) Trong nhận dạng thực thể tên (NER), việc sử dụng LSTM song hướng (Bi-LSTM) giúp cải thiện khả năng hiểu ngữ cảnh của mô hình bằng cách xem xét thông tin từ cả hai phía trước và sau từ hiện tại.
Lớp nhúng từ (Word Embedding Layer) là lớp đầu tiên trong mô hình, có nhiệm vụ chuyển đổi mỗi từ thành một vector với kích thước cố định, từ đó phản ánh ý nghĩa của từ đó.
LSTM Layer: o LSTM layer xử lý chuỗi đầu vào, học mối quan hệ và phụ thuộc giữa các từ.
Lớp dự đoán (Output Layer): o Thông thường, lớp cuối cùng là một lớp Dense với hàm kích hoạt Softmax để dự đoán các nhãn thực thể cho mỗi từ.
Cần chuẩn bị tập dữ liệu gán nhãn đầy đủ, chẳng hạn như tập CoNLL-2003 cho tiếng Anh hoặc một tập dữ liệu tương tự cho ngôn ngữ khác.
Sử dụng hàm mất mát Categorical Cross-Entropy để tối ưu hóa mô hình, trong đó mỗi từ được dự đoán theo nhãn thực thể của nó.
Trong quá trình huấn luyện, mô hình sẽ học cách nhận diện các mẫu và mối quan hệ giữa các từ, từ đó phân loại chúng thành các nhãn NER phù hợp.
Kết quả dự đoán cần được chuyển đổi về định dạng mà bài toán yêu cầu, như gán các nhãn "PER", "LOC", "ORG" cho các từ tương ứng.
WORD2VEC VÀ WORD EMBEDDINGS
Fast text
FastText là một phương pháp biểu diễn từ dưới dạng vector được phát triển bởi Facebook AI Research, nhằm cải thiện các kỹ thuật truyền thống như Word2Vec và các phương pháp embedding khác Phương pháp này giúp khắc phục một số hạn chế trong việc biểu diễn từ, mang lại hiệu quả cao hơn trong việc xử lý ngôn ngữ tự nhiên Bài viết này sẽ cung cấp cái nhìn tổng quan về FastText và so sánh nó với Word2Vec cùng các kỹ thuật khác.
2.2 Giới thiệu về Word Embeddings
Word Embeddings là các vector số đại diện cho từ trong không gian đa chiều, giúp các từ có ngữ nghĩa tương đồng được đặt gần nhau Các phương pháp này cho phép máy tính hiểu và xử lý ngôn ngữ tự nhiên hiệu quả hơn.
Word Embeddings nổi bật gồm:
Word2Vec: Sử dụng hai mô hình chính là Skip-gram và CBOW (Continuous
GloVe: Sử dụng phương pháp phân tích ma trận đồng xuất hiện (co- occurrence matrix).
Các phương pháp hiện tại thường gặp khó khăn trong việc xử lý các từ mới (out-of-vocabulary words) và không hiệu quả trong việc mô hình hóa các biến thể từ như từ ghép hoặc từ biến cách.
2.3 Word2Vec và các phương pháp biểu diễn từ truyền thống
Word2Vec là một trong những kỹ thuật Word Embedding phổ biến nhất Các phương pháp chính trong Word2Vec bao gồm:
Skip-gram: Cho trước một từ trung tâm, dự đoán các từ lân cận Phương pháp này thường hoạt động tốt với các tập dữ liệu lớn.
CBOW (Continuous Bag of Words) là mô hình dự đoán từ trung tâm dựa trên các từ xung quanh Mô hình này rất phù hợp với các tập dữ liệu nhỏ hơn do tốc độ nhanh và chi phí tính toán thấp.
- Tạo ra các vector có ý nghĩa ngữ nghĩa và ngữ cảnh.
- Các từ có ý nghĩa gần nhau thường có các vector gần nhau trong không gian vector.
- Các từ mới hoặc từ không có trong tập dữ liệu huấn luyện sẽ không có vector biểu diễn.
- Các biến thể của một từ (chẳng hạn như "running" và "runner") sẽ có các vector khác nhau, ngay cả khi chúng có liên quan về ngữ nghĩa.
2.4 FastText – Khắc phục nhược điểm của Word2Vec
FastText nâng cao kỹ thuật Word2Vec bằng cách học không chỉ các biểu diễn từ mà còn cả các n-gram ký tự bên trong từ Việc này giúp FastText hiểu rõ hơn về cấu trúc từ, đồng thời cho phép mô hình hóa các từ mới dựa trên các n-gram của chúng.
FastText sử dụng phương pháp biểu diễn n-gram để phân tích từ, chia nhỏ mỗi từ thành các n-gram ký tự Ví dụ, từ "apple" sẽ được tách thành các n-gram như "app", "ppl" và "ple" với kích thước n=3 Phương pháp này giúp cải thiện khả năng hiểu ngữ nghĩa của mô hình.
FastText sử dụng phương pháp Skip-gram hoặc CBOW để học vector cho các n-gram, cho phép gộp các vector này lại nhằm tạo ra biểu diễn hoàn chỉnh cho từng từ.
Khi đối diện với từ mới, FastText có khả năng tạo vector dựa trên các n-gram của từ đó, giúp giải quyết vấn đề từ mới mà Word2Vec không thể xử lý.
2.5 Lợi ích của FastText so với Word2Vec
FastText có khả năng xử lý các từ mới (OOV) bằng cách sử dụng n-gram, cho phép biểu diễn những từ chưa gặp trong quá trình huấn luyện Tính năng này đặc biệt hữu ích cho các ngôn ngữ như tiếng Việt, nơi có nhiều từ ghép và biến thể từ phong phú.
FastText nâng cao khả năng hiểu biết về cấu trúc từ bằng cách học các thành phần như tiền tố và hậu tố Điều này giúp cải thiện cách biểu diễn từ, đặc biệt là trong các trường hợp liên quan đến từ phái sinh hoặc từ biến cách.
FastText có khả năng phân biệt ngữ nghĩa tốt hơn nhờ vào việc nắm bắt cấu trúc ngữ nghĩa từ các n-gram, giúp biểu diễn hiệu quả hơn với các từ có ngữ nghĩa tương tự.
FastText tạo ra các vector n-gram cho mỗi từ, dẫn đến việc tăng số lượng vector cần lưu trữ Điều này khiến kích thước mô hình của FastText lớn hơn so với Word2Vec.
- Tốn kém về mặt tính toán: Phân tích và tính toán n-gram có thể làm chậm quá trình huấn luyện so với các mô hình không sử dụng n-gram.
FastText – Khắc phục nhược điểm của Word2Vec
FastText nâng cao kỹ thuật Word2Vec bằng cách không chỉ học biểu diễn từ mà còn chú trọng đến các n-gram ký tự bên trong từ Phương pháp này giúp FastText hiểu rõ hơn về cấu trúc từ, đồng thời cho phép mô hình hóa các từ mới dựa trên n-gram của chúng.
FastText sử dụng phương pháp biểu diễn n-gram để phân tích từ thành các n-gram ký tự thay vì coi mỗi từ là một đơn vị độc lập Chẳng hạn, từ "apple" được chia thành các n-gram như "app", "ppl", và "ple" với n=3, giúp cải thiện khả năng hiểu ngữ nghĩa của mô hình.
FastText có khả năng áp dụng Skip-gram hoặc CBOW cho các n-gram, cho phép học vector cho từng n-gram Sau đó, các vector này được gộp lại để tạo ra biểu diễn hoàn chỉnh cho từ.
FastText có khả năng tạo vector cho từ mới bằng cách sử dụng các n-gram mà từ đó chứa, điều này giúp giải quyết vấn đề từ mới mà Word2Vec không thể xử lý.
2.5 Lợi ích của FastText so với Word2Vec
FastText có khả năng xử lý các từ chưa gặp (OOV) bằng cách sử dụng n-gram, cho phép nó biểu diễn các từ mới một cách hiệu quả Điều này rất quan trọng đối với các ngôn ngữ như tiếng Việt, nơi có nhiều từ ghép và biến thể từ, giúp cải thiện độ chính xác trong các tác vụ xử lý ngôn ngữ tự nhiên.
FastText nâng cao khả năng hiểu biết về cấu trúc từ bằng cách học các phần của từ như tiền tố và hậu tố Điều này giúp cải thiện việc biểu diễn từ, đặc biệt là trong các trường hợp liên quan đến từ phái sinh hoặc từ biến cách.
FastText có khả năng phân biệt ngữ nghĩa tốt hơn nhờ vào việc nắm bắt cấu trúc ngữ nghĩa từ n-gram, giúp cải thiện độ chính xác trong việc xử lý các từ có ngữ nghĩa tương tự.
FastText tạo ra các vector n-gram cho mỗi từ, dẫn đến việc tăng số lượng vector cần lưu trữ Điều này làm cho kích thước mô hình của FastText lớn hơn so với Word2Vec.
- Tốn kém về mặt tính toán: Phân tích và tính toán n-gram có thể làm chậm quá trình huấn luyện so với các mô hình không sử dụng n-gram.