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

Tìm hiểu khả năng phân lớp tự động của SQL Server

37 394 1

Đ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

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 671 KB

Nội dung

Với những ý nghĩa và vai trò hết sức quan trọng của kĩ thuật phân lớp đã nêu ở trên , bài thu hoạch này tập trung nguyên cứu sâu những kĩ thuật phân lớp ,những cách tiếp cận khác nhau đố

Trang 1

ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

- -BÀI THU HOẠCH MÔN

KHAI PHÁ DỮ LIỆU VÀ KHO DỮ LIỆU

Đề tài:

Tìm hiểu khả năng phân lớp tự động của SQL Server

Giáo viên hướng dẫn : PGS TS Đỗ Phúc

Học viên thực hiện : Nguyễn Xuân Sơn

Mã số học viên : CH1102007

Hà nội, 2014

Trang 2

Kĩ thuật phân lớp dữ liệu trong Khai Phá Dữ Liệu là một trong những vấn đề nguyên cứu mở rộng hiện nay; tập trung chủ yếu vào thống kê, máy học và mạng nơtrôn.

Kĩ thuật phân lớp được đánh giá là một kĩ thuật khai phá dữ liệu được sử dụng rộng rãi nhất với nhiều mở rộng

Sự kết hợp của kỹ thuật phân lớp và cơ sở dữ liệu là một lĩnh vực hứa hẹn bởi vì đáp ứng được một vấn đề hết sức quan trọng của ứng dụng cơ sở dữ liệu đó là tính uyển chuyển cao

Với những ý nghĩa và vai trò hết sức quan trọng của kĩ thuật phân lớp đã nêu ở trên , bài thu hoạch này tập trung nguyên cứu sâu những kĩ thuật phân lớp ,những cách tiếp cận khác nhau đối với kỹ thuật phân lớp cùng với những tìm hiểu và đánh giá những cải tiến của kĩ thuật phân lớp trong thời gian gẩn đây từ những kết quả được đăng tải trên một số báo cáo khoa học tại những hội nghị khoa học quốc tế về Khai Phá

Dữ Liệu cũng như việc tìm hiểu và sử dụng kĩ thuật phân lớp trong sản phẩm thương mại Microsoft SQL Server 2000

Học viên

Nguyễn Xuân Sơn

Trang 3

MỤC LỤC

1 Giới thiệu về phân lớp: 4

2 Phân lớp bằng phương pháp qui nạp cây quyết định : 4

a Khái niệm cây quyết định : 4

b Thuật toán qui nạp cây quyết định : 4

c Độ lợi thông tin (Information Gain) trong cây quyết định : 5

d Nội dung giải thuật học cây quyết định cơ bản ID3 : 5

e Những thiếu sót của giải thuật ID3: 7

f Mở rộng qui nạp cây quyết định cơ bản : 7

g Giải thuật mở rộng C4.5 : 8

h Thu giảm cây quyết định và những tập luật suy dẫn : 8

i Giải thuật mở rộng See5/C5.0: 9

j Giải thuật See5/C5.0 là tốt hơn C4.5: 10

k Phân lớp với GiniIndex(IBM IntelligenMiner) : 11

l Tránh việc quá khít (overfitting) trong việc phân lớp : 11

3 Sự phân lớp cây quyết định trong cơ sở dữ liệu lớn: 12

a SLIQ : A Fast Scalable Classifier for Data Mining : 12

b Từ SLIQ sang SPRINT : A Scalable Parallel Classifier for DataMining 13

c PUBLIC: Tích hợp sự phát triển của cây quyết định và tỉa cây: 13

d RainForest: A Generic Framework: 14

e Qui nạp cây quyết định dữ liệu dựa trên khối: 14

4 Phương pháp phân lớp Bayesian: 14

5 Phân lớp bằng mạng lạn truyền ngược: 17

6 Phân lớp dựa trên nguyên lý khai phá luật kết hợp: 18

7 Những phương thức phân lớp khác: 18

a Những phương thức dựa trên khoảng cách: 18

b Giải thuật Di truyền (Genetic Algorithms): 19

c Tiếp cận tập thô : 19

d Tiếp cận tập mờ: 20

e Phân lớp bằng suy luận dựa trên trường hợp ( case-based reasoning): 20

8 Tiên đoán và phân lớp: 20

9 Khai phá dữ liệu với Microsoft OLE DB 21

10 Tạo cây quyết định trong Microsoft SQL Server 2000 25

Trang 4

1 Giới thiệu về phân lớp:

Phân lớp dữ liệu là kĩ thuật dựa trên tập huấn luyện và những giá trị hay hay là nhãn của lớp trong một thuộc tính phân lớp và sử dụng nó trong việc phân lớp dữ liệu mới Phân lớp cũng là tiên đoán loại lớp của nhãn Bên cạnh kĩ thuật phân lớp có một hình thức tương tự là kĩ thuật tiên đoán, kĩ thuật tiên đoán khác với phân lớp ở chỗ phân lớp chỉ liên quan đến tiên đoán loại lớp của nhãn còn kĩ thuật tiên đoán mô hình những hàm đánh giá liên tục

Kĩ thuật phân lớp được tiến hành bao gồm 2 bướ c : Xây dựng mô hình và sử

dụng mô hình

Xây dựng mô hình : là mô tả một tập những lớp được định nghĩa trước trong đó:

mỗi bộ hoặc mẫu được gán thuộc về một lớp được định nghĩa trước như là được xát định bởi thuộc tính nhãn lớp, tập hợp của những bộ được sử dụng trong việc sử dụng

mô hình được gọi là tập huấn luyện Mô hình được biểu diễn là những luật phân lớp, cây quyết định và những công thức toán học

Sử dụng mô hình : Việc sử dụng mô hình phục vụ cho mục đích phân lớp dữ

liệu trong tương lai hoặc phân lớp cho những đối tượng chưa biết đến Trước khi sử dụng mô hình người ta thường phải đánh giá tính chính xát của mô hình trong đó: nhãn được biết của mẫu kiểm tra được so sánh với kết quả phân lớp của mô hình, độ chính xác là phần trăm của tập hợp mẫu kiểm tra mà phân loại đúng bởi mô hình, tập kiểm tra là độc lập với tập huấn luyện

Phân lớp là một hình thức học được giám sát tức là: tập dữ liệu huấn luyện

(quan sát, thẩm định ) đi đôi với những nhãn chỉ định lớp quan sát, những dữ liệu mới được phân lớp dựa trên tập huấn luyện

Ngược lại với hình thức học được giám sát là hình thức học không được giám sát lúc đó nhãn lớp của tập dữ liệu huấn luyện là không được biết đến

2 Phân lớp bằng phương pháp qui nạp cây quyết định :

a Khái niệm cây quyết định :

Cây quyết định là một flow-chart giống cấu trúc cây , nút bên trong biểu thị một kiểm tra trên một thuộc tính , nhánh biểu diễn đầu ra của kiểm tra , nút lá biểu diễn nhãn lớp hoặc sự phân bố của lớp

Việc tạo cây quyết định bao gồm 2 giai đoạn : Tạo cây và tỉa cây

Để tạo cây ở thời điểm bắt đầu tất cả những ví dụ huấn luyện là ở gốc sau đó phân chia ví dụ huấn luyện theo cách đệ qui dựa trên thuộc tính được chọn

Việc tỉa cây là xát định và xóa những nhánh mà có phần tử hỗn loạn hoặc những phần tử nằm ngoài (những phần tử không thể phân vào một lớp nào đó)

Việc sử dụng cây quyết định như sau : Kiểm tra những giá trị thuộc tính của

mẫu đối với cây quyết định

b Thuật toán qui nạp cây quyết định :

Giải thuật cơ bản (giải thuật tham lam) được chia thành các bước như sau:

Trang 5

1 Cây được xây dựng đệ qui từ trên xuống dưới (top-down) và theo cách thức chia để trị (divide-conquer);

2 Ở thời điểm bắt đầu , tất cả những ví dụ huấn luyện ở gốc;

3 Thuộc tính được phân loại (nếu là giá trị liên tục chúng được rời rạc hóa);

4 Những ví dụ huấn luyện được phân chia đệ qui dựa trên thuộc tính mà nó chọn lựa;

5 Kiểm tra những thuộc tính được chọn dựa trên nền tảng của heristic hoặc của một định lượng thống kê

Điều kiện để dừng việc phân chia:

1 Tất cả những mẫu huấn luyện đối với một node cho trước thuộc về cùng một lớp;

2 Không còn thuộc tính còn lại nào để phân chia tiếp;

3 Không còn mẫu nào còn lại

c Độ lợi thông tin (Information Gain) trong cây quyết định :

Information gain là đại lượng được sử dụng để chọn lựa thuộc tính với information gain lớn nhất Giả sử có hai lớp , P và N Cho tập hợp của những ví dụ S chứa p phần tử của lớp P và n phần tử của lớp N Khối lượng của thông tin, cần để quyết định nếu những mẫu tùy ý trong S thuộc về P hoặc N được định nghĩa như là:

Giả sử rằng sử dụng thuộc tính A một tập hợp S được phân hoạch thành những

vE(A) = Σ [(pi+ni)/(p+n)] I(pi,ni)

i=1Thông tin nhận được ở nhánh A là : Gain(A) = I(p,n)-E(A)

d Nội dung giải thuật học cây quyết định cơ bản ID3 :

ID3 là một giải thuật học cây quyết định được phát triển bởi Ross Quinlan (1983)

Ý tưởng cơ bản của giải thuật ID3 là để xây dựng cây quyết định bằng việc sử dụng một cách tìm kiếm từ trên xuống trên những tập hợp cho trước để kiểm tra mỗi thuộc tính tại mỗi nút của cây Để chọn ra thuộc tính mà hữu ích nhất cho sự phân loại trên những tập hợp cho trước , chúng ta sẽ đưa ra một hệ đo độ lợi thông tin

Để tìm ra một cách tối ưu để phân loại một tập hợp thông tin , vấn đề đặt ra là chúng ta cần phải làm tối thiểu hóa (Chẳng hạn, tối thiểu chiều cao của cây) Như vậy chúng ta cần một số chức năng mà có thể đánh giá trường hợp nào nào cho ra một sự phân chia cân bằng nhất Hệ đo độ lợi thông tin sẽ là hàm như vậy

ID3 ( Learning Sets S, Attributes Sets A, Attributesvalues V)

Return Decision Tree.

Trang 6

Đầu tiên nạp learning sets , tạo nút gốc cho cây quyết định 'rootNode', thêm learning set S vào trong nút gốc như là tập con của nó

For rootNode, đầu tiên chúng ta tínhEntropy(rootNode.subset)

If Entropy(rootNode.subset)==0, thenrootNode.subset bao gồm recordstất cả với cùng giá trị cho cùng giá trị thuộc tính xát định, trả về một nút lá với decision attribute:attribute value;

If Entropy(rootNode.subset)!=0, thentính độ lợi thông tin (information gain) cho mỗi thuộc tính trái (chưa được sử dụng để phân chia), tìm thuộc tính A vớiMaximum(Gain(S,A)) Tạo những nút con của rootNode này và thêm vào rootNode trong cây quyết định

For mỗi con của rootNode, áp dụngID3(S,A,V) một cách đệ qui cho đến khi đạt được node mà có entropy=0 hay đạt được nút lá

End ID3

Ví dụ :

Để mô tả hoạt động của ID3 chúng ta sử dụng ví dụ “Play Tennis” Sự mô tả tượng trưng thuộc tính như sau:

Attribute Possible Values:

Outlook sunny, overcast , rain

Temperature hot , mild, cood

Humidity high,normal

Windy true,false

Decision n(negative),p(positive)

Tập Leaning set cho ví dụ chơi tennis:

Outlook Temperature Humidity Windy Decision

Trang 7

overcast hot normal false p

Giải thuật ID3 thực hiện như sau :

1 Tạo nút gốc( rootNode) , chứa đựng toàn bộ learning set như là những tập hợp con của chúng (subset) sau đó tính :

2 Tính toán thông tin nhận được cho mỗi thuộc tính :

Trường hợp thiếu sót thứ hai :

Một thiếu sót mà ID3 mắc phải là nó dựa vào rất nhiều vào số lượng của những tập hợp dữ liệu đưa vào Quản lý sự tạp nhiễu của tập dữ liệu vào là vô cùng quan trọng khi chúng ta ứng dụng giải thuật học cây quyết định vào thế giới thực Cho ví

dụ , khi có sự lẫn tạp trong tập dữ liệu đưa vào hoặc khi số lượng ví dụ đưa vào là quá nhỏ để tạo ra một ví dụ điển hình của hàm mục tiêu đúng ID3 có thể dẫn đến việc tạo quyết định sai

Có rất nhiều những mở rộng từ giải thuật ID3 cơ bản đã phát triển để áp dụng những luật học cây quyết định vào thế giới thực, như là những post-pruning tree, quản

lý những thuộc tính giá trị thực, liên quan đến việc thiếu những thuộc tính, sử dụng những tiêu chuẩn chọn lựa thuộc tính khác hơn thu thập thông tin

f Mở rộng qui nạp cây quyết định cơ bản :

Việc mở rộng qui nạp cây quyết định được áp dụng cho những thuộc tính giá trị liên tục : Định nghĩa một cách uyển chuyển những thuộc tính giá trị bị rời rạc mà sự phân chia giá trị thuộc tính thành một tập rời rạc của những khoảng

Trang 8

Mở rộng qui nạp cây quyết định cũng được áp dụng cho những giá trị thuộc tính thiếu sót bằng cách: Gán những giá trị thiếu sót bằng giá trị thông thường nhất của thuộc tính hoặc gán khả năng có thể với mỗi giá trị có thể

Việc mở rộng qui nạp cây quyết định cũng được áp dụng cho xây dựng thuộc tính: Tạo những thuộc tính dựa trên những cái đã tồn tại mà chúng thể hiện thưa thớt Điều này sẽ giúp thu giảm việc phân mảnh, sự lặp lại và việc tạo bản sao

g Giải thuật mở rộng C4.5 :

C4.5 là sự mở rộng của giải thuật ID3 trên một số khía cạnh sau:

Trong việc xây dựng cây quyết định, chúng có thể liên hệ với tranning set mà có những records với những giá trị thuộc tính không được biết đến bởi việc đánh giá việc thu thập thông tin hoặc là tỉ số thu thập thông tin, cho những thuộc tính bằng việc xem xét chỉ những record mà ở đó thuộc tính được định nghĩa

Trong việc sử dụng cây quyết định, chúng ta có thể phân loại những record mà có những giá trị thuộc tính không biết bằng việc ước lượng những kết quả có khả năng sãy

ra Trong ví dụ chơi đánh gôn của chúng ta, nếu chúng ta được đưa một record mới mà outlook là sunny và humidity chưa cho biết, chúng ta sẽ xử lý như sau:

Chúng ta di chuyển từ nút gốc Outlook đến nút Humidity theo cung được đánh nhãn là sunny Ở điểm đó từ lúc chúng ta không biết giá trị của Humidity chúng ta để ý rằng nếu humidity là ở 75 có 2 records, và nếu humidity là lớn hơn 75 có 3 records trong đó có 1 record không hoạt động Như vậy điều đó có thể đưa ra như câu trả lới cho record khả năng (0.4,06) cho chơi gôn hoặc không chơi Golf

Chúng ta có thể liên hệ đến những giá trị liên tục Giả sử rằng thuộc tính Ci có tầm giá trị thuộc tính liên tục Chúng ta sẽ xem xét những giá trị này trong tập learning set Cho rằng chúng được xắp sếp thứ tự tăng dần A1, A2, , Am sau đó với mỗi giá trị

Ai i=1,2, ,m.Chúng ta chia những records thành những cái có giá trị từ Ci trở lên và bao gồm cả Aj và những cái có những giá trị lớn hơn Aj.Với những lần phân hoạch này chúng ta tính lại giá trị thu thập và tỉ số thu thập và chọn ra phân hoạch có tỉ số thu thập thông tin nhận được tối đa

Trong ví dụ về chơi Golf của chúng ta, đối với humidity T là training set chúng ta

sẽ xát định thông tin cho mỗi lần phân chia và tìm được sự phân chia tốt nhất tại 75 Phạm vi của thuộc tính này trở thành {<=75,>75} Chú ý rằng phương pháp này liên quan đến một con số quan trọng của việc tính toán

h Thu giảm cây quyết định và những tập luật suy dẫn :

Việc xây dựng cây quyết định nhờ vào training set bởi vì cách chúng xây dựng liên quan nghiêm ngặt đến hầu hết các record trong tập huấn luyện Trong thực tế, để làm như vậy nó có thể là điều hoàn toàn phức tạp Với những đường đi dài và không đều

Việc thu giảm cây quyết định được thực hiện bằng việc thay thế những cây con thành những nút lá Sự thay thế này sẽ được thực hiện tại nơi mà luật quyết định được thiết lập nếu tần suất lỗi gây ra trong cây con là lớn hơn trong một nút lá Cho ví dụ với cây đơn giản như sau:

Trang 9

Color red blue

Success Failure

Chứa 2 records thứ nhất là training red success và thứ hai là trainning blue failures và sau đó trong Test Set chúng ta tìm thấy 3 red failures và một blue success, chúng ta có thể xem xét việc thay thế cây con này bằng việc thay thế bằng một node đơn Failure Sau việc thay thế này chúng ta sẽ còn lại 2 lỗi thay vì 5 lỗi

thuộc tính phân loại là thực sự phụ thuộc vào một thuộc tính không xát định Nếu điều này không sãy ra thì thuộc tính không xác định không cần phải xuất hiện trong đường

đi hiện tại của cây quyết định

Quinlan và Breiman đề nghị những heuristic phức tạp hơn cho việc thu giảm cây quyết định Một điều dễ dàng làm là có thể dẫn ra một luật từ một cây quyết định: viết

ra một luật từ mỗi đường trong cây quyết định đi từ gốc đến lá Vế trái của luật được xây dựng dễ dàng từ nhãn của những nút và nhãn của những cung

Những luật rút ra có thể được rút gọn như sau:

Gọi LHS là LHS của luật Cho LHS’ nhận được bằng cách thu giảm một số điều kiện của LHS Chúng ta có thể chắc chắn thay thế LHS bằng LHS’ trong luật này nếu

tập con của training set thỏa mãn LHS và LHS’ là tương đương.

Một luật có thể được thu giảm bằng cách sử dụng metacondition ví dụ như

“không có luật khác có thể áp dụng ”.

i.Giải thuật mở rộng See5/C5.0:

“See5 là một dạng nghệ thuật của hệ thống xây dựng sự phân loại trong dạng

thức của những cây quyết định và tập luật ”

See5 đã được thiết kế và hoạt động trên cơ sở dữ liệu lớn và sự kết hợp đổi mới như là boosting Kết quả tạo ra bởi See5 và C5.0 là tương tự nhau Hoạt động trước đây trên Windows95/98/NT của C5.0 là phần hoạt động của nó trên Unix See 5 và C5.0 là những công cụ khai khái dữ liệu phức tạp cho những mẫu khai phá dữ liệu mà phát họa ra những loại tập hợp chúng thành những đối tượng phân loại và sử dụng chúng để tiên đoán

Đặc điểm chính của C5.0 là :

 C5.0 được thiết kế để phân tích những cơ sở dữ lịêu quan trọng chứa đựng hàng ngàn đến hàng trăm ngàn những records Và hàng chục đến hàng trăm

số liệu và hoặc tên field

 Để tối đa khả năng giải thích , đối tượng phân loại của See5.0/C5.0 được diễn tả như là cây quyết định hoặc tập của những luật if – then Dạng thức của nó dễ hiểu hơn so với neutron network

Trang 10

 C5.0 dễ dàng sử dụng do đó không được gọi là kiến thức cao cấp của thống

kê và máy học

j Giải thuật See5/C5.0 là tốt hơn C4.5:

C5.0 trong hệ thống Unix và bản sao của nó See5 trong Windows là những phiên bản cao cấp hơn C4.5 trên nhiều khía cạnh quan trọng

Chúng ta sẽ thử so sánh C5.0 và C4.5 trên cùng hệ thống Unix

Về những tập luật (Ruleset): nhanh nhiều hơn và ít tốn bộ nhớ hơn:

Cả C5.0 và C4.5 cung cấp sự lựa chọn cho những dạng thức của phân loại – cây quyết định hoặc là những tập luật (ruleset) Trong nhiều ứng dụng thì tập luật (ruleset) được ưu tiên sử dụng hơn vì chúng đơn giản và dễ hiểu hơn cây quyết định Nhưng những phương pháp để tìm ra luật trong C4.5 là chậm và chiếm nhiều bộ nhớ C5.0 thể hiện sự hoàn thiện trong vấn đề tạo ra tập luật và sự cải tiến này là gây ấn tượng mạnh mẽ

Cây quyết định: nhanh hơn và nhỏ hơn :

Với cũng những tập dữ liệu (dataset) thì C4.5 và C5.0 sản sinh ra những luật với

sự chính xát về dự đoán là như nhau.Sự khác nhau chính yếu là kích cở của cây và thời gian tính toán.Cây của C5.0 là nhỏ hơn và nhanh hơn ở một số yếu tố

Sự nâng lên(Boosting):

Dựa trên sự nguyên cứu của Freund và Schapire, đây là sự phát triển mới đầy hấp dẫn mà nó không có sự tương tự nào trong C4.5.Boosting là một kỹ thuật để tạo và kết hợp nhiều những đối tượng phân loại để cải thiện tính chính xát tiên đoán

C5.0 hỗ trợ Booting với một số những dữ liệu số thử nghiệm Thông thường, C5.0 sẽ mất thời gian lâu hơn để tạo ra những đối tượng phân loại (classifier) Nhưng những kết quả có thể phân tích định lượng sự tính toán công thêm Boosting luôn cố gắng để đạt được đỉnh cao nhất của sự chính xát trong tiên đoán yêu cầu phải đạt tới Đặc biệt khi những đối tượng phân loại không được nâng lên là hoàn toàn chính xác

Những chức năng mới:

C5.0 kết hợp nhiều chức năng như là variable misclassfication costs Trong

C4.5 tất cả những lỗi đều được xem như nhau.Nhưng trong những ứng dụng thực tế sẽ

có một số lỗi trong quá trình phân loại là nguy hiểm hơn những cái khác C5.0 chấp nhận một chi phí phân chia đối với mỗi cặp lớp được tiên đoán.Nếu quan điểm này được áp dụng, C5.0 sau đó sẽ xây dựng những đối tượng phân loại để tối thiểu hóa những giá trị phân loại sai được mong đợi hơn là những tần suất lỗi

C5.0 có nhiều kiểu dữ liệu hơn cả những cái đã có trong C4.5 bao gồm cả ngày giờ, thuộc tính giá trị rời rạc được xếp thứ tự và case labels Thêm vào đó là những giá trị thiếu (missing value) C5.0 cho phép những giá trị được coi như là không áp dụng được Hơn nữa, C5.0 cung cấp những điều kiện dễ dàng để định nghĩa những thuộc tính mới như những hàm của những thuộc tính khác

Những ứng dụng khai phá dữ liệu gần đây được hình thức hoá với kích thước lớn hơn, với hàng trăm thậm chí hàng ngàn những thuộc tính C5.0 có thể tự động lọc những thuộc tính, loại bỏ những cái xuất hiện bên lề trước khi một lớp phân loại được xây dựng Đối với ứng dụng của loại này, sự phân loại có thể dẫn đến những đối tượng

Trang 11

nhỏ hơn và sự tiên đoán chính xát hơn và thậm chí thu giảm được thời gian tạo ra tập luật.

C5.0 cũng dễ dàng được sử dụng hơn Những chọn lựa được đơn giản hóa và mở rộng.- để hỗ trợ sự lấy mẫu và cross-validation, trong lúc đó chương trình C4.5 để tạo

ra cây quyết định và tập luật được kết hợp vào một chương trình duy nhất

Phiên bản trên windows See5 đã xây dựng được một giao diện đồ họa thân thiện

và thêm vào một số chức năng hỗ trợ khác.Ví dụ Cross-Reference Window làm cho những đối tượng phân loại dễ hiểu hơn bằng việc liên kết những trường hợp đến những phần liên quan đến việc phân loại

k Phân lớp với GiniIndex(IBM IntelligenMiner) :

Tương tự như đại lượng Gain ở trên IBM đã đưa ra một đại lượng cho việc phân lớp là gini như sau:

Nếu một tập dữ liệu T chứa những mẫu từ n lớp, gini index, gini(T) được định nghĩa như sau:

gini index của dữ liệu chia cắt chứa những ví dụ từ n lớp , gini index gin(T) được định nghĩa như sau:

Thể hiện tri thức theo dạng thức những luật IF-THEN Trong đó một luật được tạo dựa trên mỗi con đường từ nút gốc đến lá Mỗi cặp thuộc tính theo một con đường tạo thành một sự kết hợp và nút lá nằm giữ toàn bộ lớp tiên đoán Những luật tạo ra rất

dễ hiểu đối với con người

l Tránh việc quá khít (overfitting) trong việc phân lớp :

Cây được tạo ra có thể quá khít với dữ liệu huấn luyện Việc quá khít có thể xảy

ra trong những trường hợp sau đây:

Quá nhiều những nhánh , một số có thể phản ánh sự dị thường vì những phần tử hỗn loạn (noise) hoặc những phần tử nằm ngoài phân lớp (outlier)

Kết quả nhận được thiếu chính xát đối với những mẫu chưa thấy

Có hai cách tiếp cận để tránh quá khít dữ liệu.

Trang 12

 Tỉa trước : Dừng sự xây dựng của cây sớm – không chia một node nếu điều này tạo kết quả ở dưới một ngưỡng theo một hệ đánh giá tốt Một khó khăn trong việc tỉa trước là điều này sẽ tạo ra sự khó khăn trong việc tạo ra một ngưỡng thích hợp

 Tỉa sau : Loại những nhánh từ một cây “ lớn đầy đủ “ - tạo một thứ tự của những cây bị tỉa tăng dần lên trong đó ta sử dụng một tập dữ liệu khác nhau từ dữ liệu huấn luyện để xát định cái nào là “cây được tỉa tốt nhất “ (best pruned tree)

Tiếp cận xác định kích cỡ cây cuối cùng:

Thông thường người ta phân chia tập huấn luyện thành tập dữ liệu huấn luyện (2/3) và dữ liệu thử (1/3), người ta sử dụng sự đánh giá chéo

Cũng có một cách khác là sử dụng tất cả dữ liệu để huấn luyện , nhưng áp dụng kiểm tra thống kê để định lượng khi nào mở rộng hoặc tỉa bớt một nút có thể cải thiện toàn bộ sự phân phối

Một cách thứ ba là sử dụng nguyên tắc mô tả chiều dài tối thiểu: trong đó người

ta dừng sự phát triển của cây khi sự mã hóa được tối thiểu

3 Sự phân lớp cây quyết định trong cơ sở dữ liệu lớn:

Sự phân lớp là một vấn đề cổ điển được nguyên cứu một cách mở rộng bởi những nhà thống kê và những nhà nguyên cứu máy học Hướng phát triển hiện nay là của việc phân lớp là phân lớp những tập dữ liệu với hàng tỉ những mẫu thử và hàng trăm thuộc tính với tốc độ vừa phải

Qui nạp cây quyết định được đánh giá cao trong khai phá dữ liệu lớn vì những nguyên nhân sau :

 Tốc độ học tương đối nhanh hơn so với những phương pháp phân loại khác

 Có thể hoán chuyển được thành những luật phân lớp đơn giản và dễ hiểu

 Có thể sử dụng truy vấn SQL để truy xuất cơ sở dữ liệu

 Sự chính xát phân lớp có thể so sánh được với những phương pháp khác

Những phương pháp qui nạp cây quyết định trong nguyên cứu về Khai phá trên tập dữ liệu lớn:

a SLIQ : A Fast Scalable Classifier for Data Mining :

Những giải thuật phân lớp được thiết kế chỉ theo cách cho dữ liệu thường trú trong bộ nhớ Phương pháp này thảo luận đưa ra việc xây dựng một công cụ phân loại

có khả năng leo thang và thể hiện SLIQ (Superived Learning In Quest) như một công

cụ phân loại mới, SLIQ là một công cụ cây quyết định mà có thể quản lý cả thuộc tính

số và thuộc tính xác thực Nó sử dụng một kỹ thuật sắp xếp trước (pre-sorting) trong giai đoạn phát triển cây (tree-grow).Thủ tục sắp xếp trước này được tính hợp với chiến thuật phát triển cây theo chiều rộng để cho phép sự phân lớp của tập dữ liệu thường trú

ở đĩa SLIQ cũng sử dụng một giải thuật tỉa cây mà chi phí không quá cao với kết quả đạt được khả quan và những cây khá chính xác Sự kết hợp của những kĩ thuật này cho phép SLIQ leo thang với tập dữ liệu lớn và tập dữ liệu phân lớp mà không để ý đến số

Trang 13

lượng của những lớp, những thuộc tính và những record

Trong phương pháp này thì tập dữ liệu huấn luyện không thể được tổ chức trong

bộ nhớ

b Từ SLIQ sang SPRINT : A Scalable Parallel Classifier for DataMining

Phương pháp này thể hiện một giải thuật phân lớp dựa trên cây quyết định có khả năng loại bỏ sự giới hạn của bộ nhớ, thực thi nhanh và có khả năng leo thang Giải thuật này được thiết kế để dễ dàng cho song song hóa, cho phép nhiều bộ xử lý làm việc với nhau để xây dựng một mô hình nhất quán

Danh sách lớp trong SLIQ phải chứa trong bộ nhớ

Cổ chai: danh sách lớp có thể lớn

SPRINT: đặt thông tin lớp vào danh sách thuộc tính và không có danh sách lớp nào

Song song phân lớp: phân chia danh sách những thuộc tính

c PUBLIC: Tích hợp sự phát triển của cây quyết định và tỉa cây:

Phương pháp này để cập một cải tiến của công cụ cây quyết định được cải tiến mà tích hợp giai đoạn tỉa cây với giai đoạn xây dựng ban đầu Trong PUBLIC, một nút không được mở rộng trong suốt giai đoạn xây dựng, nếu nó được xác định rằng nó sẽ

bị tỉa trong suốt giai đoạn tỉa sau Do đó, để tạo sự quyết định cho node này trước khi

nó được mở rộng, PUPLIC tính toán một biên dưới trên giá trị tối thiểu cây con được

Trang 14

đặt tại nút Sự ước lượng này sẽ được sử dụng bởi PUBLIC để xát định những nút mà chắc chắn được tỉa và đối với những nút như vậy mà không tiểu tốn trong việc phân chia chúng.

Tích hợp phát triển và tỉa: mỗi nút, kiểm tra chi phí của sự phát triển của những cây con

d RainForest: A Generic Framework:

Phương pháp này trình bày một khung làm việc hợp nhất cho những công cụ tạo cây quyết định mà tách rời những khía cạnh về khả năng leo thang của giải thuật cho việc xây dựng một cây quyết định từ những đặc tính trung tâm mà xát định phẩm chất của cây Loại giải thuật này dễ dàng hoạt động cụ thể với những giải thuật riêng biệt từ tài liệu nguyên cứu bao gồm C4.5, CART, CHAID, FACT, ID3 và những mở rộng, SLIQ, SPRINT và QUEST

Cổ chai của khả năng leo thang: Tính toán thuộc tính giá trị,nhãn lớp Group) cho mỗi node

(RainForest đưa ra một tập hợp của những giải thuật cho tính toán nhanh group

AVC-e Qui nạp cây quyết định dữ liệu dựa trên khối:

Qui nạp cây quyết định của dữ liệu dựa trên khối là sự tích hợp của tổng quát hóa với qui nạp cây quyết định

Phân lớp nhiều cấp dựa trên khối có hai vấn đề quan trọng đó là phân tích liên quan dựa trên nhiều cấp độ và phân tích thông tin nhận được với chiều và cấp

4 Phương pháp phân lớp Bayesian:

Lý thuyết Bayesian cung cấp một tiếp cận theo xác xuất để suy diễn Nó dựa trên giả thuyết rằng số lượng của khuynh hướng bị chi phối bởi phân bố xác xuất và quyết định tối ưu có thể được tạo bởi sự suy luận về những xác xuất đi liền với dữ liệu được quan sát Đây là vấn đề quan trọng của máy học bởi vì nó cung cấp một tiếp cận định lượng cho việc xem xét cẩn thận bằng chứng hỗ trợ những giả thuyết thay đổi Lý thuyết Bayesian cung cấp giải thuật học cơ bản mà vận dụng những xác xuất cũng như

là một khung làm việc cho sự phân tích sự hoạt động của những giải thuật mà không thể vận dụng rõ ràng

Học theo xát suất: Tính xát suất hiện cho giả thuyết, trong số những tiếp cận thực dụng nhất cho các kiểu chắc chắn của những vấn đề học

Tính tăng dần: mỗi ví dụ huấn luyện có thể gia tăng việc tăng hoặc giảm mà không gian giả thuyết đúng Kiến thức trước có thể kết hợp với dữ liệu được quan sát.Tiên đoán xát suất: Tiên đoán nhiều không gian giả thuyết, được đo bởi xát suất của nó

Tiêu chuẩn: Thậm chí khi phương thức Bayesian khó tính toán, chúng cũng cung cấp một tiêu chuẩn tốt nhất cho việc tạo quyết định

Định lý Bayesian:

Cho trước một tập huấn luyện D, xát suất posteriori của một giả thuyết h, p(h\D) cho bởi định lý Bayesian:

Trang 15

Giả thuyết tối đa posteriori MAP:

Khó khăn thực tế của phương pháp phân lớp Bayesian ở chỗ nó đòi hỏi kiến thức khởi tạo của nhiều khả năng có thể sãy ra và chi phí tính toán đáng kể

Phân lớp Naive Bayes:

Giả thuyết đơn giản: những thuộc tính là độc lập theo điều kiện

Chi phí tính toán thu giảm đáng kể , chỉ tính đến sự phân bố lớp

Với một tập hợp cho trước chúng ta có thể tính toán khả năng sãy ra

Vấn đề phân lớp có thể được thể thức hóa sử dụng xát suất a-posteriori như sau:

Ý tưởng : gán mẫu X vào lớp nhãn C sao cho P(C|X) là lớn nhất

Định lý Bayes phát biểu như sau :

P(C|X) = P(X|C).P(C)/P(X) , trong đó :P(X) là hằng cho tất cả lớp

P(C) = tần suất tương đối của mẫu lớp C

C mà ở đó P(C|X) là lớn nhất = C mà ở đó P(X|C).P(C) là lớn nhất

Phân lớp Naive Bayesian :

Giả thuyết Naive : thuộc tính là độc lập

P(x1, ,xk|C)=P(x1|C) P(xk|C)Nếu thuộc tính thứ i là xát thực :

như là thuộc tính thứ i trong lớp C

Gaussian Việc tính toán là dễ dàng trong cả hai trường hợp Ví dụ play-tennis : phân lớp X Cho mẫu chưa được thấy như sau X=<rain,hot,high,false>

P(D\h)P(h)P(h\D) =

P(D)

Trang 16

P(X|p).P(p) = P(rain|p).P(hot|p).P(high|p).P(false|p).P(p)

= 3/9.2/9.3/9.6/9.9/14 = 0.010582

P(rain|n).P(hot|n).P(high|n).P(false|n).P(n)=2/5.2/5.4/5.5/14=0.018286

Mẫu X được phân lớp vào lớp n

Giải thuật Nạve Bayes viết bằng mã giả như sau:

Sự độc lập của giả thuyết:

Những giả thuyết độc lập nhau sẽ giúp cho việc tính tốn trở nên dễ dàng Độ lợi phân lớp tốt nhất đạt được rất ít trong thực tế vì những thuộc tính (biến) thường liên quan với nhau

Để vượt qua những giới hạn này người ta giải quyết bằng 2 cách:

Trang 17

 Dùng mạng Bayesian, đây chính là sự kết hợp của lý luận và quan hệ nhân quả giữa những thuộc tính.

 Cây quyết định mà suy luận trên một thuộc tính ở thời điểm xem xét những thuộc tính quan trọng đầu tiên

Mạng Bayesian Tin cậy ( Bayesian belief network ):

Bayesian belief network cho phép một tập con của những biến độc lập theo điều kiện

Trong Bayesian belief người ta sử dụng mô hình đồ thị của quan hệ nhân quả Có nhiều cách học của Bayesian belief networks như sau:

- Cho trước cả cấu trúc mạng và những biến : đây là cách dễ dàng

- Cho trước cấu trúc mạng nhưng chỉ có một vài biến chứ không phải là tất cả

- Cấu trúc mạng là hoàn toàn không được biết

5 Phân lớp bằng mạng lạn truyền ngược:

Neural Networks (Mạng Nơtrôn):

Cấu trúc của một neural như sau:

xạ phi tuyến

Mạng huấn luyện:

Mục tiêu cơ bản của việc huấn luyện:

 Đạt được một một tập hợp của những trọng số mà có thể làm cho hầu hết tất cả những bộ trong tập huấn luyện được phân lớp đúng

Những bước của quá trình huấn luyện :

nhiên

- Tính toán mạng input cho mỗi đơn vị như là một sự kết hợp tuyến tính của tất cả những input đối với đơn vị

- Tính toán giá trị output sử dụng hàm kích hoạt

- Tính toán lỗi

- Cập nhật trọng số và khuynh hướng

Mạng thu giảm và rút trích luật :

Mạng thu giảm :

Trang 18

 Mạng kết nối hoàn toàn sẽ khó nối khớp với nhau

h(m+N) trọng số

lớp chính xát của mạng

Những ích lợi của mạng nơtrôn có thể kể đến như sau:

 Tiên đoán chính xát cao

 Hoạt động mạnh , làm việc được ngay khi các mẫu chứa lỗi

 Output có thể là giá trị rời rạc, giá trị thực hoặc vector của nhiều thuộc tính rời rạc hoặc giá trị thực

 Đánh giá nhanh hàm mục tiêu được học

Yếu điểm :

 Thời gian huấn luyện lâu

 Khó có thể hiểu được hàm học ( trọng số)

 Khó có thể kết hợp tri thức lĩnh vực

6 Phân lớp dựa trên nguyên lý khai phá luật kết hợp:

Có nhiều phương thức đối với sự phân lớp dựa trên luật kết hợp

 ARCS: Khai phá sự kết hợp số lượng và gom cụm của những luật kết hợp

 Phân loại kết hợp : Khai phá độ hỗ trợ cao và độ tin cậy cao trong công thức “cond_set =>y” trong đó y là một nhãn lớp

 CAEP(Phân lớp bằng cách tập hợp lại những mẫu nỗi bậc) : trong đó những mẫu nổi bật (Emerging patterns) : những tập thành phần itemset

hỗ trợ gia tăng quan trọng từ một lớp sang lớp khác Khai phá những mẫu nổi bật dựa trên độ hỗ trợ tối thiểu và tốc độ phát triển

7 Những phương thức phân lớp khác:

a Những phương thức dựa trên khoảng cách:

Chứa những ví dụ huấn luyện và trì hoãn xử lý cho đến khi một thực thể mới được phân lớp

Những cách tiếp cận thông thường :

 Tiếp cận người láng giềng gần nhất k-nearest neighbor

 Hồi qui trọng lượng cục bộ : bằng cách xây dựng những xấp xỉ cục bộ

 Lập luận dựa trên trường hợp : Người ta sử dụng biểu diễn kí hiệu và tri thức dựa trên suy diễn

Giải thuật K-Nearest Neighbor :

Tất cả những thực thể tương ứng với những điểm trên không gian n-D Người láng giềng gần nhất được định nghĩa trong biểu thức của khoảng cách Euclidean

Hàm mục tiêu có thể được rời rạc hóa hoặc giá trị thực

Đối với những giá trị rời rạc, k-NN trả về hầu hết giá trị thông thường giữa k ví

dụ huấn luyện gần nhất với xq.

Ngày đăng: 09/04/2015, 21:33

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w