Tải bản đầy đủ (.doc) (20 trang)

Hệ thống xây dựng quy luật cho bảng khảo sát thị trường dựa trên cây định danh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (457.22 KB, 20 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐÀO TẠO THẠC SĨ CNTT QUA MẠNG
________________
BÁO CÁO THU HOẠCH MÔN HỌC
CÔNG NGHỆ TRI THỨC
Đề tài: Hệ thống xây dựng quy luật
cho bảng khảo sát thị trường dựa trên
cây định danh
Giáo viên hướng dẫn: GS.TSKH Hoàng Kiếm
Sinh viên thực hiện: Du Chí Hào
Mã số sinh viên: CH1101083
Tp. HCM 2012
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Lời nói đầu
Từ khi trí tuệ nhân tạo ra đời cho đến nay, người ta không ngừng thực hiện các
công trình nghiên cứu để đưa tư tưởng nghiên cứu cùng với máy tính để ứng dụng vào
việc giải quyết các công việc trong thực tiễn đời sống.
Một trong những nguyên nhân làm cho trí tuệ nhân tạo trở thành một trong
những lĩnh vực mũi nhọn trong thời đại hiện nay là việc làm cho máy tính trở nên
thông minh hơn, nói cụ thể hơn là người ta tìm cách tạo ra các chương trình thông
minh hơn có khả năng giải quyết các vấn đề thực tế như cách giải quyết của con người.
Trong bài thu hoạch này, em sẽ trình bày ý tưởng xây dựng một hệ thống tìm ra
các luật logic cho các bảng khảo sát thị trường dựa trên cây định danh và chương trình
demo cho ý tưởng này. Một công ty có thể sản xuất ra rất nhiều sản phẩm và có rất
nhiều bảng khảo sát cho một sản phẩm. Do đó, số lượng câu hỏi khảo sát cho các sản
phẩm đó có thể không cố định số lượng thuộc tính tùy từng bảng khảo sát.
Ví dụ:
• Bảng khảo sát về dầu gội thì có các thuộc tính như sau:
Tóc có giá trị vàng, nâu, đỏ.
Tuổi có giá trị thanh niên, thiếu niên.


• Bảng khảo sát về kem dưỡng da thì có các thuộc tính như sau:
Da có giá trị đen, vàng, trắng.
Sở thích có giá trị dùng kem, dùng sữa tắm.
Vấn đề đặt ra là làm sao để có thể tìm ra các quy luật trong từng bảng khảo sát
chính xác với những dữ liệu thuộc tính không cố định đó.
Em xin chân thành cám ơn thầy GS.TSKH Hoàng Kiếm đã truyền đạt những
kiến thức quý báu cho em về bộ môn “Công nghệ tri thức” để em có thể hoàn thành bài
thu hoạch này.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 2
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Mục lục
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG 2
PHẦN I : CÂY ĐỊNH DANH 4
a. Phương pháp học bằng cây định danh 4
b. Phân tích bài toán 4
c. Phương pháp phân hoạch theo thuật toán Quinlan 6
d. Phương pháp đo độ hỗn loạn 8
e. Phát sinh tập luật: 9
f. Tối ưu hóa tập luật 9
PHẦN II : Ý TƯỞNG PHÂN TÍCH & THIẾT KẾ CHƯƠNG TRÌNH 10
I. Phân tích ý tưởng: 10
II. Thiết kế chương trình 10
PHẦN III : KẾT LUẬN 19
PHẦN IV : TÀI LIỆU THAM KHẢO 20
MÔN HỌC : CÔNG NGHỆ TRI THỨC 3
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
PHẦN I : CÂY ĐỊNH DANH
a. Phương pháp học bằng cây định danh

Cây đinh danh là cây được xây dựng từ một tập dữ liệu cho sẵn với các
đường đi từ gốc đến lá là một kết quả hay một quy luật.
Trong một cây định danh có thể có nhiều quy luật.
Ví dụ: Bảng khảo sát cho việc mua một ngành hàng A:
STT Kích cỡ Màu sắc Hình dáng Quyết định
1 Trung Bình Đỏ Cầu Mua
2 Lớn Vàng Hộp Mua
3 Trung Bình Xanh Trụ Không mua
4 Nhỏ Xanh Cầu Mua
5 Trung Bình Xanh Nón Không mua
6 Nhỏ Xanh Nón Không mua
7 Trung Bình Đỏ Trụ Mua
Như vậy, cây định danh cho bảng khảo sát này được xác định:
• Thuộc tính mục tiêu: là thuộc tính cần quan tâm. Theo ví dụ trên thì
thuộc tính mục tiêu là “Mua” hay “Không mua”.
• Thuộc tính dẫn xuất: các thuộc tính như Kích cỡ, Màu sắc, Hình dáng
là các thuộc tính dẫn xuất.
b. Phân tích bài toán
Trong phần này, em sẽ trình bày phương pháp xây dựng cây định danh
dựa trên dữ liệu nhập sẵn trên bảng khảo sát để tìm ra các quy luật cho bảng
khảo sát đó.
Ý tưởng ban đầu của việc học bằng cây định danh là tìm cách phân
hoạch một tập dữ liệu P trong bản khảo sát thành các tập P
i
sao cho tất cả các
phần tử trong tất cả các tập P
i
có chung thuộc tính mục tiêu.
Ví dụ, ta có bảng dữ liệu:
MÔN HỌC : CÔNG NGHỆ TRI THỨC 4

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Tên Màu tóc Chiều cao Cân nặng Dùng kem? Kết quả
Sarah Vàng Trung bình Nhẹ Không Cháy nắng
Dana Vàng Cao Trung bình Có Không
Alex Nâu Thấp Trung bình Có Không
Annie Vàng Thấp Trung bình Không Cháy nắng
Emilie Đỏ Trung bình Nặng Không Cháy nắng
Peter Nâu Cao Nặng Không Không
John Nâu Trung bình Nặng Không Không
Kartie Vàng Thấp Nhẹ Có Không
Để xây dựng cây định danh, ta chọn ngẫu nhiên một thuộc tính để phân
hoạch là tóc.
P
vàng
= {Sarah, Dana, Annie, Kartie}
P
nâu
= {Alex, Peter, John }
P
đỏ
= {Emmile}
Người được gạch dưới và in đậm là bị cháy nắng, ta có sơ đồ sau để mô
tả các bước phân hoạch:
Tập phân hoạch P
vàng
vẫn còn lẫn lộn thuộc tính cháy nắng và không cháy
nắng. Tiếp tục, chúng ta sẽ quan sát thuộc tính chiều cao. Ta có:
P
vàng, thấp

= {Annie, Kartie}
P
vàng, trung bình
= {Sarah}
P
vàng, cao
= {Dana}
Như vậy, bảng phân hoạch sẽ có kết quả như sau:
MÔN HỌC : CÔNG NGHỆ TRI THỨC 5
Màu tóc
Emmile
Đỏ
Nâu
Alex
Peter
John
Vàng
g
Dana
Kartie
Sarah
Annie
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Quá trình phân hoạch sẽ tiếp tục diễn ra đến khi tất cả nút là không còn
lẫn lộn giữa cháy nắng và không cháy nắng. Cây phân hoạch sẽ ngày càng
phình ra. Quá trình này được gọi là đâm chồi.
Như vậy, nếu cứ chọn ngẫu nhiên các thuộc tính để phân hoạch thì sẽ
làm cho quy luật sau mỗi lần xuất kết quả sẽ khác nhau, việc này ảnh hưởng đến
sự nhất quán và độ tin cậy của hệ thống. Chúng ta có 2 phương pháp hỗ trợ cho

việc phân hoạch dữ liệu:
• Phương pháp dựa trên thuật toán Quinlan.
• Phương pháp đo độ hỗn loạn.
c. Phương pháp phân hoạch theo thuật toán Quinlan
Thuật toán Quinlan quyết định thuộc tính phân hoạch bằng cách xây
dựng các vector đặc trưng cho mỗi giá trị của từng thuộc tính dẫn xuất và thuộc
tính mục tiêu.
Một vector V(Aj) được gọi là vector đơn vị nếu nó có duy nhất một
thành phần có giá trị 1 và những thành phần khác có giá trị 0.
Thuộc tính được chọn để phân hoạch là thuộc tính có nhiều vector đơn vị
nhất.
Ví dụ:
Xét ví dụ trên mục II, thuộc tính màu tóc có 3 giá trị khác nhau là vàng,
đỏ, nâu nên sẽ có 3 vectơ đặc trưng tương ứng là:
Xét giá trị Tóc vàng:
V
tóc
(vàng) = {T(vàng, cháy nắng), T(vàng, không cháy nắng)}
Số người tóc vàng là: 4
Số người tóc vàng và cháy nắng là: 2
Số người tóc vàng và không cháy nắng là: 2
Như vậy: V
tóc
(vàng) = (2/4, 2/4) = (0.5, 0.5)
MÔN HỌC : CÔNG NGHỆ TRI THỨC 6
Màu tóc
Emmile
Đỏ
Nâu
Alex

Peter
John
Vàng
Chiều cao
Dana
Cao
Trung bình
Sarah
Thấp
Kartie
Annie
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Tương tự xét giá trị tóc nâu:
Số người tóc nâu là: 3
Số người tóc nâu và cháy nắng là: 0
Số người tóc nâu và không cháy nắng là: 3
Như vậy: V
tóc
(nâu) = (0/3, 3/3) = (0, 1) à vector đơn vị
Xét giá trị tóc đỏ:
V
tóc
(đỏ) = (1/1, 0/1) = (1, 0) à Vector đơn vị
Tổng số vector đơn vị của thuộc tính Màu Tóc là 2
Xét các thuộc tính khác tương tự, kết quả như sau:
V
chiều.cao
(cao) = (0/2, 2/2) = (0, 1)
V

chiều.cao
(trung bình) = (2/3, 1/3)
V
chiều.cao
(thấp) = (1/3, 2/3)
V
cân.nặng
(nhẹ) = (1/2, 1/2)
V
cân.nặng
(trung bình) = (1/3, 2/3)
V
cân.nặng
(nặng) = (1/3, 2/3)
V
dùng.kem
(có) = (3/3, 0/3) = (1, 0)
V
dùng.kem
(không) = (3/5, 2/5)
Như vậy, thuộc tính màu tóc có số vector đơn vị nhiều nhất nên sẽ được
chọn để phân hoạch. Sau khi phân hoạch theo tóc vàng ta có tập phân hoạch:
Tên Chiều cao Cân nặng Dùng kem Kết quả
Sarah Trung bình Nhẹ Không Cháy nắng
Dana Cao Trung bình Có Không
Annie Thấp Trung bình Không Cháy nắng
Kartie Thấp Nhẹ Có Không
Sau khi phân hoạch theo màu tóc, trong bảng phân hoạch mới vẫn còn
người cháy nắng và không cháy nắng nên phân hoạch tiếp:
V

chiều.cao
(cao) = (0/1, 1/1) = (0, 1)
V
chiều.cao
(trung bình) = (1/1, 0/1) = (1, 0)
MÔN HỌC : CÔNG NGHỆ TRI THỨC 7
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
V
chiều.cao
(thấp) = (1/2, 1/2)
V
cân.nặng
(nhẹ) = (1/2, 1/2)
V
cân.nặng
(trung bình) = (1/2, 1/2)
V
dùng.kem
(có) = (0/2, 2/2) = (0, 1)
V
dùng.kem
(không) = (2/2, 0/2) = (1, 0)
Vì hai thuộc tính dùng kem và chiều cao đều có cùng 2 vectơ đơn vị, tuy
nhiên số phân hoạch của thuộc tính dùng kem là ít hơn nên ta chọn phân hoạch
theo thuộc tính dùng kem. Những tập phân hoạch trong bước này không còn lẫn
lộn người cháy nắng và không cháy nắng nên dưới đây là cây định danh cuối
cùng:
d. Phương pháp đo độ hỗn loạn
Thay vì phải xây dựng vectơ đặc trưng như phương pháp Quinlan. Ứng

với mỗi thuộc tính dẫn xuất ta chỉ cần tính ra độ đo hỗn loạn và lựa chọn thuộc
tính nào có độ đo hỗn loạn là thấp nhất. Người ta tính được công thức như sau:
Gọi T
A
là độ đo hỗn loạn của một thuộc tính A, ta có:
MÔN HỌC : CÔNG NGHỆ TRI THỨC 8
Màu tóc
Dùng kem
Emmile
Đỏ
Nâu
Alex
Peter
John
Vàng
Không

Sarah
Annie
Dana
Kartie
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Trong đó:
• bt là tổng số phần tử có trong phân hoạch
• bj là số phần tử có thuộc tính dẫn xuất A có giá trị j
• bri là tổng số phần tử có thuộc tính dẫn xuất A có giá trị j và thuộc
tính mục tiêu có giá trị i.

Ví dụ cho cách tính công thức trên, xét ví dụ trong mục II:

Xét thuộc tính màu tóc:
• Tập tóc Vàng có 2 người cháy nắng và 2 người không cháy nắng.
• Tập tóc Đỏ chỉ có 1 người cháy nắng.
• Tập tóc Nâu cả 3 người không cháy nắng.
Nhưng vậy, theo công thức trên, ta có:
E
Vàng
= 4/8 x (- 2/4 x log
2
2/4 - 2/4 x log
2
2/4)
E
Đỏ
= 1/8 x (-1/1 x log
2
1/1)
E
Nâu
= 3/8 x (-3/3 x log
2
3/3)
T
A =
E
Vàng
+

E
Đỏ

+

E
Nâu
e. Phát sinh tập luật:
Dựa vào cây định danh được xây dựng như trong hình số 5 mục 2, các
quyết định được phát sinh như sau: Người ta theo các nhánh của cây từ gốc đến
lá lấy các thử nghiệm là giả thiết và lấy nút lá làm kết luận, có các luật sau:
1. (Màu tóc vàng) và (có dùng kem)
à
không cháy nắng
2. (Màu tóc vàng) và (không dùng kem)
à
cháy nắng
3. (Màu tóc nâu)
à
không cháy nắng
4. (Màu tóc đỏ)
à
cháy nắng
f. Tối ưu hóa tập luật
Sau khi phát sinh tập luật, chúng ta phải tối ưu hóa tập luật bằng cách
loại bỏ các mệnh đề thừa. Phương pháp loại bỏ mệnh đề thừa ở đây dựa vào dữ
liệu. Ví dụ trong luật:
(Màu tóc vàng) và (có dùng kem)
à
không cháy nắng
Lập bảng Contigency để thống kê những người dùng kem tương ứng với
tóc màu vàng và bị cháy nắng hay không. Trong dữ liệu, có ba người không
dùng kem.

Màu tóc Người không cháy
nắng
Người bị cháy nắng
Tóc vàng
Tóc màu khác
2
1
0
0
MÔN HỌC : CÔNG NGHỆ TRI THỨC 9
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Theo bảng thống kê trên thì rõ ràng thuộc tính tóc vàng không có liên
quan gì đến việc cháy nắng hay không nên ta có thể loại bỏ thuộc tính tóc vàng
ra khỏi tập luật.
Sau khi loại bỏ mệnh đề thừa, tập luật ví dụ trên sẽ là:
1. (Có dùng kem)
à
không cháy nắng
2. (Màu tóc vàng) và (không dùng kem)
à
cháy nắng
3. (Màu tóc nâu)
à
không cháy nắng
4. (Màu tóc đỏ)
à
cháy nắng
PHẦN II : Ý TƯỞNG PHÂN TÍCH & THIẾT KẾ CHƯƠNG
TRÌNH

I. Phân tích ý tưởng:
Trong các doanh nghiệp hiện nay, việc khảo sát và phân tích thị trường
để đưa ra quyết định và chiếc lược kinh doanh cho một sảm phẩm là rất quan
trọng. Các mẫu khảo sát như khảo sát hành vi, sở thích v.v của khách hàng thì
vẫn chưa đủ, đó chỉ là một mặt của việc thu thập ý kiến, thông tin dữ liệu từ
phía khách hàng. Với số dữ liệu khảo sát được, các nhà doanh nghiệp phải tìm
cách để khai thác những dữ liệu đó để tìm ra được các quy luật và hướng phát
triển trong đó. Để thực hiện được việc này thì không đơn giản với những dữ liệu
lớn. Do đó, việc áp dụng máy học để khai thác những dữ liệu này và tìm ra
được những quy luật bên trong nó là rất hữu ích. Nó giúp doanh nghiệp có thể
tiết kiệm được về chi phí thời gian và công sức.
Trong phần này, em sẽ nêu ra ý tưởng và demo chương trình cho việc
phân tích, xây dựng các tập luật trên các bảng khảo sát đã có dựa trên cây định
danh và phương pháp đo độ hỗn loạn để phân hoạch.
Trong cây định danh, các dữ liệu được sắp xếp theo thuộc tính, ví dụ:
thuộc tính màu tóc thì có Vàng, Đỏ, Nâu. Các thuộc tính này được xếp theo cột,
theo ví dụ Phần I mục II thì có 6 cột. Vấn đề đặt ra là làm thế nào để lưu tất cả
các cột này vào trong Cơ sở dữ liệu (CSDL) sao cho các cột này có thể tùy biến
(có thể có nhiều cột hay ít cột hơn) để phù hợp với tất cả các bảng khảo sát thị
trường của doanh nghiệp. Và dựa trên những dữ liệu được lưu trong CSDL,
chương trình sẽ tự động xây dựng các tập luật và tối ưu hóa tập luật đó.
Để thực hiện ý tưởng này, em sẽ sữ dụng Visual Studio 2010 dotNet 4.0
để xử lý giao diện và SQL Server 2005 để cài đặt CSDL.
II. Thiết kế chương trình
1. Thiết kế CSDL:
Do phải thiết kế các thuộc tính có thể ít hơn hay nhiều hơn tùy theo các
mẫu khảo sát nên cấu trúc các bảng trong CSDL sẽ bao gồm 3 bảng chính:
MÔN HỌC : CÔNG NGHỆ TRI THỨC 10
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Mẫu Khảo Sát: dùng để chứa tên của các mẫu khảo sát. Mục đích là
dùng để phân biệt thuộc tính giữa các mẫu khao sát với nhau.
Câu Hỏi Khảo Sát: Dùng để chứa thông tin câu hỏi cho mẫu khảo sát.
Cột “TenThuocTinh” dùng để quy đổi cột “TenCauHoi” thành dạng rút
gọn để thuật tiện hiển thị trên cột. Ví dụ như: Trong một bảng khảo sát có câu
hỏi: “Bạn nặng bao nhiêu kg?” thì “TenThuocTinh” sẽ có giá trị là “Cân nặng”.
Cột “ThuocTinhMucTieu” dùng để giúp nhận biết câu hỏi đó có phải là
câu hỏi mục tiêu hay không. Dữ liệu được lưu trữ như sau:
Bảng Khảo Sát: Dùng để lưu trữ thông tin trả lời của khách hàng ứng
với từng câu hỏi khảo sát.
Cột “STT” chính là cột để nhận biết câu hỏi và câu trả lời là của cùng
một khách hàng được khảo sát. Ví dụ như:
MÔN HỌC : CÔNG NGHỆ TRI THỨC 11
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Với bảng khảo sát trên “STT” trong table “BangKhaoSat” chính là cột
“STT” như hình trên. Vì vậy, dữ liệu của dòng 1 và 2 được lưu trong CSDL là:
Như vậy với thiết kế trên đã đáp ứng được nhu cầu lưu các cột thuộc tính
động và cách thiết kế trên chỉ ở mức ý tưởng. Khi triển khai, chúng ta cần phải
thêm các khóa phụ, quan hệ và một số table khác như thay thế cột “STT” của
table “BangKhaoSat” thành 1 khóa ngoại quan hệ với một table khác như
“ThongTinKhachHang” v.v…
2. Giao diện chương trình
Trên giao diện sẽ gồm có 3 giao diện. Giao diện đầu tiên là giao diện kết
nối với SQL Server. Mục đích của việc tạo giao diện này là giúp kết nối với
CSDL lần đầu tiên. Sau đó, sẽ lưu lại thông tin kết nối trong file xml và không
cần kết nối trong lần thứ hai trở đi.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 12
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Giao diện thứ hai là giúp xem thông tin các dữ liệu theo dạng từng cột
thuộc tính trực quan thay vì những dữ liệu phức tạp như lưu dưới CSDL.
Giao diện thứ ba hiển thị các luật đã phân tích và tối ưu hóa các luật.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 13
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
3. Cấu trúc chương trình
Trong solution VS2010 của hệ thống, em chia thành 3 phần chính:
Entity, DAL và UI.
Trong đó, Entity là chứa các class tương ứng với các table trong CSDL.
• BangKhaoSat: dùng để chứa dữ liệu của table “BangKhaoSat”.
• CauHoi_DoHonLoan: dùng để chứa độ hỗn loạn của câu hỏi.
• MauKhaoSat: dùng để chứa dữ liệu của “MauKhaoSat”, chủ yếu
được dùng hiển thị dữ liệu trên combobox.
“DAL” dùng để chứa các hàm kết nối với CSDL và trả kết quả cho UI.
“ucBangKhaoSat” là giao diện thứ ba dùng để phân tích các tập luật.
“ucDSKhaoSat” là giao diện thứ hai để hiển thị dữ liệu.
Trong giao diện thứ hai, để có thể hiển thị dữ liệu từ chiều dọc sang
chiều ngang, em sử dụng PIVOT của SQL Server.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 14
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG

Đoạn code dùng để phân tích dữ liệu và xây dựng tập luật trong giao
diện thứ ba. Đầu tiên là method “PhanHoach” để phân hoạch và đưa ra tập luật.
Trong method này sẽ có 3 tham số:
• Danh sách Bảng Khảo Sát: dùng để chứa tất cả dữ liệu lấy từ CSDL
với Mã Mẫu Khảo Sát tương ứng với combobox “MauKhaoSat”.
• Danh sách Câu hỏi: chứa tất cả câu hỏi tương ứng với Mã Mẫu Khảo

Sát để đo độ hỗn loạn.
• PhanHoachCha: dùng để chứa chuỗi ký tự, mục đích là giữ lại phân
hoạch lớn cho từng phân hoạch con trong bước đệ quy để hiển thị
trên chuỗi luật trên màn hình.
Trong method này sẽ được chia làm 3 bước:
Bước 1: Tính độ hỗn loạn theo công thức cho các thuộc tính trên bảng
khảo sát và lưu trữ độ hỗn loạn trên class “CauHoi_DoHonLoan”.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 15
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Bước 2: Tìm độ hỗn loạn nhỏ nhất trong tất cả các thuộc tính cần xét
Bước 3: Phân hoạch theo câu hỏi có độ hỗn loạn nhỏ nhất của bước 2.
Nếu như nhánh có hai giá trị mục tiêu phân biệt trở lên thì đệ quy để phân
hoạch bảng định danh mới sau khi loại bỏ các nhánh khác.
Ví dụ:
Ở ví dụ phần 1 mục II, màu tóc có độ hỗn loạn nhỏ nhất nên phân hoạch
thuộc tính màu tóc. Ta thấy trong nhánh màu vàng có hai giá trị mục tiêu phân
biệt là cháy nắng và không cháy nắng. Nên chúng ta sẽ phân hoạch nhánh này.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 16
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Sau khi trả ra được một chuỗi các luật, chương trình sẽ hiển thị ra giao
diện. Ví dụ:
MÔN HỌC : CÔNG NGHỆ TRI THỨC 17
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
Để tối ưu hóa tập luật đã được xây dựng, em sẽ loại bỏ các tập thừa bằng
cách lập bản Contigency.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 18
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
PHẦN III : KẾT LUẬN
Em đã nêu ý tưởng và demo về chương trình xây dựng tập luật cho các
bảng khảo sát. Chương trình có thể hỗ trợ nhiều loại mẫu khảo sát thị trường vì
số thuộc tính có thể mở rộng linh động nên không cần phải thay đổi cấu trúc
chương trình mỗi khi có sự thay đổi về các câu hỏi khảo sát.
Qua bài thu hoạch này, em đã có điều kiện tìm hiểu sâu thêm về cây định
danh và cách ứng dụng của nó vào trong thực tế. Đặc biệt trong xã hội hiện nay,
thời đại công nghệ thông tin len lỏi vào mọi lĩnh vực thì việc nghiên cứu
phương pháp học này của chương trình máy tính đã góp phần mang tính chiến
lược cho công nghệ tri thức hiện nay.
Tuy nhiên do thời gian và kiến thức còn gói gọn trong môn học nên
chuyên đề sẽ không tránh được những thiếu sót, em mong nhận được sự đóng
góp xây dựng tích cực của thầy GS.TSKH Hoàng Kiếm cùng bạn đọc.
Kính xin cám ơn giảng viên phụ trách môn học đã giảng dạy nhiệt tình
cũng như chỉ bảo rất nhiều giúp bản thân em hoàn thành đề tài.
Xin cám ơn các bạn đã theo dõi.
Mong nhận được sự đánh giá và nhận xét của thầy và các bạn.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 19
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG
PHẦN IV : TÀI LIỆU THAM KHẢO
1. Slide Công nghệ tri thức và ứng dụng, GS.TSKH. Hoàng Kiếm.
2. Giáo trình các hệ cơ sở tri thức, GS.TSKH. Hoàng Kiếm – TS. Đỗ Phúc –
TS. Đỗ Văn Nhơn – 2009.
3. Giáo trình Nhập môn trí tuệ nhân tạo, GS.TSKH. Hoàng Kiếm – ThS. Đình
Nguyễn Anh Dũng.
MÔN HỌC : CÔNG NGHỆ TRI THỨC 20

×