Ứngdụng câyquyết địnhtrong khai phá dữ liệu

Một phần của tài liệu Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại NH kỹ thương việt nam (techcombank) khoá luận tốt nghiệp 785 (Trang 31)

1 .Sơ lược về khai phá dữ liệu

2.5. Ứngdụng câyquyết địnhtrong khai phá dữ liệu

Sau khi đã xây dựng thành công cây quyết định ta sử dụng kết quả từ mơ hình cây quyết định đó. Đây là bước sử dụng mơ hình để phân lớp dữ liệu hoặc rút ra các tri thức trong phương pháp khai phá dữ liệu bằng phương pháp phân lớp.

Trên cơ sở đã biết giá trị của các thuộc tính của các mẫu X1, X2, .., Xn ta xác định thuộc tính quyết định (hay phân lớp) Y của đối tượng đó (có thể dùng kỹ thuật này để nhận dạng mẫu, dự báo, ...)

Hình 5. Mơ hình phân lớp các mâu mới

b) Rút ra các tri thức hay luật từ cây

Với mục đích và nhiệm vụ chính của việc khai phá dữ liệu là phát hiện ra các quy luật, các mơ hình từ trong cơ sở dữ liệu. Từ mơ hình cây thu được ta rút ra các tri thức hay các quy luật dưới dạng cây hoặc các luật dưới dạng “If ... Then.”. Hai mơ hình trên là tương đương, chúng có thể được chuyển đổi qua lại giữa các mơ hình đó với nhau.

Khóa luận tốt nghiệp Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại ngân hàng kỹ thương việt nam( techcombank)

2.6. Thuật toán xây dựng quyết định

2.6.1 Thuật toán ID3

ID3 (Quinlan, 1979)-1 hệ thống đơn giản ban đầu chứa khoảng 600 dòng lệnh Pascal.

ID3 với khả năng lựa chọn thuộc tính tốt nhất để tiếp tục triển khai cây tại mỗi bước. ID3 xây dựng cây quyết định từ trên- xuống (top -down).

Đây là thuật toán xây dựng cây quyết định dựa vào Entropy.

Entropy được sử dụng để xác định thơng tin đầu vào một thuộc tính, đặc biệt là về các thuộc tính đầu ra cho một tập hợp các dữ liệu huấn luyện, định mức giá trị cho những nguồn thông tin không chắc chắn, nguồn thông tin đưa vào càng khơng chắc chắn thì càng cần có thêm thơng tin mơ tả về nó.

Entropy của nguồn là một thước đo sự không chắc chắn của đối tượng tiếp nhận về nguồn tin đó.

Chính vì thế, ý tưởng chính trong việc đưa ra các tiêu chí là làm sao cho các tập con được phân chia sao cho việc hiểu được các thông tin càng trở nên rõ ràng. Và, tiêu chí để đánh giá điểm chia là rất quan trọng, ở đây, chúng ta sử dụng tiêu chuẩn “heuristic” để phân chia dữ liệu. Thuật tốn dùng độ đo lượng thơng tin thu thêm để xác định điểm chia [2]. Độ đo này dựa trên cơ sở lý thuyết thơng tin của nhà tốn học Claude Shannon, độ đo này được xác định như sau:

Xét bảng quyết định:

DT = (U, CU {d})

Trong đó: U là tập hữu hạn khác rỗng các đối tượng. C là tập thuộc tính điều kiện

{d} khơng thuộc C, là thuộc tính phân biệt được gọi là là thuộc tính quyết định

Số giá trị (nhãn lớp) có thể của d là k. Khi đó Entropy của tập các đối tượng trong DT được định nghĩa bởi:

Entropy(U) = -∑∙=1 Pi log2 Pi

Trong đó, Pi là tỉ lệ các đối tượng trong DT mang nhãn lớp i.

Ý nghĩa của đại lượng Entropy trong lĩnh vực lý thuyết công nghệ thông tin: Entropy của tập U chỉ ra số lượng bit cần thiết để mã hóa lớp của một phần tử được lấy ra ngẫu nhiên từ tập U. Lượng thông tin thu thêm (Information gain - IG) là lượng Entropy còn lại khi tập các đối tượng trong DT được phân hoạch theo một thuộc tính điều kiện c nào đó.

Ý nghĩa của đại lượng IG trong lĩnh vực lý thuyết công nghệ thông tin: IG của tập S chỉ ra số lượng bit giảm đối với việc mã hóa lớp của một phần tử c được lấy ra ngẫu nhiên từ tập U. IG xác định theo công thức sau:

IG (U, c) = Entropy(U) - ∑v 7∈ c⅛7 Entropy(Uv)c |U| Trong đó Vc là tập các giá trị của thuộc tính c,

Uv là tập các đối tượng trong DT có giá trị thuộc tính c bằng v.

Giá trị IG(U, c) được sử dụng làm độ đo lựa chọn thuộc tính phân chia dữ liệu tại mỗi nút trong thuật toán xây dựng cây quyết định ID3. Thuộc tính được chọn là thuộc tính cho lượng thơng tin thu thêm lớn nhất.

Ý tưởng của thuật toán ID3:

- Thực hiện giải thuật tìm kiếm tham lam (greedy search) đối với khơng gian các cây quyết định có thể.

- Cây được thiết lập từ trên xuống dưới (phương pháp top-down)

- Ở mỗi nút, thuộc tính kiểm tra (test attribute) là thuộc tính có khả năng phân loại tốt nhất. Thuộc tính được chọn dựa trên độ đo thống kê hoặc độ đo heuristic (chính là các giá trị Entropy, Info-Gain đã tính tốn ở trên). Với từng thuộc tính, giá trị Gain nào thấp nhất trong tập các thuộc tính chưa được xét thì sẽ được chọn đưa vào cây ở bước đó. Ta có thể hiểu cách lựa chọn đó chính là nhằm mục đích tạo ra một cây nhỏ nhất có thể, giá trị Gain càng nhỏ có nghĩa là thuộc tính đó có lợi nhất cho q trình phân lớp.

- Tạo mới một cây con (sub-tree) của nút hiện tại cho mỗi giá trị có thể của thuộc tính kiểm tra, và tập dữ liệu đầu vào sẽ được tách ra thành các tập con tương ứng với các cay con vừa tạo.

- Mỗi thuộc tính chỉ được phép xuất hiện tối đa 1 lần đối với bất kì đường đi nào trong cây.

- Quá trình phát triển cây sẽ tiếp tục cho tới khi:

• Cây quyết định phân loại hoàn toàn (perfectly classifies) các dữ liệu đầu vào.

• Tất cả các thuộc tính được sử dụng.

Giải mã của thuật tốn ID3 như sau:

Dữ liệu vào: bảng quyết định

DT = (U, CU {d])

Trong đó: U là tập hữu hạn khác rỗng các đối tượng. C là tập thuộc tính điều kiện

STT Tuổi Học vấn Tình trạng cư Cơ cấu gia Quyết định

Khóa luận tốt nghiệp Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại ngân hàng kỹ thương việt nam( techcombank)

{d} không thuộc C, là thuộc tính phân biệt được gọi là là thuộc tính quyết định

Function Create tree (U, C, {d})

Begin

If tất cả các mẫu thuộc cùng nhãn lớp di Return một nút lá được dán nhãn di Else if C = null then

Return nút lá có nhãn di là lớp phổ biến nhất trong DT Else

Begin

bestAttribute : = getBestAttribute (U, C); // chọn thuộc tính tốt nhất để chia

C := C- {bestAttribute}; //xóa bestAttribute khỏi tập thuộc tính

Với mỗi v in bestAttribute Begin

Uv := [U]v;

// Uv là phân hoạch của U

ChildNode := Create tre (Uv, C, {d}); // tạo 1 nút con

End

End End

Giải mã của hàm getBestAttribute như sau:

Dữ liệu vào: bảng quyết định DT = (U, C U {d}) Dữ liệu ra: thuộc tính đều khiển tốt nhất

Function getBestAttribute (U, C); Begin

maxIG := IG(U, C); với mỗi c in C

begin

tg:=IG (U,c);

Khóa luận tốt nghiệp Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại ngân hàng kỹ thương việt nam( techcombank)

// tính lượng thơng tin thu thêm IG(U, c) If (tg > max IG) then

Begin maxIG := tg; kq := c; end end return kq;

//hàm trả về thuộc tính có lượng thơng tin thu thêm IG là lớn nhất.

End

Ví dụ về thuật tốn ID3

Xét bảng quyết định sau đây:

2 36-55 Trên ĐH CSH Hạt nhân Có

3 36-55 ĐH Với gia đình Sống với giađình Khơng

4 36-55 ĐH Với gia đình Hạt nhân Khơng

5 26-35 CĐ CSH Sống với giađình Có

6 26-35 CĐ Với gia đình Hạt nhân Khơng

7 26-35 CĐ Th Sống với giađình Có

8 26-35 Trung học CSH Hạt nhân Có

9 26-35 Trung học Thuê Sống với giađình Có

10 56-60 Trung học Th Sống với gia

đình Khơng

11 56-60 CĐ CSH Hạt nhân Có

Thuật tốn xây dựng cây quyết định với dữ liệu bảng trên như sau:

- Trước tiên các nút lá được khởi tạo gồm các mẫu từ 1 đến 12

Tính Entropy cho tồn bộ tập huấn luyện U gồm 7 bộ {1,2,5,7,8,9,11} có giá trị thuộc tính nhãn là “CĨ” và 5 bộ {3,4,6,10,12} có giá trị thuộc tính nhãn là “KHƠNG” do đó:

Entropy (H) = -⅛log2⅛- ⅛log2⅛ = 0.9799

12 to2 12 12 to2 12

Tính IG cho từng thuộc tính:

Thuộc tính “Tuổi”. Thuộc tính này có 3 giá trị “36-55”, “26-55”, “56-60” Căn cứ vào bảng dữ liệu ta thấy:

+ Với giá trị của “36-55” có 2 bộ {1,2} có giá trị thuộc tính nhãn là “CĨ” và có 2 bộ {3,4} có giá trị thuộc tính nhãn là “KHƠNG”. + Với giá trị của “26-35” có 4 bộ {5,7,8,9} có giá trị thuộc tính nhãn là

“CĨ” và có 1 bộ {6} có giá trị thuộc tính nhãn là “KHƠNG”. + Với giá trị của “56-60” có 1 bộ {11} có giá trị thuộc tính nhãn là

“CĨ” và có 2 bộ {10,12} có giá trị thuộc tính nhãn là “KHƠNG”. Ta có độ lợi thơng tin thu thêm được của thuộc tính “Tuổi” xét trên U là:

IG(Ư, giá cả) = Entropy(ư) - ∑vnyiιι^ Entropyty j

=0.9799 - r4 / 2 2 2 ^5/4 4 1 1∖ 121- 4log 2 4 - 4log 2 4) 'ty (- 5log 2 5 - 5log 2 5) 3/1 12 2∖ 'ty I- 3log 23- 3log 2 3) = 0.9799 - 0.8637 = 0.1162 Theo cách tính tương tự ta tính được :

IG ( , ư h c v n)ọ ầ

=0.9799 -

2 2 3 ^4/3 3 1 1∖

12 ( - 5 ∣og2 5 - 5log2 5) +12 {- 4 log2 4 - 4 log2 4)

3/2 2 1 1∖

+ 12 1" 3log23 - 3log2 3) = 0.9799 - 0.9046 = 0.0753

Khóa luận tốt nghiệp Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại ngân hàng kỹ thương việt nam( techcombank)

0.9799 - ■5 .12 5 5 3 3 3 4 (- 5log25)+12 C 3l0g23∕ + 12C 2 22 2∖ 4iog24 - 2i0g24) = 0.9799 - 0.3333 = 0.6466 IG (U, c c u gia đĩnh)ơ ấ = 0.9799 - [6/4 4 2 2∖ 6 Z 3ι .12 (- 6l0g2 6 - 6 loM +12 {- 6l0g2 3 6 ∣log2∣) 6 2 6/ = 0.9799 - 0.9591 = 0.0208

Như vậy thuộc tính “tình trạng cư trú ” là thuộc tính có chỉ số IG lớn nhất nên sẽ được chọn là thuộc tính phân chia. Vì thế thuộc tính “tình trạng cư trú” được chọn làm nhãn cho nút gốc, ba nhánh được tạo ra lần lượt với tên là “thuê ”, “ với gia đình”, “CSH”. Nhánh “ với gia đình” có các mẫu {3,4,6} cùng thuộc một lớp “KHÔNG” nên nút lá được tạo ra với nhãn “KHƠNG”. Nhánh “CSH” có các mẫu {1,2,5,8,11} cùng thuộc một lớp “CÓ” nên nút lá được tạo ra với nhãn “CÓ”. Kết quả phân chia sẽ là cây quyết

Hình 1: Cây sau khi chọn thuộc tính Tình trạng cư trú(ID3).

- Bước tiếp theo gọi thuật toán đệ quy

ID3 (u1, C - {tình tr ng c trú}, {d})ạ ư

Để tìm điểm chia tốt nhất tại thuật tốn này, phải tính tốn chỉ số IG của các thuộc tính “Tuổi”, “Học vấn”, “Cơ cấu gia đình”

Đầu tiên ta cũng tính Entropy cho tồn bộ tập huấn luyện trong U1 gồm 2 bộ {7,9} có thuộc tính nhãn là “CĨ” và 2 bộ {10,12} có thuộc tính nhãn là “KHƠNG”:

Entropy (U1) = - 2 l0g2 2 - 2 l0g2 2 = 1

Tiếp theo tính IG cho thuộc tính “Tuổi”. Thuộc tính này có 3 giá trị “36-55”, “26-35”, “56-60”

Căn cứ vào bảng dữ liệu ta thấy:

+ Với giá trị của “36-55” khơng có bộ nào thuộc U1.

+ Với giá trị của “26-35” chỉ có 2 bộ {7,9} có giá trị thuộc tính nhãn là “CĨ”. + Với giá trị của “56-60” chỉ có 2 bộ {10,12} có giá trị thuộc tính nhãn là

“KHƠNG”.

Do đó độ đo lượng thơng tin thu thêm của thuộc tính “Tuổi” xét trên U1 là: ∕C(U1, tu ’0 = 1 - [2 (- logổ ∣ 2∣) + 2 (- l°g∣ 2∣) = 0.5

Theo cách tính tương tự ta cũng có

IG (U1, h c v n)ọ ấ

= 1 - ĩ2/ 1.4(-1 l°922--1 l°912D+4(-11°192--1 l092^2/1D 1 1 1V = 0 IG(U1, c c u gia đình.)ơ ấ = 1 - 3(-2l°g22 - -1 l°g21∖ + 1 (-7log27)l = 1 -

.4∖ 3 l23 3 «2 3 4 ∖ 1 &2 1/J

0.6887 = 0.3113

Thuộc tính “Tuổi” là thuộc tính có chỉ số IG lớn nhất nên sẽ được chọn là thuộc tính phân chia. Do đó thuộc tính “Tuổi” làm nhãn cho nút bên trái nối với nhánh “th ”. Thuộc tính này có 2 giá trị thuộc U1 nên ta tiếp tục chia thành hai nhánh mới là “26- 35”, “56-60”.

+ Với nhánh “26-35” gồm 2 bộ {7,9} có cùng giá trị quyết định là “CĨ” nên tạo nút lá là “CÓ”.

+ Với nhánh “56-60” gồm 2 bộ {10,12} có cùng giá trị quyết định là “KHƠNG” nên tạo nút lá là “KHƠNG”.

Khóa luận tốt nghiệp Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại ngân hàng kỹ thương việt nam( techcombank)

Hình 2: Cây kết quả (ID3). 2.6.2 Thuật tốn C4.5

Thuật toán C4.5 là một thuật toán được cải tiến từ ID3 với việc cho phép xử lý tập dữ liệu có các thuộc tính số và làm việc với tập dữ liệu bị nhiễu và thiếu. Nó thực hiện việc phân lớp tập dữ liệu theo chiến lược ưu tiên có chiều sâu.Với những đặc điểm C4.5 là thuật toán phân lớp dữ liệu dựa trên cây quyết định hiệu quả và phổ biến trong những ứng dụng khai phá cơ sở dữ liệu có kích thước nhỏ. C4.5 sử dụng cơ chế lưu trữ dữ liệu thường trú trong bộ nhớ, chính đặc điểm này làm C4.5 chỉ thích hợp với những cơ sở dữ liệu nhỏ, và cơ chế sắp xếp lại dữ liệu tạ mỗi node trong quá trình phát triển cây quyết định. C4.5 còn chứa một kỹ thuật cho phép biểu diễn lại cây quyết định dưới dạng một danh sách sắp thứ tự các luật if-then (một dạng quy tắc phân lớp dễ hiểu). Kỹ thuật này cho phép làm giảm bớt kích thước tập luật và đơn giản hóa các luật mà độ chính xác so với nhánh tương ứng cây quyết định là tương đương.

KẾT LUẬN CHƯƠNG 2

Chương 2 đã tiến hành tìm hiểu về cây quyết định, về các hướng tiếp cận, các tính chất và quy trình thuật tốn ID3, từ đó có thể ứng dụng luật kết hợp vào bài tốn thực tế để giải quyết vấn đề chấm điểm tín dụng khách hàng cá nhân, qua đó thấy được ưu nhược điểm của phương pháp này, từ đó có thể áp dụng một cách linh động.

3.2.1 Dữ liệu sử dụng

Dữ liệu sử dụng để xây dựng cây quyết định trong bài toán dự báo rủi ro tín dụng là

Khóa luận tốt nghiệp Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại ngân hàng kỹ thương việt nam( techcombank)

CHƯƠNG III: ỨNG DỤNG CÂY QUYẾT ĐỊNH ĐỂ XẾP HẠNG KHÁCH HÀNG CÁ NHÂN VAY TÍN CHẤP TIÊU DÙNG

Dựa trên cơ sở lý luận về khai phá dữ liệu bằng cây quyết định và lý thuyết về xếp hạng tín dụng được trình bày trong 2 chương trước, chương này sẽ giải quyết bài tốn xếp hạng tín dụng hỗ trợ ra quyết định cho vay với việc áp dụng kỹ thuật khai phá dữ liệu bằng cây quyết định, xây dựng thử nghiệm cây quyết định chấm điểm tín dụng sử dụng công cụ WEKA so sánh với kết quả có được khi sử dụng bảng chấm điểm của ngân hàng, áp dụng với nguồn CSDL của Ngân hàng TMCP Kỹ thương Việt Nam(Techcombank)

3.1 Mơ tả bài tốn chấm điểm tín dụng bằng cây quyết định

Mục đích chính của cây quyết định là dùng để dự đoán lớp (class) của các đối tượng chưa biết (unseen data). Giả sử rằng ta có các dữ liệu về các khách hàng vay với các giá trị dữ liệu đã biết về các thuộc tính như :thu nhập, chênh lệch thu nhập và chi tiêu hàng tháng, loại hình cơ quan làm việc, vị trí cơng tác, hình thức thanh tốn lương, xác nhận cơ quan, thu nhập của những người khác trong gia đình, tổng tài sản sở hữu, nơi cư trú, thời gian công tác tại cơ quan hiện tại, kinh nghiệm cơng tác, trình độ học vấn,.. .Nhiệm vụ của bài toán là sử dụng cây quyết định chấm điểm tín dụng cho từng khách hàng dựa vào các thuộc tính của khách hàng đó.

Đầu vào: bộ dữ liệu về thơng tin khách hàng bao gồm các thuộc tính trên Đầu ra: các quy luật về xếp hạng tín dụng khách hàng muốn vay đó.

Trong nội dung luận văn này chỉ nghiên cứu vè khía cạnh chấm điểm tín dụng đối với các khoản vay của khách hàng là cá nhân.

Công cụ sử dụng: phần mềm Weka, phiên bản 3.6.12 3.2 Công cụ và dữ liệu sử dụng

3.2.1 Công cụ sử dụng

Hiện nay, các phần mềm hỗ trợ khai phá dữ liệu được phát triển nhiều, có thể kể đến phần mềm như: phần mềm phân tích thống kê R, phần mềm phân tích số liệu Weka, phần mềm See5∕C5.0, phần mềm khai phá dữ liệu RapidMinner, công cụ phân tích số liệu của Microsoft, các phần mềm do tự ngân hàng viết ra. Tuy nhiên, luận văn

Một phần của tài liệu Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại NH kỹ thương việt nam (techcombank) khoá luận tốt nghiệp 785 (Trang 31)

Tải bản đầy đủ (DOCX)

(71 trang)
w