Mục tiêu nghiên cứu đề tài Mục tiêu của khóa luận là thu thập dữ liệu đưa vào tiến hành huấn luyện và kiểm thử dữ liệu với các bộ phân lớp trên Weka, giảm tải công việc cho nhân sự và hi
Trang 1ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KINH TẾ KHOA HỆ THỐNG THÔNG TIN KINH TẾ
- -KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
XÂY DỰNG BỘ PHÂN LỚP ĐỊNH GIÁ XE DỰA TRÊN
MÔ HÌNH FUNCTIONAL TREES
SINH VIÊN THỰC HIỆN:
ĐỖ THỊ TUYẾT SƯƠNG
NIÊN KHÓA 2015 -2019
Trường Đại học Kinh tế Huế
Trang 2ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KINH TẾ KHOA HỆ THỐNG THÔNG TIN KINH TẾ
- -KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
XÂY DỰNG BỘ PHÂN LỚP ĐỊNH GIÁ XE DỰA TRÊN
MÔ HÌNH FUNCTIONAL TREES
Sinh viên thực hiện Giáo viên hướng dẫn
Đỗ Thị Tuyết Sương TS Nguyễn Đình Hoa Cương
Trang 3Lời Cảm Ơn
Được sự phân công của Khoa Hệ thống Thông tin Kinh tế, Trường Đại Học
Kinh Tế Huế, sau ba tháng thực tập ở công ty Cố phần Dịch vụ COG và viết luận văn,
nay em đã hoàn thành Khóa luận tốt nghiệp cuối khóa Để hoàn thành nhiệm vụ được
giao, ngoài sự nỗ lực học hỏi của bản thân còn có sự hướng dẫn tận tình của thầy cô,
sự giúp đỡ của bạn bè và các anh chị tại công ty, đặc biệt hơn là sự động viên tinh thần
lớn từ gia đình
Lời đầu tiên, em xin gửi lời cảm ơn chân thành tới giảng viên TS.Nguyễn Đình
Hoa Cương, người đã hướng dẫn và chỉ bảo tận tình cho em trong suốt quá trình học
tập và thực hiện khóa luận tốt nghiệp này
Em xin cảm ơn những thầy, cô giảng viên đã chỉ bảo em trong suốt quá trình
học tập trường Đại học Kinh Tế - Đại học Huế
Em xin cảm ơn tất cả bạn bè, anh chị ở công ty COG và gia đình đã luôn giúp
đỡ và động viên tinh thần cho em trong suốt quá trình vừa qua
Tuy nhiên vì kiến thức chuyên môn còn hạn chế và bản thân còn thiếu nhiều kinh
nghiệm thực tiễn nên nội dung của báo cáo không tránh khỏi những thiếu xót, em rất
mong nhận sự góp ý, chỉ bảo thêm của quý thầy cô cùng toàn thể cán bộ, công nhân
viên tại các doanh nghiệp để báo cáo này được hoàn thiện hơn
Một lần nữa, em xin gửi đến thầy cô, bạn bè cùng các cô chú, anh chị tại các
doanh nghiệp lời cảm ơn chân thành nhất!
Huế, tháng 5 năm 2019
Kí tên
SV Đỗ Thị Tuyết SươngTrường Đại học Kinh tế Huế
Trang 4LỜI CAM ĐOAN
Em xin cam đoan chịu trách nhiệm về tính xác thực và độ tin cậy của khóa luận
tốt nghiệp, đảm bảo đây là công trình nghiên cứu của em, không sao chép một cách bất
hợp lệ từ bất cứ nguồn nào
Trường Đại học Kinh tế Huế
Trang 5MỤC LỤC
DANH MỤC HÌNH ẢNH v
DANH MỤC BẢNG BIỂU vi
DANH MỤC THUẬT NGỮ vii
PHẦN I: MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục tiêu nghiên cứu đề tài 1
3 Đối tượng và phạm vi nghiên cứu 1
4 Kết cấu khĩa luận 2
PHẦN II: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU 3
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT CỦA MƠ HÌNH FUNCTIONAL TREES 3
1.1 Tổng quan về khai phá dữ liệu 3
1.1.1 Nhu cầu khai phá tri thức 3
1.1.2 Khái niệm Khai phá dữ liệu 5
1.1.3 Bùng nổ dữ liệu 5
1.1.4 Quá trình phát hiện tri thức 6
1.1.5 Ứng dụng của Khai phá dữ liệu 7
1.2 Các phương pháp khai phá dữ liệu 8
1.2.1 Phân lớp (Classification) 8
1.2.2 Hồi qui (Regression) 9
1.2.3 Phân cụm (Clustering) 9
1.2.4 Khai phá luật kết hợp (Association rule) 10
1.2.5 Một số phương pháp khác 12
1.2.6 Lợi ích trong khai phá dữ liệu .12
1.2.7 Những thách thức trong khai phá dữ liệu 12
1.3 Phát biểu bài tốn nghiên cứu 13
1.4 Lý thuyết về mơ hình Functional Trees 13
1.5 Lý thuyết về các mơ hình phân lớp cơ sở 15
1.5.1 Mơ hình Nạve Bayes: 15
1.5.2 Mơ hình Cây quyết định 16
Trường Đại học Kinh tế Huế
Trang 61.5.3 Mơ hình K – NN 17
1.6 Các cơng trình liên quan 18
CHƯƠNG 2: XÂY DỰNG MƠ HÌNH FUNCTIONAL TREES VỚI BỘ PHÂN LỚP ĐỊNH GIÁ XE 30
2.1 Chuẩn bị dữ liệu 30
2.2 Phương pháp xây dựng mơ hình 31
2.3 Các độ đo đánh giá một hệ thống phân lớp 31
2.4 Xây dựng mơ hình Functional Trees 33
2.5 Phương pháp đánh giá mơ hình 33
2.6 Xây dựng ROC của nhiều bộ phân lớp bằng Knowledge 34
CHƯƠNG 3: THÍ NGHIỆM VÀ KẾT QUẢ 35
3.1 Thiết lập thí nghiệm 35
3.1.1 Xây dựng mơ hình phân lớp dựa trên bộ phân lớp Functional Trees 36
3.1.2 Xây dựng mơ hình phân lớp dựa trên bộ phân lớp Nạve Bayes 36
3.1.3 Xây dựng mơ hình phân lớp dựa trên bộ phân lớp cây quyết định(J48) 37
3.1.4 Xây dựng mơ hình phân lớp dựa trên bộ phân lớp IBk (k – NN) 37
3.2 Mơ hình đánh giá ROC 38
3.3 Kết quả thí nghiệm 39
PHẦN III: KẾT LUẬN VÀ KIẾN NGHỊ 40
1 Kết quả đạt được 40
2 Hạn chế của đề tài 40
3 Hướng phát triển đề tài 40
DANH MỤC TÀI LIỆU THAM KHẢO 41
Trường Đại học Kinh tế Huế
Trang 7DANH MỤC HÌNH ẢNH
Trang
Hình 1.1 Tiến hĩa của cơng nghệ cơ sở dữ liệu theo quan điểm của J.Han và M.Kamber 4
Hình 1.2 Hình ảnh minh họa bùng nổ dữ liệu 6
Hình 1.3 Quá trình phát hiện tri thức 6
Hình 1.4 Surpervised learning workflow 8
Hình 1.5 Mơ hình Functional Trees 15
Hình 2.1 Dữ liệu Car Evaluation trên UCI 30
Hình 2.2 Hình thể hiện cách tính Precision và Recall 32
Hình 2.3 Giao diện thiết lập mơ hình Functional Trees 33
Hình 2.4 Xây dựng mơ hình đánh giá ROC trên nhiều bộ phân lớp 34
Hình 3.1 Kết quả kiểm thử mơ hình phân lớp với bộ phân lớp Functional Trees trên bộ dữ liệu CarEvalution.arff 36
Hình 3.2 Kết quả kiểm thử mơ hình phân lớp với bộ phân lớp Nạve bayes trên bộ dữ liệu CarEvalution.arff 36
Hình 3.3 Kết quả kiểm thử mơ hình phân lớp với bộ phân lớp J48 trên bộ dữ liệu CarEvalution.arff 37
Hình 3.4 Kết quả kiểm thử mơ hình phân lớp với bộ phân lớp K – NN (k=5) trên bộ dữ liệu CarEvalution.arff 37
Hình 3.5 Mơ hình thiết lập hồn tất bộ đánh giá dữ liệu CarEvaluation.arff 38
Hình 3.6 Kết quả đánh giá mơ hình đường ROC trên bộ dữ liệu CarEvaluation.arff 39
Trường Đại học Kinh tế Huế
Trang 8DANH MỤC BẢNG BIỂU
Bảng 2.1 Bảng thuộc tính của dữ liệu Car Evaluation 30
Bảng 3.1 Bảng kết quả thí nghiệm của mô hình 39
Trường Đại học Kinh tế Huế
Trang 9DANH MỤC THUẬT NGỮ
Bayes
4 K - NN K - Nearest Neighbors K - láng giềng gần
7 SVM Support vector marchine Hỗ trợ máy vector
Trường Đại học Kinh tế Huế
Trang 10PHẦN I: MỞ ĐẦU
1 Lý do chọn đề tài
Trên thực tế, việc định giá xe phụ thuộc vào tác động của nhiều yếu tố như: Chấp
nhận mua, duy trì chế độ bảo hành, số cửa, năng lực của người mua, kích thước của bộ
phận khởi động, ước tính an toàn của xe Chính vì tính chất quan trọng và phức tạp
như vậy nên đối với bất kỳ doanh nghiệp nào khi tiến hành định giá đều bắt buộc phải
nghiên cứu kỹ lưỡng để có thể lựa chọn một mức giá phù hợp và hiệu quả cho các sản
phẩm của mình Chính vì vậy, việc định giá vừa được coi là khoa học vừa được coi là
nghệ thuật Khoa học là việc nghiên cứu và đưa ra mức giá hợp lý để thu được doanh
thu cao nhất có thể cho doanh nghiệp Nghệ thuật là việc định giá sao cho phù hợp với
từng loại xe, từng loại thị trường, tâm lý của người tiêu dùng và thời điểm để đưa ra
các mức giá đó
Trong những năm gần đây, với sự phát triển mạnh mẽ của công nghệ thông tin,
với khối dữ liệu tri thức lớn nhằm để giảm tải công việc cho con người và hiệu quả
hơn trong việc phân tích dữ liệu nên khai phá dữ liệu ngày càng phát triền Vì vậy,
trong bài nghiên cứu này em đã tiến hành xây dựng bộ phân lớp định giá xe việc định
giá xe sẽ hiệu quả và dễ dàng hơn với dựa trên mô hình Functional Trees
2 Mục tiêu nghiên cứu đề tài
Mục tiêu của khóa luận là thu thập dữ liệu đưa vào tiến hành huấn luyện và kiểm
thử dữ liệu với các bộ phân lớp trên Weka, giảm tải công việc cho nhân sự và hiệu quả
hơn trong việc phân tích dữ liệu về việc định giá xe dựa trên mô hình Functional
Trees
3 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu ở đây là mô hình phân lớp Functional Trees và bộ phân lớp
định giá xe (Car Evaluation) Và cũng như cách xây dựng bộ phân lớp định giá xe dựa
trên mô hình Functional Trees
Trường Đại học Kinh tế Huế
Trang 114 Kết cấu khóa luận
Phần I: Mở đầu
Phần II: Nội dung và kết quả nghiên cứu
Chương 1: Cơ sở lý thuyết
Chương 2: Xây dựng mô hình
Chương 3: Thí nghiệm và kết luận
Phần III: Kết luận và kiến nghị
Trường Đại học Kinh tế Huế
Trang 12PHẦN II: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT CỦA MÔ HÌNH FUNCTIONAL TREES
1.1 Tổng quan về khai phá dữ liệu
1.1.1 Nhu c ầu khai phá tri thức
Tốc độ phát triển vượt bậc của tri thức và dung lượng dữ liệu do con người tạo,
lưu trữ, truyền dẫn ngày càng tăng cùng với nhu cầu hoạt động về mọi mặt của đời
sống xã hội và sự phát triển của công nghệ chế tạo các thiết bị xử lý, lưu trữ và truyền
dẫn dữ liệu đã dẫn đến “Hiện tượng bùng nổ thông tin”
Các kết quả của sự phát triển công nghệ phần cứng máy tính đã tạo điều kiện
thuận lợi cho sự phát triển công nghệ cơ sở dữ liệu (liên quan tới tổ chức và quản lý cơ
sở dữ liệu) và công nghệ mạng (liên quan tới hoạt động truyền dẫn dữ liệu) Công
nghệ cơ sở dữ liệu (CSDL) đã và đang phát triển không ngừng nhằm đáp ứng nhu cầu
quản lý dữ liệu của con người nói chung và trong hoạt động quản lý nói riêng
Thích ứng với hoàn cảnh đó, các phương pháp xử lý dữ liệu và các bộ công cụ
tiện ích thi hành các phương pháp này ra đời Xây dựng phát triển phương pháp và
công cụ xử lý dữ liệu lớn nhằm mục đích phát hiện tri thức tiềm ẩn là nội dung của
lĩnh vực phát hiện tri thức trong cơ sở dữ liệu
Sự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tin ở
hầu hết các lĩnh vực trong nhiều năm qua cũng đồng nghĩa với lượng dữ liệu đã được
thu thập và lưu trữ ngày càng lớn Các hệ quản trị cơ sở dữ liệu truyền thống cũng chỉ
khai thác được một lượng thông tin nhỏ không còn đáp ứng đầy đủ những yêu cầu,
những thách thức mới Do vậy một khuynh hướng mới được ra đời đó là kỹ thuật phát
hiện tri thức trong cơ sở dữ liệu Xin giới thiệu một cách tổng quan về phát hiện tri
thức và khai phá dữ liệu cùng một số kỹ thuật cơ bản để trong khai phá dữ liệu để phát
hiện tri thức và một số ứng dụng trong thực tế nhằm hỗ trợ cho tiến trình ra quyết định
Trường Đại học Kinh tế Huế
Trang 13Hình 1.1 Tiến hóa của công nghệ cơ sở dữ liệu theo quan điểm của J.Han và
M.Kamber.
(Nguồn: www.slideserve.com)
Trường Đại học Kinh tế Huế
Trang 141.1.2 Khái ni ệm Khai phá dữ liệu
Khai phá dữ liệu (Data mining) là một bước quan trọng của quá trình phát hiện
tri thức bao gồm các giải thuật khai phá dữ liệu để tìm ra các mẫu hay các mô hình
trong dữ liệu dưới khả năng có thể chấp nhận được của máy tính điện tử Đối với quy
trình phát hiện tri thức chúng gồm có 5 bước:
Bước 1: Xác định lĩnh vực cần nghiên cứu và dữ liệu liên quan
Bước 2: Tiền xử lý dữ liệu, làm sạch và mã hóa dữ liệu ban đầu
Bước 3: Chuyển đổi dữ liệu (Rút gọn chiều, chọn tác vụ và thuật toán giải khai
thác dữ liệu)
Bước 4: Tiến hành khai phá dữ liệu
Bước 5: Đánh giá dữ liệu vừa khai thác được và đưa vào sử dụng
1.1.3 Bùng n ổ dữ liệu
Bùng nổ dữ liệu cũng là một cụm từ được truyền thông tung hô trong những thời
gian gần đây Bùng nổ dữ liệu là một hệ quả tất yếu khi mà mạng internet ngày càng
có nhiều người truy cập Thực tế đó dẫn tới tình trạng năng lực để phân tích dữ liệu đã
vượt quá khả năng nhận thức của con người Công nghệ phân tích dữ liệu truyền thống
dần “nhường chỗ” cho công nghệ mới như trí tuệ nhân tạo (AI), học máy, phân tích
luồng dữ liệu theo thời gian thực đòi hỏi một khuynh hướng mới về lưu trữ dữ liệu với
khả năng truy cập song song trên quy mô lớn vào dữ liệu với băng thông lớn
Với sự ra đời của các trang mạng xã hội, nhu cầu chia sẻ của con người tăng
trưởng rất lớn Bùng nổ dữ liệu mới xuất hiện gần đây nhưng hệ thống thông tin toàn
cầu đã xuất hiện từ cuối thế kỉ trước, lượng thông tin được tích lũy từ lâu cũng không
hề nhỏ Thế nhưng, lúc đó con người không biết làm gì với chúng Cho đến một ngày,
con người đã nhận thấy được lượng kiến thức khổng lồ trong đó Những kiến thức đó
giúp chúng ta hiểu thêm được về con người và xã hội Việc khai thác nó đem lại được
nguồn lợi ích rất lớn Một số mảng dữ liệu bị bùng nổ: dữ liệu giao dịch, dữ liệu vệ
tinh, dữ liệu gene, kho dữ liệu, dữ liệu giám sát
Trường Đại học Kinh tế Huế
Trang 15Hình 1.2 Hình ảnh minh họa bùng nổ dữ liệu (Nguồn: https://doanhnhansaigon.vn)
1.1.4 Quá trình phát hi ện tri thức
Một vấn đề rất quan trọng để dẫn đến thành công là việc biết sử dụng thông tin
một cách có hiệu quả Điều đó có nghĩa là từ các dữ liệu sẵn có phải tìm ra những
thông tin tiềm ẩn có giá trị mà trước đó chưa được phát hiện, phải tìm ra những xu
hướng phát triển và những yếu tố tác động lên chúng Thực hiện công việc đó chính là
thực hiện quá trình phát hiện tri thức trong cơ sở dữ liệu (Knowledge Discovery in
Database – KDD) mà trong đó kỹ thuật này cho phép ta lấy được các tri thức chính là
khai phá dữ liệu (KPDL)
Hình 1.3 Quá trình phát hiện tri thức (Nguồn: behavior.lbl.gov)
Trường Đại học Kinh tế Huế
Trang 16Quá trình khám phá tri thức là một chuỗi lặp gồm các bước được thực thi với:
Data sources (các nguồn dữ liệu), Data warehouse (kho dữ liệu), Task-relevant
data (dữ liệu cụ thể sẽ được khai phá), Patterns (mẫu kết quả từ khai phá dữ liệu),
Knowledge (tri thức đạt được)
Các giai đoạn Khai phá dữ liệu với các bước cơ bản sau:
Chọn lọc dữ liệu (selection): Đây là giai đoạn tập hợp các dữ liệu được khai thác
từ một CSDL, một kho dữ liệu, thậm chí từ các nguồn ứng dụng web vào một CSDL
riêng Chúng ta chỉ chọn ra những dữ liệu cần thiết cho các giai đoạn sau Tuy nhiên,
công việc thu gom dữ liệu vào một CSDL lớn thường rất khó khăn vì dữ liệu nằm ở
khắp nơi và dạng tạo lập khác nhau
Tiền xử lý dữ liệu (preprocessing): Phần lớn các CSDL đều ít nhiều mang tính
không nhất quán Vì vậy khi gom dữ liệu rất có thể mắc một số lỗi như dữ liệu không
đầy đủ, chặt chẽ và không lôgic (bị trùng lặp, giá trị bị sai lệch, ) Do đó cần phải
được “tiền xử lý” trước khi khai phá dữ liệu nếu không sẽ gây nên những kết quả sai
lệch nghiêm trọng
Chuyển đổi dữ liệu (transformation): Trong giai đoạn này dữ liệu sẽ được chuyển
đổi về dạng thuận tiện để tiến hành các thuật toán khám phá dữ liệu
Khai phá dữ liệu (Data ming): Trong giai đoạn này ta sử dụng các kỹ thuật nhằm
phát hiện ra các tri thức tiềm ẩn trong dữ liệu Một số kỹ thuật được sử dụng đó là:
phân lớp, gom cụm, luật kết hợp
Đánh giá kết quả mẫu: Đây là giai đoạn cuối cùng trong tiến trình phát hiện tri
thức trong cơ sở dữ liệu Trong giai đoạn này, các mẫu dữ liệu được chiết xuất bởi các
phần mềm khai phá dữ liệu Không phải bất cứ mẫu nào cũng đều có ích, thậm chí còn
bị sai lệch Chính vì vậy, cần phải xác định và lựa chọn những tiêu chuẩn đánh giá sao
cho sẽ chiết xuất ra các tri thức cần thiết
1.1.5 Ứng dụng của Khai phá dữ liệu
Trong kinh doanh (business): Áp dụng vào các phần mềm để có thể phân tích sở
thích, khả năng tiêu dùng, thông tin khách hàng
Trường Đại học Kinh tế Huế
Trang 17Trong tài chính (finance) và tiếp thị bán hàng (sales marketing): Giúp chúng ta
nắm được thông tin khách hàng và sắp xếp một cách hợp lí nhất
Trong thương mại (commerce) và ngân hàng (bank): Phân tích và lưu trữ các số
liệu thô, công nợ rõ ràng tránh làm hao tổn nhân lực
Trong bảo hiểm (insurance): Giúp lưu trữ dữ liệu khách hàng với một khối lượng
lớn mà con người không thể kiểm soát được
1.2 Các phương pháp khai phá dữ liệu
1.2.1 Phân l ớp (Classification)
Phân lớp [1] là phương pháp dự báo, cho phép phân loại một đối tượng vào một
hoặc một số lớp cho trước Là một hình thức phân tích dữ liệu phổ biến được dùng để
tạo lập các mô hình mô tả các phân lớp dữ liệu quan trọng Những phân tích như vậy
giúp chúng ta hiểu sâu hơn về dữ liệu ở một tầm mức lớn hơn, bao quát hơn Những
mô hình phân lớp (classification models/classifiers) còn được sử dụng để dự đoán các
nhãn phân lớp cho dữ liệu vào tương ứng
Đặc trưng của mô hình phân lớp là học dựa trên tập dữ liệu mẫu có sẵn Những
dữ liệu thô đầu vào (như: văn bản, hình ảnh, âm thanh, v.v.) được chuyển đổi thành
các vector Số chiều của các vector này tùy thuộc vào từng trường hợp cụ thể Đặc biệt
trong các chiều này, có một chiều chứa nhãn phân lớp có sẵn tương ứng với từng
trường hợp cụ thể
Hình 1.4 Surpervised learning workflow (Nguồn: nosql.mypopescu.com)
Trường Đại học Kinh tế Huế
Trang 18Cho = với = 1, , W là tập tổng thể.
= { , ,, … } là tập dữ liệu cho trước
T là tập nhãn lớp dự đoán với các giá trị mục tiêu
T = ( , , … , ) (1)Gọi J là mô hình phân lớp
f (x) ⟼ với k = 1, (2)Các mô hình này được xây dựng với mục tiêu hướng đến là khả năng dự báo có
độ chính xác cao nhất, hay tin cậy nhất, hoặc nằm trong khoảng chấp nhận được
Chính vì vậy, dựa trên tập dữ liệu đầu vào, người ta rút bớt một phần để làm tập dữ
liệu test hay validate Các mô hình được xây dựng trên phần dữ liệu còn lại và sẽ được
kiểm thử hiệu năng trên tập dữ liệu test/validate
1.2.2 H ồi qui (Regression)
Hồi qui [1] là kỹ thuật thống kê cho phép dự đoán các trị số liên tục Khám phá
chức năng học dự đoán, ánh xạ một mục dữ liệu thành biến dự đoán giá trị thực Mô
hình hồi qui khá thông dụng trong dự báo dài hạn Trong khai phá dữ liệu, bài toán hồi
qui được qui về việc học một hàm ánh xạ dữ liệu nhằm xác định giá trị thực của một
biến theo một biến khác
Phân loại: Hồi qui tuyến tính (linear) và phi tuyến (nonlinear), hồi qui đơn biến
(single) và đa biến (multiple), hồi qui có thông số (parametric), phi thông số
(nonparametric) và thông số kết hợp (semiparametric), hồi qui đối xứng (symmetric)
và bất đối xứng (asymmetric)
1.2.3 Phân c ụm (Clustering)
Phân cụm [1] là quá trình gộp dữ liệu vào các nhóm hay các lớp mà những dữ
liệu được xếp cùng nhóm có độ tương tự nhau cao trong khi chúng sẽ rất khác biệt so
với những dữ liệu được xếp vào nhóm (hay lớp) khác Những khác biệt được đánh giá
Trường Đại học Kinh tế Huế
Trang 19dựa trên các giá trị thuộc tính được dùng để mô tả các đối tượng Thông thường, các
phép tính khoảng cách được sử dụng để thực hiện mục đích này
Một tác vụ mô tả chung trong đó người ta tìm cách xác định một tập hợp hữu hạn
các danh mục hoặc cụm để mô tả dữ liệu Các phương pháp phân cụm phổ biến:
Phương pháp phân mảnh, phương pháp phân tầng (hierarchical methods), phương
pháp dựa trên độ đậm đặc (density-based methods), phương pháp lưới (grid-based
methods), phương pháp dựa vào mô hình (model-based methods), phương pháp đặc
dụng với dữ liệu nhiều chiều, phân cụm dựa vào ràng buộc (constraint-based
clustering)
1.2.4 Khai phá lu ật kết hợp (Association rule)
Khai phá luật kết hợp [1] là tìm ra các mẫu có tần suất cao, các mẫu kết hợp, liên
quan hoặc các cấu trúc tồn tại giữa các tập hợp đối tượng trong cơ sở dữ liệu các giao
dịch, cơ sở dữ liệu quan hệ hoặc các kho chứa thông tin khác Nói cách khác là chúng
ta tìm tất cả các tập phổ biến từ trong dữ liệu Ta có bài toán:
Cho biết = { , , … , } là tập các giao dịch với là số các giao dịch có
trong Tập = { , , … , } là một tập gồm n tập mục khác nhau xuất hiện trong
Mỗi giao dịch là một tập các mục xuất hiện đồng thời Ta có ⊆ Với X và Y là
các tập mục Một luật kết hợp được biểu diễn bời công thức:
= > (3)
Trong đó ⊆ , ⊆ và ∩ = ∅
Một giao dịch thuộc T chứa một tập mục X nếu Y là tập con của
Độ hỗ trợ của X trong T là số giao dịch chứa X trong T (viết tắt là X.count)
Để đo độ mạnh của một luật kết hợp, ta sử dụng hai độ do sau: Độ hỗ trợ và độ
tin cậy
Độ hỗ trợ của một luật = > là tỉ lệ phần trăm (%) các giao dịch trong T mà
chứa cả và Nó giúp xác định mức độ phổ biến của các giao dịch chứa tập mục
( ∪ ) trong tổng số tất cả các giao dịch Công thức tính độ hỗ trợ (support):
Trường Đại học Kinh tế Huế
Trang 20( = > ) = ∪ = ( ∪ ) (4)
Độ tin cậy của luật = > là tỉ lệ % các giao dịch trong chứa cả và trên
tổng số các giao dịch trong chỉ chứa Công thức tính độ tin cậy (confidence):
Những luật kết hợp thỏa mãn điều kiện độ hỗ trợ tối thiểu (min_sup) và độ tin
cậy tối thiểu (min_conf) được gọi là các luật mạnh
Khai phá luật kết hợp là một quá trình 2 bước:
Bước 1: Tìm tất cả các tập mục thường gặp (thường xuyên): theo định nghĩa thì mỗi
itemset được gọi là tập mục thường xuyên nếu độ hỗ trợ của nó lớn hơn hoặc bằng
min_sup
Bước 2: Tạo các luật kết hợp mạnh từ các tập mục thường xuyên: theo định nghĩa thì
những luật kết hợp mạnh phải có độ hỗ trợ và độ tin cậy lớn hơn min_sup và min_conf
tương ứng
Trong khai phá luật kết hợp có một số thuật toán như sau: Thuật toán Apriori và
Thuật toán FP-Growth
Thuật toán Apriori là một tuật toán được giới thiệu lần đầu vào năm 1994 do
R.Agrawal và R.Srikant nhằm khai phá tập mục phổ biển nhị phân Thuật toán này
thực hiện lặp lại việc tìm kiếm theo mức, sử dụng thông tin ở mức để duyệt mức
+ 1 Thuật toán này được tiến hành như sau: Đầu tiên, các tập mục thường xuyên có
độ dài là 1 được xây dựng bằng việc duyệt qua toàn bộ dữ liệu để đếm sự xuất hiện
của từng phần tử và giá trị này phải lớn hơn hoặc bằng min_sup Kết quả của việc đếm
này được ký hiệu làL Tiếp theo, L được sử dụng để tìm kiếm tập mục thường xuyên
L có độ dài là 2 Việc này được thực hiện lặp đi lặp lại đến khi không tìm được tập
mục thường xuyên có độ dài là k thỏa mãn điều kiện min_sup
Trường Đại học Kinh tế Huế
Trang 21Thuật toán FP-Growth được giới thiệu năm 2000 bởi Jiawei Hai Jian Pei và
Yiwen Yin nhằm khắc phục hai nhược điểm của Thuật toán Apriori đó là: Chi phí lớn
cho một số lượng lớn các tập ứng cử Và đòi hỏi lặp lại nhiều lần duyệt CSDL, để
kiểm tra tất cả các tập ứng cử
1.2.5 M ột số phương pháp khác
Tổng hợp (Summarization): Một tác vụ mô tả bổ sung liên quan đến các phương
pháp tìm mô tả nhỏ gọn cho một tập hợp (hoặc tập hợp con) dữ liệu
Mô hình ràng buộc (Dependency modeling): Tìm một mô hình cục bộ mô tả các
phụ thuộc đáng kể giữa các biến hoặc giữa các giá trị của một tính năng trong một tập
dữ liệu hoặc trong một phần của tập dữ liệu
Dò tìm biến đổi và độ lệch (Change and Deviation Dectection): Khám phá
những thay đổi quan trọng nhất trong bộ dữ liệu
1.2.6 L ợi ích trong khai phá dữ liệu.
Cải thiện an toàn sản phẩm và khả năng sử dụng trong lĩnh vực sản xuất Cải
thiện chuyển đổi, tăng sự hài lòng và tạo ra các chiến dịch tiếp thị trong lĩnh vực tiếp
thị Bố trí hàng hóa theo hành vi mua sắm của khách hàng để tối ưu hóa việc mua hàng
trong lĩnh vực bán lẻ Sử dụng dữ liệu để xây dựng các mô hình rủi ro chính xác cho
các doanh nghiệp về việc định giá xe
1.2.7 Nh ững thách thức trong khai phá dữ liệu
Dữ liệu hay các thông tin về khách hàng hay các vấn đề về nhiều lĩnh vực khác
nhau ngày càng tăng lên một cách chóng mặt Vậy nên việc thu thập, xử lí, lưu trữ
chúng ngày càng trở nên khó khăn phức tạp
Để khai phá được dữ liệu việc quan trọng nhất là tìm được cơ sở dữ liệu cần thiết
hay có giá trị cho lĩnh vực nghiên cứu và phải biết cách trích xuất chúng Tuy nhiên,
nhiều người vẫn chưa thành thạo công việc đó dẫn đến sự khó khăn và bất cập trong
quá trình khai phá dữ liệu
Trường Đại học Kinh tế Huế
Trang 221.3 Phát biểu bài toán nghiên cứu
Gọi = { , … , } là tập dữ liệu mô tả thuộc tính xe ô tô Mỗi xe ô tô được mô tả
bởi 6 thuộc tính, hay nói cách khác là vector trong không gian 6 chiều
1.4 Lý thuyết về mô hình Functional Trees
Trong lý thuyết về các hệ thống phức tạp, Functional Trees [2] (cây chức năng)
là một sơ đồ cho thấy sự phụ thuộc giữa các chức năng của một hệ thống Nó phá vỡ
một vấn đề (hoặc giải pháp của nó) thành các phần đơn giản hơn Khi được sử dụng
trong lập trình máy tính, một cây chức năng trực quan hóa hàm nào gọi hàm khác
Việc thiết kế các thuật toán khám phá nhiều ngôn ngữ đại diện và khám phá các
không gian tìm kiếm khác nhau có một sự hấp dẫn trực quan Trong bối cảnh của các
vấn đề phân loại, các thuật toán tạo cây đa biến có thể khám phá nhiều ngôn ngữ biểu
diễn bằng cách sử dụng các kiểm tra quyết định dựa trên sự kết hợp của các thuộc tính
Điều tương tự cũng áp dụng cho các thuật toán cây mô hình trong các miền hồi quy,
nhưng sử dụng các mô hình tuyến tính tại các nút lá Khả năng khái quát hóa của một
thuật toán học tập phụ thuộc vào sự phù hợp của nó ngôn ngữ đại diện để thể hiện khái
quát hóa các ví dụ cho nhiệm vụ nhất định
Các thuật toán học tập khác nhau sử dụng các biểu diễn khác nhau, tìm kiếm
heuristic, đánh giá chức năng và không gian tìm kiếm Hiện nay người ta thường chấp
nhận rằng mỗi thuật toán có một thuật toán riêng Mỗi cái là tốt nhất cho một số nhưng
Trường Đại học Kinh tế Huế
Trang 23không phải tất cả các nhiệm vụ Thiết kế thuật toán khám phá nhiều ngôn ngữ đại diện
và khám phá tìm kiếm khác nhau không gian có một sự hấp dẫn trực quan
Trong bối cảnh các vấn đề học tập có giám sát, rất hữu ích để phân biệt giữa phân
loại vấn đề và vấn đề hồi quy Trước đây, biến mục tiêu lấy các giá trị trong một tập hợp
hữu hạn và được xác định trước của các giá trị không theo thứ tự và mục tiêu thông
thường là giảm thiểu chức năng Sau đó, biến mục tiêu được sắp xếp và nhận các giá trị
trong một tập hợp con của chúng Các mục tiêu thông thường là để giảm thiểu chức
năng mất lỗi bình phương Chủ yếu là do sự khác biệt trong loại kỹ thuật biến mục tiêu
thành công trong một loại vấn đề không trực tiếp áp dụng cho các loại vấn đề khác
Khi một cây chức năng đã được xây dựng, nó có thể được sử dụng để dự đoán
giá trị của thuộc tính đích cho các ví dụ không được phân loại Như thường lệ, ví dụ đi
ngang qua cây từ nút gốc đến một chiếc lá Tại mỗi nút quyết định (nút bên trong) của
cây, tập hợp các thuộc tính của ví dụ được mở rộng bằng hàm constructor được xây
dựng tại nút này Sau khi mở rộng này, kiểm tra quyết định của nút được áp dụng xác
định con đường mà ví dụ sẽ đi theo Khi đạt được một lá, ví dụ được phân loại bằng
hằng số liên kết với lá hoặc hàm xây dựng được xây dựng tại lá này
Khung xây dựng cây chức năng: Các thuật toán được báo cáo trong phần trước
sử dụng các hàm tại các nút bên trong hoặc tại các lá trong cây quyết định Chúng tôi
biểu thị các thuật toán này là cây chức năng Những công trình được định hướng đối
với các thuật toán đơn lẻ, thảo luận về các phương pháp khác nhau để tạo ra cùng một
loại mô hình quyết định Trong phần này, chúng tôi trình bày một khung cho phép
chúng tôi phân tích và thảo luậnvề việc chúng ta nên sử dụng kết hợp các thuộc tính ở
đâu Khung đề xuất áp dụng cho cả hai phân loại và hồi quy vấn đề Nó có thể được
coi là một phần mở rộng cho đa biến và cây mô hình
Trường Đại học Kinh tế Huế
Trang 24Hình 1.5 Mơ hình Functional Trees của mỳ Ý (Nguồn: www.revolvy.com)
Những đĩng gĩp cĩ liên quan nhất của cơng việc này là: Một khung thống nhất
cho các cây chức năng phân loại và hồi qui khác nhau Một nghiên cứu chuyên sâu về
hành vi của cây chức năng Kết quả thí nghiệm cho thấy sử dụng lá chức năng là một
phương pháp giảm phương sai, trong khi sử dụng chức năng bên trong các nút là một
quá trình giảm sai lệch Các thuật tốn mới để phân loại và hồi quy các vấn đề Theo
hiểu biết của tơi, đây là cơng việc đầu tiên đề xuất sử dụng đồng thời các nút chức
năng và các lá chức năng trong các vấn đề dự đốn Nghiên cứu thực nghiệm cho thấy
các mơ hình đa biến sử dụng các hàm tuyến tính cả tại nút quyết định và lá thể hiện
một số lợi thế, chủ yếu là trong các bộ dữ liệu lớn
1.5 Lý thuyết về các mơ hình phân lớp cơ sở
1.5.1 Mơ hình Nạve Bayes:
Phân lớp Nạve Bayes [1] được dựa trên định lý Bayes của tác giả Thomas
Bayes, là một giải thuật phân lớp thống kê, nĩ cĩ thể dự đốn xác suất của một phần tử
dữ liệu thuộc một lớp
Lý thuyết Nạve Bayes được trình bày ngắn gọn như sau:
+ Cho X là một bộ dữ liệu được đo trên n thuộc tính khác nhau (một chứng cứ)
Trường Đại học Kinh tế Huế
Trang 25+ Cho H là một giả thuyết để X thuộc về một lớp Z nào đĩ.
+ Đối với bài tốn phân lớp, chúng ta muốn xác định ( ⁄ ) - là xác suất xảy
ra của giả thuyết H khi X đã xảy ra, ( ⁄ là một xác suất hậu nghiệm.)
+ Ví dụ: Bộ dữ liệu X được sử dụng để mơ tả về khách hàng trên 2 thuộc tính là
tuổi tác và thu nhập, H là giả thuyết khách hàng sẽ mua máy vi tính Lúc đĩ thì
( ⁄ ) biểu đạt xác suất khách hàng X sẽ mua máy tính khi đã biết tuổi tác và thu
nhập của khách hàng Ngược lại là xác suất tiền nghiệm Các xác suất này sẽ
được tính dựa vào định lý Bayes như sau:
( ) = ( ⁄( )) ( ) (7)Nguyên tắc hoạt động của bộ phân lớp Nạve Bayes như sau:
+ Cho D là tập dữ liệu huấn luyện cùng với các nhãn lớp tương ứng Như thường
lệ, mỗi bộ dữ liệu được mơ tả bởi n thuộc tính và được biểu diễn dưới dạng vector n
chiều = ( , , … , )
+ Giả sử cĩ m nhãn lớp khác nhau , ,…, Cho một bộ dữ liệu X, bộ phân
lớp sẽ gán nhãn cho X là lớp cĩ xác suất hậu nghiệm lớn nhất Cụ thể, X sẽ được dự
đốn thuộc vào lớp nếu và chỉ nếu:
( ⁄ > ( ⁄ ) với 1 ≤ ≤ , ≠) (8)Giá trị này sẽ được tính dựa vào định lý Bayes:
⁄ = ( ⁄ ( )) ( ) (9)+ Vì P(X) khơng đổi với mọi lớp nên ta khơng cần tính, ta chỉ cần tìm giá trị lớn
nhất của ( ⁄ ) × ( )
1.5.2 Mơ hình Cây quy ết định
Cây quyết định [1] là một cấu trúc luồng dạng cây, với mỗi nút trung gian (khơng
phải nút lá) đại diện cho một phép thử trên một thuộc tính Mỗi nhánh đại diện cho
một đầu ra (kết quả) của phép thử Mỗi nút là (nút cuối cùng) đại diện cho một nhãn
lớp Nút trên cùng của cây được gọi là nút gốc Một đường đi từ nút gốc đến một nút lá
Trường Đại học Kinh tế Huế
Trang 26biểu đạt dự đoán phân lớp cho một bộ dữ liệu tương ứng Cây quyết định có thể dễ
dàng chuyển đổi thành các phân lớp Do có tính năng đơn giản nên cây quyết định
được sử dụng rộng rãi và khá phổ biến:
- Khi cây dựng cây quyết định không đòi hỏi cần phải có kiến thức chuyên ngành
nên rất phù hợp với việc khám phá tri thức
- Cây quyết định có thể quản lý dữ liệu có số chiều lớn
- Dễ dàng biểu đạt tri thức dưới dạng cây
- Quá trình học và phân lớp của cây quyết định được thực hiện nhanh chóng
- Nhìn chung, cây quyết định có độ chính xác cao nhưng còn tùy thuộc vào dữ
liệu đầu vào của chúng ta
1.5.3 Mô hình K – NN
Phương pháp K – NN [1] hoạt động dựa trên các phân tử lân cận nằm trong tập
dữ diệu huấn luyện Nó sẽ tìm các phần tử K lân cận của nó để quyết định nó thuộc
vào nhãn của các dữ liệu thuộc phân lớp nào Trong trường hợp chỉ cần tìm một phần
tử gần nhất rồi gán nhãn nó cho phần tử bên cạnh Để có thể tìm được láng giềng gần
nhất là độ đo khoảng cách Euclide
X dist
1
2 2
( )
2 , 1
Trường hợp các thuộc tính có miền giá trị khác nhau thì độ đo sẽ không chính
xác, lúc này cần một độ chênh lệch nhỏ hơn thì có thể chuẩn hóa dữ liệu để nó có thể
nằm trong khoảng được gọi là gần [0,1]:
A A
A
v v
minmax
Từ các tiêu thức đó chúng ta có thể đưa ra được dự đoán về tập dữ liệu đó dựa
vào láng giềng của nó
Trường Đại học Kinh tế Huế