CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 CÁC KHÁI NIỆM CƠ BẢN Khai phá dữ liệu là một hướng nghiên ra đời hơn một thập niên trở lại đây.Các kỹ thuật chính được áp dụng trong lĩnh vực này phần lớn được thừa kế từ lĩnh vực Cơ sở dữ liệu,học máy, trí tuệ nhân tạo, lý thuyết thông tin, xác suất thống kê, và tính toán hiệu năng cao. Do sự phát triển nhanh của Khai phá dữ liệu về phạm vi áp dụng và các phương pháp tìm kiếm tri thức, nên đã có nhiều quan điểm khác nhau về Khai phá dữ liệu. Tuy nhiên, ở một mức trừu tượng nhất định, theo [1] khái niệm Khai phá dữ liệu như sau: “Khai phá dữ liệu là một quá trình tìm kiếm, phân tích, phát hiện các tri thức mới, tiềm ẩn, hữu dụng trong các cơ sở dữ liệu lớn.” Trong lĩnh vực khai phá dữ liệu, có nhiều hướng nghiên cứu được đưa ra trong đó có một số hướng chính được nhiều nhà nghiên cứu quan tâm. Khai phá dữ liệu văn bản,Web, Trích chọn thông tin, Phân tích mạng xã hội, khai phá quan điểm, Phân tích dữ liệu kinh tế - tài chính, Khai phá dữ liệu sinh học, y tế,… Khóa luận này hướng đến việc tìm hiểu và xây dựng hệ thống thống nhằm khai thác thông tin các sản phẩm mà người tiêu dùng đã đánh giá trên Internet, cụ thể là các trang web.
Người tiêu dùng có mua, sử dụng các sản phẩm và họ đã có cảm nhận và suy nghĩ về sản phẩm đó. Đôi lúc họ đưa những cảm nhận về sản phẩm nào đó lên các trang web cá nhân, các diễn đàn, … trên Internet. Bài toán mà khóa luận này tìm cách giải quyết là tìm cách khai thác các thông tin về một sản phẩm cụ thể nào đó trên Internet, thống kê để phục vụ cho công tác khảo sát và đánh giá sản phẩm trên thị trường. Sau đây là một số khái niệm được sử dụng.
Thông tin sản phẩm: Là thông tin mô tả về nguồn gốc, tính năng kỹ thuật, tính chất lý hóa tính, công dụng chính, giá thành, màu sắc, hình dáng, kích thước, … của sản phẩm. 9 Ý kiến người dùng sản phẩm: Là các thông tin người dùng phản ánh về sản phẩm được thể hiện qua các từ đánh giá về ưu điểm như: Tốt, thuận tiện, tiết kiệm, bền, rẻ, đẹp, phong phú, đa dạng, mượt mà, mịn, … hoặc được đánh giá nhược điểm: Xấu, kém, mau hỏng, hàng giả, hàng nhái, … hoặc được thể hiện mong muốn về sản phẩm qua các từ như: giá như, giá mà, cần, phải, để tốt hơn, … Xu hướng: Là các từ liên quan đến các mong muốn của người dùng về sản phẩm. Được chi thành xu hướng tốt hoặc xấu hoặc không thiện cảm. + Xu hướng tốt: Xu hướng đánh giá thông tin sản phẩm tốt + Xu hướng xấu: Xu hướng đánh giá thông tin sản phẩm xấu + Xu hướng không thiện cảm: Xu hướng không khen, không chê sản phẩm.
Người tiêu dùng: Là người mua hoặc người sử dụng sản phẩm hoặc người có ý định mua hay sử dụng sản phẩm có gửi thông tin lên Internet. Người dùng: Người có tương tác với hệ thống. Người quản trị: Người có nhiệm vụ quản lý hệ thống. Máy tìm kiếm:Các cỗ máy tìm kiếm thông tin trên Internet: Google, Yahoo, Bing, … Sản phẩm: Là tất cả các mặt hàng đang được tiêu thụ trên thị trường bao gồm thị trường trong nước và nước ngoài.2 KHÁM PHÁ TRI THỨC TRONG CƠ SỞ DỮ LIỆU Khai phá dữ liệu là lĩnh vực có liên quan đến nhiều ngành khác nhau như: thống kê, học máy, tính toán phân tán,cơ sở dữ liệu, thuật toán, mô hình hóa dữ liệu, … Mục tiêu của khai phá dữ liệu là khám phá tri thức từ đó dùng hỗ trợ ra quyết định, trong lĩnh vực hẹp này có thể được chia thành một số giai đoạn [3][4]: Trích chọn dữ liệu: bước này trích những bộ dữ liệu cần được khám phá từ các hệ thống dữ liệu (databases, data warehouses, data repositories) ban đầu theo một số tiêu chí nhất định.
10 Tiền xử lý dữ liệu:Bước này làm sạch dữ liệu (xử lý những dữ liệu dư thừa, nhiễu, .), rút gọn dữ liệu (áp dụng các thuật toán lấy mẫu, .), rời rạc hóa dữ liệu. Kết quả là dữ liệu sẽ nhất quán, đầy đủ, được rút gọn, và được rời rạc hóa. Biến đổi dữ liệu:Đây là bước chuẩn hóa dữ liệu, tinh chỉnh dữ liệu để đưa dữ liệu về dạng chuẩn để giúp kỹ thuật khai phá dữ liệu ở bước sau. Khai phá dữ liệu: Áp dụng những kỹ thuật phân tích nhằm để trích chọn thông tin, những mối liên hệ đặc biệt của dữ liệu.
Bước này rất quan trọng và cần nhiều tài nguyên nhất của toàn bộ quá trình khai phá trin thức. Đánh giá và biểu diễn tri thức: Các mẫu tin và quan hệ giữa chúng đã được rút trích ở bước trên được mã hóa và biểu diễn theo dạng dễ quan sát như đồ thị, cây, bảng biểu, luật,. Bước này cung cấp thông tin cho các nhà quản trị ra quyết định. Các giai đoạn trong KDD được thể hiện trực quan như hình 1 dưới đây: Hình 1.1:Các bước thực hiện trong quá trình khám phá tri thức 11 1.3 CÁC KỸ THUẬT ÁP DỤNG TRONG KHAI PHÁ DỮ LIỆU 1.1 Các kỹ thuật tiếp cận trong Khai phá dữ liệu Khai phá tri thức là một lĩnh vực liên ngành, bao gồm: Tổ chức dữ liệu, học máy, trí tuệ nhân tạo và các khoa học khác, sự kết hợp này có thể được diễn tả như trong hình 1.2 dưới đây: Hình 1.2 Các lĩnh vực liên quan đến Khám phá tri thức trong CSDL Dựa trên quan điểm của học máy thì các kỹ thuật trong Khai phá dữ liệu, bao gồm: Học có giám sát: Là quá trình gán nhãn lớp cho các phần tử trong CSDL dựa trên một tập các ví dụ huấn luyện và các thông tin về nhãn lớp đã biết.
Học không có giám sát: Là quá trình phân chia một tập dữ liệu thành các lớp hay là cụm (clustering) dữ liệu tương tự nhau mà chưa biết trước các thông tin về lớp hay tập các ví dụ huấn luyện. Học nửa giám sát: Là quá trình phân chia một tập dữ liệu thành các lớp dựa trên một tập nhỏ các ví dụ huấn luyện và một số các thông tin về một số nhãn lớp đã biết trước. Theo lớp các bài toán cần giải quyết, thì Khai phá dữ liệu bao gồm các kỹ thuật áp dụng sau: Phân lớp và dự đoán(classification and prediction): xếp một đối tượng vào một trong những lớp đã biết trước. Ví dụ: phân lớp các bệnh nhân dữ liệu trong hồ sơ bệnh án.
Hướng tiếp cận này thường sử dụng một số kỹ thuật của học máy như cây quyết định (decision tree), mạng nơ ron nhân 12 tạo (neural network),. Phân lớp và dự đoán còn được gọi là học có giám sát. Luật kết hợp (association rules): là dạng luật biểu diễn tri thứ ở dạng khá đơn giản. Ví dụ: “60 % nữ giới vào siêu thị nếu phấn thì có tới 80% trong số họ sẽ mua thêm son”.
Luật kết hợp được ứng dụng nhiều trong lĩnh vực kinh doanh, y học, tin-sinh, tài chính và thị trường chứng khoán,. Phân tích chuỗi theo thời gian (sequential/ temporal patterns): tương tự như khai phá luật kết hợp nhưng có thêm tính thứ tự và tính thời gian. Hướng tiếp cận này được ứng dụng nhiều trong lĩnh vực tài chính và thị trường chứng khoán vì nó có tính dự báo cao. Phân cụm (clustering/ segmentation): xếp các đối tượng theo từng cụm dữ liệu tự nhiên.
Phân cụm còn được gọi là học không có giám sát ( unsupervised learning). Mô tả khái niệm (concept description and summarization): thiên về mô tả, tổng hợp và tóm tắt khái niệm. Ví dụ: tóm tắt văn bản.2 Các dạng dữ liệu có thể khai phá Do Khai phá dữ liệu được ứng dụng rộng rãi trên nhiều lĩnh vực có thể làm việc với rất nhiều kiểu dữ liệu khác nhau. Ví dụ: Cơ sở dữ liệuquan hệ, dữ liệu đa chiều, Cơ sở dữ liệu quan hệ - hướng đối tượng, Cơ sở dữ liệu có thuộc tính không gian và thời gian, Cơ sở dữ liệu chuỗi thời gian, Cơ sở dữ liệu đa phương tiện, … 1.4 TÌM KIẾM THÔNG TIN TRÊN INTERNET Theo [thụy1] máy tìm kiếm là một hệ thống phần mềm được xây dựng nhằm tiếp nhận yêu cầu tìm kiếm của người dùng, sau đó phân tích yêu cầu này và tìm kiếm thông tin trong cơ sở dữ liệu được tải xuống từ Internet và đưa ra kết quả là danh sách các trang Web lên quan với yêu cầu người dùng.
Về cơ bản, mọi kỹ thuật tập trung vào máy tìm kiếm ( Searche engine). Hiện nay trên thế giới có rất nhiều máy tìm kiếm, điển hình là Google, Bing, Yahoo,…,và một số máy tìm kiếm có cách thực hiện rất đặc biệt không chỉ đưa ra kết quả tìm kiếm là các địa chỉ chứa thông tin mà tìm kiếm và tổng hợp tri thức như 13 Wolframanpha, máytìm kiếm này còn biết cách trả lời các vấn đề mang tính chất đặc thù chuyên ngành như toán học, lý, hóa, lịch sử, địa lý,… Kiến trúc cơ bản của máy tìm kiếm gồm các khối như truy vấn dữ liệu, đánh chỉ mục, phân loại dữ liệu….Nói chung, máy tìm kiếm thực hiện một số thao tác cơ bản sau: Bước 1: Phân tích các yêu cầu của người dùng, phân loại và đánh chỉ mục các yêu cầu này, lưu vào hệ thống. Bước 2:Các kết quả tìm kiếm cũng được phân tích, đánh chỉ mục và lưu vào hệ thống. Bước 3: Khi có yêu cầu tìm kiếm thông tin, máy tìm kiếm so khớp yêu cầu với các yêu cầu đã có sẵn nếu phù hợp sẽ đưa kết quả ra luôn, nếu yêu cầu này chưa có thì sẽ tìm thông tin rồi thao tác lại bước 1.
Đối với kết quả tìm kiếm mới sẽ bổ sung như bước 2. Sau đây là sơ đồ kiến trúc chung của một số khối trong máy tìm kiếm [2]. Khối Truy vấn Hình 1.3: Sơ đồ khối Khối truy vấn Khối truy vấn nhận thông tin từ người dùng theo dạng văn bản. Từ đó phân loại, xác định yêu cầu của câu truy vấn xem thuộc nhóm nào? Đánh giá và phân tích câu.
Tìm kiếm trong cơ sở dữ liệu chỉ mục rồi trả lại kết quả tìm kiếm cho người dùng. 14 Khối Đánh chỉ mục Hình1.4: Sơ đồ khối Đánh chỉ mục Trong khóa luận này máy tìm kiếm Google được sử dụng làm công cụ để lấy thông tin. Do đó, phần sau sẽ khảo sát kỹ hơn về máy tìm kiếm của Google. Tên gọi của máy tìm kiếm Google có nguồn gốc từ chữ “Googol”.