Áp Dụng Thuật Toán K-NN Để Xây Dựng Cơ Chế Tư Vấn Tin Tức

Chuyên khảo kỹ thuật phân tích Áp dụng thuật toán k lân cận để xây dựng cơ chế tư vấn tin tức, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo.

Trường đại học

Đại học Kinh Tế Huế

Chuyên ngành

Tin Học Kinh Tế

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2017

64
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CÁM ƠN

1. PHẦN I: MỞ ĐẦU

1.1. Lý do chọn đề tài

1.2. Mục tiêu, nhiệm vụ, đối tượng và phạm vi nghiên cứu

1.2.1. Mục tiêu

1.2.2. Nhiệm vụ

1.2.3. Đối tượng và phạm vi nghiên cứu

1.3. Phương pháp nghiên cứu

1.4. Nội dung đề tài

2. PHẦN 2: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU

2. CHƯƠNG 1: CƠ SỞ LÝ LUẬN

2.1. Tổng quan về thuật toán K-NN

2.1.1. Khái niệm thuật toán K-NN

2.1.2. Lịch sử ra đời thuật toán K-NN

2.1.3. Nội dung thuật toán K-NN

2.1.3.1. Ưu điểm của phương pháp K-NN
2.1.3.2. Nhược điểm của phương pháp K-NN

2.1.4. Ví dụ đơn giản về K-NN

2.2. Công thức tính TF-IDF

2.2.1. Khái niệm

2.2.2. TF

2.2.3. IDF

2.2.4. TF-IDF

2.2.5. Ưu nhược điểm của TF-IDF

2.3. Các công thức tính khoảng cách

2.3.1. Công thức tính khoảng cách euclid (metric hoặc metric Pytago)

2.3.2. Khoảng cách Manhettan

2.4. Lọc thông tin

2.4.1. Khái niệm hệ tư vấn

2.4.2. Hướng tiếp cận của phương pháp lọc

2.4.2.1. Phương pháp lọc dựa vào bộ nhớ
2.4.2.2. Phương pháp lọc dựa vào mô hình

2.4.3. Phương pháp lọc

2.4.3.1. Phương pháp lọc dựa trên nội dung
2.4.3.1.1. Phát biểu bài toán lọc dựa trên nội dung
2.4.3.1.2. Phương pháp Lọc nội dung dựa vào bộ nhớ
2.4.3.1.3. Phương pháp lọc nội dung dựa vào mô hình
2.4.3.1.4. Điểm yếu của phương pháp lọc theo nội dung
2.4.3.2. Phương pháp lọc cộng tác
2.4.3.2.1. Phát biểu bài toán lọc dựa trên cộng tác
2.4.3.2.2. Phương pháp lọc cộng tác dựa vào bộ nhớ
2.4.3.2.3. Phương pháp lọc cộng tác dựa vào mô hình
2.4.3.3. Phương pháp lọc kết hợp

2.5. Các công trình liên quan

3. CHƯƠNG 2: CÀI ĐẶT THUẬT TOÁN K-NN ĐỂ XÂY DỰNG CƠ CHẾ TƯ VẤN THÔNG TIN

3.1. Xác định K văn bản (đối tượng) cần phân loại

3.2. Đọc nội dung văn bản. Tính giá trị TF-IDF. Tính khoảng cách từ văn bản cần phân loại đến toàn bộ văn bản khác

3.3. Lấy ra K văn bản để đưa ra tư vấn

4. CHƯƠNG 3: XÂY DỰNG THÍ NGHIỆM

4.1. Người dùng 1

4.2. Người dùng 2

4.3. Người dùng 3

PHẦN 3: KẾT LUẬN VÀ KIẾN NGHỊ

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về hệ thống tư vấn thông tin bằng thuật toán K NN

Hệ thống tư vấn thông tin ngày càng trở nên quan trọng trong thời đại số. Việc xây dựng một hệ thống hiệu quả giúp người dùng dễ dàng tìm kiếm thông tin phù hợp. Thuật toán K-NN (K-Nearest Neighbors) là một trong những phương pháp phổ biến nhất để phân loại và tư vấn thông tin. Bài viết này sẽ đi sâu vào cách thức hoạt động của thuật toán K-NN và ứng dụng của nó trong hệ thống tư vấn.

1.1. Khái niệm về thuật toán K NN và ứng dụng

Thuật toán K-NN là một phương pháp phân loại dựa trên sự tương đồng giữa các đối tượng. Nó được sử dụng rộng rãi trong nhiều lĩnh vực như phân loại văn bản, nhận diện hình ảnh và tư vấn thông tin. K-NN hoạt động bằng cách tìm kiếm K đối tượng gần nhất trong không gian dữ liệu và phân loại đối tượng cần phân loại dựa trên các đối tượng này.

1.2. Lịch sử phát triển của thuật toán K NN

K-NN đã được phát triển từ rất sớm, với những nguyên lý cơ bản được đề xuất bởi các nhà khoa học như Ibn al-Haytham và Fix & Hodges. Thuật toán này đã trải qua nhiều giai đoạn phát triển và hiện nay được coi là một trong những phương pháp phân loại đơn giản và hiệu quả nhất.

II. Vấn đề và thách thức trong xây dựng hệ thống tư vấn thông tin

Mặc dù thuật toán K-NN có nhiều ưu điểm, nhưng cũng tồn tại một số thách thức trong việc áp dụng nó vào hệ thống tư vấn thông tin. Việc xử lý dữ liệu lớn và độ chính xác của kết quả là những vấn đề cần được giải quyết.

2.1. Thách thức về dữ liệu lớn trong K NN

Khi áp dụng K-NN vào hệ thống tư vấn thông tin, việc tính toán khoảng cách giữa các đối tượng trong một tập dữ liệu lớn có thể gây ra độ trễ và giảm hiệu suất. Điều này đòi hỏi các giải pháp tối ưu hóa để cải thiện tốc độ xử lý.

2.2. Độ chính xác và ảnh hưởng của nhiễu

Độ chính xác của thuật toán K-NN có thể bị ảnh hưởng bởi các yếu tố như nhiễu trong dữ liệu. Việc xác định K phù hợp và xử lý các đối tượng không liên quan là rất quan trọng để đảm bảo kết quả phân loại chính xác.

III. Phương pháp xây dựng hệ thống tư vấn thông tin bằng K NN

Để xây dựng một hệ thống tư vấn thông tin hiệu quả, cần áp dụng các phương pháp cụ thể trong việc triển khai thuật toán K-NN. Các bước thực hiện sẽ được trình bày chi tiết dưới đây.

3.1. Cài đặt thuật toán K NN

Cài đặt thuật toán K-NN bao gồm việc xác định giá trị K, tính toán khoảng cách giữa các đối tượng và phân loại dựa trên các láng giềng gần nhất. Việc lựa chọn ngôn ngữ lập trình và công cụ phù hợp cũng rất quan trọng.

3.2. Tính toán trọng số TF IDF trong K NN

Trọng số TF-IDF giúp xác định độ quan trọng của từ trong văn bản. Việc áp dụng TF-IDF vào K-NN sẽ cải thiện độ chính xác của hệ thống tư vấn thông tin bằng cách lọc ra các từ khóa quan trọng.

IV. Ứng dụng thực tiễn của hệ thống tư vấn thông tin K NN

Hệ thống tư vấn thông tin dựa trên thuật toán K-NN đã được áp dụng thành công trong nhiều lĩnh vực như thương mại điện tử, giáo dục và y tế. Những ứng dụng này không chỉ giúp người dùng tiết kiệm thời gian mà còn nâng cao trải nghiệm tìm kiếm thông tin.

4.1. Ứng dụng trong thương mại điện tử

Trong thương mại điện tử, hệ thống tư vấn thông tin giúp người dùng tìm kiếm sản phẩm phù hợp dựa trên sở thích và hành vi mua sắm trước đó. Điều này không chỉ tăng cường trải nghiệm người dùng mà còn thúc đẩy doanh số bán hàng.

4.2. Ứng dụng trong giáo dục

Hệ thống tư vấn thông tin trong giáo dục giúp sinh viên tìm kiếm tài liệu học tập phù hợp với nhu cầu và sở thích cá nhân. Việc này giúp nâng cao hiệu quả học tập và tạo ra môi trường học tập linh hoạt hơn.

V. Kết luận và tương lai của hệ thống tư vấn thông tin K NN

Hệ thống tư vấn thông tin bằng thuật toán K-NN có tiềm năng lớn trong việc cải thiện trải nghiệm người dùng trong nhiều lĩnh vực. Tương lai của hệ thống này sẽ phụ thuộc vào việc phát triển các phương pháp tối ưu hóa và cải tiến thuật toán.

5.1. Tương lai của thuật toán K NN

Với sự phát triển của công nghệ và dữ liệu lớn, thuật toán K-NN sẽ tiếp tục được cải tiến để đáp ứng nhu cầu ngày càng cao của người dùng. Việc kết hợp K-NN với các công nghệ mới như học sâu có thể mở ra nhiều cơ hội mới.

5.2. Khuyến nghị cho nghiên cứu tiếp theo

Nghiên cứu tiếp theo nên tập trung vào việc phát triển các phương pháp tối ưu hóa thuật toán K-NN và ứng dụng của nó trong các lĩnh vực mới. Việc này sẽ giúp nâng cao hiệu quả và độ chính xác của hệ thống tư vấn thông tin.

15/07/2025
Áp dụng thuật toán k lân cận để xây dựng cơ chế tư vấn tin tức

Trích đoạn nội dung tài liệu

CHƯƠNG 1: CƠ SỞ LÝ LUẬN 1. Tổng quan về thuật toán K-NN 1.1 Khái niệm thuật toán K-NN: “Hãy cho tôi biết bạn của bạn là ai, tôi sẽ cho bạn biết bạn là người như thế nào.” Danh ngôn dân gian. Đó là một câu danh ngôn phổ biến, để dự đoán một người ta dựa vào bạn bè, người thân xung quanh họ, tương tự thuật toán K-NN cũng có ý tưởng như vậy, từ đó ta có thể phát biểu về thuật toán K-NN như sau: Thuật toán K-NN (K-Nearest Neighbors nghĩa là K-hàng xóm gần nhất) [2] [3] [4] [5] là một trong những thuật toán học có giám sát [6] [7] căn bản nhất, đơn giản nhất, trực quan nhất dùng để phân loại dữ liệu, thuật toán này dùng để phân loại một đối tượng dựa vào các đối tượng hoặc lớp trong tập tham chiếu xung quanh, đối tượng sẽ được phân loại cùng với đối tượng hoặc lớp có nhiều nét tương đồng nhất. Thuật toán này không cần học hỏi từ dữ liệu cũ.2 Lịch sử ra đời thuật toán K-NN: K-NN là một phương pháp đơn giản nên từ rất sớm đã được đề cập đến, người đầu tiên là nhà khoa học Ibn al-Haytham (965-1040) [9].

Trong lĩnh vực quang học và nhận thức, K-NN được nhắc đến trong cuốn sách của ông - Lý thuyết nhận thức thị giác của Alhacen, dưới những nguyên tắc: “Các cá thể của một loài nào đó sẽ giống hệt nhau, các cá thể khác nhau theo các đặc điểm riêng biệt có thể nhận biết bằng mắt”. Quan điểm này giống như là hỗn hợp của K-NN và quy tắc trung bình gần nhất, khi xác định các dạng phổ quát. Tuy nhiên đây chỉ là nguyên tắc, đến thế kỉ XIV, những nguyên lý cơ bản của K- NN được Ockham đưa ra “chọn giả thuyết với ít giả thuyết nhất”. Có thể hiểu đây là luật SV: Ngô Minh Nhật – K47 Tin Học Kinh Tế 4 Khóa luận tốt nghiệp GVHD : TS.

Nguyễn Đình Hoa Cương của K-NN cho các thuộc tính định danh, tuy nhiên Ockham nhấn mạnh đây chỉ là các xây dựng trên ý tưởng chứ không phải xây dựng trên các dạng quan sát [9]. Mãi đến một thời gian rất lâu sau này, thuật toán K-NN lần đầu tiền được đề xuất và công bố rõ ràng, đầy đủ vào năm 1951 bởi Fix và Hodges [8] [9], đây là thuật toán lâu đời và đơn giản của thuật toán mô hình phân loại. Từ nhu cầu xác định một ẩn số mà không biết hoặc khó xác định các tham số của nó, phương pháp này được xây dựng lên để xử lý vấn đề này. Đến năm 1962 thì được Sebestyen gọi là Thuật toán gần gũi [9].

Năm 1965 thì được gọi là Phân loại khoảng cách tối thiểu bởi Cover và Hart [9]. Tuy nhiên chính xác và phổ biến vẫn là của Fix và Hodges.3 Nội dung thuật toán K-NN: Thuật toán K-NN dùng để phân loại một đối tượng dựa vào độ tương tự với K đối tượng xung quanh trong một tập tham chiếu. K là số nguyên dương được chọn trước khi tính toán. Với thuật toán này ta có 5 bước để thực hiện [4]:  Bước 1 : Xác định giá trị tham số K (số láng giềng gần nhất).

 Bước 2 : Tính khoảng cách giữa đối tượng cần phân lớp với tất cả các đối tượng trong không gian xung quanh (thường sử dụng khoảng Euclid, Manhettan).  Bước 3 : Sắp xếp khoảng cách theo thứ tự tăng dần và xác định K láng giềng gần nhất với đối tượng chính.  Bước 4 : Lấy tất cả các lớp của K láng giềng gần nhất đã xác định.  Bước 5 : Dựa vào các lớp của láng giềng gần nhất để xác định lớp cho đối tượng chính.

SV: Ngô Minh Nhật – K47 Tin Học Kinh Tế 5 Khóa luận tốt nghiệp GVHD : TS. Nguyễn Đình Hoa Cương Hình 1: Lưu đồ thuật toán của thuật toán K-NN 1.1 Ưu điểm của phương pháp K-NN: Thuật toán K-NN được sử dụng rộng rãi vì có nhiều ưu điểm như [2] [6]:  Rất đơn giản, dễ học và thực hiện còn gọi là học lười vì khi thực hiện thì không cần xây dựng các mô hình trên tập tham chiếu, nghĩa là không cần gom các văn bản giống nhau thành một nhóm để tính toán, có thể để ngẫu nhiên như vậy để thực hiện.  Có thể làm việc trên nhiều loại dữ liệu khác nhau như dữ liệu số, văn bản, đối tượng cụ thể, đồ vật.  Giải quyết tốt các vấn đề phân loại, hồi quy, gộp nhóm với tỷ lệ chính xác cao mà lại đơn giản để thực hiện.

 Ứng dụng thành công trong rất nhiều lĩnh vực như phân loại thông tin, phân loại số liệu, phân loại văn bản, từ ngữ, phân loại đối tượng trừu tượng. SV: Ngô Minh Nhật – K47 Tin Học Kinh Tế 6 Khóa luận tốt nghiệp GVHD : TS. Nguyễn Đình Hoa Cương 1.2 Nhược điểm của phương pháp K-NN: Tuy nhiên thuật toán K-NN vẫn có một số nhược điểm như [2] [10]:  Chỉ có thể phân loại thông tin chứ không có khả năng phân tích để tìm ra thông tin có giá trị. Chỉ có thể áp dụng trong lĩnh vực phân loại.

 Vì phải tính khoảng cách đến tất cả đối tượng, rồi xác định độ tương tự nên với một dữ liệu lớn thì sẽ rất mất thời gian để phân tích.  Dễ bị ảnh hưởng bởi “nhiễu”, là các đối tượng ở gần đối tượng cần phân loại nhưng chỉ là một lớp nhỏ, nên khi xét trong một tham chiếu K ít đối tượng thì rất dễ ảnh hưởng đến độ chính xác của kết quả.4 Ví dụ đơn giản về K-NN: Hình 2 : Mô tả phương pháp K-NN ( Wikipedia 2007 ) Hãy xác định đối tượng hình tròn sẽ thuộc lớp với hình vuông hay là thuộc lớp với hình tam giác ? Xét vòng tròn nhỏ nét liền ở trong, tức là ta lấy K = 3, thì ta thấy có 2 hình tam giác đứng gần hình tròn hơn so với chỉ 1 hình vuông, nên hình tròn sẽ được phân loại thuộc lớp với hình tam giác. Nhưng nếu ta lấy mẫu K = 5 thì sao ? Tức là xét vòng tròn nét đứt ở ngoài, ta thấy có 3 hình vuông đứng gần với hình tròn hơn so với có 2 hình tam giác nên hình tròn sẽ được phân loại thuộc lớp với hình vuông. SV: Ngô Minh Nhật – K47 Tin Học Kinh Tế 7 Khóa luận tốt nghiệp GVHD : TS.

Nguyễn Đình Hoa Cương Ở đây ta thấy có sự khác nhau nếu ta lấy K đối tượng khác nhau, vì chỉ có ít đối tượng để xét đến, nên theo nhược điểm của K-NN có thể gọi các hình tam giác này là nhiễu, gây ảnh hưởng đến kết quả cuối cùng. Tuy nhiên, các đối tượng ở đây đã được xem như là cùng 1 định dạng tương tự nhau và khoảng cách giữa các đối tượng đã được tính toán và sắp xếp, nhưng trong đề tài này thì sẽ rắc rối hơn, ta phải tính toán nhiều việc. Sau đây là giới thiệu về các công việc phải làm để có thể giải quyết thuật toán K-NN trong tư vấn thông tin. Công thức tính TF-IDF: 2.1 Khái niệm: TF-IDF [11] [12] là từ viết tắt của thuật ngữ Term Frequency – Inverse Document Frequency nghĩa là trọng số của một từ trong một văn bản mà văn bản đó lại thuộc một tập tham chiếu nhiều văn bản khác, trọng số này thể hiện độ quan trọng của từ đó trong văn bản thuộc một tập các văn bản.

Phương pháp này thường được sử dụng trong phân tích từ vựng vì luôn có các từ được sử dụng nhiều hơn các từ khác là các từ thông dụng, nhưng không có nhiều ý nghĩa và quan trọng, Zipf’s law đã phát biểu về vến đề này [13]. Biểu đồ 1 : Sơ đồ minh họa phát biểu của Zipf’s law (viblo 2016). Phát biểu này đúng với mọi ngôn ngữ nên ta cần cân bằng mức độ quan trọng của các từ trong ngôn ngữ. Nên phương pháp TF-IDF đã được đề xuất.

SV: Ngô Minh Nhật – K47 Tin Học Kinh Tế 8 Khóa luận tốt nghiệp GVHD : TS. Nguyễn Đình Hoa Cương Đây là 1 trong những kỹ thuật để xử lý ngôn ngữ tự nhiên căn bản và thường được áp dụng vào nhiều thuật toán khác như K-NN để phân tích dữ liệu văn bản, tóm tắt văn bản, tìm kiếm thông tin. TF-IDF là kết hợp gồm 2 phần TF và IDF, ta sẽ tiếp tục tìm hiểu về 2 phần này.2 TF: TF [11] [12] là viết tắt của Term Frequency nghĩa là tần số xuất hiện của một từ trong một văn bản, mỗi văn bản thì có số kí tự hay chiều dài khác nhau, một từ có thể xuất hiện ít hoặc nhiều hơn tùy vào văn bản, nên để tính tần số xuất hiện thì ta lấy số lần từ đó xuất hiện và chia cho tổng số từ trong văn bản. Ta có công thức tính TF: , , , ∶ (1) Trong đó :  f (t,d) là Tần số xuất hiện của từ t trong văn bản d.

Kết quả tính được sẽ nằm trong khoảng 0 đến 1. Giá trị TF càng lớn thì chứng tỏ văn bản d phụ thuộc rất nhiều vào từ t.3 IDF: Còn IDF [11] [12] là viết tắt của từ Inverse Document Frequency nghĩa là tần số nghịch của 1 từ trong tập văn bản xét đến hay còn gọi là độ quan trọng của từ đó trong văn bản. Nhưng có nhiều từ rất phổ biến mà lại không quan trọng trong văn bản như “và”, “thì”, “sẽ”, “nếu”, “nhưng”. là các từ phổ biến như Zipf’s law đã nói, nếu chỉ với công thức TF thì các từ này sẽ có tần số xuất hiện rất cao, còn những từ quan trọng thì lại rất ít, mà các từ quan trọng chính trong văn bản lại mạng giá trị cao hơn, nhiều thông tin hơn so với các từ phổ biến, để hạn chế nhược điểm này thì ta cần loại bỏ để tăng tính chính xác, từ đó ta có công thức IDF.

SV: Ngô Minh Nhật – K47 Tin Học Kinh Tế 9 Khóa luận tốt nghiệp GVHD : TS. Nguyễn Đình Hoa Cương | | , | ∶ | (2) Trong đó:  | D | là tổng số văn bản trong tập hợp D.  | { d  D : t  d } | là số văn bản có chứa từ t.  Log e là để giảm đi độ quan trọng của các từ phổ biến mà không có giá trị hoặc giá trị rất thấp trong IDF như đã nói ở trên.

Vì với các từ mà xuất hiện trong càng nhiều văn bản thì thương số D/d càng bé, nên chỉ xuất hiện trong 1 văn bản thì giá trị IDF này là lớn nhất.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Xây Dựng Hệ Thống Tư Vấn Tin Tức Bằng Thuật Toán K-NN" trình bày một phương pháp hiệu quả để xây dựng hệ thống tư vấn thông tin dựa trên thuật toán K-NN (K-Nearest Neighbors). Nội dung chính của tài liệu bao gồm cách thức hoạt động của thuật toán K-NN, ứng dụng của nó trong việc phân loại và dự đoán thông tin, cũng như những lợi ích mà hệ thống này mang lại cho người dùng, như khả năng cung cấp thông tin chính xác và nhanh chóng.

Để mở rộng kiến thức của bạn về các hệ thống thông tin quản lý và ứng dụng công nghệ trong các lĩnh vực khác, bạn có thể tham khảo thêm tài liệu Luận văn thạc sĩ hệ thống thông tin quản lý xây dựng mô hình hệ thống thông tin quản lý thu mua bán tại công ty cổ phần dược phẩm quận 10, nơi bạn sẽ tìm thấy những ứng dụng thực tiễn trong ngành dược phẩm.

Ngoài ra, tài liệu Luận văn thạc sĩ kỹ thuật nghiên cứu ứng dụng hệ thống đa tác tử trong quản lý sóng thần ở việt nam cũng sẽ cung cấp cho bạn cái nhìn sâu sắc về việc áp dụng công nghệ thông tin trong quản lý thiên tai, một lĩnh vực quan trọng và cần thiết.

Cuối cùng, bạn có thể khám phá thêm về Luận văn thạc sĩ hệ thống thông tin quản lý xây dựng kho dữ liệu trên nền tảng đám mây đáp ứng các dịch vụ bi cho công ty xây dựng và kinh doanh bất động sản, giúp bạn hiểu rõ hơn về việc quản lý dữ liệu trong ngành xây dựng và bất động sản.

Những tài liệu này không chỉ mở rộng kiến thức của bạn mà còn cung cấp những góc nhìn đa dạng về ứng dụng công nghệ thông tin trong các lĩnh vực khác nhau.