Trình bày các nhiều càng tốt về các đặc điểm phân biệt giữa hệ thống Cơ sở dữ liệu và hệ thống Khai phá dữ liệu về tri thức miền, các câu hỏi, kích thước hệ thống ..... Trình bày khái ni
Trang 1CÂU HỎI MÔN HỌC “NHẬP MÔN KHAI PHÁ DỮ LIỆU VÀ KHO DỮ LIỆU” HTTT
A Phần trả lời (khoảng 40-60% điểm): mỗi câu trả lời có độ dài khoảng 1/2 -3/5 trang A4
==== Câu hỏi tập trung (Các câu hỏi trong đề thi chủ yếu chọn ở danh sách này )
1 Trình bày các nhiều càng tốt về các đặc điểm phân biệt giữa hệ thống Cơ sở dữ liệu và hệ thống Khai
phá dữ liệu (về tri thức miền, các câu hỏi, kích thước hệ thống ) Cho ví dụ.
2 Tiền xử lý dữ liệu bao gồm 5 bài toán chính là Làm sạch dữ liệu, Tích hợp dữ liệu, Chuyển dạng dữ liệu, Rút gọn dữ liệu và Rời rạc hóa dữ liệu Trình bày càng nhiều càng tốt về nội dung và các giải pháp
điển hình cho giải quyết hai 5 bài toán nói trên (chọn hai bài toán nào là do học viên)
3 Trình bày khái niệm luật kết hợp, bài toán phát hiện và thuật toán khai phá tập mục phổ biến Apriori.Lập luận sơ bộ về tính đúng đắn của thuật toán, ước lượng số lần duyệt CSDL cực đai
4 Trình bày về bài toán phân lớp (quá trình hai pha xây dựng mô hình và sử dụng mô hình); trình bàythuật toán cây quyết định tìm luật phân lớp theo độ đo Information Gain hoặc độ đo GINI
5 Trình bày thuật toán phân lớp Bayes bao gồm phát biểu định lý Bayes
6 Trình bày thuật toán phân lớp k-NN bằng diễn giải và bằng giả mã
7 Trình bày thuật toán phân lớp SVM
8 Trình bày thuật toán phân cụm k-mean cứng
9 Trình bày khái niệm kho dữ liệu do Inmon đề xuất và giới thiệu càng nhiều càng tốt về 4 đặc trưng của kho dữ liệu Cho ví dụ
10 Trình bày về 3 kiểu mô hình khái niệm kho dữ liệu (hình sao, bông tuyết, dải ngân hà) Cho ví dụ.
11 Trình bày về kiến trúc đa tầng của kho dữ liệu (nguồn dữ liệu, lưu dữ liệu, xử lý OLAP, tiện ích người dùng) Thể hiện bằng hình vẽ.
12 Trình bày về siêu dữ liệu trong kho dữ liệu, các loại siêu dữ liệu và cho ví dụ
13 Trình bày về các nhân sự quan trọng cần phải quan tâm khi xác định yêu cầu trong dự án kho dữ liệu
Có điểm gì khác với xác định yêu cầu trong hệ CSDL?
14 Trình bày khái niệm chiều kinh doanh và các nội dung liên quan tới khái niệm này trong dự án kho dữ
liệu Cho ví dụ
15 Trình bày và phân tích chức năng-nhiệm vụ của các vai trò sau đây của đội phát triển dự án kho dữ liệu:(1) Nhà tài trợ điều hành, (2) Người quản lý dự án, (3) Người quản lý quan hệ người dùng, (4) Kiếntrúc sư chính, (5) Chuyên gia hạ tầng, (6) Người phân tích kinh doanh, (7) Người mô hình hóa dữ liệu
16 Trình bày về các điểm trọng tâm cần quan tâm khi phỏng vấn bao gồm Tài nguyên thông tin hiện có, Miền chủ đề, Độ đo hiệu năng chính yếu, Tần suất thông tin.
==== Câu hỏi tham khảo (có thể có không quá một câu ở danh sách này trong bài thi)
17 Trình bày các nội dung cơ bản về toán tử GROUP BY
18 Trình bày các nội dung chuyển đổi dữ liệu, tải dữ liệu và chất lượng dữ liệu trong thiết kế dữ liệu của
kho dữ liệu
19 Trình bày các nội dung về gói thông tin trong bước xác định yêu cầu của dự án kho dữ liệu
20 Trình bày các nội dung về nguồn thông tin hiện tại, miền chủ đề, độ đo hiệu năng chủ yếu, tần suất thông tin trong quá trình phỏng vấn xác định yêu cầu xây dựng kho dữ liệu
21 Trình bày nội dung năm pha của phương pháp nắm bắt yêu cầu JAD (serious joint application
development) (xác định dự án, nghiên cứu khảo sát, chuẩn bị, các phiên làm việc, hoàn thiện tài liệu)
B Phần trắc nghiệm (khoảng 40-60% điểm): Toàn bộ nội dung đã học
Trang 2TRẢ LỜI
Câu 1: Các đặc điểm phân biệt giữa hệ thống Cơ sở dữ liệu và hệ thống Khai phá dữ liệu
Trả lời:
Đặc điểm phân biệt Hệ thống Cơ sở dữ liệu Hệ thống Khai phá dữ liệu
Tri thức miền Cần có một giả thiết “đầy đủ” về tri
thức miền phức tạp
Giả thiết tri thức “đầy đủ” không còn
có tính cốt lõi, cần bổ sung tri thức cho
hệ thống để cải tiến (nâng cấp) miền trithức
Câu hỏi
- Câu hỏi cụ thể, riêng biệt: “Hãy hiển thị số tiền Ông Smith trong
ngày 5 tháng Giêng?” ghi nhận riêng
lẻ do xử lý giao dịch trực tuyến
(on-line transaction processing – OLTP)
- Câu hỏi thống kê: “Có bao nhiêu nhà đầu tư nước ngoài mua cổ phiếu
X trong tháng trước?” ghi nhận thống kê do hệ thống hỗ trợ quyết định thống kê (stastical decision
suppport system - DSS)
- Câu hỏi OLAP: “Hiển thị mọi cổ phiếu trong CSDL với mệnh giá
tăng?” ghi nhận dữ liệu đa chiều do
xử lý phân tích trực tuyến (on-line
analytic processing - OLAP)
- “Các cổ phiếu tăng giá có đặc trưng
- “Những người mua sản phẩm Y có đặc trưng gì ?”
Kích thước hệ thống Kích thước bé hơn, thông tin lấy từ
cơ sở dữ liệu, kho dữ liệu, cơ sở dữ liệu chuyên biệt
Kích thước lớn hơn, thông tin lấy từ nhiều nguồn khác nhau như cơ sở dữ liệu, kho dữ liệu, cơ sở dữ liệu chuyên biệt, world wide web và các kiểu kho chứa thông tin khác; ngoài ra còn bao gồm các thành phần khai phá dữ liệu
và đánh giá các mẫu khai phá được
Kỹ thuật Chủ yếu là các kỹ thuật xử lý
transaction, cập nhật
Chủ yếu là các kỹ thuật tiền xử lý dữ liệu, phân tích dữ liệu bằng thống kê hay học máy
Trang 3Câu 2: Tiền xử lý dữ liệu
Trả lời:
Làm sạch dữ liệu
Là quá trình
Trang 4o xác định tính khơng chính xác, khơng đầy đủ/tính bất hợp lý của dữ liệu
o chỉnh sửa các sai sĩt và thiếu sĩt được phát hiện
o nâng cao chất lượng dữ liệu
o quan trọng, “một trong ba bài tốn lớn nhất của kho dữ liệu”(Ralph Kimball)
Quá trình bao gồm
o kiểm tra định dạng, tính đầy đủ, tính hợp lý, miền giới hạn,
o xem xét dữ liệu để xác định ngoại lai (địa lý, thống kê, thời gian hay mơi trường) hoặc các lỗi khác,
o đánh giá dữ liệu của các chuyên gia miền chủ đề
Quá trình thường dẫn đến
o loại bỏ, lập tài liệu, kiểm tra liên tiếp và hiệu chỉnh đúng bản ghi nghi ngờ
o Kiểm tra xác nhận cĩ thể được tiến hành nhằm đạt tính phù hợp với các chuẩn áp dụng, các quy luật, và quy tắc
Các bài tốn thuộc làm sạch dữ liệu và giải pháp cho các bài tốn đĩ
o Xử lý giá trị thiếu
Bỏ qua bản ghi cĩ giá trị thiếu (thường làm khi thiếu nhãn phân lớp và tỉ lệ số giá trị thiếu khơng lớn)
Điền giá trị thiếu bằng tay
Điền giá trị thiếu tự động (điền giá trị khả năng nhất dựa trên suy luận sử dụng Nạve Bayes, Decision Tree, điền trung bình giá trị thuộc tính các bản ghi hiện cĩ hoặc các bảnghi cùng lớp, điền hằng tồn cục…)
o Xử lý dữ liệu nhiễu: định danh ngoại lai và làm trơn
Phương pháp đĩng thùng Binning
Phương pháp phân cụm Clustering (phát hiện và loại bỏ ngoại lai - outliers)
Phương pháp hồi quy (làm trơn dữ liệu theo các hàm hồi quy)
Phương pháp kết hợp kiểm tra máy tính và con người
o Chỉnh sửa dữ liệu khơng nhất quán
o Giải quyết tính dư thừa tạo ra sau tích hợp dữ liệu
Tích hợp dữ liệu
Tích hợp dữ liệu (Data integration):
o Kết hợp dữ liệu từ nhiều nguồn thành một nguồn lưu trữ chung
Tích hợp sơ đồ
o Tích hợp siêu dữ liệu từ các nguồn khác nhau
o Vấn đề định danh thực thế: xác định thực thể thực tế từ nguồn dữ liệu phức, chẳng hạn,
A.cust-id ≡ B.cust-#
Phát hiện và giải quyết vấn đề thiếu nhất quán dữ liệu
o Cùng một thực thể thực sự: giá trị thuộc tính các nguồn khác nhau là khác nhau
o Nguyên nhân: trình bày khác nhau, cỡ khác nhau, chẳng hạn, đơn vị quốc tế khác với Anh quốc
Nắm bắt dư thừa dữ liệu
o Một thuộc tính cĩ nhiều tên khác nhau ở các CSDL khác nhau
o Dữ liệu dư thừa cĩ thể được phát hiện khi phân tích tương quan
Chuyển dạng dữ liệu
Làm trơn (Smoothing): loại bỏ nhiễu từ dữ liệu
Trang 5 Tổng hợp (Aggregation): tóm tắt, xây dựng khối dữ liệu
Tổng quát hóa (Generalization): leo kiến trúc khái niệm
Chuẩn hóa (Normalization): thu nhỏ vào miền nhỏ, riêng
o Chuẩn hóa min-max
o Chuẩn hóa z-score
o Chuẩn hóa tỷ lệ thập phân
j : số nguyên nhỏ nhất mà Max(|v’|) < 1
Xây dựng thuộc tính/đặc trưng
o Thuộc tính mới được xây dựng từ các thuộc tính đã có
Rút gọn dữ liệu
Kho dữ liệu chứa tới hàng TB
o Phân tích/khai phá dữ liệu phức mất thời gian rất dài khi chạy trên tập toàn bộ dữ liệu
Rút gọn dữ liệu
o Có được trình bày gọn của tập dữ liệu mà nhỏ hơn nhiều về khối lượng mà sinh ra cùng (hoặc hầu như cùng) kết quả
Chiến lược rút gọn dữ liệu
o Kết hợp khối dữ liệu: Giảm thêm kích thước dữ liệu, sử dụng trình diễn nhỏ nhất đủ để giải bài toán, nên sử dụng dữ liệu khối lập phương khi trả lời câu hỏi tổng hợp thông tin
o Rút gọn chiều: Rút gọn đặc trưng, loại bỏ thuộc tính không quan trọng, sử dụng phương pháp cây quyết định, heuristic,…
o Nén dữ liệu
o Giảm tính số hóa – dữ liệu thành mô hình
o Rời rạc hóa và sinh cây khái niệm
Rời rạc hóa dữ liệu.
Câu 3:Luật kết hợp
Trả lời:
Ví dụ luật kết hợp
“98% khách hàng mà mua tạp chí thể thao thì đều mua các tạp chí về ôtô” ð sự kết hợp giữa
“tạp chí thể thao” với “tạp chí về ôtô”
Khái niệm
Cơ sở dữ liệu giao dịch
Tập toàn bộ các mục I = {i1, i2, …, ik}: “tất cả các mặt hàng”
Giao dịch: danh sách các mặt hàng (mục: item) trong một phiếu mua hàng của khách hàng
Giao dịch T là một tập mục
A A
A A
A
A
min new min
new max new min max
min v
mean v
v
_'= −
j
v v
10'=
Trang 6 Một giao dịch T là một tập con của I: T ⊆ I Mỗi giao dịch T có một định danh là TID.
A là một tập mục A ⊆ I và T là một giao dịch: Gọi T chứa A nếu A ⊆ T
Gọi A → B là một “luật kết hợp” nếu A ⊆ I, B ⊆ I và A∩B=∅
Luật kết hợp
Luật kết hợp A → B có độ hỗ trợ (support) s trong CSDL giao dịch D nếu trong D có s% các
giao dịch T chứa AB: chính là xác suất P(AB)
s = Support (A → B) = P(A∪B) : 1 ≥ s (A → B) ≥ 0
Luật kết hợp A → B có độ tin cậy (confidence) c trong CSDL D nếu như trong D có c% các
giao dịch T chứa A thì cũng chứa B: chính là xác suất P(B|A)
c = Confidence (A → B) = P(B|A) : 1 ≥ c (A → B) ≥ 0
Luật A → B được gọi là đảm bảo độ hỗ trợ s trong D nếu s(A → B) ≥ s
Luật A→B được gọi là đảm bảo độ tin cậy c trong D nếu c(A → B) ≥ c
Tập mục A có P(A) ≥ s>0 (với s cho trước, s còn gọi là độ hỗ trợ tối thiểu minsup) được gọi là
tập mục phổ biến
Luật A → B được gọi là luật mạnh nếu A, B là các tập mục phổ biến và luật A → B đảm bảo
độ tin cậy tối thiểu minconf
o P(A) ≥ minsup
o P(B) ≥ minsup
o confident(A→B) ≥ minconf
Bài toán
Cho trước CSDL giao dịch D và độ hỗ trợ tối thiểu minsup = s > 0, độ tin cậy tối
thiếu minconf = c > 0 Hãy tìm mọi luật kết hợp mạnh A → B
Thuật toán khai phá tập mục phổ biến Apriori
- Khai phá luật kết hợp gồm 2 bước
Bước 1: Sinh tất cả tập mục phổ biến
Bước 2: Sinh tất cả luật kết hợp mạnh từ tập mục phổ biến
- Khai phá tập mục phổ biến Apriori hoạt động theo nguyên tắc Quy hoạch động
+ Từ các tập Fi = {ci| ci tập phổ biến, |ci| = i} gồm mọi tập mục phổ biến có độ dài i
với 1 ≤ i ≤ k, đi tìm tập Fk+1 gồm mọi tập mục phổ biến có độ dài k+1
+ Trong thuật toán: Các tên mục i1, i2, … in (n = |I|) được sắp xếp theo một thứ tự cố định, thường được đánh chỉ số 1, 2, , n
Lập luận tính đúng đắn của thuật toán:
Mọi tập con của tập mục phổ biến cũng là tập mục phổ biến
Nguyên lý tỉa Apriori: Với mọi tập mục không phổ biến thì mọi tập bao không cần phải sinh ra/kiểm tra
Số lần duyệt cơ sở dữ liệu cực đại
Trong mỗi bước k, thuật toán Apriori đều phải duyệt CSDL D
Khởi động, duyệt D để có được F1 Các bước k sau đó, duyệt D để tính số lượng giao dịch t thoả từng ứng viên c của Ck , mỗi giao dịch t chỉ xem xét một lần cho mọi ứng viên c thuộc Ck
Như vậy số lần duyệt cơ sở dữ liệu cực đại là n lần (với n là số giao dịch trong CSDL D)
Trang 7Câu 4: Trình bày về bài toán phân lớp (quá trình hai pha xây dựng mô hình và sử dụng mô hình); trình bày thuật toán cây quyết định tìm luật phân lớp theo độ đo Information Gain hoặc độ đo GINI.
Trả lời:
Bài toán phân lớp:
Xây dựng mô hình: Tìm mô tả cho tập lớp đã có
o Cho trước tập lớp C = {C1, C2, …, Ck}
o Cho ánh xạ (chưa biết) từ miền D sang tập lớp C
o Có tập ví dụ Dexam=D1+D2+ …+ Dk với Di={d∈Dexam: d∈Ci}Dexam được gọi là tập ví dụ mẫu
o Xây dựng ánh xạ (mô hình) phân lớp trên: Dạy bộ phân lớp
o Mô hình: Luật phân lớp, cây quyết định, công thức toán học…
Pha 1: Dạy bộ phân lớp
Trang 8o Tách Dexam thành Dtrain (2/3) + Dtest (1/3) Dtrain và Dtest “tính đại diện” cho miền ứng dụng
o Dtrain : xây dựng mô hình phân lớp (xác định tham số mô hình)
o Dtest : đánh giá mô hình phân lớp (các độ đo hiệu quả)
Trang 9Thuật toán cây quyết định tìm luật phân lớp theo độ đo IG hoặc độ đo GINI
Cây quyết định
o Gốc: tên thuộc tính; không có cung vào + không/một số cung ra
o Nút trong: tên thuộc tính; có chính xác một cung vào và một số cung ra (gắn với điều kiện kiểmtra giá trị thuộc tính của nút)
o Lá hoặc nút kết thúc: giá trị lớp; có chính xác một cung vào + không có cung ra
Độ đo Gini
o Đo tính hỗn tạp của một tập ví dụ mẫu
o Công thức tính độ đo Gini cho nút t:
o Trong đó p(j|t) là tần suất liên quan của lớp j tại nút t
o Gini (t) lớn nhất = 1-1/nc (với nc là số các lớp tại nút t): khi các bản ghi tại t phân bố đều cho nclớp; tính hỗn tạp cao nhất, không có phân biệt giữa các lớp
o Gini (t) nhỏ nhất = 0 khi tất cả các bản ghi thuộc một lớp duy nhất
Ví dụ: Bốn trường hợp
Chia tập theo độ đo Gini
o Dùng trong các thuật toán CART, SLIQ, SPRINT
o Khi một nút t được phân hoạch thành k phần (k nút con của t) thì chất lượng của việc chia tính bằng
|(1
)(
j
t j p t
Gini
Trang 10trong đó
n là số bản ghi của tập bản ghi tại nút t,
ni là số lượng bản ghi tại nút con I (của nút t)
Độ đo Information Gain
o Thông tin thu được sau khi phân hoạch tập ví dụ
o Dùng cho các thuật toán ID3, họ C4.5
1
)(
1
)(
|(1
)(
j
t j p t
Gini
Trang 11o Lấy loga cơ số 2 thay cho loga tự nhiên
Tính toán entropy (t) cho một nút tương tự như Gini (t)
Độ đo Information Gain
Trong đó, n là số lượng bản ghi tại nút t, k là số tập con trong phân hoạch, ni là số lượng bản ghi trongtập con thứ i
o Độ đo giảm entropy sau khi phân hoạch: chọn thuộc tính làm cho Gain đạt lớn nhất
o C4.5 là một trong 10 thuật toán KPDL phố biến nhất
Hạn chế: Xu hướng chọn phân hoạch chia thành nhiều tập con
Cải tiến: Dùng GainRatio để khắc phục xu hướng chọn phân hoạch nhiều tập con
Câu 5: Trình bày thuật toán phân lớp Bayes bao gồm phát biểu định lý Bayes.
o Tìm c sao cho P(c|x) lớn nhất Tìm c sao cho P(x|c).P(c) lớn nhất
o P(c): tần suất xuất hiện của các tài liệu thuộc lớp c
o Vấn đề: làm thế nào để tính P(x|c)?
Ví dụ
o Một bác sỹ biết
+ Bệnh nhân viêm màng não có triệu chứng cứng cổ S|M: 50%
+ Xác suất một bệnh nhân bị viêm màng não M là 1/50.000+ Xác suất một bệnh nhân bị cứng cổ S là 1/20
o Một bệnh nhân bị cứng cổ hỏi xác suất anh/cô ta bị viêm màng não ?
Thuật toán Bayes
1 Giai đoạn học (training phase), sử dụng một tập học
Đối với mỗi phân lớp có thể (mỗi nhãn lớp) Ci∈C
+ Tính giá trị xác suất trước: P(Ci)+ Đối với mỗi giá trị thuộc tính xj, tính giá trị xác suất xảy ra của giá trị thuộc tính đó đối vớimột phân lớp Ci: P(xj|Ci)
2 Giai đoạn phân lớp (classification phase), đối với một ví dụ mới
entropy Gain
1
) ( )
(
)(
),()
|(
)(
),()
|(
C P
C A P C A P
A P
C A P A C P
=
=
0002.020
/1
50000/15.0)
(
)()
|()
|
S P
M P M S P S M P
Trang 12+ Đối với mỗi phân lớp Ci∈C, tính giá trị của biểu thức:
- Một tập D các tài liệu biểu diễn bản ghi các đặc trưng
- Một đo đo khoảng cách (Ơcơlit) hoặc tương tự:
- Một số k > 0 (láng giềng gần nhất)
Phân lớp tài liệu mới Doc được biểu diễn
- Tính khoảng cách (độ tương tự) từ Doc tới tất cả tài liệu thuộc D
- Tìm k tài liệu thuộc D gần Doc nhất
- Dùng nhãn lớp của k-láng giềng gần nhất để xác định nhãn lớp của Doc: nhãn nhiều nhất trongk-láng giềng gần nhất
Giả mã thuật toán K-NN
Câu 7: Trình bày thuật toán phân lớp SVM
Trả lời:
Thuật toán máy vector hỗ trợ (Support Vector Machine – SVM): được Corters và Vapnik giới thiệu vào năm 1995
SVM rất hiệu quả để giải quyết các bài toán với dữ liệu có số chiều lớn (như các vector biểu diễn văn bản)
* Các đặc trưng của thuật toán:
- Cho tập dữ liệu học: D = {(Xi, Ci), i=1,…n}
+ Ci Є {-1,1} xác định dữ liệu dương hay âm
- Tìm một siêu phẳng: αSVM d + b phân chia dữ liệu thành hai miền
- Phân lớp một tài liệu mới: xác định dấu của f(d) = αSVM d + b
+ Thuộc lớp dương nếu f(d) > 0
+ Thuộc lớp âm nếu f(d) < 0
i i
Y X
Y X D
Doc Cos D
Doc Sm
2 2
*)
,()
,(