Chương trình tiền xử lý văn bản tiếng việt java

CHƯƠNG 1: TỔNG QUAN BÀI TOÁN TÓM TẮT VĂN BẢN

1.1 Tổng quan tóm tắt văn bản

1.1.1 Khái niệm

Tóm tắt văn bản là quá trình trích rút những thông tin quan trọng nhất từ một văn bản để tạo ra phiên bản ngắn gọn, xúc tích mang đầy đủ lượng thông tin của văn bản gốc kèm theo đó là tính đúng đắn về ngữ pháp và chính tả. Bản tóm tắt phải giữ được những thông tin quan trọng của toàn bộ văn bản chính. Bên cạnh đó, bản tóm tắt cần phải có bố cục chặt chẽ có tính đến các thông số như độ dài câu, phong cách viết và cú pháp văn bản. Phụ thuộc vào số lượng các văn bản, kỹ thuật tóm tắt có thể chia làm hai lớp: đơn văn bản và đa văn bản.

Tóm tắt đơn văn bản chỉ đơn giản là rút gọn một văn bản thành một sự trình bày ngắn gọn. Trong khi đó tóm tắt đa văn bản phải rút gọn một tập các văn bản thành một sự tóm tắt. Tóm tắt đa văn bản có thể xem như một sự mở rộng của tóm tắt đơn văn bản và thường dùng với thông tin chứa trong các cụm văn bản, để người dùng có thể hiểu được cụm văn bản đó. Tóm tắt đa văn bản phức tạp hơn tóm tắt đơn văn bản vì phải làm việc trên số lượng văn bản nhiều hơn.

1.1.2 Hướng tiếp cận và các phương pháp

Xét về phương pháp thực hiện, tóm tắt văn bản có hai hướng tiếp cận là tóm tắt theo kiểu trích chọn –“extraction” và tóm tắt theo kiểu tóm lược ý – “abstraction”.

1.1.2.1 Tóm tắt theo kiểu trích chọn (Extractive summarization)

Phương pháp tóm tắt trích chọn là công việc chọn ra một tập con những từ đã có, những lời nói hoặc những câu của văn bản gốc để đưa vào khuôn mẫu tóm tắt.

1.1.2.2 Tóm tắt theo kiểu tóm lược ý (Abstract summarization)

Phương pháp tóm tắt tóm lược xây dựng một biểu diễn ngữ nghĩa bên trong và sau đó sử dụng kỹ thuật xử lý ngôn ngữ để tạo ra bản tóm tắt gần gũi hơn so với những gì con người có thể tạo ra. Bản tóm tắt như vậy có thể chứa những từ không có trong bản gốc.

Tóm tắt tóm lược tạo ra một bản tóm tắt hiệu quả hơn so với tóm tắt trích chọn bởi việc nó có thể trích chọn thông tin từ tập các văn bản để khởi tạo bản tóm tắt thông tin rõ ràng. Một bản tóm tắt trình diễn thông tin tóm tắt trong một bản kết dính, dễ đọc và đúng ngữ pháp. Tính dễ đọc hay chất lượng ngữ pháp là một chất xúc tác để cải thiện chất lượng tóm tắt. Tóm tắt tóm lược được chia theo cách tiếp cận cấu trúc, theo cách tiếp cận ngữ nghĩa và gần đây là theo cách tiếp cận họ hàng.

1.1.3 Các ứng dụng sử dụng trong doanh nghiệp dựa vào hình thức tóm tắt văn bản

- Giám sát truyền thông (Media monitoring): Vấn đề quá tải thông tin và “sốc nội dung” đã được thảo luận rộng rãi. Tự động tóm tắt tạo cơ hội để cô đọng dòng thông tin liên tục thành những phần thông tin nhỏ hơn.

- Bản tin (Newsletters): Nhiều bản tin hàng tuần có hình thức giới thiệu sau đó là tuyển tập các bài báo có liên quan. Tóm tắt sẽ cho phép các tổ chức làm phong phú thêm các bản tin với một dòng tóm tắt (so với danh sách các liên kết), đây có thể là một định dạng đặc biệt thuận tiện trên thiết bị di động.

- Tiếp thị tìm kiếm và SEO (Search marketing and SEO): Khi đánh giá các truy vấn tìm kiếm cho SEO, điều quan trọng là phải hiểu toàn diện về những gì đối thủ cạnh tranh của bạn đang nói về nội dung của họ. Điều này trở nên đặc biệt quan trọng kể từ khi Google cập nhật thuật toán của mình và chuyển trọng tâm sang thẩm quyền chuyên đề (thay vì từ khóa). Tóm tắt nhiều tài liệu có thể là một công cụ mạnh mẽ để nhanh chóng phân tích hàng chục kết quả tìm kiếm, hiểu các chủ đề được chia sẻ và đọc lướt những điểm quan trọng nhất.

- Quy trình làm việc tài liệu nội bộ (Internal document workflow): Các công ty lớn liên tục sản xuất kiến ​​thức nội bộ, kiến ​​thức này thường được lưu trữ và sử dụng ít trong cơ sở dữ liệu dưới dạng dữ liệu phi cấu trúc. Các công ty này nên nắm lấy các công cụ cho phép họ sử dụng lại kiến ​​thức đã có. Tóm tắt có thể cho phép các nhà phân tích nhanh chóng hiểu mọi thứ mà công ty đã thực hiện trong một chủ đề nhất định và nhanh chóng tập hợp các báo cáo kết hợp các quan điểm khác nhau.

- Nghiên cứu tài chính (Financial research): Các công ty ngân hàng đầu tư chi một lượng lớn tiền để thu thập thông tin nhằm thúc đẩy việc ra quyết định của họ, bao gồm cả giao dịch chứng khoán tự động. Khi bạn là một nhà phân tích tài chính xem các báo cáo thị trường và tin tức hàng ngày, chắc chắn bạn sẽ gặp phải một bức tường và không thể đọc mọi thứ. Hệ thống tóm tắt phù hợp với các tài liệu tài chính như báo cáo thu nhập và tin tức tài chính có thể giúp các nhà phân tích nhanh chóng thu được các tín hiệu thị trường từ nội dung.

- Phân tích hợp đồng pháp lý (Legal contract analysis): Liên quan đến điểm 4 (quy trình công việc tài liệu nội bộ), các hệ thống tóm tắt cụ thể hơn có thể được phát triển để phân tích các văn bản pháp luật. Trong trường hợp này, một trình tóm tắt có thể tăng thêm giá trị bằng cách cô đọng hợp đồng vào các điều khoản rủi ro hơn hoặc giúp bạn so sánh các thỏa thuận.

- Tiếp thị truyền thông xã hội (Social media marketing): Các công ty sản xuất nội dung dạng dài, như sách trắng, sách điện tử và blog, có thể tận dụng tóm tắt để chia nhỏ nội dung này và làm cho nó có thể chia sẻ trên các trang mạng xã hội như Twitter hoặc Facebook. Điều này sẽ cho phép các công ty tiếp tục sử dụng lại nội dung hiện có.

- Trả lời câu hỏi và bot (Question answering and bots): Trợ lý cá nhân đang tiếp quản nơi làm việc và ngôi nhà thông minh. Tuy nhiên, hầu hết các trợ lý đều khá hạn chế đối với các nhiệm vụ rất cụ thể. Tóm tắt quy mô lớn có thể trở thành một kỹ thuật trả lời câu hỏi mạnh mẽ. Bằng cách thu thập các tài liệu phù hợp nhất cho một câu hỏi cụ thể, người tóm tắt có thể tập hợp một câu trả lời gắn kết dưới dạng một bản tóm tắt nhiều tài liệu.

- Kịch bản video (Video scripting): Video đang trở thành một trong những phương tiện tiếp thị quan trọng nhất. Bên cạnh các nền tảng tập trung vào video như YouTube hay Vimeo, mọi người hiện đang chia sẻ video trên các mạng chuyên nghiệp như LinkedIn. Tùy thuộc vào loại video, có thể cần nhiều hoặc ít tập lệnh. Tóm tắt có thể trở thành một đồng minh khi tìm cách sản xuất một kịch bản kết hợp nghiên cứu từ nhiều nguồn.

- Các trường hợp y tế (Medical cases): Với sự phát triển của y tế từ xa, nhu cầu ngày càng tăng để quản lý các trường hợp y tế tốt hơn, hiện đã được kỹ thuật số hóa hoàn toàn. Khi các mạng lưới y tế từ xa hứa hẹn một hệ thống chăm sóc sức khỏe cởi mở và dễ tiếp cận hơn, công nghệ phải làm cho quy trình có thể mở rộng. Tóm tắt có thể là một thành phần quan trọng trong chuỗi cung ứng sức khỏe từ xa khi cần phân tích các trường hợp y tế và chuyển các trường hợp này đến chuyên gia y tế thích hợp.

- Sách và tài liệu (Books and literature): Google được cho là đã làm việc trong các dự án cố gắng hiểu tiểu thuyết. Tóm tắt có thể giúp người tiêu dùng nhanh chóng hiểu cuốn sách nói về điều gì trong quá trình mua hàng của họ.

- Quá tải email (Email overload): Các công ty như Slack được sinh ra để giúp chúng ta tránh xa việc gửi email liên tục. Tóm tắt có thể hiển thị nội dung quan trọng nhất trong email và cho phép chúng tôi đọc lướt email nhanh hơn.

- E-learning và những sự phân công lớp ngữ nghĩa (E-learning and class assignments): Nhiều giáo viên sử dụng các nghiên cứu điển hình và tin tức để làm khung bài giảng của họ. Tóm tắt có thể giúp giáo viên cập nhật nhanh hơn nội dung của họ bằng cách tạo báo cáo tóm tắt về chủ đề họ quan tâm.

- Khoa học và R&D (Science and R&D): Các bài báo học thuật thường bao gồm một bản tóm tắt do con người tạo ra đóng vai trò như một bản tóm tắt. Tuy nhiên, khi bạn được giao nhiệm vụ theo dõi các xu hướng và sự đổi mới trong một lĩnh vực nhất định, việc đọc mọi phần tóm tắt có thể trở nên quá tải. Các hệ thống có thể nhóm các giấy tờ và nén thêm các bản tóm tắt có thể trở nên hữu ích cho nhiệm vụ này.

- Nghiên cứu bằng sáng chế (Patent research): Nghiên cứu bằng sáng chế có thể là một quá trình tẻ nhạt. Cho dù bạn đang thực hiện nghiên cứu thông tin thị trường hay đang tìm cách nộp một bằng sáng chế mới, một trình tóm tắt để trích xuất các tuyên bố nổi bật nhất trong các bằng sáng chế có thể là một công cụ tiết kiệm thời gian.

- Các cuộc họp và hội nghị truyền hình (Meetings and video-conferencing): Với sự phát triển của làm việc từ xa, khả năng nắm bắt các ý tưởng và nội dung chính từ các cuộc trò chuyện ngày càng cần thiết. Một hệ thống có thể chuyển giọng nói thành văn bản và tạo tóm tắt từ các cuộc họp nhóm của bạn sẽ thật tuyệt vời.

- Bộ phận trợ giúp và hỗ trợ khách hàng (Help desk and customer support): Cơ sở kiến ​​thức đã có từ lâu và chúng rất quan trọng đối với các nền tảng SAAS để cung cấp hỗ trợ khách hàng trên quy mô lớn. Tuy nhiên, đôi khi người dùng có thể cảm thấy quá tải khi duyệt qua các tài liệu trợ giúp. Việc tóm tắt nhiều tài liệu có thể cung cấp các điểm chính từ các bài báo trợ giúp và cung cấp cho người dùng sự hiểu biết đầy đủ về vấn đề này không?

- Giúp đỡ người tàn tật (Helping disabled people): Khi công nghệ chuyển giọng nói thành văn bản tiếp tục được cải thiện, những người khuyết tật về thính giác có thể được hưởng lợi từ việc tóm tắt để cập nhật nội dung một cách hiệu quả hơn.

- Ngôn ngữ lập trình (Programming language): Đã có nhiều nỗ lực để xây dựng công nghệ AI có thể tự viết mã và xây dựng trang web. Có khả năng "trình tóm tắt mã" tùy chỉnh sẽ xuất hiện để giúp các nhà phát triển có được bức tranh toàn cảnh về một dự án mới.

- Tạo nội dung tự động (Automated content creation): "Người viết rô-bốt sẽ thay thế công việc của tôi chứ?" Đó là điều mà các nhà văn đang ngày càng tự hỏi bản thân. Nếu trí tuệ nhân tạo có thể thay thế bất kỳ giai đoạn nào của quá trình tạo nội dung, thì tính năng tóm tắt tự động có thể sẽ đóng một vai trò quan trọng. Liên quan đến điểm 3 (các ứng dụng trong tiếp thị tìm kiếm và SEO), viết một blog tốt thường đi bằng cách tóm tắt các nguồn hiện có cho một truy vấn nhất định. Công nghệ tóm tắt có thể đạt đến điểm mà nó có thể soạn một bài báo hoàn toàn nguyên bản từ việc tóm tắt các kết quả tìm kiếm có liên quan.

CHƯƠNG 2: TÓM TẮT VĂN BẢN BẰNG CÁCH XẾP HẠNG TRÊN ĐỒ THỊ VỚI THUẬT TOÁN PAGERANK VÀ TEXTRAN

2.1 Tìm hiểu về Pagerank

2.1.1 PageRank là gì?

PageRank (PR) là công thức toán học đánh giá giá trị của trang thông tin, qua việc xem xét số lượng, chất lượng của các trang liên kết đến nó. Mục đích của PageRank là đánh giá tầm quan trọng tương đối của Website trong toàn bộ hệ thống world Wide Web.

Nhà đồng sáng lập Google, Serge Brin và Larry Page đã phát minh ra PageRank vào năm 1997 như một phần của dự án nghiên cứu tại ĐH Stanford với mong muốn cải thiện chất lượng hoạt động của các công cụ tìm kiếm.

Bởi vì vào thời điểm đó, công cụ tìm kiếm (như Yahoo, Altavista) gặp phải các vấn đề:

  • - Hoạt động không hiệu quả, thường đưa ra các website không liên quan
  • - Trả về kết quả tìm kiếm không phù hợp với mong đợi người dùng

Và PageRank được lập nên nhằm giải quyết 2 vấn đề này.

Thuật toán toán học PageRanks đối với một hệ thống liên kết đơn giản, sẽ được hiển thị tỷ lệ bằng %. Trang C có một PageRank cao hơn so với trang E, mặc dù có ít liên kết (links) đến trang C; một link duy nhất dẫn tới C từ một trang quan trọng và chính vì thế mà C có giá trị cao. Nếu như một người lướt web bắt đầu từ một trang bất kỳ thì có 85% xác suất chọn một link ngẫu nhiên trên trang mà họ đang xem, và 15% họ sẽ chọn chuyển sang một trang web bất kỳ từ toàn bộ hệ thống các liên kết. Người dùng sẽ truy cập vào trang E với xác suất 8.1%. (Xác suất 15% truy cập tới một trang bất kỳ tương ứng với yếu tố damping là 85%.) Nếu không có yếu tố damping, người dùng cuối cùng cũng sẽ kết thúc quá trình lướt web tại trang A, B, hoặc C, và các trang khác sẽ có PageRank bằng 0. Nếu như tính cả yếu tố damping, trang A vẫn liến kết đến tất cả các trang trong hệ thống, mặc dù chỉ có 1 link trỏ đi.

Chương trình tiền xử lý văn bản tiếng việt java

2.1.2 Thuật toán của Google PageRank hoạt động như thế nào?

Giả sử trang web A được các trang T1… Tn trỏ đến. Ta có công thức tính chỉ số PageRank của trang A như sau:

Chương trình tiền xử lý văn bản tiếng việt java

Tôi sẽ giải thích chi tiết hơn về tham số d trong phần kế tiếp.

Lưu ý: PageRanks tạo một tỉ lệ % phân bố điểm số trên các trang Web, do đó PageRank của tổng tất cả các trang Web sẽ là một.

Bạn đang bối rối phải không? Tôi sẽ giải thích đơn giản hơn.

Google định nghĩa 3 yếu tố trong khi phân tích đường dẫn của trang Web, đó là:

  • - Số lượng và chất lượng của các Internal Link trỏ đến trang;
  • - Số lượng Outlink trên mỗi trang;
  • - Chỉ số PageRank của mỗi trang liên kết.

Giả sử trang C có 2 liên kết: 1 từ trang A & 1 từ trang B. Trang A mạnh hơn trang B và cũng có ít liên kết trỏ ra ngoài hơn.

Đưa thông tin này vào thuật toán PageRank và bạn sẽ nhận được PageRank của trang C.

Chương trình tiền xử lý văn bản tiếng việt java

Yếu tố hệ số đường dẫn trong công thức tính PageRank

Công thức PageRank có 1 yếu tố được gọi là hệ số điều chỉnh – Tham số d (damping factor – Dịch sát nghĩa ra là hệ số giảm xóc).

  • - Tham số d mô phỏng xác suất của một người dùng ngẫu nhiên liên tục nhấp vào liên kết trên trang khi họ truy cập vào Website.

Thực tế số lần Click vào Link sẽ giảm dần trong quá trình người dùng dạo chơi trên Website của bạn.

Hãy nghĩ như thế này:

  • - Xác suất bạn Click vào liên kết trên trang đầu tiên bạn truy cập là khá cao. Nhưng khả năng bạn Click vào Link trên trang tiếp theo sẽ giảm dần một chút. Và cứ thế tiếp tục giảm cho đến khi bạn thoát khỏi Web.

Theo đó, tổng điểm số cho một trang Web sẽ được nhân với hệ số điều chỉnh d của Google (thường được lấy bằng 0,85) với mỗi lần lặp của thuật toán PageRank.

2.2 Tìm hiểu về Textrank

2.2.1 Khái niệm

TextRank là một kỹ thuật tóm tắt văn bản theo phương pháp extractive và trong học máy thì là học không giám sát (Unsupervised Learning). TextRank không dựa trên bất kỳ dữ liệu đào tạo nào trước đó và có thể hoạt động với bất kỳ đoạn văn bản tùy ý nào.

Từ khóa là một từ hay một cụm từ dùng để mô tả một cách chính xác, ngắn gọn nhất nội dung chính của một tài liệu (văn bản, hay các trang web). Trong tiếng Anh, từ khóa được thể hiện dưới nhiều thuật ngữ khác nhau như: keywords, term, query term, hay tags; nhưng ý nghĩa của chúng là giống nhau.

Về cơ bản các bước của tiến trình trích rút thông tin như sau:

Theo tiến sĩ Diana Maynard, hầu hết các hệ thống trích rút thông tin nói chung thường tiến hành các bước sau:

* Tiền xử lý

- Nhận biết định dạng tài liệu( Format detection)

- Tách từ ( Tokenization)

- Phân đoạn từ( Word segmentation)

- Giải quyết nhập nhằng ngữ nghĩa( Sense disambiguation)

- Tách câu( Sentence splitting)

- Gán nhãn từ loại( POS tagging)

Phương pháp bao gồm việc xác định một số đơn vị văn bản dựa trên văn bản ngôn ngữ tự nhiên, kết hợp nhiều đơn vị văn bản với nhiều nút biểu đồ, và xác định ít nhất một mối quan hệ kết nối giữa ít nhất hai trong số nhiều đơn vị văn bản. Phương pháp này cũng bao gồm liên kết ít nhất một mối quan hệ kết nối với ít nhất một cạnh biểu đồ kết nối ít nhất hai trong số nhiều nút biểu đồ và xác định nhiều thứ hạng liên quan đến nhiều nút biểu đồ dựa trên ít nhất một cạnh biểu đồ.

2.2.2 Mô hình TextRank

Ý tưởng của thuật toán này dựa trên hai yếu tố: bỏ phiếu và đề cử. "Khi đỉnh đầu tiên liên kết với đỉnh thứ hai, ví dụ như thông qua mối quan hệ kết nối hoặc cạnh biểu đồ. Mỗi một liên kết đến đỉnh đang xét thì nó được 1 phiếu bầu.

Như vậy, càng nhiều phiếu bầu thì đỉnh đó càng quan trọng. Từ cách xác định trên thì trọng số của một đỉnh chính là số phiếu bầu cho đỉnh đó.

Trọng số của mỗi câu u (đỉnh) được tính như sau:

Chương trình tiền xử lý văn bản tiếng việt java

Trong đó d là nhân tố giảm, có giá trị từ 0 đến 1. Nó là xác suất mà một đỉnh có liên kết đến một đỉnh bất kỳ trong đồ thị. Đối với các trang web thì d là xác suất người dùng nhấn vào một liên kết bất kỳ và xác suất để người dùng vào một trang web hoàn toàn mới là 1 – d.

Theo PageRank thì d = 0.85. Đây cũng là xác suất sẽ được sử dụng trong TextRank. Lần đầu chạy, trọng số sẽ được gắn cho các đỉnh là bằng 1.

Ta có đồ thị G = (V, E) là đồ thị vô hướng. Trong đó:

Chương trình tiền xử lý văn bản tiếng việt java

V: là tập các đỉnh {S1, S2, S3, S4, S5, S6};

E: là tập các cạnh của đồ thị,

Ta có:

Chương trình tiền xử lý văn bản tiếng việt java

Trọng số mỗi đỉnh S1 – S6 được tính như sau:

S1 nối với các đỉnh S2, S3, S4, S5 nên trọng số sẽ bằng:

u = S1: PageRank(S1) = 0,025 + 0,85 (1/4 + 1/3 + 1/4 + 1/3) = 1,017

Tương tự ta có trọng số các đỉnh khác như sau:

u = S2: PageRank(S2) = 0,025 + 0,85 (1/4 + 1/4 + 1/3 + 1/3) = 1,017

u = S3: PageRank(S3) = 0,025 + 0,85 (1/4 + 1/4 + 1/4) = 0,6625

u = S4: PageRank(S4) = 0,025 + 0,85 (1/4 + 1/4 + 1/3 + 1/2) = 1,1583

u = S5: PageRank(S5) = 0,025 + 0,85 (1/4 + 1/4 + 1/2) = 0,875

u = S6: PageRank(S5) = 0,025 + 0,85 (1/3 + 1/4 + 1/2) = 0,9458

Lần chạy đầu tiên, trọng số sẽ được gắn cho các đỉnh bằng 1.

Ban đầu gán cho tất cả các đỉnh trong đồ thị các giá trị khởi tạo và tính toán lặp lại cho đến khi kết quả hội tụ lại đạt ngưỡng xác định. Sau quá trình tính toán thì trọng số của mỗi đỉnh chính là mức độ quan trọng của đỉnh đó trong toàn đồ thị.

2.2.3 Sử dụng TextRank trong rút trích từ khóa

Năm 2003, Hulth đã dùng hệ thống học máy giám sát để trích xuất từ khoá kết hợp cả các đặc trưng về từ vựng và cú pháp.

Mục đích của việc trích xuất từ khoá tự động là tìm ra các cụm từ mô tả văn bản tốt nhất.

- Rút trích từ khóa là chuỗi của một hoặc nhiều từ vựng được rút ra từ văn bản.

- Quan hệ nằm giữa 2 đơn vị từ vựng hữu ích cho việc đánh giá thì đều được thêm vào là cạnh của đồ thị.

Chương trình tiền xử lý văn bản tiếng việt java

CHƯƠNG 3: ỨNG DỤNG VÀ CÀI ĐẶT THUẬT TOÁN TEXTRANK TRONG QUÁ TRÌNH TÓM TẮT VĂN BẢN

3.1 Dữ liệu đầu vào

Tập thư mục: DUC_TEXT(chứ 10 tập văn bản thô (xml), mỗi tập sẽ biểu diễn văn bản các câu trong văn bản.

Ví dụ:

Chương trình tiền xử lý văn bản tiếng việt java

3.2 Các bước thực hiện

3.2.1 Mô phỏng quy trình tóm tắt văn bản bằng cách áp dụng thuật toán Textrank

Chương trình tiền xử lý văn bản tiếng việt java

Bước 1: Đọc tất cả tệp dữ liệu

Bước 2: Tiến hành tiền xử lý bằng việc lọc danh sách tag chứ từ khóa tag

Ví dụ như

Chương trình tiền xử lý văn bản tiếng việt java

  • Tạo 1 lớp đưa các thuộc tính như {docid, num, wdcount, textvalue} cho việc xử lý về sau.
    Chương trình tiền xử lý văn bản tiếng việt java
  • Sau khi loại bỏ ký tự thừa trong từng câu. Ta sẽ tổ hợp thành 1 danh sách các câu trong văn bản.

Bước 3: Sau khi tổ hợp thành một danh sách bao gồm các câu, ta đi tách từ trong câu đó ra.

Bước 4: Đồ thị hóa văn bản (tức là câu - tương ứng với đỉnh, giữa 2 câu tương ứng với cạnh) và tạo ra một ma trận

Gồm 2 phần chính:

Phần 1: Tìm mối liên hệ giữa các câu, nếu các câu có mối liên hệ (có sự tương đồng) biểu diễn 1, còn lại 0.

Chương trình tiền xử lý văn bản tiếng việt java

Phần 2: Bằng phương pháp: đếm giữa 2 câu, ta quy định về sự tương đồng bằng 1 số cụ thể.

Chương trình tiền xử lý văn bản tiếng việt java

Bước 5: Sau khi có ma trận tương tự, ta tính trọng số các cạnh.

Chương trình tiền xử lý văn bản tiếng việt java

Bước 6: Ta tiến hành sắp xếp các câu theo trọng số từ cao xuống thấp

Chương trình tiền xử lý văn bản tiếng việt java

Bước 7: Ghi kết quả trả về vào thư mục. Thực hiện quay lại từ bước 1 để xử lý các tệp còn lại.

3.2.2 Thêm một số thư viện và cài đặt

Hệ điều hành: Windows

- Ngôn ngữ lập trình: Python 3.8

- IDE: PyCharm; Interpreter: Anaconda

- Library Python:

+ Numpy: hỗ trợ xử lý trên ma trận

+ Natural Language Toolkit (nltk): hỗ trợ xử lý ngôn ngữ trên văn bản tiếng

anh

+ bs4 – BeautifulSoup: hỗ trợ phân tích và xử lý tài liệu HTML, XML

+ glob: hỗ trợ xử lý nhiều tệp trong thư mục

CHƯƠNG 4: KẾT LUẬN

4.1 Kết quả sau khi chạy thực nghiệm

- Trình bày tổng quan về cơ sở lý thuyết về tóm tắt văn bản bao gồm khái niệm,

hướng tiếp cận, các phương pháp, các ứng dụng về việc sử dụng trong doanh nghiệp dựa vào hình thức tóm tắt văn bản.

- Trình bày thuật toán của Google PageRank hoạt động như thế nào? và cách thức sử dụng TextRank trong việc

rút trích từ khóa.

- Dùng một số thư viện BeautifulSoup-hỗ trợ phân tích và xử lý tài liệu HTML, XML, glob-hỗ trợ xử lý nhiều tệp trong thư mục.