1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Báo cáo bài tập lớn môn khai phá dữ liệu đề tài phân loại giá kim cương

20 9 0

Đ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

Tiêu đề Phân loại giá kim cương
Tác giả Lê Thị Xuân Rin, Lê Quốc Anh
Người hướng dẫn Cô Vũ Thị Kim Hạnh
Trường học Phân Hiệu Đại Học Thủy Lợi
Chuyên ngành Công Nghệ Thông Tin
Thể loại Báo cáo
Định dạng
Số trang 20
Dung lượng 753,1 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Khái niệm Khai phá dữ liệu data mining hay Khám phá tri th泳c từ dữ liệu knowledge discovery from data là việc trích rút ra đ逢ợc các mẫu hoặc tri th泳c quan trọng không tầm th逢運ng, ẩn, ch逢

Trang 1

Phân Hiệu Đại Học Thủy Lợi

Ngành Công Nghệ Thông Tin

BÁO CÁO BÀI TẬP LỚN Môn: Khai Phá Dữ Liệu

Đề tài: Phân loại Giá Kim Cương

Giảng viên hướng dẫn : Cô Vũ Thị Kim Hạnh Lớp : S23_62TH

Nhóm : Lê Thị Xuân Rin

  Lê Quốc Anh

 

Trang 2

Mục Lục:

Mục lục

Giới thiệu

Chương 1: Tổng quang về Khai Phá Dữ liệu……… 2 I.Khai phá dữ liệu

1.Khái niệm ……… 2

2.Các bước trong quá trình khai phá ……….2

3 Ứng dụng của khai phá dữ liệu ………

II: Tiền xử lý dữ liệu

2.Làm sạch dữ liệu (data cleaning)……… 2

3.Tích hợp dữ liệu (data integration)………… 2

4.Thu giảm dữ liệu (data reduction) ……… 2

III: Phương pháp phân loại

1 Giới thiệu phân loại ……… 2

2 Phân loại dữ liệu với Cây Quyết Định……… 2

3 Phân loại dữ liệu với Gaussian Naive

Bayes………-4 Phân loại dữ liệu với mạng Random Forest

III Ứng dụng của Khai Phá Dữ Liệu

1 Phân loại Giá Kim Cương ……… 2

Trang 3

Giới thiệu

Giúp SV làm quen với việc dùng class Thread của namespace System.Threadings

để quản lý thread

Giúp SV thấy được vấn ₫ề tương tranh giữa các thread khi chúng cùng truy xuất tài nguyên dùng chung

Trang 4

Chương 1: Tổng quang về Khai Phá Dữ liệu

1 Khái niệm

Khai phá dữ liệu (data mining) hay Khám phá tri th泳c từ dữ liệu (knowledge discovery from data) là việc trích rút ra đ逢ợc các mẫu hoặc tri th泳c quan trọng (không tầm th逢運ng, ẩn, ch逢a đ逢ợc biết đến và có thể hữu ích) thừ một l逢

ợng dữ

liệu (rất) lớn

 Các tên gọi khác:

- Khám phá tri th泳c trong các cơ s荏  dữ liệu (Knowledge discovery in

databases KDD)

- Trích rút tri th泳c (knowledge extraction)

- Phân tích mẫu/dữ liệu (data/pattern analysis)

2 Các bước trong quá trình khai phá

Quá trình đ 逢  ợc thực hiện qua 9 b逢  ớc:

1- Tìm hiểu lĩnh vực c栄a bài toán (泳ng dụng): Các mục đích c栄a bài toán, các tri th泳c cụ thể c栄a lĩnh vực

 2- Tạo nên (thu thập) một tập dữ liệu phù hợp

 3- Làm sạch và tiền xử lý dữ liệu

 4- Giảm kích th泳c c栄a dữ liệu, chuyển đổi dữ liệu: Xác định thuộc tính quan trọng, giảm số chiều (số thuộc tính), biểu diễn bất biến

 5- Lựa chọn ch泳c năng khai phá dữ liệu: Phân loại, gom cụm, dự báo, sinh

ra các luật kết hợp

 6- Lựa chọn/ Phát triển (các) giải thuật khai phá dữ liệu phù hợp

5

Trang 5

 7- Tiến hành khai phá dữ liệu.

 8- Đánh giá mẫu thu đ逢ợc và biểu diễn tri th泳c: Hiển thị hóa, chuyển đổi, bỏ

đi các mẫu d逢  thừa,…

 9- Sữ dụng tri th泳c đ逢ợc khai phá

Quá trình khám phá tri th泳c theo cách nhìn c栄a giới nghiên c泳u về các hệ thống dữ liệu và kho dữ liệu về quá trình khám phá tri th泳c

Quá trình khai phá tri thứ c

Chuẩn bị dữ liệu (data preparation), bao gồm các quá trình làm sạch dữ liệu (data cleaning), tích hợp dữ liệu (data integration), chọn dữ liệu (data selection),  biến đổi dữ liệu (data transformation)

Khai thác dữ liệu (data mining): xác định nhiệm vụ khai thác dữ liệu và lựa

Trang 6

chọn kỹ thuật khai thác dữ liệu Kết quả cho ta một nguồn tri th泳c thô.

Đánh giá (evaluation): dựa trên một số tiêu chí tiến hành kiểm tra và lọc

nguồn tri th泳c thu đ逢ợc

Triển khai (deployment).6

Quá trình khai thác tri th泳c không chỉ là một quá trình tuần tự từ b逢ớc đầu tiên đến b逢ớc cuối cùng mà là một quá trình lặp và có quay tr 荏 lại các b逢ớc

đư qua

3.永ng dụng c栄a khai phá dữ liệu

Kinh tế -泳ng dụng trong kinh doanh, tài chính, tiếp thị bán hàng, bảo hiểm,

th逢ơng mại, ngân hàng, … Đ逢a ra các bản báo cáo giàu thông tin; phân tích r 

栄i ro

tr 逢ớc khi đ逢a ra các chiến l逢ợc kinh doanh, sản xuất; phân loại khách hàng

từ đó

 phân định thị tr 逢運ng, thị phần; …

Khoa học: Thiên văn học – dự đoán đ逢運ng đi các thiên thể, hành tinh, …; Công nghệ sinh học – tìm ra các gen mới, cây con giống mới, …; …

Web: các công cụ tìm kiếm

II Tiền xử lý dữ liệu

 Quá trình tiền xử lý dữ liệu, đầu tiên phải nắm đ逢ợc dạng dữ liệu, thuộc tính,

mô tả c栄a dữ liệu thao tác Sau đó tiếp hành 4 giai đoạn chính: làm sạch, tích hợp,

Trang 7

 biến đổi, thu giảm dữ liệu.

1 Dữ liệu

a) Tập dữ liệu

- Một tập dữ liệu (dataset) là một tập hợp các đối t逢ợng (object) và các thuộc tính c栄a chúng

- Mỗi thuộc tính (attribute) mô tả một đặc điểm c栄a một đối t逢ợng

Ví dụ: Các thuộc tính : Day, Outlook, Temp, …

b) Các kiểu tập dữ liệu

- Bản ghi (record): Các bản ghi trong c荏  s荏  dữ liệu quan hệ Ma trận dữ liệu Biểu diễn văn bản Hay dữ liệu giao dịch.„

- Đồ thị (graph): World wide web Mạng thông tin, hoặc mạng xã hội

- Dữ liệu có trật tự: Dữ liệu không gian (ví dụ: bản đồ) Dữ liệu th運i gian (ví dụ: time-series data) Dữ liệu chuỗi (ví dụ: chuỗi giao dịch)

Trang 8

c) Các kiểu giá trị thuộc tính:

- Kiểu định danh/chuỗi (norminal): không có th泳  tự Ví dụ: Các thuộc tính

nh逢  : Name, Profession, …

 - Kiểu nhị phân (binary): là một tr 逢運ng hợp đăc biệt c栄a kiểu định danh Tập các giá trị chỉ gồm có 2 giá trị (Y/N, 0/1, T/F)

- Kiểu có th泳  tự (ordinal): Integer, Real, … -lấy giá trị từ một tập có th泳  tự giá trị Ví dụ: Các thuộc tính lấy giá trị số nh逢  : Age, Height ,… Hay lấy một tập xác định, thuộc tính Income lấy giá trị từ tập {low, medium, high}

Kiểu thuộc tính r 運i rạc (discrete-valued attributes): có thể là tập các giá trị

c栄a một tập hữu hạn Bao gồm thuộc tính có kiểu giá trị là các số nguyên, nhị  phân

Kiểu thuộc tính liên tục (continuous-valued attributes):Các giá trị làsố thực

d) Các đặc tính mô tả c栄a dữ liệu:

 - Giúp hiểu rõ về dữ liệu có đ逢ợc: chiều h逢ớng chính/trung tâm, sự biến thiên, sự phân bố

- Sự phân bố c栄a dữ liệu (data dispersion):

+ Giá trị cực tiểu/cực đại (min/max)

+ Giá trị xuất hiện nhiều nhất (mode)

+ Giá trị trung bình (mean)

+ Giá trị trung vị (median)

+ Sự biến thiên (variance) và độ lệch chuẩn (standard deviation)

+ Các ngoại lai (outliers)

Trang 9

2 Làm sạch dữ liệu (data cleaning)

Đối với dữ liệu thu thập đ逢ợc, cần xác định các vấn đề ảnh h逢荏ng là cho nó không sạch B荏i vì, dữ liệu không sạch (có ch泳a lỗi, nhiễu, không đầy đ栄, có mâu

thuẫn) thì các tri th泳c khám phá đ逢ợc sẽ bị ảnh h逢荏ng và không đáng tin cậy, sẽ

dẫn đến các quyết định không chính xác Do đó, cần gán các giá trị thuộc tính còn thiếu; sửa chữa các dữ liệu nhiễu/lỗi; xác định hoặc loại bỏ các ngoại lai (outliers); giải quyết các mâu thuẫn dữ liệu

 a) Các vấn đề c栄a dữ liệu

Trên thực thế dữ liệu thu có thể ch泳a nhiễu, lỗi, không hoàn chỉnh, có mâu thuẫn

 - Không hoàn chỉnh (incomplete): Thiếu các giá trị thuộc tính hoặc thiếu một

số thuộc tính Ví dụ: salary = <undefined>

- Nhiễu/lỗi (noise/error): Ch泳a đựng những lỗi hoặc các mang các giá trị bất

th逢運ng Ví dụ: salary = “-525” , giá trị c栄a thuộc tính không thể là một số âm

 - Mâu thuẫn (inconsistent): Ch泳a đựng các mâu thuẫn (không thống nhất)

Ví dụ: salary = “abc” , không phù hợp với kiểu dữ liệu số c栄a thuộc tính salary

b) Nguồn gốc/lý do c栄a dữ liệu không sạch

 - Không hoàn chỉnh (incomplete): Do giá trị thuộc tính không có (not

available) tại th運i điểm đ逢ợc thu thập Hoặc các vấn gây ra b荏i phần c泳ng,  phần

mềm, hoặc ng逢運i thu thập dữ liệu

- Nhiễu/lỗi (noise/error): Do việc thu thập dữ liệu, hoăc việc nhập dữ liệu,

hoặc việc truyền dữ liệu

Trang 10

 - Mâu thuẫn (inconsistent): Do dữ liệu đ逢ợc thu thập có nguồn gốc khác

nhau Hoặc vi phạm các ràng buộc (điều kiện) đối với các thuộc tính

c) Giải pháp khi thiếu giá trị c栄a thuộc tính

- Bỏ qua các bản ghi có các thuộc tính thiếu giá trị Th逢運ng áp dụng trong các bài toán phân lớp Hoặc khi tỷ lệ % các giá trị thiếu đối với các thuộc tính quá lớn

9

- Một số ng逢運i sẽ đảm nhiệm việc kiểm tra và gán các giá trị thuộc tính còn thiếu, nh逢ng đòi hỏi chi phí cao và rất tẻ nhạt

 - Gán giá trị tự động b荏i máy tính:

+ Gán giá trị mặc định

 + Gán giá trị trung bình c栄a thuộc tính đó

 + Gán giá trị có thể xảy ra nhất – dựa theo ph逢ơng pháp xác suất

 d) Giải pháp khi dữ liệu ch泳a nhiễu/lỗi

- Phân khoảng (binning): Sắp xếp dữ liệu và phân chia thành các khoảng

(bins) có tần số xuất hiện giá trị nh逢  nhau Sau đó, mỗi khoảng dữ liệu có thể đ

 biểu diễn bằng trung bình, trung vị, hoặc các giới hạn … c栄a các giá trị trong khoảng đó

 - Hồi quy (regression): Gắn dữ liệu với một hàm hồi quy

- Phân cụm (clustering): Phát hiện và loại bỏ các ngoại lai (sau khi đư xác

định các cụm)

- Kết hợp giữa máy tính và kiểm tra c栄a con ng逢運i: Máy tính sẽ tự động phát

Trang 11

hiện ra các giá trị nghi ng運 Các giá trị này sẽ đ逢ợc con ng逢運i kiểm tra lại.

Trang 12

3 Tích hợp dữ liệu (data integration)

Tích hợp dữ liệu là quá trình trộn dữ liệu từ các nguồn khác nhau vào một

kho dữ liệu có sẵn cho quá trình khai phá dữ liệu

 Khi tích hợp cần xác định thực thể từ nhiều nguồn dữ liệu để tránh d逢  thừa

dữ liệu Ví dụ: Bill Clinton ≡ B.Clinton

Việc d逢  thừa dữ liệu là th逢運ng xuyên xảy ra, khi tích hợp nhiều nguồn B荏i cùng một thuộc tính (hay cùng một đối t逢ợng) có thể mang các tên khác nhau trong

các nguồn (cơ s荏  dữ liệu) khác nhau Hay các dữ liệu suy ra đ逢ợc nh逢  một thuộc

tính trong một bảng có thể đ逢ợc suy ra từ các thuộc tính trong bảng khác Hay sự trùng lắp các dữ liệu Các thuộc tính d逢  thừa có thể bị phát hiện bằng phân tích

t逢ơng quan giữa chúng

10

 Phát hiện và xử lý các mâu thuẫn đối với giá trị dữ liệu: Đối với cùng một

thực thể trên thực tế, nh逢ng các giá trị thuộc tính từ nhiều nguồn khác nhau lại khác nhau Có thể cách biểu diễn khác nhau, hay m泳c đánh giá, độ do khác nhau  Yêu cầu chung đối với quá trình tích hợp là giảm thiểu (tránh đ逢ợc là tốt

nhất) các d逢  thừa và các mâu thuẫn Giúp cải thiện tốc độ c栄a quá trình khai  phá

dữ liệu và nâng cao chất l逢ợng c栄a các kết quả tri th泳c thu đ逢ợc

Trang 13

4 Biến đổi dữ liệu (data transformation)

Biến đổi dữ liệu là việc chuyển toàn bộ tập giá trị c栄a một thuộc tính sang một tập các giá trị thay thế, sao cho mỗi giá trị cũ t逢ơng泳ng với một trong các giá

trị mới

Các ph逢ơng pháp biến đổi dữ liệu:

 - Làm trơn (smoothing): Loại bỏ nhiễu/lỗi khỏi dữ liệu

 - Kết hợp (aggregation): Sự tóm tắt dữ liệu, xây dựng các khối dữ liệu

 - Khái quát hóa (generalization): Xây dựng các phân cấp khái niệm

 - Chuẩn hóa (normalization): Đ逢a các giá trị về một khoảng đ逢ợc chỉ định  + Chuẩn hóa min-max, giá trị mới nằm khoảng [new_mini

 , new_maxi]

+ Chuẩn hóa z-score, với μi , σi : giá trị trung bình và độ lệch chuẩn c栄a

thuộc tính i

+ Chuẩn hóa b荏i thang chia 10, với j là giá trị số nguyên nhỏ nhất sao cho: max({vnew}) <1

- Xây dựng các thuộc tính mới dựa trên các thuộc tính ban đầu

Trang 14

5 Thu giảm dữ liệu (data reduction)

Một kho dữ liệu lớn có thể ch泳a l逢ợng dữ liệu lên đến terabytes sẽ làm cho quá trình khai phá dữ liệu chạy rất mất th運i gian, do đó nên thu giảm dữ liệu Việc thu giảm dữ liệu sẽ thu đ逢ợc một biểu diễn thu gọn, mà nó vẫn sinh ra cùng (hoặc xấp xỉ) các kết quả khai phá nh逢 tập dữ liệu ban đầu

Các chiến l逢ợc thu giảm:

- Giảm số chiều (dimensionality reduction), loại bỏ bớt các thuộc tính

không (ít) quan trọng

- Giảm l逢ợng dữ liệu (data/numberosity reduction)

+ Kết hợp khối dữ liệu

+ Nén dữ liệu

+ Hồi quy

+ R 運i rạc hóa

1 Giới thiệu Phân loại

Phân loại dữ liệu là dạng phân tích dữ liệu nhằm rút trích các mô hình mô tả các lớp dữ liệu hoặc dự đoán xu h逢ớng dữ liệu

Quá trình gồm hai b逢ớc:

Trang 15

- B逢ớc học (giai đoạn huấn luyện): xây dựng bộ phân loại (classifier) bằng việc phân tích/học tập huấn luyện

- B逢ớc phân loại (classification): phân loại dữ liệu/đối t逢ợng mới nếu độ chính xác c栄a bộ phân loại đ逢ợc đánh giá là có thể chấp nhận đ逢ợc

(acceptable)

Trong bài Dự đoán giá Kim Cương này sẽ chỉ dùng 3 thuật toán

- Phân loại dữ liệu với cây quyết định (decision tree)

- Phân loại dữ liệu với Gaussian Naive Bayes

 Phân loại dữ liệu với Random Forest

2.Phân loại dữ liệu với cây quyết định (decision tree). 

Cây quyết định (Decision Tree) là một cây phân cấp có cấu trúc được dùng để  phân lớp các đối tượng dựa vào dãy các luật (series of rules) Khi cho dữ liệu về các đối tượng gồm các thuộc tính cùng với lớp (classes) của nó, cây quyết định sẽ sinh ra các luật để dự đoán lớp của các đối tượng chưa biết (unseen data)

Cấu trúc

- Node nội: ch泳a giá trị trên một thuộc tính để cho quá trình thực hiện phép kiểm thử

- Node lá: ch泳a nhãn (label) hoặc mô tả c栄a một lớp (class label)

- Nhánh từ một node nội: kết quả c栄a một phép thử trên thuộc tính t逢ơng

Trang 16

Ví dụ về Cây Quyết Định

Điều kiện dừng phân vùng:

Tất cả các mẫu cho một nút nhất định thuộc cùng một lớp

 

Không còn thuộc tính nào để phân vùng thêm

 

Không còn mẫu nào

 

Vấn đề: lựa chọn thuộc tính tốt nhất cho các nút gốc và nút con Có 2 kỹ thuật phổ  biến cho việc lựa chọn thuộc tính (Attribute Selection Measure – ASM):

Trang 17

Information Gain

Gini Index

1) Information Gain (IG) là phép đo nhữngthay đổi trong Entropy sau khi phân loại tập dữ liệu dựa trên một thuộc tính.

- IG tính toán lượng thông tin mà một tính năng cung cấp cho chúng ta về một lớp

- Dựa vào giá trị thu được của ID, phân chia nút và xây dựng cây quyết định

- Thuật toán cây quyết định luôn cố gắng tối đa hóa giá trị của Information Gain

và một nút / thuộc tính có mức tăng thông tin (IG) cao nhất được tách ra trước

- Chọn thuộc tính có mức thông tin cao

- Gọi pi là xác suất để một bộ tùy ý trong D thuộc lớp Ci, được ước tính bởi |Ci, D|/|D|

- Thông tin mong đợi (entropy) cần thiết để phân loại 1 bộ trong D:

Trang 18

- Thông tin cần thiết (sau khi sử dụng A để chia D thành v phân vùng) để phân loại D:

Thông tin thu được (Information Gain) bằng cách phân nhánh trên thuộc tính A:

 Gini Index (CART, IBM IntelligentMiner)

Chỉ số Gini là thước đo tạp chất hoặc độ tinh khiết được sử dụng trong khi tạo cây quyết định trong thuật toán CART (Cây phân loại và hồi quy)

 Nó chỉ tạo ra các phân tách nhị phân và thuật toán CART sử dụng chỉ số Gini để tạo phân tách nhị phân

Tương tự infomation gain: được dùng để đánh giá xem việc phân chia vùng ở node diều kiện có tốt hay không?

Để tính được gini index, phải tính chỉ số gini ở từng node

Trang 19

  Trong đó, m là số lớp cần phân loại, pi=ni/N, ni là số lượng phần tử ở lớp i  Nếu tập dữ liệu D chia thuộc tính A thành 2 tập con D1 và d2, thì chỉ số gini được định nghĩa như sau:

 Thuộc tính chứa ginisplit(D) nhỏ nhất sẽ được chọn để tách nút (cần liệt kê các điểm phân tách có thể có cho mỗi thuộc tính)

Ưu điểm & Nhược điểm của thuật toán Decision

Ưu điểm:

  Cây quyết định là một thuật toán đơn giản và phổ biến Thuật toán này đượcsử dụng rộng rãi bới những lợi ích của nó:

Mô hình sinh ra các quy tắc dễ hiểu cho người đọc, tạo ra bộ luật với mỗi nhánh lá là một luật của cây

Dữ liệu đầu vào có thể là là dữ liệu missing, không cần chuẩn hóa hoặc tạo  biến giả

Có thể làm việc với cả dữ liệu số và dữ liệu phân loại

Có thể xác thực mô hình bằng cách sử dụng các kiểm tra thống kê

Có khả năng là việc với dữ liệu lớn

Nhược điểm:

Trang 20

Mô hình cây quyết định phụ thuộc rất lớn vào dữ liệu của bạn Thậm chí, với một sự thay đổi nhỏ trong bộ dữ liệu, cấu trúc mô hình cây quyết định có thể thay đổi hoàn toàn

Cây quyết định hay gặp vấn đề overfitting: Một cây có thể trang bị quá nhiều

dữ liệu huấn luyện

Quá nhiều nhánh, một số có thể phản ánh sự bất thường do nhiễu hoặc ngoại lệ

Độ chính xác kém đối với các mẫu mới chưa phân loại

 

Ngày đăng: 30/10/2023, 16:00

🧩 Sản phẩm bạn có thể quan tâm

w