Download as pdf or txt
Download as pdf or txt
You are on page 1of 295

Chương 1

Tổng quan
TS. Thái Kim Phụng
Khoa CNTT kinh doanh – ĐH Kinh tế TPHCM
phungthk@ueh.edu.vn

2023
Mục tiêu
 Hiểu thời đại thông tin, chuyển đổi số

 Hiểu một số khái niệm liên quan đến dữ liệu

 Hiểu vai trò của khoa học dữ liệu

 Biết một số ngành, lãnh vực liên quan đến khoa học dữ liệu

2
Chương 1. Tổng quan
Nội dung
1. Thời đại thông tin

2. Khoa học dữ liệu

3. Ứng dụng KHDL trong kinh doanh

3
Chương 1. Tổng quan
1. Thời đại thông tin
 Thời đại thông tin (Information Age), thời đại số (Digital Age)

[https://medium.com/]

4
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Thế giới số (Digital World), xã hội số (Digital Society)

● những tiện nghi trong sinh hoạt

● các mặt hoạt động của xã hội

5
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Thế giới số (Digital World), xã hội số (Digital Society)

6
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Số hóa các đối tượng (digitization): công nghệ

● biểu diễn các đối tượng

● tổ chức lưu trữ, xử lý (chia sẻ, phân tích, …)

7
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Số hóa tổ chức (digitalization): quy trình hoạt động

● cải tiến các quy trình

● khai thác công nghệ số

● nhanh hơn  tốt hơn  thông minh hơn

8
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Chuyển đổi số (digital transformation)

● thay đổi toàn diện: văn hóa, tư duy, mô hình

9
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Bùng nổ thông tin, quá tải thông tin (information overload)
[Vercellis]

● sự phát triển, đột phá của công nghệ, CNTT

● sự toàn cầu hóa

10
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Bùng nổ thông tin, quá tải thông tin (information overload)

● thông tin nội tại: các mặt hoạt động

● thông tin “ngoại lai”: môi trường, ngữ cảnh

 lợi thế cạnh tranh cho doanh nghiệp

11
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Bùng nổ thông tin, quá tải thông tin

“We are drowning in data, but we are staved for knowledge.”


[Naisbitt John, 1982]

“We’re drowning in information and starving for knowledge.”


[Rutherford D. Rogers, 1985]

“Data Flood”

12
Chương 1. Tổng quan
1. Thời đại thông tin (tt.)
 Các khái niệm

● dữ liệu (data)

● thông tin (information)

● tri thức (knowledge)

13
Chương 1. Tổng quan
Nội dung
1. Thời đại thông tin

2. Khoa học dữ liệu

3. Ứng dụng KHDL trong kinh doanh

14
Chương 1. Tổng quan
2. Khoa học dữ liệu

15
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khoa học dữ liệu (Data Science)

● thu thập
 kiểu dữ liệu và cấu trúc dữ liệu
● tổ chức
 quy trình xử lý (process)
● lưu trữ
 chọn lựa mô hình (model selection)
● xử lý
 phương pháp (method)
● khai thác

16
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khoa học dữ liệu (Data Science): analytics

[Gartner]

17
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khoa học dữ liệu (Data Science): analytics

[WAMDM, Web Group]

18
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khoa học dữ liệu (Data Science): bối cảnh KH, công nghệ

19
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khoa học dữ liệu (Data Science): bối cảnh KH, công nghệ

20
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Dữ liệu lớn (Big Data)

● thu thập từ nhiều nguồn

● thu thập theo nhiều cách thức, phương pháp

● thu thập bằng nhiều phương tiện, công cụ

[https://blogs.oracle.com/
03/2016]
21
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Dữ liệu lớn (Big Data)

● volume: dung lượng

● variety: sự đa dạng

● velocity: tốc độ phát sinh

● veracity: tính xác thực

[https://www.researchgate.net/]
22
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Điện toán đám mây (Cloud Computing)

● khai thác tài nguyên trên môi trường Internet

23
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Điện toán đám mây (Cloud Computing)

● Software as a Service

● Platform as a Service

● Infrastructure as a Service

https://oracle-help.com/oracle-cloud/
24
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Kết nối vạn vật (Internet of Things – IoT)

● trao đổi thông tin

25
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Công nghệ Blockchain

● sổ cái (ledger) phi tập trung, ghi nhận các giao dịch trên mạng
ngang hàng (peer-2-peer – P2P)

● đồng thuận (consensus)

● chỉ được thêm, không cập nhật

26
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Công nghệ Blockchain

[https://www.treasurers.org]

27
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Thông minh nhân tạo, trí tuệ nhân tạo (Artificial Intelligence - AI)

● chế tạo máy tính, các chương trình máy tính thông minh
[McCarthy, 1956]

● chế tạo máy tính có trí tuệ, có khả năng suy nghĩ giống như
con người [Haugeland, 1985]

● nghiên cứu các mô hình máy tính có thể nhận thức, suy luận
và hành động [Winston, 1992]

● nghiên cứu các hành vi thông minh mô phỏng vật thể nhân tạo
[Nilsson, 1998]

● ...

28
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): lịch sử phát triển

[https://digitalwellbeing.org]

29
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): khoa học liên ngành

30
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): khả năng máy tính
thông minh như con người

● bắt chước con người


dựa trên dữ liệu
● tăng cường trí thông minh

31
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Sự thông minh: phân loại [Gardner]

32
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Sự thông minh: yếu tố

● learning

● reasoning

● perception

● problem solving

● linguistic intelligence

33
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): learning

● auditory learning: qua nghe

● episodic learning: qua (ghi nhớ) chuỗi các sự kiện

● motor learning: qua vận động (viết, mang vác, …)

● observational learning: qua quan sát và bắt chước

● perceptual learning: qua mô phỏng những gì đã biết trước

● relational learning: dựa trên mối tương quan (khác biệt)

● spatial learning: qua mô phỏng không gian (visual)

● stimulus-response learning: theo kịch bản

34
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): reasoning

● inductive: từ những quan sát cụ thể suy ra phát biểu tổng quát

● deductive: áp dụng phát biểu tổng quát cho quan sát cụ thể

35
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): perception

● dựa trên cảm giác

● thông tin từ các giác quan

● thu nhận, diễn dịch, chọn lựa và tổ chức thông tin

36
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): problem solving

● nhận định, phân tích, đánh giá

● chọn lựa giải pháp, ra quyết định

37
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Trí tuệ nhân tạo (Artificial Intelligence – AI): linguistic intelligence

● khả năng sử dụng ngôn ngữ

● khả năng giao tiếp

38
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Ứng dụng AI

● quản lý kinh tế, kinh doanh, tài chính

● giáo dục

● y tế, chăm sóc sức khỏe

● tiện nghi

● an ninh, quốc phòng

● ...

 bài tập (theo nhóm)

39
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Học máy (Machine Learning)

● máy tính có khả năng “học tập” giống như con người

40
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Học máy (Machine Learning)  Chương 4 và 5

41
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Học máy (Machine Learning)  Chương 4 và 5

42
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khai phá dữ liệu (Data Mining, Knowledge Discovery in
Databases – KDD)

● khám phá những quy luật, những tri thức từ kho dữ liệu

43
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khai phá dữ liệu (Data Mining, KDD)

● khám phá những quy luật, tri thức từ kho dữ liệu

44
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khai phá dữ liệu (Data Mining, KDD): quy trình khai thác

[Imberman+]

45
Chương 1. Tổng quan
2. Khoa học dữ liệu (tt.)
 Khai phá dữ liệu (Data Mining, KDD): quy trình (tiền) xử lý

[Alonso-Betanzos+]

46
Chương 1. Tổng quan
Nội dung
1. Thời đại thông tin

2. Khoa học dữ liệu

3. Ứng dụng KHDL trong kinh doanh

47
Chương 1. Tổng quan
3. Ứng dụng KHDL trong kinh doanh
 Bài toán kinh doanh

● thị trường, bán hàng, khách hàng

● nguồn lực: nhân lực, tài lực, vật lực

● vận hành doanh nghiệp

48
Chương 1. Tổng quan
3. Ứng dụng KHDL trong kinh doanh (tt.)
 Ứng dụng khoa học dữ liệu

● những lợi ích

● những vấn đề

 đồ án môn học (theo nhóm)

49
Chương 1. Tổng quan
Tài liệu tham khảo
García Márquez F.-P. & Lev B., Data Science and Digital Business, 2019.

Ho T.-B., Trao đổi về Khoa học dữ liệu và Khoa học dữ liệu trong kinh doanh,
2019.

Provost F. & Fawcett T., Data Science for Business: What You Need to Know
about Data Mining and Data-Analytic Thinking, O'Reilly Media, 2013.

Shmueli G. et al., Data Mining for Business Analytics: Concepts, Techniques,


and Applications in R, Wiley, 2017.

50
Chương 1. Tổng quan
Thảo luận

51
Chương 1. Tổng quan
Chương 2
PHƯƠNG PHÁP THỐNG KÊ
NỘI DUNG
 Phân tích mô tả
• Hàm, công cụ thống kê
• Báo cáo tổng hợp nhóm với Subtotal
• Hợp nhất dữ liệu với Consolidate
• Tổng hợp dữ liệu đa chiều với PivotTable
 Phân tích dự báo
• Trung bình trượt (Moving Average)
• San bằng mũ (Exponential Smoothing)
• Hồi quy (Regression)
 Phân tích tối ưu
• Lập mô hình tối ưu
• Sử dụng công cụ SOLVER để giải mô hình tối ưu
Hàm thống kê thông dụng
Tên hàm Cú pháp và công dụng
MIN MIN(danh-sách) : trả về giá trị nhỏ nhất của các số trong danh-sách
Ví dụ: = MIN(6,4,2,8)  Kết quả: 2
MAX MAX(danh-sách) : trả về giá trị lớn nhất của các số trong danh-sách
Ví dụ: = MAX(6,4,2,8)  Kết quả: 8
SUM SUM(x1 , x2 , … , xn): trả về tổng các số x1 , x2 , … , xn
SUMIF SUMIF(vùng-chứa-điều-kiện, điều-kiện, [vùng-tính-tổng]): trả về tổng các
ô trong vùng-tính-tổng tương ứng theo thứ tự với các ô trong vùng-
chứa-điều-kiện thỏa điều-kiện. Nếu bỏ qua tham số vùng-tính-tổng
nghĩa là vùng-tính-tổng = vùng-chứa-điều-kiện.
SUMIFS SUMIFS(vùng-tính-tổng, vùng-chứa-điều-kiện-1,điều-kiện-1, [vùng-chứa-
điều-kiện-2,điều-kiện-2],…) : trả về tổng các ô trong vùng-tính-tổng ứng
với thứ tự các ô trong vùng-chứa-điều-kiện-1 thỏa điều-kiện-1 và các ô
trong vùng-chứa-điều-kiện-2 thỏa điều-kiện-2,…
Hàm thống kê thông dụng
Tên hàm Cú pháp và công dụng
AVERAGE AVERAGE(danh-sách): trả về giá trị trung bình của các số trong
danh-sách. Ví dụ: = AVERAGE (6,4,2,8)  Kết quả: 5.75

AVERAGEIF AVERAGEIF(vùng-chứa-điều-kiện, điều–kiện, [vùng-tính-trung-


bình]): trả về giá trị trung bình của các ô trong vùng-tính-trung-
bình tương ứng theo thứ tự với các ô trong vùng-chứa-điều-kiện
thỏa điều-kiện. Nếu bỏ qua tham số vùng-tính-trung-bình nghĩa là
vùng-tính-trung-bình = vùng-chứa-điều-kiện
AVERAGEIFS AVERAGEIFS(vùng-tính-trung-bình,vùng-chứa-điều-kiện-1,điều-
kiện-1, [vùng-chứa-điều-kiện-2,điều-kiện-2],…): trả về trung bình
của các ô trong vùng-tính-trung-bình ứng với thứ tự các ô trong
vùng-chứa-điều-kiện-1 thỏa điều-kiện-1 và các ô trong vùng-chứa-
điều-kiện-2 thỏa điều-kiện-2,…
Hàm thống kê thông dụng
Tên hàm Cú pháp và công dụng
COUNT COUNT(danh-sách): trả về số lượng các ô có kiểu số trong danh-sách
Ví dụ: =COUNT(2,4,7, “A”)  Kết quả: 3

COUNTA COUNTA(danh-sách): trả về số lượng các ô có nội dung khác rỗng


trong danh-sách. Ví dụ: =COUNTA(2,4,7, “A”)  Kết quả: 4
COUNTBLANK COUNTBLANK(danh-sách): trả về số lượng các ô có nội dung rỗng
trong danh-sách.
COUNTIF COUNTIF(vùng-chứa-điều-kiện, điều-kiện): trả về số lượng các ô
trong vùng-chứa-điều-kiện thỏa điều-kiện.
COUNTIFS COUNTIFS(vùng-chứa-điều-kiện-1, điều-kiện-1, [vùng-chứa-điều-
kiện-2, điều-kiện-2],…) : trả về số lượng các ô trong vùng-chứa-
điều-kiện-1 thỏa điều-kiện-1 và các ô trong vùng-chứa-điều-kiện-2
thỏa điều-kiện-2,…
RANK RANK(ô, vùng, kiểu): trả về thứ tự xếp hạng của ô trong vùng;
kiểu = 1: xếp hạng tăng dần, kiểu = 0 hoặc lờ đi: xếp hạng giảm dần
Hàm thống kê chuyên dụng
Tên hàm Cú pháp và công dụng

Số trung vị Số trung vị của một dãy số là giá trị ở vị trí chính giữa khi dãy số đó được
sắp xếp theo thứ tự tăng dần (hoặc ngược lại).
𝑛+1
 Nếu số phần tử N của dãy số là lẻ thì số trung vị là số ở vị trí thứ 2
 Nếu số phần tử N của dãy số là chẳn thì số trung vị là giá trị trung
𝑛 𝑛
bình của 2 số ở vị trí thứ 2 và +1
2
Cú pháp: MEDIAN(Số-thứ-1, Số-thứ-2,…)
Trong đó:
 Số-thứ-1: bắt buộc.
 Số-thứ-2,…: tùy chọn.
Ví dụ: = MEDIAN(1,3,4,8,2)  Kết quả là 3
= MEDIAN(1,3,4,8,2,5)  Kết quả là 3.5
Hàm thống kê chuyên dụng
Tên hàm Cú pháp và công dụng
Số yếu vị Số yếu vị là số có tần số xuất hiện nhiều nhất trong một dãy số.
Cú pháp: Có 3 cách dùng
MODE(Số-thứ-1, Số-thứ-2,…)
MODE.MULT(Số-thứ-1, Số-thứ-2,…)
MODE.SNGL(Số-thứ-1, Số-thứ-2,…)
Trong đó:
 Số-thứ-1: bắt buộc.
 Số-thứ-2,…: tùy chọn.
 Nếu dãy số không có giá trị lặp lại thì hàm thông báo lỗi #N/A
 Hàm MODE.SNGL tương tự hàm MODE.
 Hàm MODE.MULT được dùng khi dãy số có nhiều số yếu vị. Kết thúc
hàm bằng tổ hợp phím Ctrl + Shift + Enter
Ví dụ:
= MODE(1,3,2,5,2,3)  Kết quả là 3 (dãy số có số 2 và số 3 xuất hiện 2 lần
nhưng 3 là số xuất hiện trước)
= MODE.MULT(1,3,2,5,2,3)  Kết quả là 3,2
Hàm thống kê chuyên dụng
Tên hàm Cú pháp và công dụng
Phương sai Tính phương sai của mẫu (sample)
Cú pháp: VAR(Số-thứ-1, Số-thứ-2,…)
VAR.S(Số-thứ-1, Số-thứ-2,…)
Trong đó:
 Số-thứ-1: bắt buộc.
 Số-thứ-2,…: tùy chọn.
 Nếu các đối số có chứa giá trị logic (True/False) hoặc chuỗi thì dùng
hàm VARA. Khi đó True = 1, False =0 và giá trị chuỗi =0.
Tính phương sai của tổng thể (population)
Cú pháp: VARP(Số-thứ-1, Số-thứ-2,…)
VAR.P(Số-thứ-1, Số-thứ-2,…)
Trong đó:
 Số-thứ-1: bắt buộc.
 Số-thứ-2,…: tùy chọn.
 Nếu các đối số có chứa giá trị logic (True/False) hoặc chuỗi thì dùng
hàm VARPA. Khi đó True = 1, False = 0 và giá trị chuỗi = 0.
Hàm thống kê chuyên dụng
Tên hàm Cú pháp và công dụng
Độ lệch Độ lệch chuẩn là căn bậc 2 của phương sai.
chuẩn Tính độ lệch chuẩn của mẫu (sample)
Cú pháp: STDEV(Số-thứ-1, Số-thứ-2,…)
STDEV.S(Số-thứ-1, Số-thứ-2,…)
Trong đó:
 Số-thứ-1: bắt buộc.
 Số-thứ-2,…: tùy chọn.
 Nếu các đối số có chứa giá trị logic (True/False) hoặc chuỗi thì dùng hàm
STDEVA. Khi đó True = 1, False =0 và giá trị chuỗi =0.
Tính độ lệch chuẩn của tổng thể (population)
Cú pháp: STDEVP(Số-thứ-1, Số-thứ-2,…)
STDEV.P(Số-thứ-1, Số-thứ-2,…)
Trong đó:
 Số-thứ-1: bắt buộc.
 Số-thứ-2,…: tùy chọn.
 Nếu các đối số có chứa giá trị logic (True/False) hoặc chuỗi thì dùng hàm
STDEVPA. Khi đó True = 1, False = 0 và giá trị chuỗi = 0.
Thống kê bằng công cụ Descriptive statistics
 Cách thực hiện:
 Bước 1: Chuẩn bị bảng số liệu cần thống kê.
 Bước 2: Chọn lệnh Data  Data Analysis 
Descriptive Statistics, xuất hiện hộp thoại
Descriptive Statistics.
 Bước 3: Khai báo các thông số Input và lựa chọn
các thông số Output Options.
Thống kê bằng công cụ Descriptive statistics

Ví dụ: Thống kê mô tả cho lượng thịt Heo (theo kg)


bán được trong tháng 03 tại siêu thi ABC
Thống kê bằng công cụ Descriptive statistics
• Mean: Giá trị trung bình
• Standard Error: Sai số chuẩn
• Median: Trung vị
• Mode: Yếu vị
• Standard Deviation: Độ lệch chuẩn
• Sample Variance: Phương sai mẫu
• Kurtosis: Độ nhọn
• Skewness: Độ bất đối xứng (Độ nghiêng)
• Range: Khoảng biến thiên (Max – Min)
• Minimum: Số nhỏ nhất
• Maximum: Số lớn nhất
• Sum: Tổng
• Count: Số lượng phần tử
• Confidence Level: Độ tin cậy
Báo cáo tổng hợp nhóm với Subtotal
 Chức năng của Subtotal:
 Cho phép tổng hợp từng nhóm dữ liệu của các cột
kiểu số trong cơ sở dữ liệu như: tìm tổng, số lớn
nhất, số nhỏ nhất, số trung bình,…
 Kết quả tổng hợp được đặt trên hay dưới mỗi
nhóm.
Báo cáo tổng hợp nhóm với Subtotal

Cần thống kê
tổng số tiền
mà mỗi nhân
viên đã thực
hiện
Báo cáo tổng hợp nhóm với Subtotal
 Cách thực hiện:
 Bước 1: Sắp xếp dữ liệu theo cột muốn gom
nhóm (Trong trường hợp này là Salesperson)
 Bước 2: Chọn toàn bộ cơ sở dữ liệu hay click
chuột vào một ô bất kỳ trên dữ liệu.
 Bước 3: Chọn Data  Outline  Subtotal, xuất
hiện hộp thoại Subtotal.
Báo cáo tổng hợp nhóm với Subtotal
• At each change in: chọn cột gom nhóm
Hộp thoại Subtotal (Salesperson)
• Use function: chọn hàm thống kê dùng để
tổng hợp dữ liệu (Sum)
• Add subtotal to: chọn cột thống kê giá trị
(Order Amount)
• Replace current subtotals: chọn để thay
thế kết quả thống kê trước đó
• Page break between group: chọn để ngắt
trang giữa các nhóm, khi in ra giấy thì mỗi
nhóm một trang giấy
• Summary below data: chọn để kết quả
tổng hợp ở dưới mỗi nhóm
• Remove All: để xóa bỏ các kết quả tổng
hợp
Báo cáo tổng hợp nhóm với Subtotal
Hợp nhất dữ liệu với Consolidate
 Chức năng của Consolidate:
 Cho phép hợp nhất dữ liệu từ những bảng dữ liệu
khác nhau.
 Consolidate có thể hợp nhất dữ liệu theo 2 hình
thức:
 Tổng hợp theo vị trí: các bảng dữ liệu giống
nhau về cấu trúc.
 Tổng hợp theo hạng mục (theo hàng và cột):
các bảng dữ liệu khác nhau về cấu trúc.
Hợp nhất dữ liệu với Consolidate
Hợp nhất dữ liệu với Consolidate
 Cách thực hiện:
 Bước 1: Chọn vùng sẽ chứa dữ liệu được hợp
nhất.
 Bước 2: Chọn Data  Data Tools  Consolidate,
xuất hiện hộp thoại Consolidate
Hợp nhất dữ liệu với Consolidate
• Function: chọn hàm tổng hợp.
Hộp thoại Consolidate
• Reference: để tham chiếu lần lượt các
bảng dữ liệu nguồn.
• All references: chứa tất cả các vùng dữ
liệu nguồn cần thiết cho việc hợp nhất.
• Top row: chọn nếu muốn dùng tên cột
của vùng nguồn.
• Left column: chọn nếu muốn dùng các
giá trị của cột đầu tiên của vùng nguồn.
• Create links to source data: chọn nếu
muốn dữ liệu hợp nhất được cập nhật
mỗi khi có thay đổi ở vùng dữ liệu
nguồn.
Hợp nhất dữ liệu với Consolidate
 Kết quả
Tổng hợp dữ liệu đa chiều với PivotTable
 Trong quá trình phân tích và tổng hợp dữ liệu, người
ta thường có nhu cầu gom nhóm dữ liệu theo theo
một số tiêu chí nào đó để dễ dàng quản lý.
 Excel cung cấp công cụ PivotTable để tổng hợp và
phân tích dữ liệu với nhiều góc độ và nhiều cấp khác
nhau.
 Nguồn dữ liệu để tạo PivotTable có thể là một cơ sở
dữ liệu của Excel hay từ nguồn dữ liệu bên ngoài
(như MS Access, MS SQL Server,…)
Tổng hợp dữ liệu đa chiều với PivotTable
Tổng hợp dữ liệu đa chiều với PivotTable
 Cách thực hiện trên Excel:
 Bước 1: Click vào ô bất kỳ
trên cơ sở dữ liệu.
 Bước 2: Chọn lệnh Insert
 PivotTable.
 Bước 3: Xuất hiện hộp
thoại Create PivotTable,
chọn dữ liệu nguồn và nơi
chứa PivotTable, click nút
OK.
Tổng hợp dữ liệu đa chiều với PivotTable
 Cách thực hiện trên Excel:
 Bước 4: Drag các tên field từ PivotTable Fields vào 4 khu
vực: FILTERS, ROWS, COLUMNS và VALUES.
Tổng hợp dữ liệu đa chiều với PivotTable
 Hiệu chỉnh PivotTable:
Thay đổi tên Field
 PivotTable tự tạo ra các ô
có nền đậm khi thả các
field vào vùng layout.
 Nội dung trong các ô này
được tạo tự động dựa theo
tên field và nơi bố trí.
 Có thể gõ lại nội dung để
báo cáo rõ ràng hơn.
Tổng hợp dữ liệu đa chiều với PivotTable
 Hiệu chỉnh PivotTable:
Sắp xếp
 Bấm vào mũi tên bên phải
của nhãn dòng hoặc cột
muốn sắp xếp.
 Bấm vào tuỳ chọn sắp xếp.
Tổng hợp dữ liệu đa chiều với PivotTable
 Hiệu chỉnh PivotTable:
Thay đổi phép tổng hợp
dữ liệu
 Nhấn mũi tên tên xổ xuống
cạnh field cần định dạng
trong khu vực Values
 Chọn Value Field Settings
trong danh sách mở ra
 Chọn phương thức xử lý
trong mục Summarize
value field by
Phương pháp: trung bình trượt (Moving Average)
 Công thức tính:
1 w N Dt 1  Dt  2   Dt  w
Ft   Dt  w 
w n 1 w
 Trong đó:
 Ft: là giá trị dự báo kỳ t

 Dt: là giá trị thực tế của kỳ t

 N: tổng số kỳ thực tế

 w: được gọi là cửa sổ trượt (w ≤ N)


Phương pháp: trung bình trượt (Moving Average)

Cách thực hiện trên Excel:


 Bước 1: Chuẩn bị bảng số liệu cần dự báo
 Bước 2: Chọn lệnh Data  Data Analysis 
Moving Average, xuất hiện hộp thoại Moving
Average
 Bước 3: Khai báo các thông số Input và Output
Options
Phương pháp: trung bình trượt (Moving Average)
Cách thực hiện trên Excel:
 Input Range : tham chiếu đến vùng dữ liệu thực tế.
 Labels in First Row: Khai báo hàng đầu tiên của input
range có chứa tiêu đề cột hay không.
 Interval: số lượng các kỳ trước đó muốn tính (w).
 Output Range: tham chiếu đến vùng xuất kết quả. Những ô
không đủ số lượng các giá trị trước đó để tính toán sẽ nhận
giá trị #N/A.
 Chart Output: tùy chọn dùng tạo biểu đồ nhúng cùng với
vùng xuất kết quả.
 Standard Errors: tùy chọn dùng tạo thêm 1 cột chứa các sai
số chuẩn.
Phương pháp: trung bình trượt (Moving Average)
Phương pháp: San bằng mũ (Exponential Smoothing)
 Công thức tính: Ft = a.Dt-1 + (1-a).Ft-1
 Trong đó:
 Ft: là giá trị dự báo kỳ t

 Ft-1: là giá trị dự báo kỳ t-1

 Dt-1: là giá trị thực tế của kỳ t-1

 a: là hệ số điều chỉnh (hệ số này tùy chọn sao cho


0 ≤ a ≤ 1)
Phương pháp: San bằng mũ (Exponential Smoothing)
Cách thực hiện trên Excel:
 Bước 1: Chuẩn bị bảng số liệu cần dự báo
 Bước 2: Chọn lệnh Data  Data Analysis
Exponential Smoothing, xuất hiện hộp thoại
Exponential Smoothing
 Bước 3: Khai báo các thông số Input và Output
Options
Phương pháp: San bằng mũ (Exponential Smoothing)
 Input Range : tham chiếu đến vùng dữ liệu thực tế.
 Damping factor: giá trị dùng làm hệ số san bằng. Đó là
giá trị điều chỉnh sự bất ổn của dữ liệu, giá trị mặc định
là Damping factor (1-a) = 0.3
 Labels: tùy chọn cho biết hàng/cột đầu tiên của input
range có chứa tiêu đề hay không.
 Kết quả như trong hình sau là dự báo lượng thịt bò bán
(kg) được tại siêu thị ABC vào ngày 17/03 với hệ số
điều chỉnh a = 0.3 (Damping factor = 0.7). Như vậy
lượng thịt bò dự báo cho ngày 17/03 là 29.88kg.
Phương pháp: San bằng mũ (Exponential Smoothing)
Phương pháp: Hồi quy (Regression)
 Phân tích hồi quy là nghiên cứu sự phụ thuộc của một
biến (biến phụ thuộc hay còn gọi là biến được giải thích)
vào một hay nhiều biến khác (biến độc lập hay còn gọi là
biến giải thích)
 Phương trình hồi quy có dạng tổng quát:
Y = f(X1,X2,…,Xn)
 Trong đó:
 Y: là biến phụ thuộc (dependent variable)
 Xi: là các biến độc lập (independent variable)
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng hàm:
Tên hàm Công dụng và cú pháp
Trả về giá trị dọc theo đường hồi quy (theo phương
pháp bình phương bé nhất)
Cú pháp: TREND(known_y’s, known_x’s, new_x’s,
const)
Trong đó:
TREND  known_y’s, known_x’s, new_x’s là các giá trị hoặc
vùng địa chỉ chứa giá trị đã biết của x, y tương ứng
và giá trị mới của x.
 Const là hằng số. Ngầm định nếu const = 1 (True)
thì hồi quy theo hàm y = a + bx, nếu const = 0
(False) thì hồi quy theo hàm y = bx.
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng hàm:
Tên hàm Công dụng và cú pháp
Dự báo giá trị tương lai căn cứ vào các giá trị hiện tại.
Cú pháp: FORECAST(x, known_y’s, known_x’s)
Trong đó:
FORECAST  x là giá trị dùng để dự báo.
 known_y’s là các giá trị hoặc vùng địa chỉ của tập
số liệu phụ thuộc quan sát được.
 known_x’s là các giá trị hoặc vùng địa chỉ của tập
số liệu độc lập quan sát được
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng hàm:
Tên hàm Công dụng và cú pháp
Dùng để tính hệ số a của phương trình hồi quy đơn
tuyến tính
Cú pháp : INTERCEPT(known_y’s, known_x’s)
Trong đó:
INTERCEPT
 known_y’s là các giá trị hoặc vùng địa chỉ của tập
số liệu phụ thuộc quan sát được.
 known_x’s là các giá trị hoặc vùng địa chỉ của tập
số liệu độc lập quan sát được
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng hàm:
Tên hàm Công dụng và cú pháp
Dùng để tính hệ số b của phương trình hồi quy đơn tuyến
tính
Cú pháp : SLOPE(known_y’s, known_x’s)
Trong đó:
SLOPE
 known_y’s là các giá trị hoặc vùng địa chỉ của tập số liệu
phụ thuộc quan sát được.
 known_x’s là các giá trị hoặc vùng địa chỉ của tập số liệu
độc lập quan sát được
Dùng để tính hệ số tương quan giữa X và Y
Cú pháp : CORREL(array1,array2)
CORREL
Trong đó: array1, array2 tương ứng là tập số liệu phụ thuộc
và tập số liệu độc lập quan sát được.
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng đồ thị:
 Bước 1: Chuẩn bị bảng số dữ liệu cần dự báo
 Bước 2: Chọn lần lượt vùng địa chỉ chứa biến phụ thuộc Y,
và vùng địa chỉ chứa biến độc lập X
 Bước 3: Vẽ đồ thi dạng Scatter
 Bước 4: Click chuột phải vào data series, chọn Add
Trendline
 Bước 5: Tuỳ chọn hiển thị trong Trendline Options
 Linear: dạng đường thẳng
 Display Equation on chart
 Display R-squared value on chart
Phương pháp: Hồi quy (Regression)
Phương pháp: Hồi quy (Regression)
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng công cụ Regression:
 Bước 1: Chuẩn bị bảng số dữ liệu cần dự báo
 Bước 2: Chọn lệnh Data Data Analysis 
Regression, xuất hiện hộp thoại Regression
Phương pháp: Hồi quy (Regression)
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng công cụ Regression:
 Bước 3: Khai báo các thông số Input và Output Options
 Input Y Range: Vùng địa chỉ chứa biến phụ thuộc Y

 Input X Range: Vùng địa chỉ chứa các biến độc lập X (Có
thể chọn nhiều biến X trong trường hợp hồi quy đa biến)
 Labels: Tích vào mục này để khẳng định ô (các ô) đầu tiên
không chứa dữ liệu hồi quy
 Constant is Zero: Tích vào mục này để khẳng định hệ số
tự do của hàm hồi quy tuyến tính a = 0
Phương pháp: Hồi quy (Regression)
Cách thực hiện bằng công cụ Regression:
 Confidentce Level: Độ tin cậy của hồi quy (mặc định là 95%)
bằng 1-α, với α là mức ý nghĩa hay xác suất mắc sai lầm loại
một, bác bỏ H0 trong khi H0 đúng.
 Output Range: Vùng hoặc ô phía trên bên trái của vùng chứa
kết quả
 New Worksheet Ply: In kết quả ra một sheet khác
 New Workbook: In kết quả ra một file Excel mới
 Residuals: Sai số do ngẫu nhiên
 Standardardlized Residuals: Chuẩn hóa sai số
 Residuals Plots: Đồ thị sai số
 Line Fit Plots: Đồ thị hàm hồi quy tuyến tính
 Normal Probability Plots: Đồ thị xác suất phân phối chuẩn
Phương pháp: Hồi quy (Regression)
Bài tập 1
 Công ty TNHH Quang Thông buôn bán máy vi tính có số
máy PC trong năm qua như sau:

Tháng 1 2 3 4 5 6 7 8 9 10 11 12
Số lượng 54 55 52 56 47 43 50 45 37 41 40 37

1. Dùng phương pháp trung bình di động để dự báo số máy PC


bán ra cho tháng 1 năm tới với cửa sổ trượt w = 3.
2. Dùng phương pháp san bằng mũ để dự báo số máy PC bán
ra cho tháng 1 năm tới với hệ số điều chỉnh a = 0,3.
Bài tập 2
 Tình hình kinh doanh của quán trà sữa Ciel Angel trong năm 2017
như sau. Yêu cầu:
1. Hãy sử dụng các phương pháp dự báo đã học để tính Số lượng,
Đơn giá và Chi phí quảng cáo trong tháng 9.
2. Hãy sử dụng phương pháp hồi quy tuyến tính để xác định mối quan
hệ (phương trình) giữa Số lượng và 2 chỉ số Đơn giá, Chi phí quảng
cáo.
Tháng Số lượng (ly) Đơn giá (đồng) Chi phí quảng cáo (đồng)
1 2.000 10.000 4.000.000
2 2.200 12.000 4.000.000
3 3.000 12.000 3.500.000
4 2.800 13.000 3.300.000
5 3.200 14.000 3.500.000
6 2.100 15.000 3.800.000
7 2.500 12.000 3.700.000
8 3.100 14.000 4.200.000
Khảo sát tình huống
Một nhà quản lý dự án nông nghiệp muốn lựa chọn
phương án trồng trọt bao nhiêu tấn lúa mì và lúa gạo
để tối đa hóa lợi nhuận của dự án dựa trên các số liệu
sau:
Số liệu đầu vào đối Loại sản phẩm Khả năng lớn nhất
với một đơn vị sản Lúa gạo Lúa mì của các nguồn tài
phẩm nguyên sẵn có

Diện tích đất (ha/tấn) 2 3 50 ha

Lượng nước (m3/tấn) 6 4 90 m3


Nhân công
15 12 250 người
(người/tấn)
Lợi nhuận (USD/tấn) 18 21
Các bước lập mô hình
 Bước 1: Xác định biến quyết định
Gọi x1 là lượng lúa gạo, x2 là lượng lúa mì (tấn) cần sản xuất
 Bước 2: Xác định hàm mục tiêu
Mục tiêu bài toán là tối đa hóa lợi nhuận ta có
P = P (lúa gạo) + P (lúa mì) = 18x1 + 21x2  max
 Bước 3: Xác định hệ ràng buộc
 Ràng buộc tài nguyên sử dụng:
Về diện tích đất: 2x1 + 3x2 ≤ 50
Về nước tưới: 6x1 + 4x2 ≤ 90
Về lao động: 15x1 + 12x2 ≤ 250
 Ràng buộc tự nhiên: x1, x2 ≥ 0
Công cụ SOLVER để giải mô hình kinh tế
Bước 1: Thiết lập bảng tính
Công cụ SOLVER để giải mô hình kinh tế
Bước 2: Chọn lệnh
Data  Analysis 
Solver
Công cụ SOLVER để giải mô hình kinh tế
 Khai báo các tham số của bài toán:
 Set Objective: Nhập ô chứa hàm mục tiêu, trong trường
hợp này là $E$5.
 To: Chọn Max vì bài toán này là tối đa hóa lợi nhuận

 By Changing Variable Cells: Nhập ô chứa các biến quyết


định, trong trường hợp này là $C$4 :$D$4
 Đưa các ràng buộc vào Subject to the Contraints bằng
cách nhấn nút Add
Công cụ SOLVER để giải mô hình kinh tế
Bước 3: Nhấn nút Solve để giải mô hình
Khai báo các lựa chọn trong hộp thoại Solver Results
 Keep Solver Solution: Giữ kết quả và in ra bảng tính.
 Restore Original Values: Huỷ kết quả vừa tìm được
và trả các biến về tình trạng ban đầu.
 Save Scenario: Lưu kết quả vừa tìm được thành một
tình huống để có thể xem lại sau này.
 Có thể xuất hiện thêm các dạng báo cáo trong kết
quả: Answer, Sensitivity và Limits
Công cụ SOLVER để giải mô hình kinh tế
Công cụ SOLVER để giải mô hình kinh tế
Bước 4: Nhấn nút OK để xem kết quả
Công cụ SOLVER để giải mô hình kinh tế
Các báo cáo kèm theo lời giải
Kết luận
Trong môi trường kinh doanh hiện nay, các nhà quản lý,
trưởng nhóm dự án, các nhà phân tích cũng như các cán bộ
trong doanh nghiệp cần phải ra quyết định một cách nhanh
chóng và chính xác.
Có rất nhiều công cụ giúp thực hiện các mục đích trên, tuy
nhiên đa số thường phức tạp hay đắt tiền.
MS Excel, với sức mạnh của các tính năng nâng cao sẵn có
cũng như tính phổ biến được xem như một công cụ rất tốt
để phân tích các vấn đề của doanh nghiệp, đề xuất các giải
pháp và các quyết định mà trong một chừng mực nào đó có
thể được xem như hỗ trợ doanh nghiệp đạt được lợi thế
cạnh tranh.
Bài tập 1
 Một nông trại chăn nuôi gia súc ở Huyện Nhà Bè của TP.HCM
cần mua bắp và các loại đậu làm thức ăn cho gia súc. Thành
phần dinh dưỡng của các loại thức ăn như sau:
Thành phần dinh dưỡng/kg
Giá mua
Loại thức ăn
Can xi Đạm Chất sợi (ngàn đồng/kg)
Bắp 0,004 0,05 0,02 2
Các loại đậu 0,0045 0,60 0,04 6

 Nhu cầu tối thiểu về thành phần dinh dưỡng để cung cấp cho
gia súc của nông trại này một ngày lần lượt là 1,3 kg can xi, 30
kg đạm và 10 kg chất sợi. Nông trại cần xác định phương án
pha trộn các loại thức ăn để giảm chi phí thức ăn trong khi vẫn
đảm bảo nhu cầu dinh dưỡng cho gia súc.
Bài tập 2
 Một công ty xây dựng lập kế hoạch sản xuất các cấu kiện bê
tông đúc sẵn. Công ty dự kiến sản xuất 3 loại cấu kiện A, B, và
C. Lượng xi măng, thép và đá cần dùng cho mỗi loại cấu kiện
cho ở bảng sau:
Vật liệu Cấu kiện A Cấu kiện B Cấu kiện C
Xi măng (kg) 300 100 200
Thép (kg) 100 100 200
Đá (kg) 100 300 200
 Số lượng xi măng, thép, đá có sẵn trong kho của Công ty là
3.400kg, 1.800 kg, và 2.200 kg. Công ty cần xác định phương
án sản xuất sao cho có thể sản xuất nhiều loại cấu kiện nhất?
Bài tập 3
 Một công ty may mặc sản xuất 3 loại áo A, B, và C. Mỗi loại áo
đều phải qua 3 công đoạn sản xuất là cắt, may và đóng gói với
mức thời gian cho mỗi loại áo được cho ở bảng sau:
Áo loại A Áo loại B Áo loại C
Bộ phận cắt (giờ) 0,2 0,4 0,3
Bộ phận may (giờ) 0,3 0,5 0,4
Bộ phận đóng gói (giờ) 0,1 0,2 0,1
 Tổng giờ công trong mỗi tuần 3 bộ phận cắt, may, và đóng gói
có thể huy động lần lượt là 1.160 giờ, 1.560 giờ, và 480 giờ.
Công ty cần xác định sản lượng áo mỗi loại cần sản xuất trong
1 tuần để sử dụng tối đa năng lực của nhà máy?
Chương 3
Tiền xử lý dữ liệu
TS. Thái Kim Phụng
Khoa CNTT kinh doanh – ĐH Kinh tế TPHCM
phungthk@ueh.edu.vn

2023
Mục tiêu
 Hiểu quy trình khai thác dữ liệu

 Hiểu ý nghĩa của tiền xử lý dữ liệu

 Hiểu những công việc trong tiền xử lý dữ liệu

 Vận dụng phần mềm Orange để tiền xử lý dữ liệu

2
Chương 3: Tiền xử lý dữ liệu
Nội dung
1. Quy trình khai thác dữ liệu

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

3. Minh họa với phần mềm Orange

3
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu
 Data mining

● khám phá những quy luật, những tri thức từ kho dữ liệu

[Imberman+]
4
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Data mining

● những thói quen tiêu dùng, sử dụng dịch vụ

● những xu thế phát triển của hiện tượng, sự kiện

● những kiểu hành vi gian lận

● ...

5
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 CRoss Industry Standard Process for Data Mining (CRISP-DM)

Đề án

6
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Công đoạn Business Understanding: tìm hiểu các khía cạnh của
vấn đề cần được giải quyết

● xác định mục đích kinh doanh: nội dung, tác động

● đánh giá hiện trạng

● xác định yêu cầu dữ liệu

● lập kế hoạch

7
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Công đoạn Data Understanding: tìm hiểu dữ liệu (nguồn)

● thu thập dữ liệu

● mô tả dữ liệu

● tìm hiểu (sơ khởi) về dữ liệu

● kiểm tra (bước đầu) chất lượng dữ liệu

8
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Công đoạn Data Preparation: tiền xử lý dữ liệu

● làm sạch dữ liệu

● tích hợp dữ liệu

● chỉnh dạng dữ liệu

● giảm kích thước dữ liệu

9
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Công đoạn Modeling: mô hình hóa dữ liệu

● lựa chọn mô hình, phương pháp, kỹ thuật

● xây dựng các phương pháp, tiêu chí đánh giá mô hình

● xây dựng mô hình áp dụng

 classification, clustering, regression, outer, association rules,


sequential patterns, . . .

10
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Công đoạn Evaluation: đánh giá kết quả

● đánh giá mức độ tin cậy, lợi ích (tiềm tàng) của những quy luật

● đánh giá hiệu quả so với yêu cầu

● xem xét lại quy trình, nếu cần

● xác định những yếu tố cần hiệu chỉnh hay cải tiến, nếu cần

11
Chương 3: Tiền xử lý dữ liệu
1. Quy trình khai thác dữ liệu (tt.)
 Công đoạn Deployment: đưa quy trình khai thác vào trong
hoạt động kinh doanh

● lập kế hoạch khai thác (dài hạn) trong hoạt động kinh doanh

● lập kế hoạch kiểm soát, đánh giá ( cải tiến) quy trình

● lập báo cáo tổng kết đề án

12
Chương 3: Tiền xử lý dữ liệu
Nội dung
1. Quy trình khai thác dữ liệu

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

3. Minh họa với phần mềm Orange

13
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu
 Phân loại dữ liệu: tùy mục tiêu, quan điểm, mức trừu tượng

● text, ảnh, audio, video  multimedia

● dữ liệu thời gian, không gian, … chủng loại, dạng thức

● …

14
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Phân loại dữ liệu: tùy mục tiêu, quan điểm, mức trừu tượng

● dữ liệu định danh (nominal, categorical data)

● dữ liệu định tính (ordinal, qualitative data)

● dữ liệu định lượng (numerical, quantitative data) mô hình


 rời rạc (discrete data)
 liên tục (continuous data)

15
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Phân loại dữ liệu: tùy mục tiêu, quan điểm, mức trừu tượng

● items

● attributes

● nodes
thể hiện (biểu đồ)
● links

● positions

● grids

16
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Phân loại dữ liệu: tùy mục tiêu, quan điểm, mức trừu tượng

● dữ liệu sơ cấp (primary data)


cách thức thu thập
● dữ liệu thứ cấp (secondary data)

17
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Chất lượng của dữ liệu

● những tiêu chí nội tại


 chính xác
 đầy đủ
 nhất quán
 …

● những tiêu chí về ngữ cảnh


 cập thời
 hữu dụng (mục tiêu)
 …

18
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Chất lượng truy cập dữ liệu

● đúng đắn

● toàn vẹn

● an toàn

● trực quan

19
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Tiền xử lý dữ liệu (Data Preprocessing)

● bảo đảm chất lượng dữ liệu

● tăng hiệu quả khai thác

[Baskar+]
20
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning: làm sạch dữ liệu

● xử lý những dữ liệu bị thiếu (missing values)

● xử lý nhiễu (noisy data)

● xử lý những dữ liệu không nhất quán (inconsistent data)

21
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Dữ liệu bị thiếu (missing values)

● dữ liệu bị mất (quá trình thu thập)

● dữ liệu bị thiếu (quá trình thu thập)

● dữ liệu chưa biết (N/A, TBD, …)

● dữ liệu không tồn tại

 nguyên nhân ?

22
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Xử lý dữ liệu bị thiếu

● loại bỏ những mẩu tin liên quan đến dữ liệu bị thiếu

● bổ sung thủ công

● thay thế bằng các giá trị được tính toán (quy tắc, thuật toán)
 các hằng số ngầm định
 các loại giá trị trung bình
 các giá trị phổ biến, có xác suất xảy ra cao nhất
 …

 phòng ngừa ?

23
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Dữ liệu nhiễu (noisy data)

● attribute: giá trị dị biệt, bất thường

● feature: đặc trưng (weak/irrelevant) không giúp giải thích target

● item: bất thường (outliers) trong tương quan features-target,


không phù hợp với các items liên quan

 nguyên nhân ?

24
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Phát hiện, khử nhiễu

● binning: so sánh với những dữ liệu lân cận

● statistical approaches: khoảng cách, phân phối, mật độ, …

● regression: so sánh với dữ liệu được tính toán từ phương pháp


hồi quy

● clustering: gom cụm để phát hiện những dữ liệu bất thường

● filter: chọn lựa các thuộc tính (feature selection), phân tích
tương quan

25
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Dữ liệu không nhất quán
(inconsistent data)

● dữ liệu được ghi nhận khác nhau đối với cùng một đối tượng

● dữ liệu không phản ánh đúng ngữ nghĩa

 nguyên nhân ?

26
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Dữ liệu không nhất quán
(inconsistent data)

● định dạng
 kiểu dữ liệu: giá trị số, dạng ngày Dương lịch
 giá trị: { M, F } >< { Nam, Nữ }

● thang đo, đơn vị tính

● bảng mã (encoding)

Data
Integration

27
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Cleaning – Xử lý dữ liệu không nhất quán

● hiệu chỉnh thủ công (?)

● central semantic store approach: khai thác siêu dữ liệu


(metadata), các ràng buộc dữ liệu (data constraints)
 hiệu chỉnh tự động

● master reference store approach: tăng cường tập trung dữ liệu

28
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Integration: tích hợp dữ liệu từ nhiều nguồn

● môi trường triển khai hệ thống

● mô hình tổ chức lưu trữ và khai thác dữ liệu (nguồn)

● ...

29
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Integration: tích hợp dữ liệu từ nhiều nguồn

● data consolidation: sao chép nhiều dữ liệu nguồn vào một nơi
lưu trữ chung

● data propagation: sao chép 1 dữ liệu nguồn đến các nơi khác
(duplicate, replication)

● data federation: sử dụng interfaces kết nối các dữ liệu nguồn


(data virtualization)

● datawarehouse: tổ chức kho dữ liệu

30
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Integration: nhận diện đối tượng trùng lắp

● mức thể hiện (instance): xem công đoạn Data Cleaning

● mức lược đồ (schema)


 tên thuộc tính: phai >< gioi_tinh
 thiết kế phân rã dữ liệu (khó phát hiện ở Data Cleaning)

31
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Integration: nhận diện thông tin dư thừa

● phân tích các thuộc tính dẫn xuất (soluong, dongia, sotien, …)

● phân tích tương quan: hệ số Pearson, hệ số Spearman

● kiểm định Chi bình phương (Chi-square Testing): DL rời rạc

32
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Transformation: chỉnh dạng dữ liệu

● làm trơn (smoothing)

● bổ sung thuộc tính mới (attribute construction)

● tổng hợp (aggregation)

● chuẩn hóa (normalization)

● rời rạc hóa dữ liệu (discretization)

33
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Transformation: làm trơn (smoothing)

● binning

● regression

● clustering

34
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Transformation: bổ sung thuộc tính mới
(attribute construction)

● gộp, tách các thuộc tính sẵn có

● bổ sung ngữ nghĩa cho dữ liệu

● phân tích mối tươngn quan giữa các thuộc tính

35
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Transformation: tổng hợp (aggregation)

● tổng hợp dữ liệu ở nhiều mức trừu tượng khác nhau: cubes,
SUM, AVERAGE, MAX, MIN, COUNT
 additive data
 semi-additive data

● roll-up

● drill-down

36
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Transformation: chuẩn hóa (normalization)
 miền giá trị chung ([Lnew, Unew]) cho các thuộc tính ([L, U])

● min-max normalization: biến đổi tuyến tính


xL
xnew  (U new  Lnew )  Lnew
U L
● z-score normalization:
x
xnew 

● decimal scaling:
x
xnew  j với j là số chữ số của MAX(|L|, |U|)
10

37
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Transformation: rời rạc hóa (discretization)
 biến đổi dữ liệu liên tục

● khoảng (interval)

● nhãn (label): ordinal, qualitative data

● cây phân cấp khái niệm (concept hierarchy): mỗi nút có thể là
khoảng hay label

38
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Reduction: thu gọn dữ liệu

● tổng hợp

● tóm tắt

● thu giảm lượng (numerosity reduction)

● rời rạc hóa

● phân cấp khái niệm

● chọn lọc thuộc tính

● phân tích tương quan

● giảm chiều dữ liệu (dimensionality reduction)

39
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Reduction: tóm tắt đặc trưng

● xu thế trung tâm (central tendency)

● sự phân tán (dispersion)

● những giá trị bất thường (outliers)

40
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Reduction: giảm chiều dữ liệu

● phân tích tương quan

● PCA (Principal Component Analysis)

● nén dữ liệu (Wavelet Transforms)

41
Chương 3: Tiền xử lý dữ liệu
2. Tiền xử lý dữ liệu (tt.)
 Công đoạn Data Reduction: thu giảm lượng

● thay đổi dạng biểu diễn dữ liệu

● các phương pháp có tham số (parametric): mô hình ước lượng


(hồi quy, …)

● các phương pháp phi tham số (nonparametric): histogram,


clustering, sampling

42
Chương 3: Tiền xử lý dữ liệu
Nội dung
1. Quy trình khai thác dữ liệu

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

3. Minh họa với phần mềm Orange

43
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange
 Nội dung minh họa

● nạp dữ liệu

● tiền xử lý dữ liệu

● quan sát dữ liệu (trước và sau khi tiền xử lý)

44
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Ví dụ minh họa: Horse Colic dataset

45
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Một số khái niệm cơ bản

● canvas: khung cửa sổ chính (thiết kế)

● workflow: dòng công việc (file type: .ows)

● widget: các thành phần (component) tiện ích

● chanel hay link: input, output (bên trái, bên phải của widget)

46
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 File widget : nạp tập tin DL nguồn (xls, xlsx, csv, txt, …)

feature, target, meta, skip

categorical, numeric,
text, datetime

47
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Data Table widget : liệt kê DL dưới dạng bảng 2 chiều

48
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Preprocess widget : tiền xử lý DL với 1 hay nhiều
phương pháp (preprocessors)

49
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Preprocess widget: Impute Missing Values

● giá trị trung bình (liên tục), giá trị phổ biến nhất (rời rạc)

● giá trị ngẫu nhiên (trong phạm vi hay miền giá trị)

● loại bỏ các dòng có dữ liệu bị thiếu

50
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Preprocess widget: Discretize Continuous Variables

● Unsupervised approaches: Equal-Frequency, Equal-Width,


K-means, …

● Supervised approaches: Minimum Descriptive Length (MDL),


Decision trees, Bayesian Belief Networks (BBNs), …

chia N bins có cùng chia N bins có cùng


số lượng quan sát kích thước

51
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Preprocess widget: Normalize Features

● phân phối chuẩn

● kỳ vọng:  = 1

● độ lệch chuẩn:  = 1

● [1, 1] hay [0, 1]

52
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Impute widget : chuyên xử lý dữ liệu bị thiếu

● As a distinct value: tự chọn giá trị thay thế

● Model-based imputer (simple tree): xây dựng mô hình dự đoán,


ngầm định là mô hình 1-NN, giá trị bị thiếu

53
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Ví dụ minh họa

● xử lý dữ liệu bị thiếu

● chuẩn hóa các thuộc tính numeric: đưa về đoạn [0, 1]

● rời rạc hóa: chia 10 bins có kích thước bằng nhau

54
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Distribution widget : biểu đồ phân phối DL

55
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Scatter Plot widget : biểu đồ phân bố DL

56
Chương 3: Tiền xử lý dữ liệu
3. Minh họa với phần mềm Orange (tt.)
 Save Data widget : lưu tập tin dữ liệu

● file type: .tab

57
Chương 3: Tiền xử lý dữ liệu
Tài liệu tham khảo
Brown M.-S., Data Mining for Dummies, For Dummies, 2014.

Provost F. and Fawcett T., Data Science for Business: What You Need to
Know about Data Mining and Data-Analytic Thinking, O'Reilly Media,
2013.

Shmueli G. et al., Data Mining for Business Analytics: Concepts, Techniques,


and Applications in R, Wiley, 2017.

58
Chương 3: Tiền xử lý dữ liệu
Thảo luận

59
Chương 3: Tiền xử lý dữ liệu
Chương 4
Phân lớp dữ liệu
TS. Thái Kim Phụng
Khoa CNTT kinh doanh – ĐH Kinh tế TPHCM
phungthk@ueh.edu.vn

2023
Mục tiêu
 Hiểu ý nghĩa của bài toán phân lớp dữ liệu

 Vận dụng các phương pháp phân lớp dữ liệu

 Vận dụng cách đánh giá mô hình phân lớp dữ liệu

 Sử dụng phần mềm Orange để phân lớp dữ liệu

2
Chương 4: Phân lớp dữ liệu
Nội dung
1. Phân lớp dữ liệu

2. Một số phương pháp phân lớp

3. Đánh giá mô hình phân lớp

4. Minh họa với phần mềm Orange

3
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu
 Phân lớp (Classification, Supervised Learning): sắp xếp items
vào N lớp (đã biết trước)  gán nhãn dữ liệu (dự đoán)

● xác định danh sách các nhãn (nominal, ordinal data)

● xây dựng mô hình phân lớp dựa trên các quan sát đã biết
(learning by examples)

new data
It’s a CAT
training
data

model classification
training model

4
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Phân lớp nhị phân (binary classification): tổng số lớp N = 2

● ứng dụng: chẩn đoán y khoa, tín dụng, phát hiện gian lận,
spam, …

● phương pháp phổ biến: Logistic Regression, Decision Trees,


Support Vector Machine, Naive Bayes, …

5
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Phân lớp đa lớp (multi-class classification): tổng số lớp N > 2

● ứng dụng: nhận dạng khuôn mặt, nhận dạng chữ viết (Optical
Character Recognition), nhận dạng giống loài sinh vật, …

● phương pháp phổ biến: Random Forest, Gradient Boosting,


Logistic Regression, Support Vector Machine, …

6
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Phân lớp đa nhãn (multi-label classification): 1 item có thể thuộc
nhiều hơn 1 lớp

● ứng dụng: phân loại ảnh, phân loại văn bản (chủ đề), …

● phương pháp: cải biên từ các phương pháp binary/multi-class

7
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
Thuật toán phân lớp
(classification algorithm)

DL huấn luyện
(training set)
DL mới cần phân lớp

DL thử
(test set)
Mô hình phân lớp
(classification model, classifier) KẾT QUẢ phân lớp

Kết quả thử nghiệm


 đánh giá mô hình
8
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Quy trình 2 bước (Two-Step Process)

S1: Xây dựng mô hình phân lớp (Model Construction)

S2: Sử dụng mô hình phân lớp (Model Usage)

 Đánh giá mô hình phân lớp (độ chính xác, …)

 Phân lớp những dữ liệu mới

9
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Bước S1: Xây dựng mô hình phân lớp

classification algorithm features


training set label

f ( x1 , x2 ,..., xn )  y

if (age < 31 or Car Type = Sports)


then Risk = High
...

classifier

10
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Bước S2.1: Đánh giá mô hình phân lớp

if (age < 31 or Car Type = Sports)


then Risk = High
...
DL thử
(test set)
classifier

precision = 75%

11
Chương 4: Phân lớp dữ liệu
1. Phân lớp dữ liệu (tt.)
 Bước S2.2: Phân lớp dữ liệu mới

if (age < 31 or Car Type = Sports)


then Risk = High
...
DL mới

classifier

12
Chương 4: Phân lớp dữ liệu
Nội dung
1. Phân lớp dữ liệu

2. Một số phương pháp phân lớp

3. Đánh giá mô hình phân lớp

4. Minh họa với phần mềm Orange

13
Chương 4: Phân lớp dữ liệu
2. Một số phương pháp phân lớp

classification
algorithms

Logistic Regression Decision Tree Induction


(ID3, C4.5, …)

Support Vector Machine Neural Networks


(SVM)

14
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định
 Các khái niệm

● nút lá (leaf node): nhãn phân lớp

● nút gốc (root), nút trong (internal node): thuộc tính (kiểm tra)

● nhánh (branch): trường hợp của thuộc tính Refund

Yes No

NO Marital
Status
Single
Married

Income NO

 80K > 80K

NO YES

15
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định (tt.)
 Xây dựng cây quyết định

Refund

Yes No

NO Marital
Status
Single,
Divorced Married

Income NO

 80K > 80K

NO YES
16
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định (tt.)
 Xây dựng cây quyết định

● đệ quy từ nút gốc  top-down

● chia để trị (divide-and-conquer)

● thuật toán “tham lam” (greedy algorithm)

Ở mỗi bước, thuật toán sẽ chọn thuộc tính


tạo phân hoạch tốt nhất trên tập huấn luyện

nhiều cách tiếp cận

17
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định (tt.)
 Xây dựng cây quyết định

● có thể tạo nhiều cây quyết định khác nhau từ 1 training set
Marital
Status
Married Single,
Divorced

NO Refund

No Yes

Income NO
Tiêu chí chất lượng?
 80K > 80K
Nguyên tắc Ockham’s Razor: tinh gọn?

NO YES
18
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định (tt.)
 Phân lớp dựa trên cây quyết định

● bắt đầu từ nút gốc đi dần đến nút lá Refund

Yes No

NO Marital
Status
Single,
Divorced Married

Income NO

 80K > 80K

NO YES

19
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định (tt.)
 Ưu điểm

● dễ hiểu, dễ diễn giải kết quả

● có thể áp dụng cho nhiều kiểu dữ liệu khác nhau

● không cần chuẩn hóa dữ liệu

● không bị tác động bởi vấn đề dữ liệu bị thiếu

● phân lớp nhanh

20
Chương 4: Phân lớp dữ liệu
2.1 Cây quyết định (tt.)
 Khuyết điểm

● chi phí (thời gian) xây dựng mô hình

● kém hiệu quả với dữ liệu định lượng

● kém ổn định: sự thay đổi nhỏ trên training set cũng có thể dẫn
đến thay đổi lớn trên cấu trúc cây quyết định

21
Chương 4: Phân lớp dữ liệu
2.2 Hồi quy logistic
 Hồi quy logistic (logistic regression): phân lớp dựa trên xác suất

● tính xác suất P(y = 1 | x), P(y = 0 | x)

● P(y = 1 | x) > P(y = 0 | x) hoặc P(y = 1 | x) > 

x  ( x0 , x1 ,..., xm )

Error

Net input Sigmoid activation Threshold


function function function

22
Chương 4: Phân lớp dữ liệu
2.2 Hồi quy logistic (tt.)
 Hàm logistic (logistic function, sigmoid function)

● hàm tổng quát:

● hàm chuẩn: L = k = 1, xo = 0

1 ex
f ( x)    1  f ( x)
1  ex e x  1

23
Chương 4: Phân lớp dữ liệu
2.2 Hồi quy logistic (tt.)
 Hồi quy logistic (logistic regression)

● input: x  ( x0 , x1 ,..., xn )
● trọng số: w  ( w0 , w1 ,..., wn )  giá trị xác định dựa trên training set

n
1
z   wi xi f ( x) 
i 0 1  ez

● lớp ngầm định (default class): y = 1

● xác suất để x thuộc vào lớp ngầm định:

1
P( y  1 | x) 
1  e z

24
Chương 4: Phân lớp dữ liệu
2.2 Hồi quy logistic (tt.)
 Ưu điểm

● đơn giản: dễ cài đặt, dễ diễn giải kết quả, huấn luyện đơn giản

● không cần thông tin về phân phối của các lớp trong không gian
đặc trưng

● phân lớp nhanh

25
Chương 4: Phân lớp dữ liệu
2.2 Hồi quy logistic (tt.)
 Khuyết điểm

● dễ bị overfitting với dữ liệu có số chiều (đặc trưng) cao

● giả thuyết tuyến tính giữa biến phụ thuộc và các biến độc lập

● chỉ áp dụng với biến phụ thuộc là rời rạc

26
Chương 4: Phân lớp dữ liệu
2.3 Support Vector Machine (SVM)
 Phương pháp

● xây dựng siêu phẳng (hyperplane) phân cách các lớp

● xác định biên cực đại (maximum margin)

● tìm các vectơ hỗ trợ (support vectors) trên biên

biên cực đại

vectơ hỗ trợ

siêu phẳng phân cách

27
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Phương pháp

● các khoảng cách gần nhất (margin) từ siêu phẳng đến 1 điểm
dữ liệu của mỗi lớp xấp xỉ bằng nhau và cực đại

● các vectơ hỗ trợ nhằm giúp xác định siêu phẳng

28
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Phương pháp

Training set: T  {( xi , yi )}iN1 yi {1,1}


Siêu phẳng H: wT x  b  0
y i ( wT xi  b)
Khoảng cách từ ( xi , yi ) đến siêu phẳng H: d i
w
y i ( wT xi  b)
margin  min
i w

Bài toán tối ưu, tìm (w, b):


 y i ( wT xi  b) 
 
 1 

( w, b)  arg max min   arg max  min ( y ( wT
x  b )) 
   
i i
w ,b

i w  w ,b
 w i

29
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Phương pháp

● thay thế w bằng k.w và b = k.b, với k > 0, thì margin không đổi
 có thể giả sử khoảng cách từ H đến những điểm gần nhất:
y i ( wT xi  b) 1 2
y i ( w xi  b)  1 d i
T
 max_margin 
w w w

● biến đổi bài toán tối ưu:



 1 

( w, b)  arg max   y i ( wT xi  b)  1
w ,b 
w 
hay:

( w, b)  arg min w 1  y i ( wT xi  b)  0
2

w ,b

30
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Phương pháp

● quy hoạch toàn phương (quadratic programming)

( w, b)  arg min w 1  y i ( wT xi  b)  0
2

w ,b

 hàm mục tiêu là 1 chuẩn (L2 norm): hàm lồi


 các hàm bất đẳng thức ràng buộc là tuyến tính: hàm lồi

● phân lớp (dự đoán) dữ liệu mới:

class( x)  sign( wT x  b)

31
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Một số phương SVM cải biên

● Soft Margin SVM: xử lý dữ liệu phân tách hầu như tuyến tính
(almost linear separability)

● Kernel SVM: xử lý dữ liệu phân tách phi tuyến (non-linear


separability)

● Multi-class SVM: bài toán đa lớp

● ...

32
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Ưu điểm

● phân lớp nhanh, tiết kiệm bộ nhớ

● xử lý dữ liệu hiệu quả trong không gian nhiều chiều

● xử lý cả dữ liệu được phân tách tuyến tính lẫn phi tuyến

33
Chương 4: Phân lớp dữ liệu
2.3 SVM (tt.)
 Khuyết điểm

● kém hiệu quả với kho dữ liệu lớn

● kém hiệu quả nếu số chiều lớn hơn số mẫu dữ liệu huấn luyện

● nhạy cảm với nhiễu

● thiếu thông tin xác suất phân lớp

34
Chương 4: Phân lớp dữ liệu
Nội dung
1. Phân lớp dữ liệu

2. Một số phương pháp phân lớp

3. Đánh giá mô hình phân lớp

4. Minh họa với phần mềm Orange

35
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp
 Chất lượng của mô hình  đưa mô hình vào khai thác ?

● sự chính xác

● sự hiệu quả

● sự nhạy cảm đối với dữ liệu nhiễu

● ...

36
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Các chỉ số định lượng (quantitative quality indicators)

● các giá trị thống kê

 Các chỉ số đồ họa/biểu đồ (graphical indicators)

● Confusion matrix

● ROC curve

● LIFT curve

37
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Phân loại sai lầm (error types)

● nhị phân: positive (VD: có bệnh), negative (VD: không bệnh)

Thực tế
Dự đoán Positive Negative
loại I ?
Kết luận đúng Sai lầm loại II
Positive True Positive False Negative
(TP) (FN)

Sai lầm loại I Kết luận đúng


Negative False Positive True Negative
(FP) (TN)

loại II ?

38
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Độ chính xác (precision)

● có phải toàn bộ predicted positives đều có bản chất là  ?

● tỉ lệ % predicted positives có bản chất là  ?

TP TP  TN
precision   (error rate )
TP  FP n

precision = 6 / (6 + 1) = 6 / 7

    predicted
   positives
 
 

 
   predicted
 negatives

39
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Độ truy hồi (recall)

● có phải toàn bộ positives (bản chất) đều được dự đoán đúng ?

● tỉ lệ % positives đã được đoán dúng ?

TP
recall 
TP  FN

recall = 6 / (6 + 2) = 6 / 8

    predicted
   positives
 
 

 
   predicted
 negatives

40
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Đồ thị tương quan giữa precision và recall

Precision
1

Recall
0 1

41
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Độ đo F (F-measure): điều hòa giữa precision và recall
(weighted harmonic mean)

precision.recall
F
(1   ). precision   .recall

  0 : F  recall

  1 : F  precision

1 precision.recall
 : F  2.
2 precision  recall

42
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Ma trận nhầm lẫn (confusion matrix)

● ma trận vuông, kích thước mỗi chiều = số lớp

● mij : số lượng items thuộc Ci nhưng bị dự đoán (SAI) thuộc Cj


(hoặc chuyển vị)

● các giá trị mij có thể được chuẩn hóa ([0, 1])

Dự đoán

# dự đoán
đúng
Thực tế
# items

43
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Đường cong ROC (Receiver Operating Characteristic Curve)

● trục tung: recall hay true positive rate (TPR)

● trục hoành: false positive rate (FPR)


TN FP
specificity  FPR  1  specificity 
TN  FP FP  TN

44
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Miền AUC (Area Under the [ROC] Curve)

● diện tích ([0, 1]) bên dưới đường cong ROC

● càng lớn, càng tốt

AUC

45
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Hiện tượng underfitting

● mô hình chưa khớp với DL huấn luyện: chưa đủ độ phức tạp


cần thiết để có thể “bao quát” được tập DL

● train error và test error đều cao

● tồn tại những điểm DL không thể phân lớp

● khó dự đoán chính xác với DL mới

46
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Hiện tượng overfitting

● mô hình quá khớp với DL huấn luyện: dễ dự đoán nhầm nhiễu

● train error thấp trong khi test error cao

● mô hình quá phức tạp nhằm mô phỏng DL huấn luyện

● lượng DL huấn luyện quá nhỏ

● khó phù hợp với tính tổng quát của dữ liệu mới

47
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Trường hợp good fitting

● kết quả “hợp lý” với cả tập DL huấn luyện và DL mới

● train error và test error đều thấp

● sự hiệu quả

● sự đơn giản

48
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Phương pháp Hold-out Cross Validation

● phân chia ngẫu nhiên dataset thành training set và test set
(hold-out set) theo một tỷ lệ xác định

● dataset không lớn

● đánh giá 1 mô hình, không có nhiều tham số cần tinh chỉnh

Training Test

huấn luyện mô hình đánh giá mô hình


(sai số phát sinh)

49
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Phương pháp Hold-out Cross Validation

● sai số phát sinh từ test set phụ thuộc nhiều vào tỷ lệ “phân bố”
các phần tử của các lớp trong training set và test set
(VD: training set, hay test set, chứa quá ít phần tử  hay )

● không hiệu quả khi mô hình có nhiều tham số cần tinh chỉnh

● không hiệu quả khi so sánh nhiều mô hình phân lớp

 tính sai số trung bình trên k lần thực hiện Hold-out Cross
Validation: tỷ lệ trùng lắp dữ liệu giữa những lần thực hiện ?

50
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Phương pháp Hold-out Cross Validation

● tạo validation set từ 1 phần của training set ban đầu

● validation set: tinh chỉnh các tham số, chọn mô hình tối ưu

● validation set giúp làm giảm nhẹ hiện tượng overfitting

Training Validation Test

huấn luyện tinh chỉnh tham số, đánh giá


1 hay NHIỀU mô hình chọn mô hình tối ưu mô hình

51
Chương 4: Phân lớp dữ liệu
3. Đánh giá mô hình phân lớp (tt.)
 Phương pháp k-Fold Cross Validation

● chia dataset thành k phần (fold) bằng nhau

● gia tăng độ tin cậy về chất lượng mô hình

TRAINING fold TEST fold

1st iteration error E1

2nd iteration error E2


1 k
3rd iteration error E3 E   Ei
k i 1

k th iteration error Ek

52
Chương 4: Phân lớp dữ liệu
Nội dung
1. Phân lớp dữ liệu

2. Một số phương pháp phân lớp

3. Đánh giá mô hình phân lớp

4. Minh họa với phần mềm Orange

53
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange
 Tập dữ liệu nguồn: Sales_Data.xlsx

không tham gia


vào mô hình phân lớp

biến độc lập

biến phân loại


(phụ thuộc)

54
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Tập dữ liệu nguồn: Sales_Data.xlsx

55
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Tập dữ liệu cần phân lớp: Sales_NewData.xlsx

56
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán phân lớp: Cây quyết định

double-click
 kết quả

57
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán phân lớp: Cây quyết định

58
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán phân lớp: Hồi quy logistic

double-click
 kết quả

59
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán phân lớp: Hồi quy logistic

60
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán phân lớp: SVM

double-click
 kết quả

61
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán phân lớp: SVM

62
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Đánh giá các thuật toán phân lớp  chọn thuật toán tốt nhất

63
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Kết quả huấn luyện của các thuật toán

64
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange
 Kết quả ma trận nhầm lẫn

65
Chương 4: Phân lớp dữ liệu
4. Minh họa với phần mềm Orange
 Kết quả dự báo bằng phương pháp SVM

66
Chương 4: Phân lớp dữ liệu
Tài liệu tham khảo
Brown M.-S., Data Mining for Dummies, For Dummies, 2014.

Han J., Kamber M. and Pei J., Data Mining: Concepts and Techniques,
Morgan Kaufmann, 2011.
(http://hanj.cs.illinois.edu/bk3/bk3_slidesindex.htm, 01/2021)

Shmueli G. et al., Data Mining for Business Analytics: Concepts, Techniques,


and Applications in R, Wiley, 2017.

Vũ Hữu Tiệp, Machine Learning cơ bản, 2018.

67
Chương 4: Phân lớp dữ liệu
Thảo luận

68
Chương 4: Phân lớp dữ liệu
Chương 5
Gom cụm dữ liệu
TS. Thái Kim Phụng
Khoa CNTT kinh doanh – ĐH Kinh tế TPHCM
phungthk@ueh.edu.vn

2023
Mục tiêu
 Hiểu ý nghĩa của bài toán gom cụm dữ liệu

 Vận dụng các phương pháp gom cụm dữ liệu

 Vận dụng cách đánh giá mô hình gom cụm dữ liệu

 Sử dụng phần mềm Orange để gom cụm dữ liệu

2
Chương 5: Gom cụm dữ liệu
Nội dung
1. Gom cụm dữ liệu

2. Một số phương pháp gom cụm

3. Đánh giá mô hình gom cụm

4. Minh họa với phần mềm Orange

3
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu
 Cụm (cluster): tập hợp những phần tử (dữ liệu)

● tương đồng giữa những phần tử trong cùng cụm

● khác biệt với những phần tử trong các cụm khác

4
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Cụm (cluster) – Các đại lượng đối với dữ liệu định lượng

● trọng tâm (centroid):

1 n
C   xi
n i 1

● bán kính (radius):


1 n
R  i
n i 1
( x  C ) 2

● đường kính (diameter):

1
D 
n(n  1) i  j
( xi  x j ) 2

5
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Gom cụm (Clustering, Data Segmentation)

● tìm sự tương đồng (khác biệt) giữa các phần tử trong dataset

● Unsupervised Learning: không có các lớp được xác định trước


(learning by observations)

6
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Gom cụm (Clustering, Data Segmentation) – Ứng dụng thực tế

● kinh doanh, tiếp thị

● xã hội

● tìm kiếm thông tin (Information Retrieval, Recommender


System)

● sinh học

● địa chất

● khí tượng

● ...

7
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Gom cụm (Clustering, Data Segmentation) – G.đoạn tiền xử lý
cho các thuật toán khác

● summarization: hồi quy, PCA, …

● compression: xử lý ảnh

● phát hiện outliers

● ...

8
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Gom cụm (Clustering, Data Segmentation) – Một số vấn đề

● scalability: xử lý trên toàn bộ dataset (thay vì trên mẫu)

● data types: nominal, ordinal, numerical

● visualization: trực quan hóa (high dimensionality)

● interpretability: diễn dịch kết quả gom cụm

● noise: dữ liệu nhiễu

● ...

9
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Quy trình gom cụm

10
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Chất lượng của clustering

● intra-class similarity : sự kết dính (cohesion) trong cluster

● extra-class similarity : sự khác biệt (distinction) giữa clusters

11
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Hàm khoảng cách (distance function): giữa 2 items

● khoảng cách Manhattan:


n
d ( x, y )   xi  yi
i 1

● khoảng cách Euclid:


1/ 2
 n 
d ( x, y )    ( xi  yi ) 2 
 i 1 

● khoảng cách Minkowski: (p > 2)

 
n 1/ p

d ( x, y )   xi  yi
p

i 1

12
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Hàm khoảng cách (distance function): giữa 2 items

● cosin:
n

 x .y i i
d ( x, y )  i 1
n n

x
i 1
2
i  i
y 2

i 1

● tích vô hướng (scalar product):

n
d ( x, y )   xi . yi
i 1

13
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Hàm khoảng cách (distance function): giữa 2 clusters

● Single-link: kh.cách ngắn nhất giữa 2 items của 2 clusters

D(Ci , C j )  min d ( xi , x j )
xi Ci , x j C j

● Complete-link: kh.cách dài nhất giữa 2 items của 2 clusters

D(Ci , C j )  max d ( xi , x j )
xi Ci , x j C j

● Average-link: kh.cách trung bình giữa 2 items của 2 clusters


1
D(Ci , C j ) 
Ci . C j
 d (x , x )
xi Ci
i j

x j C j

14
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Hàm khoảng cách (distance function): giữa 2 clusters

● Centroids: kh.cách giữa 2 trọng tâm của 2 clusters


 1 
 1
y
D(Ci , C j )  d  x, 
 Ci xCi C j yC j 
 
● Medoids: kh.cách giữa 2 phần tử trung tâm của 2 clusters

D(Ci , C j )  d ( M i , M j )

● Ward’s method: gộp 2 clusters  xét trọng tâm của (Ci  Cj)

D(Ci , C j )   d ( x, 
xCi C j
Ci C j )

15
Chương 5: Gom cụm dữ liệu
1. Gom cụm dữ liệu (tt.)
 Chất lượng của clustering

● độ đo mức độ tương đồng (similarity measure)

● khả năng phát hiện những dạng thức (pattern) tiềm ẩn

16
Chương 5: Gom cụm dữ liệu
Nội dung
1. Gom cụm dữ liệu

2. Một số phương pháp gom cụm

3. Đánh giá mô hình gom cụm

4. Minh họa với phần mềm Orange

17
Chương 5: Gom cụm dữ liệu
2. Một số phương pháp gom cụm
 Phân loại các phương pháp

18
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch
 Tập dữ liệu D được phân hoạch thành k clusters (rời nhau)

● xác định một điểm ci là “đặc trưng” cho mỗi cluster Ci

● chọn phân hoạch tốt nhất: tổng bình phương khoảng cách
(Sum of Squared Error) từ ci đến mọi xCi của tất cả k clusters
là nhỏ nhất:
k
SSE    d ( x, ci ) 2
i 1 xCi

● tối ưu toàn cục: vét cạn mọi cách


phân hoạch (khả thi?)

● dùng heuristic: k-Means, k-Medoids,


Fuzzy C-Means, …

19
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán k-Means (MacQueen, 67; Lloyd, 57): ci là trọng tâm
của cluster Ci

Bước 1. Chọn ngẫu nhiên k trọng tâm {c1, c2, …, ck}.

Bước 2. xD, đưa x vào cluster có trọng tâm gần với x nhất:

C ( x)  arg min d ( x, ci )
i

Nếu phân hoạch mới không đổi so với lần trước: DỪNG.

Bước 3. Xác định lại k trọng tâm {c1, c2, …, ck}, quay lại Bước 2.

20
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán k-Means: ci là trọng tâm của cluster Ci
trọng tâm
NGẪU NHIÊN

trọng tâm
MỚI
21
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán k-Means

VD: n = 4, không gian 2 chiều (F1, F2), k = 2 (C1, C2)

22
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán k-Means

Vòng lặp t = 1:

Chọn ngẫu nhiên 2 trọng tâm: c1(1, 1) và c2(2, 1)

Tính khoảng cách từ các điểm đến từng trọng tâm:

Gom các điểm vào cluster (trọng tâm gần nhất):

23
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán k-Means

Vòng lặp t = 2:

Cập nhật lại 2 trọng tâm: c1(1, 1) và c2(3.67, 2.67)

Tính khoảng cách từ các điểm đến từng trọng tâm:

Gom các điểm vào cluster (trọng tâm gần nhất):

24
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán k-Means

Vòng lặp t = 3:

Cập nhật lại 2 trọng tâm: c1(1.5, 1) và c2(4.5, 3.5)

Tính khoảng cách từ các điểm đến từng trọng tâm:

Gom các điểm vào cluster (trọng tâm gần nhất):

25
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Ưu điểm của k-Means

● độ phức tạp O(t.k.n), với n = |D| và t là số vòng lặp (k, t << n)

 Khuyết điểm của k-Means

● xác định tham số k  (Hastie et al., 2009)

● dữ liệu liên tục  k-Medoids

● nhạy cảm với dữ liệu nhiễu

● không hiệu quả với tập dữ liệu không lồi (non-convex)

● cực trị địa phương (phụ thuộc những điểm bắt đầu)

26
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán Fuzzy C-Means (Dunn, 73; Bezdek, 81)

● tập mờ (fuzzy set) với hàm thành viên (membership function)


FD : D  [0, 1] (Zadeh, 65)

VD: Flip-Flop thuộc 2 nhóm sản phẩm { phần mềm, giải trí }

● 1 phần tử có thể thuộc nhiều hơn 1 cluster  fuzzy clusters


{C1, …, Ck}, với mức độ thành viên (degree of membership)

27
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán Fuzzy C-Means

● ma trận phân hoạch (partition matrix): W = [wij]n x k, với:


wij = membership(di, Cj)  [0, 1] ( xác suất)
C1 C2  Ck
d1  w11 w12 ...w1k 
  tổng giá trị dòng i:
d 2  w21 w22 ... w2 k  k

       ROWi   wij  1
 
w ... wnk 
j 1
dn  n1 wn 2

n
tổng giá trị cột j: 0  COL j   wij  n (không có cluster rỗng)
i 1
k
● tối ưu hóa: SSE (C )    ij i j , với tham số p > 1
p 2
w .d ( d , c )
j 1 xi C j
28
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán Fuzzy C-Means: cải biên từ k-Means
Bước 1. Khởi tạo (ngẫu nhiên) W(0) với ROWi = 1, i=1..n
Bước 2. Xác định k trọng tâm ở vòng lặp thứ t:
n

w p
ij .xi
cj  i 1
n

 ij
w p

i 1

Bước 3. Cập nhật ma trận phân hoạch W(t) ở vòng lặp thứ t:
1
wij  2
k
 d ( xi , c j )  p 1
 
s 1  d ( xi , cs ) 


Bước 4. Nếu W ( t )  W ( t 1)   thì DỪNG; Ngược lại, quay lại Bước 2.
29
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán Fuzzy C-Means

VD: n = 6, không gian 2 chiều (F1, F2), k = 2 (C1, C2), p = 2

Khởi tạo W(0)

30
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Thuật toán Fuzzy C-Means

Vòng lặp t = 1:

 5.58 14.28   7.38 10.48 


2 trọng tâm: c1   ,   2.4,6.1 c2   ,   4.8,6.8
 2.32 2.32   2 .32 2 .32 
Cập nhật W(1):

Tiếp tục vòng lặp t … cho đến khi phân hoạch “ổn định”.

31
Chương 5: Gom cụm dữ liệu
2.1 Cách tiếp cận phân hoạch (tt.)
 Ưu điểm của FCM

● gom cụm linh hoạt

● hiệu quả với tập dữ liệu lớn, các cụm chồng lắp lên nhau

 Khuyết điểm của FCM

● xác định tham số p

● phụ thuộc vào bước khởi tạo  cực trị địa phương

● nhạy cảm với nhiễu và giá trị bất thường

32
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp
 Xây dựng cây phân cấp cho các phần tử trong tập dữ liệu

● dựa trên ma trận khoảng cách (distance/similarity/dissimilarity


matrix) giữa các phần tử và khoảng cách giữa các cụm

● dựa trên điều kiện dừng thay vì tham số k của k-Means

● clusters sau khi hình thành vẫn có thể phân tách, gộp chung
(khác với cách tiếp cận phân hoạch)

33
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Hai phương pháp điển hình

Agglomerative Nesting (AGNES)

Divisive Analysis (DIANA)

34
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Phương pháp AGNES (Kaufmann & Rousseeuw, 1990)

Bước 1. Khởi tạo n clusters, mỗi cluster chứa 1 phần tử.

Bước 2. Dựa trên single-link, gộp chung 2 clusters gần nhau nhất
thành 1 cluster.

Bước 3. Lặp lại Bước 2 cho đến khi gộp n phần tử vào 1 cluster

35
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Biểu đồ Dendrogram: cây phân cấp các clusters

● phân hoạch là một nhát cắt (ngang) ở 1 mức xác định

● những nút được liên kết với nhau sẽ tạo thành 1 cluster

khoảng
cách

# clusters
36
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Phương pháp AGNES (Kaufmann & Rousseeuw, 1990)

37
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Phương pháp AGNES (Kaufmann & Rousseeuw, 1990)

38
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 So sánh các hàm khoảng cách

39
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Phương pháp DIANA (Kaufmann & Rousseeuw, 1990)

Bước 1. Khởi tạo 1 cluster chứa tất cả n phần tử.

Bước 2. Mỗi cluster có hơn 1 phần tử được tách thành 2 clusters


(top-down, ngược với AGNES).

Bước 3. Lặp lại Bước 2 cho đến khi có n clusters.

Divisive Analysis (DIANA)

40
Chương 5: Gom cụm dữ liệu
2.2 Cách tiếp cận phân cấp (tt.)
 Ưu điểm của cách tiếp cận phân cấp

● giải thuật đơn giản

● kết quả dễ hiểu

● không cần tham số đầu vào (k)

 Khuyết điểm cách tiếp cận phân cấp

● không thể quay lui

● độ phức tạp O(n2), không thích hợp với tập dữ liệu lớn

● nhạy cảm với nhiễu, dữ liệu bị thiếu

● không hiệu quả với tập dữ liệu không lồi (non-convex)

41
Chương 5: Gom cụm dữ liệu
Nội dung
1. Gom cụm dữ liệu

2. Một số phương pháp gom cụm

3. Đánh giá mô hình gom cụm

4. Minh họa với phần mềm Orange

42
Chương 5: Gom cụm dữ liệu
3. Đánh giá mô hình gom cụm
 Bài toán phân cụm rất khó đánh giá chất lượng

 Các tiêu chí đánh giá chất lượng

● độ nén (compactness): các phần tử trong cụm phải gần nhau

● độ phân tách (separation): các cụm phải cách nhau (rõ ràng)

43
Chương 5: Gom cụm dữ liệu
3. Đánh giá mô hình gom cụm (tt.)
 Phương pháp đánh giá ngoài (external validation)

● dựa vào cấu trúc/xu hướng gom cụm được xác định trước

● so sánh mức độ sai khác giữa các cụm

● so sánh với kết quả mẫu

 Một số độ đo

● Rand statistic

● Jaccard coefficient

● Folkes

● Mallows index

44
Chương 5: Gom cụm dữ liệu
3. Đánh giá mô hình gom cụm (tt.)
 Phương pháp đánh giá trong (internal validation)

● không có thông tin từ bên ngoài

● chủ yếu dựa trên ma trận xấp xỉ (proximity matrix)

● tối ưu hóa độ tương đồng, độ phân tách

 Một số độ đo

● Hubert’s statistic

● Silhouette index, Dunn’s index,

● F-ratio

● DBI (Davies Bouldin Index)

45
Chương 5: Gom cụm dữ liệu
3. Đánh giá mô hình gom cụm (tt.)
 Phương pháp đánh giá tương đối (relative validation)

● so sánh kết quả của những bộ giá trị tham số khác nhau

● so sánh kết quả gom cụm giữa các phương pháp khác nhau

46
Chương 5: Gom cụm dữ liệu
Nội dung
1. Gom cụm dữ liệu

2. Một số phương pháp gom cụm

3. Đánh giá mô hình gom cum

4. Minh họa với phần mềm Orange

47
Chương 5: Gom cụm dữ liệu
4. Minh họa với phần mềm Orange
 Tập dữ liệu nguồn: Sales_Data.xlsx

48
Chương 5: Gom cụm dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Thuật toán gom cụm k-Means và Hierarchical Clustering

49
Chương 5: Gom cụm dữ liệu
4. Minh họa với phần mềm Orange (tt.)
 Kết quả

50
Chương 5: Gom cụm dữ liệu
Tài liệu tham khảo
Brown M.-S., Data Mining for Dummies, For Dummies, 2014.

Provost F. and Fawcett T., Data Science for Business: What You Need to
Know about Data Mining and Data-Analytic Thinking, O'Reilly Media,
2013.

Shmueli G. et al., Data Mining for Business Analytics: Concepts, Techniques,


and Applications in R, Wiley, 2017.

Vũ Hữu Tiệp, Machine Learning cơ bản, 2018.

Xu R., Survey of Clustering Algorithms, IEEE Transactions on Neural


Networks, 2005.

51
Chương 5: Gom cụm dữ liệu
Thảo luận

52
Chương 5: Gom cụm dữ liệu

You might also like