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

Tiểu luận Công nghệ tri thức và ứng dụng TÌM HIỂU KHAI PHÁ LUẬT KẾT HỢP PHỦ ĐỊNH

23 350 2

Đ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

Cấu trúc

  • BÀI THU HOẠCH MÔN HỌC

  • CÔNG NGHỆ TRI THỨC & ỨNG DỤNG

  • ĐỀ TÀI

  • TÌM HIỂU

  • KHAI PHÁ LUẬT KẾT HỢP PHỦ ĐỊNH

  • GVHD: GS.TSKH. HOÀNG KIẾM

  • HVTH: LÊ THÚC QUỐC ANH

  • MSHV: CH1301002

  • TP HCM, 09/2014

  • MỞ ĐẦU

    • 1. Đặt vấn đề:

    • Chúng ta biết rằng Google luôn trả cho ta kết quả tìm kiếm tốt nhất, thông minh nhất. Nó còn thông minh hơn nếu như ta luôn tìm kiếm thông tin bằng cách đăng nhập vào hệ thống của Google. Chúng ta có thể thử bằng cách tìm một từ khóa chuyên biệt khi không đăng nhập và khi đăng nhập, nói chung kết quả sẽ khác nhau, và hầu hết là kết quả khi đăng nhập sẽ có độ chính xác với mục đích tìm kiếm cao hơn so với khi không đăng nhập. Tại sao lại như vậy?

    • Facebook có tính năng rất hay và rất hữu dụng trong việc kết nối các mối quan hệ, đó là tính năng suggestions friends, và điều thú vị là hầu hết các người bạn mà Facebook suggest đều là những người tôi biết. Vậy tại sao Facebook nó lại thông minh đến mức như vậy?

    • Amazon.com là website bán sách lớn nhất trên internet, để ý rằng mỗi khi xem thông tin chi tiết về một quyển sách nào đó trên site thì bao giờ cũng kèm theo một danh sách các quyển sách gợi ý mua kèm theo quyển bạn đang xem, một thống kê cho thấy có tới trên 70% đầu sách được người dùng mua thêm thông qua hình thức gợi ý này. Vậy điều gì làm cho việc bán sách hiệu quả đến như vậy?

    • Trên đây chỉ là các ví dụ chúng ta có thể nhìn và hiểu, còn rất, rất nhiều các ví dụ từ nghiên cứu khoa học ứng dụng trong không gian, đến việc chống khủng bố…Nói tóm lại tất cả những ví dụ, những điều được nói ở trên chung qui lại chỉ xoay quanh một chủ đề: Data mining. Vậy data ming là gì?

    • 2. Định nghĩa khai phá dữ liệu:

    • Khai phá dữ liệu (datamining) được định nghĩa như là một quá trình chắt lọc hay khai phá tri thức từ một lượng lớn dữ liệu.

    • Một ví dụ hay được sử dụng là là việc khai thác vàng từ đá và cát, Dataming được ví như công việc "Đãi cát tìm vàng" trong một tập hợp lớn các dữ liệu cho trước. Thuật ngữ Datamining ám chỉ việc tìm kiếm một tập hợp nhỏ có giá trị từ một số lượng lớn các dữ liệu thô. Có nhiều thuật ngữ hiện được dùng cũng có nghĩa tương tự với từ Data - mining như Knowledge Mining (khai phá tri thức), knowledge extraction(chắt lọc tri thức), data/patern analysis(phân tích dữ liệu/mẫu), data archaeoloogy (khảo cổ dữ liệu), datadredging(nạo vét dữ liệu),...

    • Định nghĩa khác: Khai phá dữ liệu là một tập hợp các kỹ thuật được sử dụng để tự động khai thác và tìm ra các mối quan hệ lẫn nhau của dữ liệu trong một tập hợp dữ liệu khổng lồ và phức tạp, đồng thời cũng tìm ra các mẫu tiềm ẩn trong tập dữ liệu đó.

    • 3. Các bước chính trong khám phá tri thức (KDD):

    • Khai phá dữ liệu là một bước trong quá trình khám phá tri thức (KDD - Knowleadge Discovery in Database). Người ta thường chia quá trình khám phá tri thức thành các bước sau:

    • Trích chọn dữ liệu (data selection): là bước trích chọn những tập dữ liệu cần được khai phá từ các tập dữ liệu lớn (databases, data warehouses, data repositories) ban đầu theo một số tiêu chí nhất định.

    • Tiền xử lý dữ liệu (data preprocessing): là bước làm sạch dữ liệu (xử lý với dữ liệu không đầy đủ, dữ liệu nhiễu, dữ liệu không nhất quán,...), rút gọn dữ liệu (sử dụng hàm nhóm và tính tổng, các phương pháp nén dữ liệu, sử dụng histograms, lấy mẫu,...), rời rạc hóa dữ liệu (rời rạc hóa dựa vào histograms, entropy, phân khoảng,...). Sau bước này, 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 (data transformation): đây là bước chuẩn hóa và làm mịn dữ liệu để đưa dữ liệu về dạng thuận lợi nhất nhằm phục vụ cho các kỹ thuật khai phá ở bước sau.

    • KPDL (data mining): đây là bước áp dụng những kỹ thuật khai phá (phần nhiều là các kỹ thuật của machine learning) để khai phá, trích chọn được những mẫu (patterns) thông tin, những mối liên hệ (relationships) đặc biệt trong dữ liệu. Đây được xem là bước quan trọng và tốn nhiều thời gian nhất của toàn quá trình KDD.

    • Biểu diễn và đánh giá tri thức (knowledge representation & evaluation): những mẫu thông tin và mối liên hệ trong dữ liệu đã được khai phá ở bước trên được chuyển dạng và biểu diễn ở một dạng gần gũi với người sử dụng như đồ thị, cây, bảng biểu, luật, .v.v. Đồng thời bước này cũng đánh giá những tri thức khám phá được theo những tiêu chí nhất định.

    • Hình 1. Các bước trong khám phá tri thức (KDD)

    • Để ví dụ cho quá trình này, chúng ta quay lại trả lời các câu hỏi ở mục đặt vấn đề.

    • Đầu tiên là câu hỏi tại sao kết quả tìm kiếm của Google lại khác nhau khi đăng nhập và khi không đăng nhập? Câu trả lời ngắn gọn là: Khi bạn đăng nhập Google biết bạn là ai, biết hành vi trong quá khứ của bạn như thế nào (thông qua quá trình thu thập dữ liệu hành vi của bạn trên các site mà Google hiện diện), do đó nó dựa vào sự hiểu biết này nên kết quả trả về bao giờ cũng là kết quả có độ chính xác với nhu cầu của bạn cao nhất và ngược lại, khi không đăng nhập, Google chỉ trả về kết quả ranking bình thường mà không có kèm theo tham số ranking theo user. Và dĩ nhiên để biết được hành vi trong quá khứ của bạn, Google phải sử dụng đến các công nghệ data mining.

    • Thứ hai, tại sao Facebook lại có thể gợi ý cho tôi toàn những người mà tôi đã quen biết? Để có thể đưa ra gợi ý này đòi hỏi Facebook kết hợp rất nhiều các tham số, cụ thể là những tham số gì thì là bí mật công nghệ riêng của FB. Tuy nhiên có thể giải thích tóm lược như sau: Khi bạn đăng ký tài khoản Facebook, thông thường bạn nhập thêm các thông tin khác như: quá trình làm việc ở các công ty, công ty bạn đang làm, trường/lớp bạn đã/đang học, các hội bạn tham gia, bạn gái/trai/vợ/chồng của bạn v.v... Đây chính là các thông tin mà Facebook có thể dựa vào để xác định ai là bạn của bạn. Ở đây, Facebook đã mô hình hóa các tham số có độ liên quan nhất định để đưa ra những gợi ý mà có xác xuất đúng rất cao, và bạn thấy đó, thực sự là rất đúng. News stream của Facebook còn phức tạp và hay ho hơn nữa. Tất cả các điều đó Facebook làm được là quá trình thu thập dữ liệu hoạt động của người dùng trên site, sau đó sử dụng các công nghệ data mining để cung cấp nội dung, tính năng phù hợp nhất cho người dùng.

    • Thứ ba, tại sao Amazon lại có thể đưa ra danh sách các quyển sách bán kèm có tỷ lệ bán được cao như vậy? Để làm được điều này Amazon đã đầu tư phát triển hệ thống recommendation trong hàng chục năm, thời gian dài đó không chỉ là phát triển thuần túy công nghệ mà còn là quãng thời gian thu thập và phân tích hành vi người sử dụng trên site của Amazon, thời gian càng dài, dữ liệu thu thập càng lớn, dẫn đến tập thông tin có độ tương quan càng nhiều và càng chính xác. Nôm na bạn có thể hiểu là 100 khách hàng mua quyển sách ABC thì có tới 40 khách hàng đồng thời mua quyển sách DEF, vì thế với khách hàng 101 xem quyển ABC, hệ thống nhận diện và đưa ra gợi ý mua them quên DEF, đơn giản là vậy, tuy nhiên bên dưới còn có nhiều tham số khác để tăng độ tương quan lên nữa. Và đây cũng là một quá trình mining dữ liệu.

    • 4. Tại sao cần khai phá dữ liệu:

    • Khoảng hơn một thập kỷ trở lại đây, lượng thông tin được lưu trữ trên các thiết bị điện tử không ngừng tăng lên. Sự tích lũy dữ liệu này xảy ra với một tốc độ bùng nổ. Người ta ước đoán rằng lượng thông tin trên toàn cầu tăng gấp đôi sau khoảng hai năm và theo đó số lượng cũng như kích cỡ của các cơ sở dữ liệu (CSDL) cũng tăng lên một cách nhanh chóng. Nói một cách hình ảnh là chúng ta đang “ngập” trong dữ liệu nhưng lại “đói” tri thức. Câu hỏi đặt ra là liệu chúng ta có thể khai thác được gì từ những “núi” dữ liệu tưởng chừng như “bỏ đi”ấy không ?

    • 5. Các hướng tiếp cận chính trong khai phá dữ liệu:

    • Data Mining được chia nhỏ thành một số hướng chính như sau:

    • Mô tả khái niệm (concept description): 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.

    • Luật kết hợp (association rules): là dạng luật biểu diễn tri thức ở dạng khá đơn giản. Ví dụ: “60 % nam giới vào siêu thị nếu mua bia thì có tới 80% trong số họ sẽ mua thêm thịt bò khô”. Luật kết hợp được ứng dụng nhiều trong lĩnh vực kính doanh, y học, tin-sinh, tài chính & thị trường chứng khoán,...

    • Phân lớp và dự đoán (classification & 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 vùng địa lý theo dữ liệu thời tiết. Hướng tiếp cận này thường sử dụng một số kỹ thuật của machine learning như cây quyết định (decision tree), mạng nơ ron nhân tạo (neural network), ... Người ta còn gọi phân lớp là học có giám sát (học có thầy).

    • Phân cụm (clustering): xếp các đối tượng theo từng cụm (số lượng cũng như tên của cụm chưa được biết trước. Người ta còn gọi phân cụm là học không giám sát (học không thầy).

    • Khai phá chuỗi (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.

    • 6. Các dạng dữ liệu có thể khai phá:

    • Do KPDL được ứng dụng rộng rãi nên nó có thể làm việc với rất nhiều kiểudữliệu khác nhau. Sau đây là một số kiểu dữ liệu điển hình:

    • CSDL đa chiều (multidimensional structures, data warehouses)

    • CSDL dạng giao dịch (transactional databases)

    • CSDL quan hệ - hướng đối tượng (object-relational databases)

    • Dữ liệu không gian và thời gian (spatial and temporal data)

    • Dữ liệu chuỗi thời gian (time-series data)

    • CSDL đa phương tiện (multimedia databases) như âm thanh (audio), hình ảnh (image), phim ảnh (video),...

    • Dữ liệu Text và Web (text database & www)

    • 7. Phân loại các hệ khai phá dữ liệu:

    • KPDL là một công nghệ tri thức liên quan đến nhiều lĩnh vực nghiên cứu khác nhau như CSDL, kỹ thuật máy học (machine learning), giải thuật, trực quan hóa (visualization),... Chúng ta có thể phân loại các hệ thống KPDL dựa trên các tiêu chí khác nhau:

    • Phân loại dựa trên kiểu dữ liệu được khai phá: CSDL quan hệ (relational database), kho dữ liệu (data warehouse), CSDL giao dịch (transactional database), CSDL hướng đối tượng, CSDL không gian (spatial database), CSDL đa phương tiện (multimedia database), CSDL Text và www,...

    • Phân loại dựa trên dạng tri thức được khám phá: tóm tắt và mô tả (summarization & description), luật kết hợp (association rules), phân lớp (classification), phân cụm (clustering), khai phá chuỗi (sequential mining),...

    • Phân loại dựa trên kỹ thuật được áp dụng: hướng CSDL (databaseoriented), phân tích trực tuyến (OnLine Analytical Processing – OLAP), machine learning (cây quyết định, mạng nơ ron nhân tạo, k-min, giải thuật di truyền, máy vectơ hỗ trợ - SVM, tập thô, tập mờ, ...), trực quan hóa (visualization),...

    • Phân loại dựa trên lĩnh vực được áp dụng: kinh doanh bán lẻ (retail), truyền thông (telecommunication), tin-sinh (bio-informatics), y học (medical treatment), tài chính & thị trường chứng khoán (finance & stock market), web mining,...

    • 8. Ứng dụng của khai phá dữ liệu:

    • Khai phá dữ liệu bao hàm rất nhiều hướng tiếp cận. Các kỹ thuật chính được áp dụngtrong lĩnh vực này phần lớn được thừa kế từ lĩnh vực cơ sở dữ liệu (database), máy học (machine learning), trí tuệ nhân tạo, lý thuyết thông tin, xác suất thống kê, và tínhtoán hiệu năng cao. Lĩnh vực nàycũng là điểm hội tụ và giao thoa của rất nhiều lĩnh vực khác.

    • Data Mining tuy là một hướng tiếp cận mới nhưng thu hút được rất nhiều sự quan tâm của các nhà nghiên cứu và phát triển nhờ vào những ứng dụng thực tiễn của nó. Chúng ta có thể liệt kê ra đây một số ứng dụng điển hình:

    • Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis & decision support)

    • Điều trị y học (medical treatment)

    • Text mining & Web mining

    • Tin-sinh (bio-informatics)

    • Tài chính và thị trường chứng khoán (finance & stock market)

    • Bảo hiểm (insurance)

    • Nhận dạng (pattern recognition)

    • 9. Các vấn đề được chú trọng trong khai phá dữ liệu:

    • KPDL là một lĩnh vực mới, do đó đang còn rất nhiều vấn đề chưa được nghiên cứu một cách trọn vẹn. Sau đây là một số hướng nghiên cứu đã và đang thu hút được sự chú ý của các nhà tin học:

    • OLAM (OnLine Analytical Mining) - Sự tích hợp giữa CSDL, kho dữ liệu, và KPDL. Hiện nay một số hệ quản trị CSDL như Oracle, MS SQL Server, DB2 đã tích hợp tính năng xây dựng kho dữ liệu và phân tích trực tuyến (OLAP). Những tính năng này được hỗ trợ dưới dạng những công cụ đi kèm và người dùng phải trả tiền thêm nếu cần sử dụng những tính năng đó. Những nhà nghiên cứu trong lĩnh vực CSDL không muốn dừng lại ở đó mà họ muốn có một sự tích hợp giữa CSDL, kho dữ liệu và KPDL.

    • Khám phá được nhiều dạng tri thức khác nhau từ nhiều kiểu dữ liệu.

    • Tính hiệu quả, tính chính xác, độ phức tạp tính toán, khả năng mở rộng và tích hợp, xử lý nhiễu và dữ liệu không đầy đủ, tính hữu dụng (ý nghĩa) của tri thức.

    • Kết hợp KPDL với tri thức cơ sở (background knowledge).

    • Vấn đề song song hóa và phân tán quá trình KPDL.

    • Ngôn ngữ truy vấn trong KPDL (Data Mining Query Language – DMQL): cung cấp cho người sử dụng một ngôn ngữ hỏi thuật tiện tương tự như SQL đối với CSDL quan hệ.

    • Biểu diễn và trực quan hóa tri thức khai phá được sao cho gần gũi với người sử dụng (human-readable expression). Tri thức có thể biểu diễn đa chiều, đa tầng để người dùng sử dụng tri thức hiệu quả hơn.

    • 1 Tại sao lại luật kết hợp?

    • Luật kết hợp là những luật có dạng “70% khách hàng mua bia thì mua them thịt bò khô, 20% giao dịch có mua cả bia lẫn thịt bò khô” hoặc “75% bệnh nhân hút thuốc lá và sống ven vùng ô nhiễm thì bị ung thư phổi, trong đó 25% số bệnh nhân vừa hút thuốc lá, sống ven vùng ô nhiễm vừa ung thư phổi”. “Mua bia” hay “hút thuốc lá và sống ven vùng ô nhiễm” ở đây được xem là vế trái (tiền đề - antecedent) của luật, còn “mua thịt bò khô” hay “ung thư phổi” là vế phải (kết luận - consequent) của luật. Những con số 20% hay 25% là độ hỗ trợ của luật (support - số phần trăm các giao dịch chứa cả vế trái lẫn vế phải), còn 70% hay 75% là độ tin cậy của luật (confidence - số phần trăm các giao dịch thỏa mãn vế trái thì cũng thỏa mãn vế phải).

    • Hình 2. Minh họa về luật kết hợp

    • Chúng ta nhận thấy rằng tri thức đem lại bởi những luật kết hợp ở dạng trên có một sự khác biệt cơ bản so với thông tin thu được từ các câu lệnh truy vấn dữ liệu thông thường (ngôn ngữ SQL chẳng hạn). Đó thường là những tri thức, những mối liên hệ chưa đuợc biết trước và mang tính dự báo đang tiềm ẩn trong dữ liệu. Những tri thức này không đơn giản chỉ là kết quả của các phép nhóm, tính tổng hay sắp xếp mà là kết quả của một quá trình tính toán khá phức tạp và tốn nhiều thời gian.

    • Tuy luật kết hợp là một dạng luật khá đơn giản nhưng lại mang rất nhiều ý nghĩa. Thông tin mà dạng luật này đem lại rất đáng kể và hỗ trợ không nhỏ trong quá trình ra quyết định. Tìm kiếm ra những luật kết hợp “quý hiếm” và chứa nhiều thông tin từ CSDL tác nghiệp là một trong những hướng tiếp cận chính của lĩnh vực KPDL và đây chính là một động lực không nhỏ thúc đẩy việc tập trung nghiên cứu của nhiều nhà tin học.

    • 2 Phát biểu bài toán khai phá luật kết hợp:

    • Cho I = {i1, i2, …, in} là tập mục bao gồm n mục (item – còn được gọi là thuộc tính - attribute). T = {t1, t2, …, tm} là tập gồm m giao dịch (transaction – còn được gọi là bản ghi - record), mỗi giao dịch được định danh bởi TID (TransactionIDentification). Một CSDL D là một quan hệ nhị phân δ trên I và T, hay δ ⊆ IxT.Nếu mục i xuất hiện trong giao dịch t thì ta viết (i, t) ∈ δ hoặc iδt. Về ý nghĩa, một CSDL là một tập các giao dịch, mỗi giao dịch t là một tập mục: t ∈ 2I (với 2I là tập các tập con của I).

    • Sau đây là một ví dụ về CSDL (dạng giao dịch):

    • I = {A, C, D, T, W}, T = {1, 2, 3, 4, 5, 6} với thông tin các giao dịch cho ở bảng:

    • Bảng 1 - Ví dụ về một CSDL dạng giao dịch

    • X ⊆ I được gọi là tập mục (itemset). Độ hỗ trợ (support) của một tập mục X được ký hiệu s(X) – là phần trăm số giao dịch trong CSDL chứa X. Một tập mục X được gọi là tập phổ biến nếu độ hỗ trợ của nó lớn hơn hoặc bằng một ngưỡng minsup nào đó được xác định bởi người sử dụng: s(X) ≥ minsup[5].

    • Bảng sau đây sẽ liệt kê tất cả những tập mục phổ biến (frequent-itemset) trong CSDL cho ở bảng 1 với giá trị minsup bằng 50%.

  • Bảng 2 - Các tập phổ biến trong CSDL ở bảng 1 với độ hỗ trợ tối thiểu là 50%

    • Luật kết hợp có dạng X ⎯⎯c→Y , trong đó X và Y là các tập mục thỏa mãn điều kiện X ∩ Y = ∅, còn c là độ tin cậy (confidence) của luật, c = s(X∪Y) / s(X). Về mặt xác suất, độ tin cậy c của một luật là xác suất (có điều kiện) xảy ra Y với điều kiện đã xảy ra X. Một luật được xem là tin cậy nếu độ tin cậy c của nó lớn hơn hoặc bằng một ngưỡng minconf nào đó do người dùng xác định: c ≥ minconf[5].

    • Bài toán khai phá luật kết hợp (ở dạng đơn giản nhất) đặt ra như sau:

    • Cho một CSDL D, độ hỗ trợ tối thiểu minsup, độ tin cậy tối thiểu minconf. Hãy tìm kiếm tất cả các luật kết hợp có dạng X →Y thỏa mãn độ hỗ trợ s(X∪Y) ≥ minsup và độ tin cậy của luật c( X →Y ) = s(X∪Y) / s(X) ≥ minconf .

    • Hầu hết các thuật toán được đề xuất để khai phá luật kết hợp thường chia bài toán này thành hai pha [5]:

    • Pha 1: Tìm tất cả các tập mục phổ biến từ CSDL tức là tìm tất cả các tập mục X thỏa mãn s(X) ≥ minsup. Đây là pha tốn khá nhiều thời gian của CPU (CPU-bound) và thời gian vào ra ổ đĩa (I/O-bound).

    • Pha 2: Sinh các luật tin cậy từ các tập phổ biến đã tìm thấy ở pha thứ nhất.Pha này tương đối đơn giản và tốn kém ít thời gian so với pha trên. Nếu Xlà một tập phổ biến thì luật kết hợp được sinh từ X có dạng X '⎯⎯c→X X ' ,với X’ là tập con khác rỗng của X, X X’ là hiệu của hai tập hợp, và c làđộ tin cậy của luật thỏa mãn c ≥ minconf.

    • Ví dụ, với tập phổ biến ACW có độ tin cậy 67% ở bảng 2 và minconf = 70%thì chúng ta có thể sinh các luật kết hợp sau đây:

    • Bảng 3 - Luật kết hợp sinh từ tập phổ biến ACW

    • 3 Những hướng tiếp cận chính trong khai phá luật kết hợp:

    • Kể từ khi được R. Agrawal đề xuất vào năm 1993, lĩnh vực khai phá luật kết hợp đến nay đã được nghiên cứu và phát triển theo nhiều hướng khác nhau. Có những đề xuất nhằm vào cải tiến tốc độ thuật toán, có những đề xuất nhằm tìm kiếm luật có ý nghĩa hơn,... Sau đây là một số hướng chính:

    • Luật kết hợp nhị phân (binary association rule hoặc boolean association rule): là hướng nghiên cứu đầu tiên của luật kết hợp. Hầu hết các nghiên cứu ở thời kỳ đầu về luật kết hợp đều liên quan đến luật kết hợp nhị phân.Trong dạng luật kết hợp này, các mục (thuộc tính) chỉ được quan tâm là có hay không xuất hiện trong giao dịch của CSDL chứ không quan tâm về “mức độ” xuất hiện. Có nghĩa là việc mua 20 chai bia và 1 chai bia được xem là giống nhau. Thuật toán tiêu biểu nhất khai phá dạng luật này là thuật toán Apriori và các biến thể của nó. Đây là dạng luật đơn giản và như sau này ta biết các dạng luật khác cũng có thể chuyển về dạng luật này bằng một số phương pháp như rời rạc hóa, mờ hóa, ... Một ví dụ về dạng luật này: “Mua bánh mì = ‘yes’ AND mua đường= ‘yes’ => mua sữa = ‘yes’ AND mua bơ = ‘yes’, với độ hỗ trợ 20% và độ tin cậy 80%”.

    • Luật kết hợp có thuộc tính số và thuộc tính hạng mục (quantitative and categorical association rule): các thuộc tính của các CSDL thực tế có kiểu rất đa dạng (nhị phân – binary, số - quantitative, hạng mục – categorical, ...). Để phát hiện luật kết hợp với các thuộc tính này, các nhà nghiên cứu đã đề xuất một số phương pháp rời rạc hóa nhằm chuyển dạng luật này về dạng nhị phân để có thể áp dụng các thuật toán đã có. Một ví dụ về dạng luật này: “Giới tính = ‘Nam’ AND Tuổi ∈ ’50..65’ AND Cân nặng ∈ ’60..80’ AND Lượng đường trong máu > 120mg/dl => Huyết áp = ‘Cao’, với độ hỗ trợ 30%, độ tin cậy 65%”.

    • Luật kết hợp mờ (fuzzy association rule): với những hạn chế còn gặp phải trong quá trình rời rạc hóa các thuộc tính số (quantitative attributes), các nhà nghiên cứu đã đề xuất luật kết hợp mờ nhằm khắc phục những hạn chế trên và chuyển luật kết hợp về một dạng tự nhiên hơn, gần gũi hơn với người sử dụng. Một ví dụ về dạng luật này: “Ho khan =‘yes’ AND sốt cao AND đau cơ = ‘yes’ AND khó thở = ‘yes’ => Bị nhiễm SARS = ‘yes’, với độ hỗ trợ 4% và độ tin cậy 85%”. Trong luật trên, điều kiện sốt cao ở vế trái của luật là một thuộc tính đã được mờ hóa.

    • Luật kết hợp nhiều mức (multi-level association rules): ngoài các dạng luật trên, các nhà nghiên cứu còn đề xuất một hướng nghiên cứu nữa về luật kết hợp là luật kết hợp nhiều mức. Với cách tiếp cận này, người ta sẽ tìm kiếm thêm những luật có dạng “Mua máy tính PC => Mua hệ điều hành AND mua phần mềm tiện ích văn phòng, …” thay vì chỉ những luật quá cụ thể như “Mua máy tính IBM PC => Mua hệ điều hành Microsoft Windows AND mua Microsoft Office, …”. Rõ ràng, dạng luật đầu là dạng luật tổng quát hóa của dạng luật sau và tổng quát hóa cũng có nhiều mức khác nhau.

    • Luật kết hợp với thuộc tính được đánh trọng số (association rule with weighted items): trong thực tế, các thuộc tính trong CSDL không phải cóvai trò ngang bằng nhau. Có một số thuộc tính được chú trọng và lúc đó ta nói những thuộc tính đó có mức độ quan trọng cao hơn các thuộc tính khác. Ví dụ, khi khảo sát về khả năng lây nhiễm hội chứng SARS, thông tin về thân nhiệt, đường hô hấp rõ ràng là quan trọng hơn rất nhiều so với thông tin về tuổi tác. Trong quá trình tìm kiếm luật, chúng ta sẽ gán cho các thuộc tính thân nhiệt, đường hô hấp các trọng số lớn hơn so với trọng số của thuộc tính tuổi tác. Đây là một hướng nghiên cứu rất thú vị và đã được một số nhà nghiên cứu đề xuất cách giải quyết bài toán này. Với luật kết hợp có thuộc tính được đánh trọng số, chúng ta sẽ khai phá được những luật mang rất nhiều ý nghĩa, thậm chí là những luật “hiếm” (tức có độ hỗ trợ thấp, nhưng mang một ý nghĩa đặc biệt).

    • Bên cạnh những nghiên cứu về những biến thể của luật kết hợp, các nhà nghiên cứu còn chú trọng đề xuất những thuật toán nhằm tăng tốc quá trình tìm kiếm tập phổ biến từ CSDL. Những thuật toán này cải thiện đáng kể về mặt tốc độ do áp dụng được những chiến lược cắt tỉa “tinh xảo” hơn các thuật toán trước đó.

    • Khai phá luật kết hợp song song (parallel mining of association rules): bên cạnh khai phá luật kết hợp với các giải thuật tuần tự, các nhà làm tin học cũng tập trung vào nghiên cứu các giải thuật song song cho quá trình phát hiện luật kết hợp. Nhu cầu song song hóa và xử lý phân tán là cần thiết bởi kích thước dữ liệu ngày càng lớn nên đòi hỏi tốc độ xử lý cũng như dung lượng bộ nhớ của hệ thống phải được đảm bảo. Có rất nhiều thuật toán song song khác nhau đã được đề xuất, chúng có thể phụ thuộc hoặc độc lập với nền tảng phần cứng.

    • Luật kết hợp tiếp cận theo hướng tập thô (mining association rules basedon rough set): tìm kiếm luật kết hợp dựa trên lý thuyết tập thô.

    • Ngoài ra, còn một số hướng nghiên cứu khác về khai phá luật kết hợp như: khai phá luật kết hợp trực tuyến khai phá luật kết hợp được kết nối trực tuyến đến các kho dữ liệu đa chiều (multidimensional data, datawarehouse) thông qua công nghệ OLAP (Online Analysis Processing), MOLAP (Multidimensional OLAP), ROLAP (Relational OLAP), ADO(ActiveX Data Object) for OLAP, ...

    • 1 Giải thuật PNARG (Algorithm Positive and Negative Association Rules Generation):

    • a. Đặt vấn đề:

    • Luật kết hợp điển hình chỉ xem xét những đối tượng được liệt kê trong các giao dịch. Luật như vậy được gọi là luật kết hợp dạng khẳng định. Luật kết hợp phủ định cũng xem xét những đối tượng như vậy, nhưng bên cạnh đó nó còn xem xét những đối tượng không có trong các giao dịch. Luật kết hợp phủ định có ích trong việc phân tích xem những sản phẩm có mâu thuẩn hay bổ sung cho nhau không. Chúng cũng rất tiện lợi cho các bộ phân loại quan hệ (xây dựng mô hình phân loại dựa trên luật kết hợp). Nhiều ứng dụng khác sẽ được hưởng lợi từ luật kết hợp phủ định nếu không phải vì việc xử lý tốn kém để phát hiện ra chúng. Trên thực tế, khai phá các quy tắc như vậy đòi hỏi phải kiểm tra một không gian tìm kiếm lớn theo cấp số nhân. Mặc dù luật kết hợp phủ định là hữu dụng, và trong khi chúng được giới thiệu trong nhiều ấn phẩm, thì cho đến nay có rất ít thuật toán để khai phá chúng đã được đề xuất. Trong phần này chúng tôi đề xuất một thuật toán mở rộng framework hỗ trợ tin cậy với một ngưỡng hệ số tương quan trượt. Ngoài việc tìm kiếm luật khẳng định tin cậy mà có một sự tương quan mạnh mẽ, thuật toán phát hiện ra luật kết hợp phủ định với mối tương quan phủ định giữa các tiền đề và các hệ quả. Trong chương này, tôi tham khảo và trình bày dựa trên bài báo Mining Positive and Negative Association Rules: An Approach for Confined Rulescủa hai tác giả Maria-Luiza Antonie, Osmar R. Za¨ıane (University of Alberta Edmonton, Alberta, Canada).

    • b. Giới thiệu:

    • Khai phá luật kết hợp là nhiệm vụ khai phá dữ liệu mà trong đó ta khám phá, tìm ra mối quan hệ giữa các đối tương trong CSDL giao tác. Luật kết hợp đã được nghiên cứu rộng rãi trong các tài liệu về tính hữu dụng trong nhiều lĩnh vực ứng dụng như hệ thống tư vấn, hỗ trợ ra quyết định, viễn thông, phát hiện sự xâm nhập… Sự khám phá hiệu quả các quy tắc này đã được tập trung chủ yếu trong các cộng đồng nghiên cứu khai phá dữ liệu. Từ thuật toán Apriori ban đầu đã có một số lượng đáng kể các biến thể và cải tiến giải thuật khai phá luật kết hợp.

    • Phân tích luật kết hợp là nhiệm vụ phát hiện luật kết hợp mà xảy ra thường xuyên trong một tập dữ liệu nhất định. Một ví dụ điển hình của ứng dụng khai phá luật kết hợp là phân tích giỏ thị trường. Trong quá trình này, hành vi của các khách hàng được nghiên cứu khi mua các sản phẩm khác nhau trong một cửa hàng mua sắm. Sự phát hiện ra các hình mẫu thú vị trong bộ sưu tập dữ liệu này có thể dẫn đến những quyết định chiến lược tiếp thị và quản lý quan trọng. Ví dụ, nếu một khách hàng mua bánh mì, liệu xác suất để anh / cô ấy mua sữa ra sao? Tùy thuộc vào xác suất của một sự kết hợp như vậy, nhân viên tiếp thị có thể phát triển tốt hơn kế hoạch của không gian trưng bày trong các cửa hàng hoặc có thể căn cứ chiến lược giảm giá của họ trên các mối kết hợp, các mối tương quan như vậy được tìm thấy trong dữ liệu.

    • Tất cả các giải thuật khai phá luật kết hợp truyền thống được phát triển để tìm các mối kết hợp khẳng định giữa các đối tượng. Bằng các mối kết hợp khẳng định, chúng ta đề cập đến các mối kết hợp giữa các đối tượng tồn tại trong các giao dịch (tức là các mặt hàng đã mua). Mối kết hợp theo kiểu: “khách hàng mua Coke không mua Pepsi” hoặc “khách hàng mua nước ép mua không mua nước đóng chai” thì sao? Ngoài các mối kết hợp khẳng định, các mối kết hợp phủ định có thể cung cấp thông tin có giá trị trong việc đưa ra chiến lược tiếp thị. Điều thú vị là có rất ít sự tập trung vào các luật kết hợp phủ định do những khó khăn trong việc phát hiện những luật này.

    • Mặc dù một số nhà nghiên cứu đã chỉ ra tầm quan trọng của các mối kết hợp phủ định, chỉ có một vài nhóm các nhà nghiên cứu đề xuất một thuật toán để khai phá các mối kết hợp kiểu như vậy. Điều này không chỉ cho thấy sự mới lạ của luật kết hợp phủ định, mà còn là thách thức trong việc khám phá chúng.

    • c. Luật kết hợp phủ định:

    • Giả sử chúng ta có ví dụ từ dữ liệu giỏ hàng. Trong ví dụ này, ta nghiên cứu việc mua rau hữu cơ và rau phi hữu cơ trong một cửa hàng tạp hóa. Bảng 1 cho ta dữ liệu từ 100 giỏ hàng. Trong bảng 1, “organic” có nghĩa là giỏ có chứa rau hữu cơ và “¬organic” là giỏ không chứa rau hữu cơ. Tương tự cho vô cơ. Trên dữ liệu này, ta tìm các luật kết hợp khẳng định trong khuôn khổ “support-confidence”. Luật kết hợp “non-organic→organic” có độ hỗ trợ s=20% và độ tin cậy c=25% (supp(non-organic ^ organic) /sup(non-organic)). Luật kết hợp “organic →non-organic” có s=20% và c=50% (supp(non-organic ^ organic) /sup(organic)). Độ hỗ trợ s này được coi là khá cao cho cả hai luật trên. Mặc dù chúng ta có thể từ chối luật đầu tiên trên cơ sở sự tự tin, luật thứ hai có vẻ như là một luật hợp lệ và có thể được xem xét trong phân tích dữ liệu. Bây giờ, chúng ta tính toán mối tương quan thống kê giữa các mặt hàng vô cơ và hữu cơ. Một cuộc thảo luận chi tiết hơn về sự tương quan biện pháp được đưa ra trong phần sau. Hệ số tương quan giữa hai mặt hàng này là -0.61. Điều này có nghĩa là hai mặt hàng có mối tương quan phủ định. Biện pháp này chỉ ra hướng đi mới trong phân tích dữ liệu trên các mặt hàng cụ thể. Luật "Hữu cơ!vô cơ" là sai lầm. Mối tương quan mang lại những thông tin mới có thể giúp đỡ trong việc đề ra chiến lược tiếp thị tốt hơn.

    • Ví dụ trên minh họa một số điểm yếu trong khuôn khổ “support-confidence” và sự cần thiết của việc phát hiện ra các luật thú vị. Điều thú vị của một luật kết hợp có thể được xác định trong điều kiện của biện pháp kết hợpvới nó, cũng như trong hình thức một mối kết hợp có thể được tìm thấy.

  • Bảng 4 – Bảng dữ liệu mẫu

  • Bảng 5 - Bảng ngẫu nhiên 2x2

    • Định nghĩa: luật kết hợp phủ định là luật có chứa sự phủ định của 1 đối tượng (ví dụ luật mà tiền đề hoặc hệ quả của nó có thể được tạo bởi sự kết hợp việc có hay không có mặt các giá trị). Ví dụ: A B C D E F. Phát sinh thuật toán kiểu này không phải là vấn đề dễ dàng, bởi ta biết rằng việc khai phá luật kết hợp là quá trình tốn kém. Ta không chỉ xem xét các đối tượng có mặt trong giao dịch (hay hóa đơn) mà còn xem xét cả các trường hợp không có trong giao dịch. Trong phạm vi bài này, ta chỉ xét luật kết hợp phủ định hạn chế, kiểu như X Y, X Y, X Y.

    • d. Khám phá luật kết hợp khẳng định và phủ định:

    • Khung làm việc phổ biến nhất trong hệ luật kết hợp là “support-confidence”. Mặc dù hai thông số cho phép lược bỏ nhiều mối kết được phát hiện trong dữ liệu, nhưng có những trường hợp có nhiều luật không hay có thể được tạo ra. Trong giới hạn nội dung này, chúng ta xem xét một khuôn khổ mà thêm vào sự hỗ trợ - độ tin cậy một số biện pháp dựa trên phân tích tương quan. Phần tiếp theo sẽ giới thiệu các hệ số tương quan.

    • e. Hệ số tương quan:

    • Hệ số tương quan đánh giá mối quan hệ tuyến tính giữa 2 biến. Cho 2 biến X, Y, hệ số tương quan được xác định bởi công thức sau:

    • Trong công thức (1):

    • Mối tương quan khẳng định là minh chứng cho xu hướng mà khi giá trị của X tăng/giảm thì giá trị Y không đổi. Mối tương quan phủ định xảy ra khi tăng/giảm giá trị X thì giá trị Y cũng tăng/giảm.

    • Cho X và Y là hai biến số nhị phân. Bảng 2 tóm tắt các thông tin về biến X và Y trong một bộ dữ liệu trong bảng ngẫu nhiên 2x2. Các ô của bảng này cho biết sự kết hợp có thể có của X và Y và cung cấp các tần số kết hợp với mỗi sự kết hợp. N là kích thước của bộ dữ liệu xem xét.

    • Với các giá trị biến nhị phân trong bảng 2, ta đưa ra khái niệm hệ số tương quan (theo Pearson) như sau:

    • Lần lượt thay f00, f01, f10, f0+ và f+0, ta có:

    • Phương trình (6) dùng để tìm luật kết hợp.

    • f. Giải thuật đề xuất:

    • Quá trình khai phá luật kết hợp thường có 2 giai đoạn. Đầu tiên, khai phá tập phổ biến; sau đó là tạo ra các luật kết hợp từ các tập phổ biến được khám phá. Trong giải thuật này, ta kết hợp hai giai đoạn và tạo ra các luật có liên quan trong khi phân tích mối tương quan giữa mỗi tập ứng viên. Điều này tránh sự đánh giá đối tương kết hợp một cách dư thừa. Thật vậy, đối với mỗi tập phổ biến ứng viên tạo ra, chúng ta tính toán tất cả các mối kết hợp có thể có của các đối tương để phân tích mối tương quan của chúng. Cuối cùng, ta chỉ giữ những luật được tạo ra từ sự kết hợp các đối tương có tương quan chặt chẽ. Sức mạnh của sự tương quan được chỉ định bởi một ngưỡng tương quan, hoặc theo mặc định là 0.5 (xem ở trên cho hợp lý). Nếu tương quan giữa mục kết hợp X và Y của một tập phổ biến XY, trong đó X và Y là tập phổ biến, là phủ định, thì luật kết hợp phủ định được tạo ra khi độ tin cậy của chúng là đủ lớn. Các luật được tạo ra có một trong hai tiền đề hoặc hậu quả phủ định (X Y và X Y), ngay cả khi độ hỗ trợ là không cao hơn ngưỡng hỗ trợ. Tuy nhiên, nếu sự tương quan là tích cực, thì một luật kết hợp tích cực với ý tưởng độ hỗ trợ - tin cậy cổ điển được tạo ra. Nếu sự hỗ trợ không phải là đầy đủ, một luật kết hợp tiêu cực mà phủ nhận cả hai yếu tố tiền đề và hậu quả được tạo ra khi độ tin cậy và sự hỗ trợ của nó là cao.

    • Thuật toán sinh ra tất cả các luật kết hợp tích cực và tiêu cực có một mối tương quan mạnh mẽ. Nếu không có luật nào được tìm thấy, kể cả tích cực hay tiêu cực, ngưỡng tương quan được tự động hạ thấp để giảm bớt hạn chế về sức mạnh của mối tương quan và quá trình này được làm lại. Hình 1 cung cấp các chi tiết mã giả của thuật toán.

    • Ta có:

    • Positive AR: tập luật kết hợp khẳng định

    • Negative AR: tập luật kết hợp phủ định

    • Khởi đầu, ta gán positive AR = (rỗng), negative AR = (dòng 1).

    • Sau khi tạo ra tất cả các tập phổ biến thường xuyên cấp 1 (dòng 2), ta lặp lại để tạo ra tất cả tập phổ biến thường xuyên cấp k, được lưu trữ trong Fk (dòng 8). Fk được xác định từ một tập hợp các ứng cử viên Ck được tính trong dòng 4. Lặp đi lặp lại từ dòng 2, dừng lại khi không còn tập phổ biến thường xuyên nào. Không giống như trong thuật toán Apriori truyền thống, để tạo ra các ứng cử viên ở cấp k, thay vì tham gia tập phổ biến thường xuyên cấp (k-1), chúng ta tham gia các tập phổ biến ở mức k-1 với tập phổ biến thường xuyên cấp 1(dòng 4). Điều này là bởi vì ta muốn mở rộng tập hợp các tập phổ biến ứng viên và có khả năng phân tích mối tương quan của nhiều mối kết hợp đối tương hơn. Tính hợp lý sẽ được giải thích sau. Tất cả các tập phổ biến ứng viên được tạo ra theo cách này là trên thử nghiệm bằng tay để hỗ trợ (dòng 7), và mặt khác được sử dụng để phân tích mối tương quan có thể có ngay cả khi mức hỗ trợ dưới mức hỗ trợ tối thiểu (vòng lặp từ dòng 9 đến 22). Mối tương quan cho tất cả các kết hợp đôi có thể có cho mỗi tập phổ biến ứng viên được tính toán.

    • Với mỗi tập phổ biến i và một căp (X,Y) sao cho i=X Y, ta tính được hệ số tương quan (dòng 10). Nếu sự tương quan là khẳng định và đủ chặt chẽ thì ta có 1 luật kết hợp khẳng định kiểu X Y, nếu supp(X Y) trên ngưỡng hỗ trợ và độ tin cậy tối thiểu của luật là chắc chắn (đủ mạnh). Ngược lại, nếu chúng ta vẫn có một mối tương quan tích cực và mạnh mẽ nhưng mức hỗ trợ dưới mức hỗ trợ tối thiểu, ta có một luật kết hợp phủ định theo kiểu X Y nếu độ tin cậy của nó trên ngưỡng độ tin cậy tối thiểu (dóng 15-16). Mặc khác nếu sự kiểm tra mối tương quan cho ta 1 mối tương quan phủ định (nghịch), ta có luật kết hợp theo kiểu X Y và X Y và được thêm vào tập luật kết hợp nếu độ tin cậy của nó là đủ. Kết quả được biên soạn bằng cách kết hợp tất cả các luật kết hợp phủ định và khẳng định được phát hiện. Từ dòng 26 trở đi, minh họa cho ngưỡng tăng tự động của hệ số tương quan. Nếu không có luật nào được tạo ra ở một mức độ tương quan cho trước, ngưỡng này được giảm xuống 0.1 (dòng 27) và quá trình cứ thế lặp lại.

    • 2 Giải thuật MPNAR: (Algorithm Mining Negative Association Rules):

    • a. Giới thiệu:

    • Khung làm việc phổ biến nhất trong hệ luật kết hợp là “support-confidence”. Mặc dù hai thông số này cho phép lược bỏ nhiều mối kết được phát hiện trong dữ liệu, nhưng có những trường hợp có nhiều luật không hay có thể được tạo ra. Trong giới hạn nội dung này, chúng ta xem xét một biện pháp thú vị được gọi là độ tin cậy, cái được them vào khuôn khổ support-confidence. Phần tiếp theo sẽ giới thiệu biện pháp độ tin cậy.

    • Độ tin cậy của một luật được định nghĩa như sau:

    • b. Giải thuật đề xuất:

  • KẾT LUẬN

  • TÀI LIỆU THAM KHẢO

Nội dung

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN __________ BÀI THU HOẠCH MÔN HỌC CÔNG NGHỆ TRI THỨC & ỨNG DỤNG ĐỀ TÀI TÌM HIỂU KHAI PHÁ LUẬT KẾT HỢP PHỦ ĐỊNH GVHD: GS.TSKH. HOÀNG KIẾM HVTH: LÊ THÚC QUỐC ANH MSHV: CH1301002 TP HCM, 09/2014 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm MỤC LỤC Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 2 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm MỞ ĐẦU Ngày nay, cùng với sự phát triển không ngừng của các nền kinh tế, một lượng lớn dữ liệu và thông tin được cập nhật hàng ngày. Để phục vụ cho đời sống con người ngày một tốt đẹp, hoàn thiện hơn, chúng ta đã phân tích những dữ liệu, thông tin đó để tìm ra các quy luật, chuyển thành các mô hình tính toán phục vụ cho các nhu cầu cần thiết, ứng dụng chúng trong đời sống hằng ngày. Việc phân tích nghiên cứu đó gọi là công nghệ tri thức. Luật kết hợp là một dạng luật khá đơn giản nhưng lại mang rất nhiều ý nghĩa. Thông tin mà dạng luật này đem lại là rất đáng kể và hỗ trợ không nhỏ trong quá trình ra quyết định. Tìm kiếm được những luật kết hợp “quý hiếm” và mang nhiều thông tin từ cơ sở dữ liệu tác nghiệp là một trong những hướng tiếp cận chính của lĩnh vực khai phá dữ liệu. Trong nội dung bài thu hoạch này, em xin trình bày khái quát Tìm hiểu Khai phá luật kết hợp phủ định. Bài thu hoạch được xây dựng dựa trên nền các nghiên cứu đã có trong lĩnh vực khai phá luật kết hợp, các bài báo nước ngoài tại các hội nghị chuyên ngành. Em xin chân thành cám ơn GS.TSKH Hoàng Kiếm, và các thầy cô trong trường Đại học CNTT- ĐHQG TP HCM cùng các bạn bè đã giúp em hoàn thành tốt môn học này. Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 3 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm I. Tổng quan về Khai phá dữ liệu: 1. Đặt vấn đề: Chúng ta biết rằng Google luôn trả cho ta kết quả tìm kiếm tốt nhất, thông minh nhất. Nó còn thông minh hơn nếu như ta luôn tìm kiếm thông tin bằng cách đăng nhập vào hệ thống của Google. Chúng ta có thể thử bằng cách tìm một từ khóa chuyên biệt khi không đăng nhập và khi đăng nhập, nói chung kết quả sẽ khác nhau, và hầu hết là kết quả khi đăng nhập sẽ có độ chính xác với mục đích tìm kiếm cao hơn so với khi không đăng nhập. Tại sao lại như vậy? Facebook có tính năng rất hay và rất hữu dụng trong việc kết nối các mối quan hệ, đó là tính năng suggestions friends, và điều thú vị là hầu hết các người bạn mà Facebook suggest đều là những người tôi biết. Vậy tại sao Facebook nó lại thông minh đến mức như vậy? Amazon.com là website bán sách lớn nhất trên internet, để ý rằng mỗi khi xem thông tin chi tiết về một quyển sách nào đó trên site thì bao giờ cũng kèm theo một danh sách các quyển sách gợi ý mua kèm theo quyển bạn đang xem, một thống kê cho thấy có tới trên 70% đầu sách được người dùng mua thêm thông qua hình thức gợi ý này. Vậy điều gì làm cho việc bán sách hiệu quả đến như vậy? Trên đây chỉ là các ví dụ chúng ta có thể nhìn và hiểu, còn rất, rất nhiều các ví dụ từ nghiên cứu khoa học ứng dụng trong không gian, đến việc chống khủng bố…Nói tóm lại tất cả những ví dụ, những điều được nói ở trên chung qui lại chỉ xoay quanh một chủ đề: Data mining. Vậy data ming là gì? 2. Định nghĩa khai phá dữ liệu: Khai phá dữ liệu (datamining) được định nghĩa như là một quá trình chắt lọc hay khai phá tri thức từ một lượng lớn dữ liệu. Một ví dụ hay được sử dụng là là việc khai thác vàng từ đá và cát, Dataming được ví như công việc "Đãi cát tìm vàng" trong một tập hợp lớn các dữ liệu cho trước. Thuật ngữ Datamining ám chỉ việc tìm kiếm một tập hợp nhỏ có giá trị từ một số lượng lớn các dữ liệu thô. Có nhiều thuật ngữ hiện được dùng cũng có nghĩa tương tự với từ Data - mining như Knowledge Mining (khai phá tri thức), knowledge extraction(chắt lọc tri thức), data/patern analysis(phân tích dữ liệu/mẫu), data archaeoloogy (khảo cổ dữ liệu), datadredging(nạo vét dữ liệu), Định nghĩa khác: Khai phá dữ liệu là một tập hợp các kỹ thuật được sử dụng để tự động khai thác và tìm ra các mối quan hệ lẫn nhau của dữ liệu trong một tập hợp dữ liệu khổng lồ và phức tạp, đồng thời cũng tìm ra các mẫu tiềm ẩn trong tập dữ liệu đó. 3. Các bước chính trong khám phá tri thức (KDD): Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 4 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm Khai phá dữ liệu là một bước trong quá trình khám phá tri thức (KDD - Knowleadge Discovery in Database). Người ta thường chia quá trình khám phá tri thức thành các bước sau: • Trích chọn dữ liệu (data selection): là bước trích chọn những tập dữ liệu cần được khai phá từ các tập dữ liệu lớn (databases, data warehouses, data repositories) ban đầu theo một số tiêu chí nhất định. • Tiền xử lý dữ liệu (data preprocessing): là bước làm sạch dữ liệu (xử lý với dữ liệu không đầy đủ, dữ liệu nhiễu, dữ liệu không nhất quán, ), rút gọn dữ liệu (sử dụng hàm nhóm và tính tổng, các phương pháp nén dữ liệu, sử dụng histograms, lấy mẫu, ), rời rạc hóa dữ liệu (rời rạc hóa dựa vào histograms, entropy, phân khoảng, ). Sau bước này, 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 (data transformation): đây là bước chuẩn hóa và làm mịn dữ liệu để đưa dữ liệu về dạng thuận lợi nhất nhằm phục vụ cho các kỹ thuật khai phá ở bước sau. • KPDL (data mining): đây là bước áp dụng những kỹ thuật khai phá (phần nhiều là các kỹ thuật của machine learning) để khai phá, trích chọn được những mẫu (patterns) thông tin, những mối liên hệ (relationships) đặc biệt trong dữ liệu. Đây được xem là bước quan trọng và tốn nhiều thời gian nhất của toàn quá trình KDD. • Biểu diễn và đánh giá tri thức (knowledge representation & evaluation): những mẫu thông tin và mối liên hệ trong dữ liệu đã được khai phá ở bước trên được chuyển dạng và biểu diễn ở một dạng gần gũi với người sử dụng như đồ thị, cây, bảng biểu, luật, .v.v. Đồng thời bước này cũng đánh giá những tri thức khám phá được theo những tiêu chí nhất định. Hình 1. Các bước trong khám phá tri thức (KDD) Để ví dụ cho quá trình này, chúng ta quay lại trả lời các câu hỏi ở mục đặt vấn đề. Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 5 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm Đầu tiên là câu hỏi tại sao kết quả tìm kiếm của Google lại khác nhau khi đăng nhập và khi không đăng nhập? Câu trả lời ngắn gọn là: Khi bạn đăng nhập Google biết bạn là ai, biết hành vi trong quá khứ của bạn như thế nào (thông qua quá trình thu thập dữ liệu hành vi của bạn trên các site mà Google hiện diện), do đó nó dựa vào sự hiểu biết này nên kết quả trả về bao giờ cũng là kết quả có độ chính xác với nhu cầu của bạn cao nhất và ngược lại, khi không đăng nhập, Google chỉ trả về kết quả ranking bình thường mà không có kèm theo tham số ranking theo user. Và dĩ nhiên để biết được hành vi trong quá khứ của bạn, Google phải sử dụng đến các công nghệ data mining. Thứ hai, tại sao Facebook lại có thể gợi ý cho tôi toàn những người mà tôi đã quen biết? Để có thể đưa ra gợi ý này đòi hỏi Facebook kết hợp rất nhiều các tham số, cụ thể là những tham số gì thì là bí mật công nghệ riêng của FB. Tuy nhiên có thể giải thích tóm lược như sau: Khi bạn đăng ký tài khoản Facebook, thông thường bạn nhập thêm các thông tin khác như: quá trình làm việc ở các công ty, công ty bạn đang làm, trường/lớp bạn đã/đang học, các hội bạn tham gia, bạn gái/trai/vợ/chồng của bạn v.v Đây chính là các thông tin mà Facebook có thể dựa vào để xác định ai là bạn của bạn. Ở đây, Facebook đã mô hình hóa các tham số có độ liên quan nhất định để đưa ra những gợi ý mà có xác xuất đúng rất cao, và bạn thấy đó, thực sự là rất đúng. News stream của Facebook còn phức tạp và hay ho hơn nữa. Tất cả các điều đó Facebook làm được là quá trình thu thập dữ liệu hoạt động của người dùng trên site, sau đó sử dụng các công nghệ data mining để cung cấp nội dung, tính năng phù hợp nhất cho người dùng. Thứ ba, tại sao Amazon lại có thể đưa ra danh sách các quyển sách bán kèm có tỷ lệ bán được cao như vậy? Để làm được điều này Amazon đã đầu tư phát triển hệ thống recommendation trong hàng chục năm, thời gian dài đó không chỉ là phát triển thuần túy công nghệ mà còn là quãng thời gian thu thập và phân tích hành vi người sử dụng trên site của Amazon, thời gian càng dài, dữ liệu thu thập càng lớn, dẫn đến tập thông tin có độ tương quan càng nhiều và càng chính xác. Nôm na bạn có thể hiểu là 100 khách hàng mua quyển sách ABC thì có tới 40 khách hàng đồng thời mua quyển sách DEF, vì thế với khách hàng 101 xem quyển ABC, hệ thống nhận diện và đưa ra gợi ý mua them quên DEF, đơn giản là vậy, tuy nhiên bên dưới còn có nhiều tham số khác để tăng độ tương quan lên nữa. Và đây cũng là một quá trình mining dữ liệu. 4. Tại sao cần khai phá dữ liệu: Khoảng hơn một thập kỷ trở lại đây, lượng thông tin được lưu trữ trên các thiết bị điện tử không ngừng tăng lên. Sự tích lũy dữ liệu này xảy ra với một tốc độ bùng nổ. Người ta ước đoán rằng lượng thông tin trên toàn cầu tăng gấp đôi sau khoảng hai năm và theo đó số lượng cũng như kích cỡ của các cơ sở dữ liệu (CSDL) cũng tăng lên một cách nhanh chóng. Nói một cách hình ảnh là chúng ta đang “ngập” trong dữ liệu nhưng lại Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 6 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm “đói” tri thức. Câu hỏi đặt ra là liệu chúng ta có thể khai thác được gì từ những “núi” dữ liệu tưởng chừng như “bỏ đi”ấy không ? 5. Các hướng tiếp cận chính trong khai phá dữ liệu: Data Mining được chia nhỏ thành một số hướng chính như sau: • Mô tả khái niệm (concept description): 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. • Luật kết hợp (association rules): là dạng luật biểu diễn tri thức ở dạng khá đơn giản. Ví dụ: “60 % nam giới vào siêu thị nếu mua bia thì có tới 80% trong số họ sẽ mua thêm thịt bò khô”. Luật kết hợp được ứng dụng nhiều trong lĩnh vực kính doanh, y học, tin-sinh, tài chính & thị trường chứng khoán, • Phân lớp và dự đoán (classification & 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 vùng địa lý theo dữ liệu thời tiết. Hướng tiếp cận này thường sử dụng một số kỹ thuật của machine learning như cây quyết định (decision tree), mạng nơ ron nhân tạo (neural network), Người ta còn gọi phân lớp là học có giám sát (học có thầy). • Phân cụm (clustering): xếp các đối tượng theo từng cụm (số lượng cũng như tên của cụm chưa được biết trước. Người ta còn gọi phân cụm là học không giám sát (học không thầy). • Khai phá chuỗi (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. 6. Các dạng dữ liệu có thể khai phá: Do KPDL được ứng dụng rộng rãi nên nó có thể làm việc với rất nhiều kiểudữliệu khác nhau. Sau đây là một số kiểu dữ liệu điển hình: • CSDL đa chiều (multidimensional structures, data warehouses) • CSDL dạng giao dịch (transactional databases) • CSDL quan hệ - hướng đối tượng (object-relational databases) • Dữ liệu không gian và thời gian (spatial and temporal data) • Dữ liệu chuỗi thời gian (time-series data) • CSDL đa phương tiện (multimedia databases) như âm thanh (audio), hình ảnh (image), phim ảnh (video), • Dữ liệu Text và Web (text database & www) 7. Phân loại các hệ khai phá dữ liệu: Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 7 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm KPDL là một công nghệ tri thức liên quan đến nhiều lĩnh vực nghiên cứu khác nhau như CSDL, kỹ thuật máy học (machine learning), giải thuật, trực quan hóa (visualization), Chúng ta có thể phân loại các hệ thống KPDL dựa trên các tiêu chí khác nhau: • Phân loại dựa trên kiểu dữ liệu được khai phá: CSDL quan hệ (relational database), kho dữ liệu (data warehouse), CSDL giao dịch (transactional database), CSDL hướng đối tượng, CSDL không gian (spatial database), CSDL đa phương tiện (multimedia database), CSDL Text và www, • Phân loại dựa trên dạng tri thức được khám phá: tóm tắt và mô tả (summarization & description), luật kết hợp (association rules), phân lớp (classification), phân cụm (clustering), khai phá chuỗi (sequential mining), • Phân loại dựa trên kỹ thuật được áp dụng: hướng CSDL (databaseoriented), phân tích trực tuyến (OnLine Analytical Processing – OLAP), machine learning (cây quyết định, mạng nơ ron nhân tạo, k-min, giải thuật di truyền, máy vectơ hỗ trợ - SVM, tập thô, tập mờ, ), trực quan hóa (visualization), • Phân loại dựa trên lĩnh vực được áp dụng: kinh doanh bán lẻ (retail), truyền thông (telecommunication), tin-sinh (bio-informatics), y học (medical treatment), tài chính & thị trường chứng khoán (finance & stock market), web mining, 8. Ứng dụng của khai phá dữ liệu: Khai phá dữ liệu bao hàm rất nhiều hướng tiếp cận. Các kỹ thuật chính được áp dụngtrong lĩnh vực này phần lớn được thừa kế từ lĩnh vực cơ sở dữ liệu (database), máy học (machine learning), trí tuệ nhân tạo, lý thuyết thông tin, xác suất thống kê, và tínhtoán hiệu năng cao. Lĩnh vực nàycũng là điểm hội tụ và giao thoa của rất nhiều lĩnh vực khác. Data Mining tuy là một hướng tiếp cận mới nhưng thu hút được rất nhiều sự quan tâm của các nhà nghiên cứu và phát triển nhờ vào những ứng dụng thực tiễn của nó. Chúng ta có thể liệt kê ra đây một số ứng dụng điển hình: • Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis & decision support) • Điều trị y học (medical treatment) • Text mining & Web mining • Tin-sinh (bio-informatics) • Tài chính và thị trường chứng khoán (finance & stock market) • Bảo hiểm (insurance) • Nhận dạng (pattern recognition) 9. Các vấn đề được chú trọng trong khai phá dữ liệu: Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 8 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm KPDL là một lĩnh vực mới, do đó đang còn rất nhiều vấn đề chưa được nghiên cứu một cách trọn vẹn. Sau đây là một số hướng nghiên cứu đã và đang thu hút được sự chú ý của các nhà tin học: • OLAM (OnLine Analytical Mining) - Sự tích hợp giữa CSDL, kho dữ liệu, và KPDL. Hiện nay một số hệ quản trị CSDL như Oracle, MS SQL Server, DB2 đã tích hợp tính năng xây dựng kho dữ liệu và phân tích trực tuyến (OLAP). Những tính năng này được hỗ trợ dưới dạng những công cụ đi kèm và người dùng phải trả tiền thêm nếu cần sử dụng những tính năng đó. Những nhà nghiên cứu trong lĩnh vực CSDL không muốn dừng lại ở đó mà họ muốn có một sự tích hợp giữa CSDL, kho dữ liệu và KPDL. • Khám phá được nhiều dạng tri thức khác nhau từ nhiều kiểu dữ liệu. • Tính hiệu quả, tính chính xác, độ phức tạp tính toán, khả năng mở rộng và tích hợp, xử lý nhiễu và dữ liệu không đầy đủ, tính hữu dụng (ý nghĩa) của tri thức. • Kết hợp KPDL với tri thức cơ sở (background knowledge). • Vấn đề song song hóa và phân tán quá trình KPDL. • Ngôn ngữ truy vấn trong KPDL (Data Mining Query Language – DMQL): cung cấp cho người sử dụng một ngôn ngữ hỏi thuật tiện tương tự như SQL đối với CSDL quan hệ. • Biểu diễn và trực quan hóa tri thức khai phá được sao cho gần gũi với người sử dụng (human-readable expression). Tri thức có thể biểu diễn đa chiều, đa tầng để người dùng sử dụng tri thức hiệu quả hơn. Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 9 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH. Hoàng Kiếm II. LUẬT KẾT HỢP: 1 Tại sao lại luật kết hợp? Luật kết hợp là những luật có dạng “70% khách hàng mua bia thì mua them thịt bò khô, 20% giao dịch có mua cả bia lẫn thịt bò khô” hoặc “75% bệnh nhân hút thuốc lá và sống ven vùng ô nhiễm thì bị ung thư phổi, trong đó 25% số bệnh nhân vừa hút thuốc lá, sống ven vùng ô nhiễm vừa ung thư phổi”. “Mua bia” hay “hút thuốc lá và sống ven vùng ô nhiễm” ở đây được xem là vế trái (tiền đề - antecedent) của luật, còn “mua thịt bò khô” hay “ung thư phổi” là vế phải (kết luận - consequent) của luật. Những con số 20% hay 25% là độ hỗ trợ của luật (support - số phần trăm các giao dịch chứa cả vế trái lẫn vế phải), còn 70% hay 75% là độ tin cậy của luật (confidence - số phần trăm các giao dịch thỏa mãn vế trái thì cũng thỏa mãn vế phải). Hình 2. Minh họa về luật kết hợp Chúng ta nhận thấy rằng tri thức đem lại bởi những luật kết hợp ở dạng trên có một sự khác biệt cơ bản so với thông tin thu được từ các câu lệnh truy vấn dữ liệu thông thường (ngôn ngữ SQL chẳng hạn). Đó thường là những tri thức, những mối liên hệ chưa đuợc biết trước và mang tính dự báo đang tiềm ẩn trong dữ liệu. Những tri thức này không đơn giản chỉ là kết quả của các phép nhóm, tính tổng hay sắp xếp mà là kết quả của một quá trình tính toán khá phức tạp và tốn nhiều thời gian. Tuy luật kết hợp là một dạng luật khá đơn giản nhưng lại mang rất nhiều ý nghĩa. Thông tin mà dạng luật này đem lại rất đáng kể và hỗ trợ không nhỏ trong quá trình ra quyết định. Tìm kiếm ra những luật kết hợp “quý hiếm” và chứa nhiều thông tin từ CSDL tác nghiệp là một trong những hướng tiếp cận chính của lĩnh vực KPDL và đây chính là một động lực không nhỏ thúc đẩy việc tập trung nghiên cứu của nhiều nhà tin học. 2 Phát biểu bài toán khai phá luật kết hợp: Cho I = {i1, i2, …, in} là tập mục bao gồm n mục (item – còn được gọi là thuộc tính - attribute). T = {t1, t2, …, tm} là tập gồm m giao dịch (transaction – còn được gọi là bản Hvth: Lê Thúc Quốc Anh - Mã số: CH1301002 Trang 10 [...]... tảng phần cứng • Luật kết hợp tiếp cận theo hướng tập thô (mining association rules basedon rough set): tìm kiếm luật kết hợp dựa trên lý thuyết tập thô • Ngoài ra, còn một số hướng nghiên cứu khác về khai phá luật kết hợp như: khai phá luật kết hợp trực tuyến khai phá luật kết hợp được kết nối trực tuyến đến các kho dữ liệu đa chiều (multidimensional data, datawarehouse) thông qua công nghệ OLAP (Online... 14 Bài thu hoạch Công nghệ tri thức & Ứng dụng Gvhd: GS.TSKH Hoàng Kiếm III Một số giải thuật trong khai phá luật kết hợp phủ định 1 Giải thuật PNARG (Algorithm Positive and Negative Association Rules Generation): a Đặt vấn đề: Luật kết hợp điển hình chỉ xem xét những đối tượng được liệt kê trong các giao dịch Luật như vậy được gọi là luật kết hợp dạng khẳng định Luật kết hợp phủ định cũng xem xét... tối thiểu (dóng 15-16) Mặc khác nếu sự kiểm tra mối tương quan cho ta 1 mối tương quan phủ định (nghịch), ta có luật kết hợp theo kiểu X Y và X Y và được thêm vào tập luật kết hợp nếu độ tin cậy của nó là đủ Kết quả được biên soạn bằng cách kết hợp tất cả các luật kết hợp phủ định và khẳng định được phát hiện Từ dòng 26 trở đi, minh họa cho ngưỡng tăng tự động của hệ số tương quan Nếu không có luật. .. cáo này, ta hiểu được phần nào về khai phá luật kết hợp phủ định Trong lĩnh vực khai phá dữ liệu, thì hướng đi khai phá luật kết hợp phủ định là một hướng đi khó Tuy nhiên nó có phạm vi ứng dụng rất rộng và thú vị nhất là trong Marketing, Health Care và Social Network Analysis Trong chuyên đề Khai phá dữ liệu” được học sắp tới, đề tài này sẽ được nghiên cứu chuyên sâu, làm rõ các vấn đề hơn và thực hiện... đáng kể các biến thể và cải tiến giải thuật khai phá luật kết hợp Phân tích luật kết hợp là nhiệm vụ phát hiện luật kết hợp mà xảy ra thường xuyên trong một tập dữ liệu nhất định Một ví dụ điển hình của ứng dụng khai phá luật kết hợp là phân tích giỏ thị trường Trong quá trình này, hành vi của các khách hàng được nghiên cứu khi mua các sản phẩm khác nhau trong một cửa hàng mua sắm Sự phát hiện ra các hình... mối kết hợp khẳng định, các mối kết hợp phủ định có thể cung cấp thông tin có giá trị trong việc đưa ra chiến lược tiếp thị Điều thú vị là có rất ít sự tập trung vào các luật kết hợp phủ định do những khó khăn trong việc phát hiện những luật này Mặc dù một số nhà nghiên cứu đã chỉ ra tầm quan trọng của các mối kết hợp phủ định, chỉ có một vài nhóm các nhà nghiên cứu đề xuất một thuật toán để khai phá. .. giảm giá của họ trên các mối kết hợp, các mối tương quan như vậy được tìm thấy trong dữ liệu Tất cả các giải thuật khai phá luật kết hợp truyền thống được phát tri n để tìm các mối kết hợp khẳng định giữa các đối tượng Bằng các mối kết hợp khẳng định, chúng ta đề cập đến các mối kết hợp giữa các đối tượng tồn tại trong các giao dịch (tức là các mặt hàng đã mua) Mối kết hợp theo kiểu: “khách hàng mua... f10, f0+ và f+0, ta có: = (3) = (4) = (5) = (6) Phương trình (6) dùng để tìm luật kết hợp f Giải thuật đề xuất: Quá trình khai phá luật kết hợp thường có 2 giai đoạn Đầu tiên, khai phá tập phổ biến; sau đó là tạo ra các luật kết hợp từ các tập phổ biến được khám phá Trong giải thuật này, ta kết hợp hai giai đoạn và tạo ra các luật có liên quan trong khi phân tích mối tương quan giữa mỗi tập ứng viên... do người dùng xác định: c ≥ minconf[5] Bài toán khai phá luật kết hợp (ở dạng đơn giản nhất) đặt ra như sau: Cho một CSDL D, độ hỗ trợ tối thiểu minsup, độ tin cậy tối thiểu minconf Hãy tìm kiếm tất cả các luật kết hợp có dạng X →Y thỏa mãn độ hỗ trợ s(X ∪Y) ≥ minsup và độ tin cậy của luật c( X →Y ) = s(X∪Y) / s(X) ≥ minconf Hầu hết các thuật toán được đề xuất để khai phá luật kết hợp thường chia bài... biến thì luật kết hợp được sinh từ X có dạng X '⎯⎯c→X \ X ' ,với X’ là tập con khác rỗng của X, X \ X’ là hiệu của hai tập hợp, và c làđộ tin cậy của luật thỏa mãn c ≥ minconf • Ví dụ, với tập phổ biến ACW có độ tin cậy 67% ở bảng 2 và minconf = 70%thì chúng ta có thể sinh các luật kết hợp sau đây: Bảng 3 - Luật kết hợp sinh từ tập phổ biến ACW 3 Những hướng tiếp cận chính trong khai phá luật kết hợp: . về khai phá luật kết hợp như: khai phá luật kết hợp trực tuyến khai phá luật kết hợp được kết nối trực tuyến đến các kho dữ liệu đa chiều (multidimensional data, datawarehouse) thông qua công nghệ. quan phủ định (nghịch), ta có luật kết hợp theo kiểu X Y và X Y và được thêm vào tập luật kết hợp nếu độ tin cậy của nó là đủ. Kết quả được biên soạn bằng cách kết hợp tất cả các luật kết hợp phủ. PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN __________ BÀI THU HOẠCH MÔN HỌC CÔNG NGHỆ TRI THỨC & ỨNG DỤNG ĐỀ TÀI TÌM HIỂU KHAI PHÁ LUẬT KẾT HỢP PHỦ ĐỊNH GVHD: GS.TSKH. HOÀNG KIẾM HVTH:

Ngày đăng: 20/05/2015, 10:28

TỪ KHÓA LIÊN QUAN

w