You are on page 1of 20

2.1.1.

Dữ liệu trong thế giới thực không “sạch” :


 Không hoàn chỉnh (incomplete): thiếu giá trị thuộc tính, thiếu những thuộc tính quan trọng, mất
một số dữ liệu,…
 Nhiễu (noisy): dữ liệu bị lỗi hoặc dữ liệu nằm ngoài miền giá trị…
 Không nhất quán (inconsistent): không nhất quán trong cách đặt tên, không nhất quán trong
kiểu dữ liệu
2.1.2 Tại sao dữ liệu không “sạch”
 Dữ liệu không hoàn chỉnh có thể xảy ra vì một sô nguyên nhân:
 Một vài thuộc tính quan trọng không được cung cấp.
 Một số dữ liệu không được chọn lựa đơn giản bởi vì nó không được xem làm quan trọng tại
thời điểm nhập dữ liệu. Hay nói cách khác việc xem xét đữ liệu tại thời điểm nhập dữ liệu
và thời điểm phân tích là khác nhau.
 Vấn đề con người/ phần mềm / phần cứng. Dữ liệu không nhất quán với những dữ liệu đã
được lưu trước đó có thể bị xóa dẫn đên việc mất mát dữ liệu.
 Dữ liệu nhiễu có thể xảy ra vì một số nguyên nhân:
 Công cụ lựa chọn dữ liệu được sử dụng bị lỗi.
 Lỗi do con người hay máy tính lúc ghi chép dữ liệu.
 Lỗi trong quá trình truyền tải dữ liệu.
 Dữ liệu không chính xác cũng có thể là do không nhất quán trong việc đặt tên, định dạng dữ
liệu. Ví dụ thuộc tính date nếu được định dạng theo kiểu mm/dd/yyyy thì giá trị 20/11/2007
tại một bộ nào đó có thể bị xem là giá trị nhiễu...
 Dữ liệu không nhất quán có thể là do:
 Dữ liệu được tập hợp từ nhiều nguồn khác nhau.
2.1.3. Vài thuộc tính được biêu diễn bằng những tên khác nhau trong cơ sở dữ liệu
Ví dụ: thuộc tính customer ¡indentiicaion có thể là customer_1d trong cơ sở dữ liệu này nhưng là
cust_1d trong cơ sở dữ liệu khác. Vi phạm phụ thuộc hàm. Tại sao quá trình tiền xử lý dữ liệu lại quan
trọng? Quá trình làm sạch đữ liệu sẽ lắp đầy những giá trị Dị thiếu, làm mịn các dữ liệu nhiễu, xác định
và xóa bỏ những đữ liệu sai miền giá trị, và giải quyết vấn đề không nhất quán. Nếu người dùng cho
rằng đữ liệu là dơ thì họ sẽ không tin tưởng vào bắt kỳ kết quả khai thác nảo từ dữ liệu đó. Ngoài ra, dữ
liệu dơ có thể là nguyên nhân gây ra sự lộn xộn trong quá trình khai thác, cho ra kết quả không đáng
tin. Việc có một số lượng lớn dữ liệu dư thừa có thể làm giảm tốc độ và làm hỗn loạn quá trình tìm
kiêm tri thức. Rõ ràng, việc thểm vào quá trình làm sạch dữ liệu giúp chúng ta tránh những dữ liệu dư
thừa không cần thiết trong quá trình phân tích đữ liệu. Làm sạch đữ liệu là một bước quan trọng trong
quá trình tìm kiếm tri thức vì dữ liệu không có chất lượng thì kết quả khai thác cũng không có chất
lượng. Những quyết định có chất lượng phải dựa trên dữ liệu có chất lượng. Ví dụ: dữ liệu trùng lắp
hoặc bị thiếu có thể là nguyên nhân làm sai số liệu thống kê. Quá trình làm giàu dữ liệu, làm sạch dữ
liệu và mã hóa dữ liệu có vai trò quan trọng trong việc xây dựng data warehouse. Những tiêu chuẩn xác
định dữ liệu có chất lượng: Độ chính xác Độ hoàn chỉnh
2.1.4 Những nhiệm vụ chính trong quá trình tiền xử lý dữ liệu:
 Làm sạch đữ liệu (Data cleaning): Thểm vào những giá trị bị thiếu, làm mịn dữ liệu, nhận biết
hoặc xóa những dữ liệu sai miền 1á trị và giải quyết sự không nhất quán.
 Tích hợp dữ liệu (Data integration): Kết hợp nhiều cơ sở dữ liệu, khối đữ liệu hoặc từ nhiều file.
 Chuyền hóa dữ liệu (Data transformation): Chuẩn hóa và kết hợp đữ liệu.
 Thu gọn dữ liệu (Data reduction): Giảm bớt kích thước đữ liệu nhưng vẫn cho ra kết quả phân
tích tương tự. Một dạng của thu gọn dữ liệu là rời rạc hóa dữ liệu (Data discretization), rất có
ích cho việc phát sinh tự động khái niệm hệ thống thứ bậc từ dữ liệu só.
Phân 2.2. Tóm tắt dữ liệu Đề quá trình tiền xử lý dữ liệu thành công cần phải có bức tranh toàn diện về
dữ liệu của bạn. Kỹ thuật tóm tắt đữ liệu (Descriptive data summarization) có thể được sử dụng đề
nhận biết những thuộc tính đặc trưng của dữ liệu và nêu bật những chỗ mà giá trị dữ liệu được coi như
là nhiễu (noisy) hay là những phần tử cá biệt (outliers). Vì vậy, đầu tiên chúng ta giới thiệu những khái
niệm cơ bản của tóm tắt đữ liệu trước khi đi vào những công việc cụ thể của kỹ thuật tiền xử lý dữ liệu.
Đối với nhiều nhiệm vụ tiền xử lý dữ liệu, người sử dụng cần biết về những đặc điểm dữ liệu đối với lá
trị trung tâm và sự phân tán của dữ liệu. Những tiêu chuẩn đánh giá giá trị trung tâm bao gồm mean,
median, mode và midrange, những tiêu chuân đánh giá sự phân tán đữ liệu bao gồm quartile,
interquartile ranse (IQR) và variance. Những thống kê miêu tả này giúp ích trong việc hiểu sự phân bố
của dữ liệu. Đặc biệt là giới thiệu những khái niệm distributive measure, alpebralc measure và holistic
measure. Biết được các cách đo khác nhau sẽ giúp chúng ta chọn được một cách thực hiện hiệu quả cho
nó. 2.2.1 Đo lường giá trị trung tâm Trong phần nảy, chúng ta sẽ xem những cách khác nhau để đo giá
trị trung tâm của dữ liệu. Cách phổ biến nhất và hiệu quả nhất đề đo giá trị trung tâm của một tập hợp
dữ liệu là mean. Đặt x¡, x;,..., xx là một tập hợp N giá trị, ví dụ là những giá trị của thuộc tính như
salary (lương). Mean của tập hợp những giá trị đó là: Xxe= Wy/ XS tXy 2.) 1 N N i=l Tương ứng với
cách đo này là xây dựng hàm hợp average (avgQ trong SQL), được cung cấp trong những hệ thông cơ
sở dữ liệu quan hệ. Distributive measure là cách đo mà có thể được tính cho một tập hợp dữ liệu bằng
cách phân chia dữ liệu vào những tập con nhỏ hơn, tính toán cho mỗi tập con và sau đó trộn kết quả có
được đê đạt được giá trị đo lường cho tập dữ liệu bao đầu (toàn bộ dữ liệu). Sum(Q) và count(Q) là
những distributive measure bởi vì chúng có thể được tính theo cách đó. Ví dụ khác là max(Q) và
min(Q. Algebraic measure là cách đo mà có thể được tính bằng cách áp dụng một hàm đại số cho một
hoặc nhiều hơn một distributive measure. Theo đó, average (hay mean()) là một alpebraic measure vì
nó có thể được tính bằng sumQ) / countQ. Khi tính toán cho khói đữ liệu, sumQ và countQ được bảo
lưu trong tiền tính toán. Vì vậy, việc rút ra averape cho khối đữ liệu là dễ hiểu. Thỉnh thoảng, mỗi giá
trị x¡ trong một tập hợp có thể liên kết với một trọng lượng (tần số) w¡, với ¡ = l...., N. Trọng lượng
phản ánh ý nghĩa, sự quan trọng hoặc tần số xảy ra gắn với những giá trị tương tứng của chúng. Trong
trường hợp nảy, chúng ta có thể tính: Cách đo này được gọi là weiphted arithmetic mean hay weiphted
average. Lưu ý rằng weighted average là một ví dụ khác của algebraic measure. Mặc dù mean là một
con số hữu ích nhất cho việc mô tả một tập đữ liệu, nhưng nó không phải là cách tốt nhất đề đo giá trị
trung tâm của dữ liệu. Một vấn đề lớn với mean là tính nhạy cảm của nó với những giá trị cá biệt
(outliers). Thậm chí một số lượng nhỏ những giá trị cá biệt cũng có thể làm sai lệch mean. Ví dụ, lương
trung bình tại một công ty có thể bị đây lên bằng một vài người quản lý được trả lương cao. Tương tự,
số điểm trung bình của một lớp trong một kỳ thi có thể bị đây xuống thấp với một vài điểm số rất thấp.
Đề giải quyết ảnh hưởng gây ra bởi những giá trị cá biệt, chúng ta có thể sử dụng thay thế bằng cách
dùng trimmed mean, nghĩa là mean được tính sau khi cắt bỏ những giá trị cá biệt. Ví dụ, chúng ta có
thể sắp xếp dữ liệu salary theo thứ tự và xóa bỏ 2% những giá trị ở trên và 2% ở dưới trước khi tính
mean. Chúng ta nên tránh việc cắt bỏ một phần quá lớn đữ liệu (chẳng hạn 20%) ở cả phần đầu và cuối
vì điều đó có thể làm mắt những thông tin có giá trị. Ví dụ: ta có đữ liệu cho thuộc tính tuôi như sau: 3,
13, 15, 16, 19, 20, 21, 25, 40. Đề tính trmmed mean, đầu tiên ta cắt bỏ đi ở hai đầu một số giá trị, trong
trường hợp này ta sẽ cắt bỏ ở mẫu đầu một giá trị, như vậy các giá trị còn lại là: 13, 15, 16, 19, 20, 21,
25. Từ đó ta sẽ tính mean cho nhưng giá trị còn lại này. Đối với dữ liệu bị lệch, một cách đo tốt hơn
cho trung tâm của đữ liệu là median. Giả sử rằng tập đữ liệu được cho có N có giá trị phân biệt được
sắp xếp theo thứ tự tăng dần. Nếu N là lẻ, thì median là giá trị chính giữa của tập dữ liệu có thứ tự.
Ngược lại, nêu N chẫn, thì median là trung bình của hai giá trị chính giữa. Ví dụ: ta xét lại ví dụ về
thuộc tính tuổi trước đó _ Nếu tập hợp các giá trị của thuộc tính tuổi là: 13, 15, 16, 19, 20, 21, 25.
Trong trường hợp này tập hợp có 7 giá trị, như vậy medhian là giá trị của phần tử chính giữa, tức là
median = 19. - _ Nếu tập hợp các giá trị của thuộc tính tuổi là: 13, 15, 16, 18, 20, 21, 25, 30. Trong
trường hợp này tập hợp có 8 giá trị, như vậy median là trung bình của 2 phần tử chính giữa, tức là
median = (18 +20)/2 = 19. Holistic measure là cách đo mà có thể được tính trên toàn bộ tập dữ liệu. Nó
không thể được tính bằng cách phân chia dữ liệu thành những tập con và trộn những giá trị đạt được
khi đo lường từng tập con. Median là một ví dụ của holistic measure. Holistic measure thì tốn chi phí
đề tính hơn distributive measure. Tuy nhiên, chúng ta có thể xấp xi một cách dễ dàng giá trị median của
tập dữ liệu. Giả sử dữ liệu được nhóm trong những khoảng theo giá trị x¡ của chúng, và biết tần số (số
lượng giá trị đữ liệu) của từng khoảng. Ví dụ, con người được nhóm theo lương hằng năm của họ trong
những khoảng như là 10 - 20K, 20 - 30K,.... Đặt khoảng mà chứa tần số median là median ¡interval.
Chúng ta có thể xấp xỉ median của toàn bộ tập dữ liệu bằng cách dùng công thức : median = L¡ +
— }ém (2.3) †€„saen với L¡ là chặn đưới của median interval, N là số lượng giá trị trong toàn bộ tập
dữ liệu, ( #req )¡ là tổng tần số của tất cả các khoảng mà thấp hơn median interval, Íreqdmeaan là tần số
của median interval và width là chiều rộng của median Interval. Ví dụ: ta có đữ liệu của thuộc tính tuổi
được chia theo từng khoảng và có tần số tương ứng như sau: Giá trị median của tần số là 450, như vậy
median interval là khoảng 5 — l5, freqmeain = 450, width = lã - 5 = 10, L¡ = 5 (chặn dưới của khoảng
5 — 15), N = 1350 (số lượng các giá trị), $ eq )¡ = freqi.; = 200 (vì chỉ có một khoảng thấp hơn khoảng
5 — l5 là khoảng I — 5). Như vậy median trong giá trị là: median = Š5 + 3150/2200 0~35 450 Một
cách đo khác của giá trị trung tâm là mode. Mode của một tập dữ liệu là giá trị xây ra với tần số lớn
nhất. Có thể tần số lớn nhất tương tứng với nhiều giá trị khác nhau, khi đó có nhiều hơn một mode. Tập
dữ liệu với một, hai, ba mode lần lượt được gọi là unimodal, bimodal, trimodal. Tổng quát, một tập dữ
liệu có hai hoặc nhiều hơn mode được gọi là multimodal. Trường hợp đặc biệt, nếu mỗi 1á trị xảy ra
chỉ một lần, thì trường hợp này không có mode. Đối với tần số unimodal có đường cong lệch vừa phải
(không đối xứng), chúng ta có quan hệ sau: Mlean — mode = 3 x (mean — median) (2.43) Điều đó có
nghĩa là mode cho đường cong tần số unimodal lệch vừa phải có thể tính dễ dàng nêu biết giá trị mean
và median. Trong một đường cong tần số unimodal với phân bố dữ liệu đối xứng hoàn toàn, mean,
median, mode là cùng một giá trị trung tâm như hình 2.2. Tuy nhiên dữ liệu trong thực tế hầu hết đều
không đối xứng. Chúng có thể lệch dương. mode xảy ra tại g1á trị nhỏ hơn median hình 2.3; hoặc lệch
âm, mode xảy ra tại giá trị lớn hơn median hình 2.4. Midrange cũng có thể được dùng đê tính giá trị
trung tâm của tập đữ liệu. Nó là trung bình giá trị lớn nhất và giá trị nhỏ nhất trong tập hợp. Ví dụ: ta
xét lại ví dụ về thuộc tính tuổi trước đó 13, 15, 16, 18, 20, 21, 25. Midrange = (13 + 25)/2 = 19. Hình
22_ Dữ liệu đối xứng Hìmh 23 Dữ liệu lệch trái Mean Mode ' Median Hình 24 Dữ liệu lệch phải 2.2.2
Đo lường sự phân tán dữ liệu Mức độ mà đữ liệu số có khuynh hướng trải ra được gọi là sự phân tán,
sự dao động của dữ liệu. Những cách đo phổ biến nhất cho sự phân tán của đữ liệu là range, five-
number summary (dựa vào quartiles), Iinterquartile range và standard devrration (độ lệch chuẩn).
Boxplots là biểu đồ có thể vẽ được dựa vào five-number summary và là một công cụ hiệu quả cho việc
xác định những phần tử cá biệt (outliers). Range, Quartiles, Qutliers và Boxplots Đặt xị, x¿,..., xu là
một tập hợp giá trị cho một thuộc tính nào đó. Phạm vi của dữ liệu từ giá trị nhỏ nhất (minQ) đến giá trị
lớn nhất (maxQ). Giả sử đữ liệu được sắp xếp theo thứ tự số tăng dần. Percentile thứ k của tập dữ liệu
được sắp xếp là giá trị x¡ mà có k% dữ liệu bằng hoặc nhỏ hơn x¡. Median là percentile thứ 50. Ví dụ:
Nếu có 30% số phần tử của thuộc tính tuổi nhỏ hơn hay bằng giá trị 20 thì percentile thứ 30 sẽ bằng giá
trị 20. Percentile thứ 30 = 20 Những percentile được dùng phổ biến hơn median là quartiles. Quartile
đầu tiên Q; là percentile thứ 25, quartile thứ 3 Q; là percentile thứ 75. Những quartile, bao gồm cả
median, đưa ra vài số chỉ của giá trị trung tâm, sự trải dài, và hình dạng của sự phân bố. Khoảng cách
giữa quartile thứ nhất và thứ ba là cách đo đơn giản cho mức độ trải dài. Khoảng cách đó được gọi là
immterquartile range (IỌR), và được xác định như sau: IQR=Q;- Ôi. (2.5) Dựa vào nguyên nhân tương
tự khi chúng ta phân tích median trong phần 2.2.1, Q¡ và Q: là holistic measure. Một qui luật phô biến
cho việc xác định những phần tử cá biệt khả nghỉ là xem những giá trị đó có nằm bên ngoài ít nhất là
khoảng 1.5xIQR phía trên quartile thứ ba và phía dưới quartile thứ nhất (tức là một phần tử được xem
là cá biệt nếu giá trị của nó lớn hơn Q; + 1.5xIQR hay nhỏ hơn Q¡ — 1.5xIQR). Ví dụ: _ Nếu Q¡ = 60,
Q; = 100, như vậy IQR = Q; - Q¡ = 40 _ Xét phần tử 175: vì 175 > Q; + 1.5xIQR nên 175 là phần tử cá
biệt. Vì Q¡, median và Q; đều không chứa thông tin về những điểm đầu cuối của dữ liệu, một tóm tắt
đầy đủ hơn về hình dạng của dữ liệu có thể đạt được bằng cách cung cấp giá trị thấp nhất và giá trị cao
nhất. Đó là five-number summary. Five number summary của sự phân bố bao gồm median. quartile thứ
nhất, thứ ba và giá trị lớn nhất, nhỏ nhất được viết theo thứ tự : Minium, Q¡, Median,Q:, Maximum.
Boxplots là cách phô biến đề biểu diễn sự phân bố của đữ liệu. Boxplot biểu diễn five-number
summary như sau: Branch I Branch 2 Hình 25 Boxplot biếu diễn đữ liệu đơn giá cho các mặt hàng bán
tại AllElectronies e©_ Đầu cuối của hộp là những quartile Q¡ và Q:, vì vậy chiều dài hộp bằng IỌR. ®
Median được đánh dấu bằng một năm đường ngang bên trong hộp. e - Hai đường thắng bên ngoài hộp
(hay còn lại là whiskers) kéo dài đến giá trị nhỏ nhất (minimum) và giá trị lớn nhất (maximum). Đề giải
quyết những phần tử cá biệt trong boxplot, hai đường thắng bên ngoài hộp được kéo dài đến những giá
trị cực nhỏ hoặc cực lớn nếu và chỉ nếu những giá trị đó nằm trong khoảng 1.5xIQR tính từ những
quartile. Hai đường thắng nằm bên ngoài hộp kết thúc tại giá trị lớn nhất hoặc nhỏ nhất nằm trong
khoảng 1.5xIQR của quartiles. Những trường hợp còn lại sẽ được biêu diễn riêng lẻ. Boxplot có thể
được sử dụng đề so sánh những tập hợp đữ liệu tương thích với nhau. Ví dụ: Hình 2.5 cho thấy những
boxplot biểu diễn đữ liệu đơn giá cho một vài mặt hàng được bán tại các chi nhánh của AllElectromcs
trong khoảng thời gian được cho. Với chi nhánh 1, chúng ta thấy giá trị median là 80$, Q, là 60%, Q; là
100$. Chú ý hai giá trị nằm ngoài vùng 1.5xIQR được biểu diễn riêng lẻ là 172 và 202. Đó là những
phân tử cá biệt. Phương sai và độ lệch chuẩn Phương sai của N giá trị xị, Xa,..., Xa là lv — Iliể 1 2 ø=
—Y(x-x=— T——|W x, 2.6 yhŒ *) vIỀ” y0 „vị (2.6) với + là giá trị mean được định nghĩa trong
phương trình (2. 1). Độ lệch chuân ø là căn bậc hai của phương sai Ø”. Những tính chất cơ bản của độ
lệch chuẩn là: - G đo mức độ trải dài so với mean, nên được dùng chỉ khi mean được chọn là giá trị
trung tâm. - G= 0 khi không có độ trải, khi tất cả các số có cùng giá trị. Ngược lại ø > Phương sai và độ
lệch chuẩn là những algebraic measure vì chúng có thể được tính từ distributive measures. Đó là, N
( countQ trong SQL), >x; ( sumQ của xj và Yx/ (sumQ của x2) có thể được tính trong bất kỳ partition
nào và sau đó được trộn để cho ra phương trình (2.6). Vì vậy, việc tính toán phương sai và độ lệch
chuân là có thể trong những cơ sở dữ liệu lớn. 2.2.3 Các dạng đồ thị Bên cạnh bar chart, pie chart, line
graph, vốn được sử dụng nhiều trong việc biểu diễn các dữ liệu đồ thị hoặc thống kê, thì còn có nhiều
đạng đồ thị khác dùng để thể hiện thông tin tóm tắt và sự phân bố của đữ liệu. Chúng bao gồm
histopram, quantile plot, qq plot, scatter plot và loess curve. Những đồ thị như vậy rất có ích trong việc
xem xét, kiêm tra dữ liệu l cách trực quan. Biểu đồ histopram, hay còn gọi là biêu đồ tần suất
(ữequency histogram) là một phương pháp trực quan đề thể hiện tóm tắt sự phân bố của một thuộc tính
cho trước. Một histopram cho thuộc tính A sẽ phân hoạch dữ liệu của A vào những tập con rời nhau,
được gọi là bucket. Trong trường hợp điền hình, chiều rộng của các bucket này là bằng nhau (uniform
— đều). Mỗi bucket được biêu diễn bằng 1 hình chữ nhật có chiều cao bằng với SỐ lượng hoặc tần
suất của các giá trị nằm trong bucket đó. Nếu các giá trị của A là rời rạc, ví dụ như tên các loại ô tô, thì
một hình chữ nhật sẽ biêu diễn cho 1 loại giá trị củA, và đồ thị kết quả thông thường sẽ được gọi là bar
chart (biêu đồ cột). Trong trường hợp các giá trị của A là số thì người ta thường gọi đó là histopram.
Các luật phân hoạch dùng trong việc xây dựng histopram cho các thuộc tính số sẽ được trình bày tại
phần 2.5.4. Trong I histogram mà các bucket có chiều rộng bằng nhau, mỗi bucket sẽ biêu diễn một
khoảng giá trị băng nhau của thuộc tính sô A. Giá 1 đơn vị sản phâm Số sản phâm bán được 40 275 43
300 47 250 74 360 75 515 78 540 115 320 117 270 120 350 Bảng 21 Hình 2.6 biểu diễn 1 histopram
cho đữ liệu ở bảng 2.1, trong đó các bucket được định nghĩa bởi các khoảng giá trị bằng nhau biêu diễn
mức tăng 20$ và tần suất là số lượng Iem bán được. Histopram đã tồn tại ít nhất là I thế kỷ và được sử
dụng rộng rãi. Tuy nhiên, nó không hiệu quả bằng quantile plot, qq plot và boxplot trong việc so sánh
các nhóm “un1variate observatlion”. Hình 26 Histogram Quariile plot là một phương pháp hiệu quả và
đơn giản để có một cái nhìn tổng quan về sự phân bố của đữ liệu “univariate”. Đầu tiên, nó biểu diễn
tất cả dữ liệu của thuộc tính cho trước. Thứ hai, nó thểm vào những thông tin quantile. Kỹ thuật được
dùng ở bước này hơi khác một chút so với việc tính toán percentile trong phần 2.2.2. Cho xị, với ¡ từ1
đến n là dữ liệu được sắp xếp tăng dần sao cho x: là giá trị quan sát nhỏ nhất và xụ là lớn nhất. Mỗi giá
trị quan sát xị được đi kèm với một percentape f¡, cho biết có khoảng 100f¡% dữ liệu có giá trị nhỏ hơn
hoặc bằng xị. Chúng ta nói “khoảng” là vì có thể không có giá trị nào có fraction đúng bằng f¡. Chú ý
rằng 0.25 quantile tương ứng với quartile Q1, 0.5 quantile là median (trung vị còn 0.75 quantile là
quartile Q3. Đặt Nhưng con số này tăng với các bước tăng bằng nhau là 1/N, biến thiên trong khoảng
từ 1/⁄2N (hơi lớn hơn 0) đến 1-1/2N (hơi nhỏ hơn 1). Trên quantile plot, xị được đánh dấu cùng với f¡.
Điều này cho phép chúng ta so sánh được sự phân phối khác nhau dựa trên quantiles của chúng. Lấy ví
dụ. cho quantile plot của đữ liệu bán hàng trong 2 khoảng thời gian khác nhau. chúng ta có thể so sánh
giá trị Q1, Q2, Q3 của chúng. và những giá trị f¡ khác. Hình 2.7 cho thấy 1 quantile plot về dữ liệu giá
đơn vị sản phâm cho bảng 2.] Hình 27 Quandile piot Đồ thị Quarile-Quarrile (qq plot) ÓQO Plor đồ thị
hóa các quantile của 1 phân bố “univariate” với các quantile tương ứng của I phân bố “univariate”
khác.. Đó là công cụ trực quan hữu hiệu, cho phép người dùng quan sát xem có 1 sự thay đổi khi đi từ
phân phối này đến phân phối kia hay không. Giả sử chúng ta có 2 tập dữ liệu quan sát cho biến giá đơn
vị sản phâm lấy từ 2 chi nhánh khác nhau. Gọi x]. x2. ...xN là đữ liệu từ chi nhánh thứ nhất, và y].
y2. ..YM là dữ liệu từ nhánh thứ 2, mỗi tập dữ liệu được sắp xếp theo thứ tự tăng dần. Nêu M=N (nghĩa
là số điểm củà tập dữ liệu bằng nhau) thì chúng ta chỉ việc đánh dấu y¡ và xị, trong đó y¡ và xị đều là
(¡=0.5)/N quantile của tập dữ liệu tương ứng của chúng. Nếu M<N (nghĩa là chỉ nhánh 2 có ít đữ liệu
quan sát hơn chi nhánh 1) thì chỉ có M điểm trên qq plot. Trong đó, y¡ là quantle (¡-0.5)/M của dữ liệu
y, và được đi cặp cùng quantile (¡-0.5)/M của dữ liệu x. Sự tính toán này liên quan điển hình tới phép
nội suy. Hình 2.8 cho thấy 1 qq plot cho đữ liệu giá đơn vị sản phẩm của các sản phâm được bán tại 2
chi nhánh khác nhau của AllElectronics suốt 1 khoảng thời gian cho trước. Mỗi điểm tương ứng với
cùng 1 quantile cho mỗi tập đữ liệu, và cho thấy giá đơn vị sản phẩm của các sản phâm bán tại chỉ
nhánh 1 so với chi nhánh 2 tại cùng quantile đó. (Lưu ý. để dễ so sánh, ta vẽ bổ sung thểm 1 đường
thăng để biểu diễn cho trường hợp, với mỗi quantile thì giá đơn vị sản phẩm của 2 nhánh đều bằng
nhau. Ngoài ra, các điểm tô màu sẫm sẽ tương ứng với dữ liệu cho Q], trung vị - median, và Q3). Xét 1
ví dụ, trong hình vẽ này, điểm thấp nhất ở góc trái tương ứng với 0,03 quantile. Chúng ta thấy rằng tại
quantile này, giá đơn vị các sản phâm bán tại chỉ nhánh 1 hơi thấp hơn so với chi nhánh 2. Nói 1 cách
khác, 3% sản phẩm được bán tại chí nhánh 1 có giá thấp hơn hoặc bằng 408$, trong khi 3% số sản
phâm bán tại chi nhánh 2 có giá thấp hơn hoặc bằng 42$. Tại điểm quantile cao nhất, ta thấy rằng đơn
vị giá của các sản phẩm bán tại chi nhánh 2 lại thấp hơn 1 chút so với chỉ nhánh 1. Nhìn chung. ta ấy có
1 sự đổi hướng (shift) trong phân phối của chi nhánh 1 so với chi nhánh 2, trong đó giá đơn vị sản
phâm bán tại chi nhánh 1 vẻ thấp hơn so với chi nhánh 2. $caffer plof (Đồ thị phân tán) là một trong
những phương pháp đồ thị hiệu quả nhất để xác định xem có I quan hệ, 1 mẫu (pattern), hay I khuynh
hướng (trend) nào đó giữa 2 thuộc tính số hay không. Để xây dựng I plot, mỗi cặp giá trị sẽ được xem
như là 1 cặp tọa độ và được thể hiện dưới dạng điểm trên mặt phăng. Hình 2.11 cho thấy I scatter slot
ứng với tập dữ liệu ở bảng 2.1. Scatter plot là phương pháp hữu hiệu để cung cấp 1 cái nhìn ban đầu về
những đữ liệu “bivariate”. để trông thấy những cluster điểm, các giá trị cá biệt, hoặc khám phá những
môi quan hệ tương quan. Trong hình 2.9, chúng ta thấy 1 ví dụ về các tương quan thuận và nghịch giữa
2 thuộc tính trong 2 tập dữ liệu khác nhau. Hình 2.10 cho thấy 3 trường hợp mà ở đó không có sự
tương quan giữa 2 thuộc tính trong các tập dữ liệu cho trước. Hình 29 ScatIer plot— trường hỌp có sự
[ong quan Hình 210 ScatIer plot— trường hợp không có sự tư0ng quan Khi phải xem xét nhiều hơn 2
thuộc tính, người ta sử dụng ma trận scatter plot (là một dạng mở rộng của scatter plot). n thuộc tính,
ma trận scatter plot sẽ là l lưới nxn scatter plot cung cấp cái nhìn trực quan của từng thuộc tính với mỗi
thuộc tính khác. Ma trận scatter plot trở nên kém hiệu quả khi số chiều cần khảo sát tăng lên. Hình 21]
ScatIer plot Đường cong hôi qui cục bộ (loess curve — local repression curve) là ] công cụ đồ thị hữu
hiệu khác. Người ta bổ sung thểm 1 đường cong trơn vào scatter plot nhằm cho thấy 1 cái nhìn tốt hơn
về sự phụ thuộc. Từ “loess” có nghĩa là hồi qui cục bộ. Hình 2.12 cho thấy 1 đường cong hỏi qui cục
bộ cho tập dữ liệu trong bảng Hình 212 Đường cong hồi qui cục bộ Đề khớp (ñt) 1 đường cong hồi qui
cục bộ, cần 2 tham số là alpha — tham số trơn và lambda, bậc của đa thức hỗồi qui. Alpha có thể là bất
cứ số dương nào (thường ta chọn alpha nằm giữa 1⁄4 và 1), còn lambda có thể là 1 hoặc 2. Mục đích
của việc chọn alpha là để tạo ra 1 đường cong vừa vặn, càng trơn càng tốt và không bóp méo quá đáng
những pattern cơ bản bên trong dữ liệu. Alpha càng lớn thì đường cong càng trơn, nhưng sẽ kém vừa
vặn. Nếu alpha rất nhỏ thì các pattern cơ bản bên trong sẽ được đánh dấu (?). Nếu các pattern cơ bản
của dữ liệu có 1 độ cong 'đẹp' và không có các điểm cực trị cục bộ thì chỉ cần dùng đường tuyến tính
cục bộ (lambda = 1). Tuy nhiên nêu có các điểm cực trị thì cần phải dùng đến các đường cong bậc 2
(lambda = 2). Tóm lại, sự tóm tắt dữ liệu cung cập Ì cái nhìn giá trị về đặc điêm tông quát của đữ liệu.
Băng cách xác định các nhiễu và giá trị cá biệt, chúng rât hữu ích cho việc làm sạch dữ liệu. Phân 2.3.
Làm sạch dữ liệu (data cleaning) Dữ liệu trong thế giới thực có xu hướng không hoàn chỉnh, nhiễu và
không nhất quán. Quá trình làm sạch dữ liệu lấp đầy những giá trị bị thiếu, làm mịn các giá trị nhiễu,
xác định những giá trị cá biệt và giải quyết vấn đề không nhất quán trong dữ liệu. Trong phần này,
chúng ta sẽ tìm hiểu các phương pháp làm sạch dữ liệu cơ bản. 2.3.1 Dữ liệu bị thiếu (missing) Tưởng
tượng là bạn cần phải phân tích dữ liệu bán hàng của AllElectronics và dữ liệu khách hàng. Chú ý là
nhiều bộ có những giá trị không được lưu cho vài thuộc tính, chăng hạn như thu nhập của khách hàng
(income). Bạn có thể làm đầy những giá trị bị thiếu cho những thuộc tính đó như thế nào? Hãy xem
những phương pháp sau: 1. Bỏ qua những bộ thiếu giá trị (Ignore the tuple): Phương pháp này thường
dùng khi nhãn lớp bị thiếu (giả sử việc khai thác bao gồm phân lớp). Phương pháp này không hiệu quả
nêu bộ không chứa một vài thuộc tính bị mất giá trị. Nó đặc biệt tệ trong trường hợp số lượng giá trị bị
thiêu trên mỗi thuộc tính lớn. 2. Làm đầy bằng tay: Tông quát, cách tiếp cận này tốn nhiều thời gian và
có thể không khả thi với một tập dữ liệu lớn có nhiêu giá trị bị thiếu. 3. Làm đầy băng hăng số toàn
cục: Thay thế tất cả các giá trị bị thiếu bằng cùng một hăng sô, như là một nhãn “Unknown” or -s. Nêu
những giá trị bị thiêu ° được thay thế bằng “Unknown” thì chương trình khai thác có thể gặp lỗi khi
nghĩ rằng đó là một giá trị đáng lưu ý vì nó xuất hiện với tần số cao trong dữ liệu. Mặt dù phương pháp
này đơn giản, nhưng nó không hiệu quả. Ví dụ: các giá trị bị thiếu được thay thế bằng hằng
“Unknown” 4. Dùng giá trị trung bình của thuộc tính: Ví dụ, giá trị trung bình của thuộc tính tuôi là 35
thì giá trị đó được dùng để thay thế những giá trị bị thiếu trong thuộc 5. Dùng giá trị trung bình cúa tất
cá các bộ thuộc về cùng 1 lớp với bộ đã cho: Những giá trị bị thiêu sẽ được thay bằng giá trị trung bình
của các giá trị thuộc cùng lớp với bộ bị thiếu. Phương pháp này gần giống với phương pháp 4 nhưng
khác ở chỗ nêu phương pháp 4 thay thế bằng giá trị trung bình của tất cả các bộ thì phương pháp này
thay bằng giá trị trung bình của các bộ thuộc cùng lớp với bộ đang xét. Ví dụ: nêu phân chia khách
hàng theo độ tuôi từ 1 — 20, 20 - 30, 30 — 50,.... và mean của các giá trị thuộc lớp 20 — 30 là $45000
thì giá trị bị thiểu của thuộc tính income (thu nhập) ở bộ có ID bằng 03 sẽ được thay thế bằng $45000
(vì bộ 03 thuộc lớp 20 — 30). Income 6. Dùng giá trị có nhiều khá năng nhất (most probable): Phương
pháp này có thể được quyết định bằng hồi quy, dựa vào những công cụ suy luận như là phương pháp
Bayesian hoặc cây quyết định. Ví dụ, sử dụng những thuộc tính khác trong tập dữ liệu của bạn, bạn có
thể xây dựng cây quyết định để dự đoán những giá trị bị thiếu của thuộc tính income. Cây quyết định,
hồi quy hay phương pháp Bayesian được mô tả chỉ tiết trong chương 6. Những giá trị được làm đầy có
thể không chính xác. Tuy nhiên, phương pháp 6 là một chiến lược phô biến. So với những phương
pháp khác, nó sử dụng thông tin tốt nhất từ dữ liệu hiện có đề dự đoán những giá trị bị thiếu. Bằng việc
dùng những 27 giá trị của các thuộc tính khác để ước lượng những giá trị bị thiếu cho income, có một
khả năng lớn hơn là mối quan hệ giữa income và những thuộc tính khác được bảo toàn. Một lưu ý quan
trọng là, trong một vài trường hợp, giá trị bị thiếu có thể không dẫn đến lỗi trong dữ liệu. Ví dụ, khi á p
dụng cho credit card, những ứng viên có thể được yêu cầu cung cấp mã số bằng lái xe cua họ. Những
ứng viên mà không có bằng lái xe sinhra một trường trống một cách tự nhiên. Những dạng đó nên cho
phép những giá trị đặc biệt như là “not applicable”. Những công việc của phần mềm có thể được sử
dụng để phát hiện những giá trị null khác, như là “don't know”, “?°. hoặc “none”. Một thuộc tính nêncó
một hoặc nhiều hơn những quy luật xem xét cho trường hợp null. Những quy luật đó có thể xác định cụ
thể cho phép có giá trị null hay không. hoặc là những giá trị đó sẽ đuợc giải quyết hoặc chuẩn hóa như
thế nào. Một trường có thể được đề trông nếu nó được cung cấp trong bước tiếp theo của quá trình. Vì
vậy, một thiết kế tốt của cơ sở đữ liệu và của quá trình nhập dữ liệu nên giảm đến mức tối thiểu số liệu
những giá trị bị thiếu hoặc sai ngay từ bước đầu tiên. 2.3.2 Dữ liệu bị nhiễu (noisy) Một số kỹ thuật làm
mịn đữ liệu: 1. Bining: Phương pháp bining làm mịn đữ liệu đã được sắp xếp băng cách tham khảo
những giá trị xung quanh nó. Những giá trị đã được sắp xếp được phân chia vào một số “bucket” hay
gọi là bín. Vì phương pháp bining tham khảo những giá trị xung quanh, nên đây là phương pháp thực
hiện việc làm mịn dữ liệu cục bộ. Xét một ví dụ minh họa vài kỹ thuật binng: Dữ liệu về price (giá) đã
được sắp xếp theo thứ tự tăng dần (theo đơn vị đollars): 4, 8, 9, 15, 21, 21, 24, 25, 26, 28,29. 34 * Phân
chia vào các bi: - Bm Ï: 4, 8, 9, 15 - Bm 2: 21, 21, 24, 25 - Bm 3: 26, 28, 29, 34 * Làm mịn bằng bin
means: - Bm 1:9,9 9,9 - Bm 2: 23, 23, 23, 23 - Bm 3: 29, 29, 29, 29 * Làm mịn bằng bin boundaries: -
Bm l1: 4, 4, 4, 1Š - Bm 2: 21, 21, 25, 25 - Bm 3: 26, 26, 26, 34 Trong ví dụ này, đữ liệu về price đầu
tiên được sắp xếp và sao đó được phân chia vào những bín mật độ bằng nhau có kích thước là 3 (mỗi
bin chứa ba giá tr). - Trong kỹ thuật làm mịn dữ liệu bằng bin means (smoothing by bin means), mỗi
giá trị trong một bin được thay thế bởi giá trị mean của bị đó. Ví dụ, mean của giá trị 4, 8, 9 và l5 trong
bín 1 là 9. Vì vậy, mỗi giá trị ban đầu trong bin này được thay thế bằng giá trị 9. - Tương tự, trong kỹ
thuật làm mịn bằng bin medians (smoothing by bin medians), mỗi giá trị trong bin được thay thế bằng
giá trị bin median. - Trong kỹ thuật làm mịn bằng bin boundaries (smoothing by bỉn boundaries), giá trị
minimum và maximum trong bín được xem là bịn boundaries (giá trị biên). Mỗi giá trị trong bin được
thay thế bằng giá trị biên gần nó nhất. Ví dụ, các biên của bin 1 là 4 và 15, gía trị 8 gần với biên 4 hơn
so với biên 15 nên được thay bằng 4. Bining sẽ được thảo luận chỉ tiết hơn trong phần 2.6. 2.
Regression: Dữ liệu được làm mịn bằng cách làm khớp dữ liệu với một hàm. Linear regression (Hồi
qui tuyến tính) bao gồm việc tìm đường thăng tốt nhất khớp với hai thuộc tính (hoặc biến), vì vậy một
thuộc tính có thể được dùng đề dự đoán thuộc tính còn lại. Từ đó, một cách trực quan ta dễ dàng xác
định được các giá trị cá biệt (là những giá trị nằm hắn bên ngoài so với đường thăng tìm được).
Multiple lnear regression là một mở rộng của linear repression, khi đó có nhiều hơn hai thuộc tính và
đữ liệu được khớp trên mặt phăng đa chiều. Regression được mô tả chi tiết hơn trong phần 2.5.4 cũng
như trong chương 6. Hình 213 Minh họa kỹ thuật hồi gui 3. Clustering(gom cụm): Những phần tử cá
biệt có thể được phát hiện bằng phương pháp clustering. Những giá trị tương tự nhau theo môi tiêu
chuân nào đó được tổ chức vào trong các nhóm, hay là các cluster. Bằng trực giác, những giá trị nằm
ngoài tập hợp của các cluster có thể xem như là những phần tử cá biệt (Hình 2.14). Kỹ thuật này sẽ
được trình bày trong chương 7. Hình 214 Minh họa kỹ thuật clustering Nhiều phương pháp làm mịn đữ
liệu cũng là phương pháp để giảm số chiều dữ liệu. Ví dụ, kỹ thuật bining mô tả ở trên làm giảm số
lượng giá trị riêng biệt trên mỗi thuộc tính. Khái niệm phân cấp là một dạng rời rạc hóa dữ liệu có thể
được dùng cho việc làm mịn dữ liệu. Ví dụ, đối với thuộc tính Price có thể chia giá trị price thành
inexpensive, moderately-priced và expensive, vì vậy việc làm giảm số lượng giá trị có thể được giải
quyết bằng quá trình khai thác. Một vài phương pháp phân lớp như là mạng noron, gắn liền với kỹ
thuật làm mịn dữ liệu. Phân lớp được trình bảy trong chương 6. 2.3.3 Tiến trình làm sạch dữ liệu: Bước
đầu tiên trong tiễn trình làm sạch dữ liệu là phát hiện discrepancy (không nhất quán). Không nhất quán
có thể xảy ra do nhiều yếu tố bao gồm việc thiết kế form nhập liệu tệ (có nhiều trường chọn lựa), lỗi do
con người trong quá trình nhập liệu. lỗi do có ý (ví dụ không muốn tiết lộ thông tin cá nhân), dữ liệu lỗi
thời. Không nhất quán có thể sinh ra từ việc biêu diễn đữ liệu không thống nhất hoặc không thống nhất
trong việc dùng mã. Lỗi trong thiết bị lưu trữ đữ liệu, lỗi hệ thông là những nguyên nhân khác gây ra
vấn đề không nhất quán. Lỗi cũng có thể xảy ra khi dữ liệu được dùng cho mục đích khác với dự định
ban đầu. Phát hiện không nhất quán: tại lúc bắt đầu, dùng bất cứ kiến thức nào mà bạn có đề xem xét
những thuộc tính của dữ liệu. Ví dụ, miền giá trị và loại dữ liệu cho mỗi thuộc tính là gì? Những giá trị
nào có thể được chấp nhận cho mỗi thuộc tính? Tất cả giá trị có nằm ngoài vùng mong đợi hay không?
Mô tả đữ liệu tổng quát trong phần 2.2 được dùng để xác định xu hướng chính của dữ liệu và phát hiện
những phần tử cá biệt. Ví dụ, những giá trị mà lớn hơn độ lệch chuân hai lần có thể bị đánh dấu là
những phần tử cá biệt. Trong bước này, bạn có thể dùng kịch bản của mình hoặc sử dụng vài công cụ
sẽ thảo luận sau. Từ đó, bạn có thể tìm thấy những giá trị nhiễu, những giá trị cá biệt, những giá trị
không bình thường cần phải kiểm tra. Khi phân tích đữ liệu, nên cảnh giác sự không nhất quán trong
cách dùng mã hay bất cứ biêu diễn dữ liệu nào (như là “2004/12/25” và 25/12/2004” đối với thuộc tính
có kiêu ngày tháng). Field overloading là một nguyên nhân khác gây ra lỗi khi người thiết kế cố ép một
thuộc tình mới dùng những phần (bit) không được sử dụng của các thuộc tính khác đã định nghĩa trước
(ví dụ, dùng một bịt không được sử dụng của một thuộc tính mà vùng giá trị chỉ sử dụng 3] trên 32 bịt).
Dữ liệu nên được xem xét unique rule (qui luật duy nhất), consecutive rule (quy luật liên tiếp), và null
rule (qui luật cho các giá trị null). Qui luật duy nhất phát biểu rằng mỗi gía trị của một thuộc tính phải
khác với tất cả giá trị khác của thuộc tính đó. Quy luật liên tiếp phát biểu là không thiếu giá trị nào nằm
giữa giá trị nhỏ nhất và giá trị lớn nhất của thuộc tính, và tất cả giá trị cũng phải duy nhất. NuÌl rule xác
định sử dụng trường trống. dâu ?. ký tự đặc biệt hay chuỗi khác đề biêu thị cho giá trị null và những giá
trị này sẽ được xử lý như thế nào. Như đã đề cập trong phần 2.3.1, nguyên nhân làm thiếu dữ liệu có
thể bao gồm (1) do con người được yêu cầu cung cấp giá trị thuộc tính không thể hoặc không có (ví dụ,
thuộc tính mã số bằng lái xe bị trống bởi vì người này không có bằng lái): (2) người nhập liệu không
biết giá trị chính xác; (3) giá trị được cung cấp trong bước tiếp theo của quá trình. Null rule cần phải
xác định cách thức lưu trữ tình trạng null. Ví dụ, lưu 0 cho thuộc tính số, khoảng trống cho thuộc tính
ký tự, hoặc bất cứ quy ước nào có thể dùng được ( chăng hạn những entry như “don`y know” or “?°
nên được chuyên thành khoảng trống). Có một số công cụ thương mại khác có thể giúp đỡ trong bước
phát hiện sự không nhất quán. 24a serubbing foois đơn giản sử dụng kiến thức về miền gía trị ( kiến
thức về địa chỉ bưu điện và kiểm tra chính tả) để phát hiện lỗi và sửa lỗi. Những công cụ này dựa trên
việc phân tích cú pháp và kỹ thuật tập mờ khi làm sạch dữ liệu từ nhiều nguồn. 74a auditing foois tìm
sự không nhất quán bằng cách phân tích đữ liệu để tìm sự tương quan và gom nhóm đề phát hiện phân
tử cá biệt. Những công cụ này cũng có thể dùng kỹ thuật tóm tắt dữ liệu mô tả trong phần 2.2. Vài dữ
liệu không nhất quán có thể được sửa bằng tay. Ví dụ, những lỗi xây ra trong lúc nhập liệu có thể được
sửa bằng cách lần theo dấu vết trang. Tuy nhiên, hầu hết lỗi sẽ cần đến data transformation (chuyên hóa
đữ liệu). Đó là bước hai trong tiến trình làm sạch dữ liệu. Khi chúng ta tìm thấy sự không nhất quán,
chúng ta cân xác định và thực hiện việc biên đôi đê sửa chúng. Nhiều công cụ thương mại có thể giúp
đỡ trong bước chuyển hoá dữ liệu. Data migration tools cho phép những biển đôi được cụ thể, như là
thay thế chuỗi “sender” bằng “sex”. #7 (extraction“transfbrmation/loading) toois cho phép người dùng
xác định những biến đổi thông qua giao diện đồ họa (GUI). Những công cụ này chỉ hỗ trợ tập hợp
những biến đổi có giới hạn, vì vậy chúng ta thường chọn cách viết kịch bản theo ý khác hàng cho bước
này. Hai bước phát hiện sự không nhất quán và chuyên hoá dữ liệu được lặp đi lặp lại. Tuy nhiên trong
quá trình này có thể xảy ra lỗi và tốn nhiều thời gian. Vài sự biến đổi có thể phát sinh ra lỗi không nhất
quán. Một vài lỗi không nhất quán ân nắp có thể chỉ được phát hiện sau khi một cái khác đã được sửa.
Ví dụ, lỗi in ấn “2004” trong trường year có thể xuất hiện khi tất cả giá trị ngày đã được chuyển sang
dạng chuân. Những biến đổi thường được làm như là xử lý theo khối khi người dùng đợ mà không có
thông tin phản hồi. Chỉ sau khi việc chuyển đổi hoàn tất thì người dùng mới có thể quay lại và kiểm tra
không có giá trị khác thường nào được tạo ra. Việc lặp đi lặp lại nhiều lần được yêu cầu trước khi
người dùng thoả mãn. Bắt cứ bộ nào không thể được giải quyết một cách tự động bằng cách biến đổi sẽ
được ¡n ra file mà không có bất cứ sự giải thích nào xem như là nguyên nhân gây ra lỗi. Kết quả là, quá
trình làm sạch dữ liệu cũng mắt chất lượng từ việc thiểu sự tương tác. Những cách tiếp cận mới đề làm
sạch dữ liệu nhân mạnh việc làm tăng sự tương tác. Ví dụ, Pø/r s W?heel là một công cụ làm sạch dữ
liệu public (xem http://control.cs.berkeley.edu/abc) mà kết hợp cả phát hiện sự không nhất quán và
chuyền hóa đữ liệu. Người dùng dần dần xây dựng một dãy biến đổi bằng cách soạn và sửa lỗi từng
biến đồi, một bước tại một thời điểm, trên giao diện nhiều sheet trải dài. Những biến đôi có thể được
xác định bằng đồ hoạ hoặc bằng cách cung cấp ví dụ. Kết quả được hiên thị ngay lập tức trên màn hình.
Người dùng có thể hủy bỏ một thao tác biến đôi trước đó, vì vậy những lỗi thểm vào có thể được xoá.
Công cụ này thực hiện việc kiểm tra sự không nhất quán một cách tự động trên dữ liệu được biến đổi
trong lần gần nhất. Người dùng có thể dần dần phát triển và cải tiến những biến đổi khi mà sự không
nhất quán được tìm thấy, dẫn đến hiệu quả cao hơn và quá trình làm sạch dữ liệu hiệu quả hơn. Một
cách tiếp cận khác đề tăng sự tương tác trong quá trình làm sạch dữ liệu là việc phát triển ngôn ngữ cho
việc xác định những toán tử chuyên đôi dữ liệu. Việc này tập trung vào việc định nghĩa những mở rộng
mạnh mẽ hơn cho SỌL và những thuật toán mà cho phép người dùng diễn tả quá trình làm sạch dữ liệu
hiệu quả hơn. Việc cập nhật siêu dữ liệu là quan trọng để phản ánh tri thức. Điều đó sẽ giúp tăng tốc
quá trình làm sạch đữ liệu trong những phiên bản lưu trữ đữ liệu tương lai. Phần 2.4. Tích hợp và
chuyễn đỗi dữ liệu Khai thác dữ liệu thường đòi hỏi việc tích hợp dữ liệu, nghĩa là trộn dữ liệu từ nhiều
nguồn lại với nhau. Dữ liệu cũng cần phải được chuyên đổi sang những dạng thích hợp cho việc khai
thác. Phần này sẽ mô tả cả 2 quá trình: tích hợp và chuyên đổi dữ liệu.
2.4.1 Tích hợp dữ liệu (Data Integration)
“Tích hợp dữ liệu” nghĩa là sự kết hợp dữ liệu từ nhiều nguồn lại với nhau vào cùng một kho chứa một
cách chặt chế, mạch lạc. Những nguồn đữ liệu này có thể bao gồm các cơ sở đữ liệu (database), khối dữ
liệu (data cube), hoặc file. Có khá nhiều vấn đề cần phải quan tâm đến trong quá trình tích hợp đữ liệu,
trong đó có Sehema Integration và Object matching. Trên thực tễ, có nhiều thực thể tương đương nhau
nhưng có tên goi khác nhau ở các nguồn dữ liệu khác nhau. Ví dụ: ID và MASO Customer_ID và
cust_number Vấn đề xác định tính tương đương giữa các thực thể như vậy gọi là “Entity identification
problem”. Chúng ta có thể dựa vào các metadata của mỗi thuộc tính (gồm tên. ý nghĩa, kiêu dữ liệu,
khoảng giá trị, các giá trị null...) đê giải quyết phần nào vấn đề này. Các metadata này cũng giúp ích
trong việc chuyên đổi dữ liệu. Ví dụ: thuộc tính pay_type trong cơ sở dữ liệu này có thể mang giá trị là
°'H' hoặc *S” và mang giá trị “l” hoặc “2” trong l cơ sở dữ liệu khác. Do đó, bước này cũng liên quan
đến việc làm sạch dữ liệu mà chúng ta đã thảo luận ở phần trước. Một vấn đề quan trong khác là sự dư
thừa dữ liệu. Một thuộc tính (như tổng doanh thu hàng năm) có thể xem như dư thừa vì nó có thể được
suy ra từ các thuộc tính khác. Sự không nhất quán trong việc đặt tên các thuộc tính (hoặc các chiều dữ
liệu) cũng có thể gây ra sự dư thừa trong tập đữ liệu kết quả. Các thuộc tính dư thừa có thể được phát
hiện bằng cách sử dụng phân tích tương quan (correlation analysis). Dựa vào phép phân tích này, ta có
thể biết mức độ tương quan (nghĩa là mức độ phụ thuộc của thuộc tính này vào thuộc tính kìa) giữa 2
thuộc tính cho trước, dựa trên bộ dữ liệu có sẵn. Đối với thuộc tính số, ta có thể ước đoán độ tương
quan giữa chúng bằng cách tính hệ số tương quan (correlation coefficlent), còn gọi là “Pearsonˆs
product moment coefficent” — hệ số mômen tích Pearson. do Karl Pearson phát minh ra. Công thức
tính hệ số này như sau: Trong đó: - N: số record - ai. bị là giá trị của thuộc tính A và B trong record thứ
1 A,B. giá trị trung bình của A và B - Ga, Gp: độ lệch chuẩn của A và B - Y(a¡b): tông của tích vô
hướng AB (nghĩa là: với mỗi record, lấy giá trị của A nhân với giá trị của B trong cùng record đo). Lưu
ý rằng |ras| < l Các trường hợp xảy ra: - rAp > 0: A và B tương quan cùng chiều, nghĩa là A tăng khi B
tăng. Giá trị này càng lớn thì độ tương quan cảng lớn - rap = 0: Á và B độc lập với nhau - TAp <0: A
và B tương quan ngược chiều (A tăng khi B giảm). Ta thấy rằng. nếu 1á trị tuyệt đối của rAs lớn thì A
hoặc B có thể bị bỏ đi do trùng lắp dữ liệu. Có thể dùng scatter plot (tạm dịch: đỗ thị phân tán) để thấy
được sự tương quan giữa các thuộc tính. Lưu ý rằng, hai thuộc tính tương quan với nhau không có
nghĩa là giữa chúng có quan hệ nhân quả. Lấy ví dụ: khi phân tích một cơ sở dữ liệu về dân số, người ta
phát hiện ra rằng thuộc tính “số bệnh viện” và thuộc tính ”số vụ trộm xe hơi” trong 1 khu vực nào đó là
có tương quan với nhau. Điều đó không có nghĩa là cái này là nguyên nhân gây ra cái kia. Thực ra, cả 2
thuộc tính này liên quan tới Ì thuộc tính thứ 3, là “dân số”. Đối với dữ liệu rời rạc, quan hệ tương quan
giữa 2 thuộc tính A và B có thể được phát hiện bằng kiểm định chi square (chi bình phương). Giả sử A
có c giá trị rời rạc (ai, a›,... a.) và B có r giá trị rời rạc (bì, bạ,... b,). Các bộ dữ liệu mô tả A và B có thể
biêu diễn trong contingeney table, với c cột và r dòng. Ký hiệu (Ai. Bị) là sự kiện mà (A=ai; B=bj).
Mỗi (Ai, Bị) có I ô trong bảng. Giá trị chỉ-square được tính như sau: (O„—Ey) #=XX..- E, Trong đó oạ
là tần số quan sát (nghĩa là số lượng đếm được trong thực tế) của sự kiện (A¡, Bị) còn e là tần số mong
muốn của sự kiện (Ai, Bị), được tính như sau: _ cơunt(.4=a¡ )<count( B=b; ) Trong đó N là số record,
count(A=a,) là số bộ mà A=a; (trơng tự với coun((B,)). Tổng trong công thức (2.9) được tính với tất cả
r * e ô. Lưu ý rằng những ô “đóng góp” nhiều nhất vào giá trị chi-square chính là những ô mà số lượng
đêm được thực tế (o¡) khác xa so với số lượng mong muốn (e¡). Thống kê chi-square kiểm định giả
thuyết “2 biến A và B có độc lập với nhau”. Phép kiểm định này dựa trên 1 độ tin cây với (r-])#(c-l)
bậc tự do. Chúng ta sẽ minh họa cách sử dụng thống kê này trong ví dụ dưới đây. Nếu giả thuyết bị bác
bỏ, chúng ta có thể nói răng A và B có quan hệ với nhau, về mặt thông kê. Ví dụ cụ thể: Xét bảng đữ
liệu (2x2) sau. Kiểm tra xem Giới tính và sở thích đọc sách có liên quan gì với nhau hay không. Male
Female Total Fiction 250 (90) 200 (260) 450 Non-fiction 50 (210) 1000 (840) 1050 Total 300 1200
1500 Giả sử có l nhóm 1500 người tham gia l cuộc khảo sát. Người ta ghi nhận lại giới tính và thể loại
sách ưa thích của họ. Vậy là chúng ta có 2 thuộc tính cho mỗi người là giới tính và sở thích đọc sách.
Tần số quan sát của mỗi sự kiện được ghi nhận trong bảng trên, còn con số trong ngoặc đơn biêu diễn
tần số mong muốn. Ví dụ, tần sô mong muôn cho ô (male, fiction) là: __ cơunl[male)xcounl(ficHon) _
—— 300x450 —— Q( E1 — N = TTlán — 9Ú Lưu ý rằng, trong bất cứ dòng nảo, tông của các tần số
mong muốn cũng bằng với tổng tần số quan sát của dòng đó. Tương tự, tổng các tần số mong muốn
trong bắt cứ cột nào cũng băng với tông tân sô quan sát của cột đó. Ta tính được giá trị chi-square: _
(2350-90)? , (50-210)? , (200-360)? , (1000—840)? = 0 1 00. 1 380 840 = 281 + + 121.90 + 71.11+
30.48 Với bảng 2x2, bậc tự do là (2-1)x(2-1)=1. Với 1 bậc tự đo, giá trị x2 cần thiết để bác bỏ giả
thuyết (với độ tin cậy 0.001) là 10.828. Do giá trị XŸ ta tính được ở trên lớn hơn con số này nên chúng
ta có thể bác bỏ giả thuyết “giới tính và sở thích đọc sách độc lập với nhau”. Ta kết luận răng 2 thuộc
tính này có tương quan mạnh với nhau, với tập dữ liệu cho trước. Bên cạnh việc xác định sự dư thừa dữ
liệu giữa các thuộc tính, sự dư thừa còn có thể gặp ở mức bộ (tuple, record), nghĩa là có 2 hay nhiều bộ
giống nhau ở l thuộc tính nào đó. Việc sử dụng các table không chuân (thường dùng để tăng tốc độ xử
lý, nhờ hạn chế được phép kết - join) cũng là 1 nguyên nhân của việc dư thừa dữ liệu. Sự không nhất
quán cũng thường xuất hiện giữa những dữ liệu lặp khác nhau, do sự không chính xác của dữ liệu, hoặc
việc cập nhật dữ liệu chỉ được thực hiện VỚI một vài phần chứ không phải là toàn bộ thể hiện
(occurrence) của dữ liệu.. Lấy ví dụ, nếu 1 database đơn đặt hàng chứa thuộc tính tên người đặt hàng và
địa chỉ của họ, thay vì 1 khóa tham chiếu đến database người đặt hàng. thì sự không nhất quán có thể
xảy ra: cùng l tên người đặt hàng nhưng lại mang địa chỉ khác nhau trong database đơn đặt hàng. Một
vấn đề quan trong nữa trong tích hợp dữ liệu là phát hiện và xử lý xung đột giá trị dữ liệu. Ví dụ, với
cùng ] thực thể, giá trị các thuộc tính trong các nguồn dữ liệu khác nhau có thể khác nhau. Điều nảy có
thể xảy ra do sự thể hiện đữ liệu khác nhau. Ví dụ, cân nặng có thể được đo bằng các đơn vị khác nhau.
Với I chuỗi khách sạn. giá phòng ở các thành phố khác nhau có thể khác nhau, không chỉ về đơn vị tiền
tệ mà còn về dịch vụ và thuế. Một thuộc tính trong ] hệ thống có thể được ghi nhận ở 1 cấp độ trừu
tương thấp hơn thuộc tính tương tự ở trong 1 hệ thống khác. Ví dụ. thuộc tính total_sales trong 1
database có thể để ám chỉ tông doanh số của ] chi nhánh của hãng All_ Electromes, trong khi Ì thuộc
tính cùng tên trong ] database khác lại ám chỉ tổng doanh số của tất cả các cửa hàng của
All_Electronics ở ] địa phương cho trước. Khi thực hiện việc phép (matching) thuộc tính từ database
này sang database khác trong quá trình tích hợp dữ liệu, cần phải chú ý đặc biệt đến cấu frúc của dữ
liệu. Điều này nhằm đảm bảo rằng mọi phụ thuộc hàm của thuộc tính và các ràng buộc khóa ngoại
trong hệ thống nguồn phải được đâm bảo ở trong hệ thống đích. Ví dụ, trong ] hệ thống. thuộc tính
đdiscount có thể được áp dụcho I đơn đặt hàng, trong khi ở 1 hệ thống khác, nó được áp dụng cho từng
mặt hàng trong đơn hàng đó. Nếu điều nảy không được chú ý trước khi thực hiện việc tích hợp, các mặt
hàng trong hệ thống đích có thể sẽ không được “discount” chính xác. Sự khác biệt về ngữ nghĩa và cấu
trúc của dữ liệu gây ra 1 thách thức lớn trong việc tích hợp dữ liệu. Nếu công việc này được thực hiện
cân thận thì sẽ giảm thiệu hoặc tránh được sự dư thừa hoặc không nhất quán về đữ liệu trong tập dữ
liệu kết quả. Điều này giúp cải thiện độ chính xác và tốc độ của quá trình mining. 2.4.2 Chuyên đổi dữ
liệu (Data transformation) Trong việc chuyển đôi dữ liệu, đữ liệu được chuyển đổi hoặc hợp nhất thành
những dạng phù hợp cho việc khai thác. Chuyển đôi dữ liệu gồm những việc sau: - Làm mịn: khử nhiễu
cho đữ liệu. Có thể dùng các kỹ thuật như bimning, Tepression, clusterng. - Tập hợp dữ liệu: tóm tắt,
xây dựng các khối đữ liệu (data cube). Ví dụ: doanh số bán hàng hàng ngày có thể được tập hợp lại
thành doanh số của tháng hoặc năm. - Tổng quát hóa dữ liệu: các dữ liệu thô hoặc ở cấp thấp sẽ được
thay thế bằng những khái niệm cao hơn thông qua việc sử dụng 1 hệ thống phân cấp khái niệm. Ví dụ:
các đữ liệu rời rạc như “đường phố” có thể được tổng quát lên thành những khái niệm cao hơn như
“thành phố” hoặc “quốc gia”. Tương tự, giá trị của các thuộc tính số, như “tuổi” cũng có thể được
chuyển thành 292 CC các khái niệm ở mức cao hơn như “trẻ”, “trung niên” và “già” - Chuẩn hóa dữ
liệu: các dữ liệu thuộc tính sẽ được đưa về Ì khoảng nhỏ, như -1 đến 1, hoặc 0 đến I. - Xây dựng thuộc
tính mới: xây dựng thuộc tính mới và đưa vào tập thuộc tính nhằm phục vụ quá trình mining. Làm mịn
dữ liệu là l dạng của làm sạch dữ liệu đã được trình bày trong phần trước. Tập hợp và tổng quát hóa dữ
liệu là những dạng của quá trình “thu gọn đữ liệu” (data reduction) sẽ được đề cập đến sau. Trong phần
này, chúng ta tập trung trình bảy về chuân hóa đữ liệu và xây dựng thuộc tính mới. Một thuộc tính
được chuân hóa bằng cách đưa giá trị của nó vào 1 khoảng nhỏ xác định, như từ 0.0 đến 0.1. Chuân hóa
có ích trong các thuật toán phân lớp liên quan đến mạng neural, hoặc phân lớp và phân loại dựa vào độ
đo khoảng cách "người láng giềng gần nhất. Nếu sử dụng thuật toán “neural network backpropagation”
để khai thác phân lớp, thì việc chuân hóa dữ liệu với mỗi thuộc tính trong tập dữ liệu huấn luyện sẽ
giúp tăng tốc quá trình học. Với các phương pháp dựa vào khoảng cách, chuân hóa giúp ngăn chặn các
thuộc tính nằm trong ] khoảng giá trị lớn (vd: thu nhập). Có nhiều phương pháp để chuẩn hóa đữ liệu.
Chúng ta tìm hiểu 3 phương pháp là: chuân hóa min-max, chuẩn hóa z-score và chuân hóa tỉ lệ thập
phân. Chuẩn hóa min-max thực hiện việc chuẩn hóa tuyến tính trên đữ liệu gốc. Giả sử minA và maxA
là giá trị nhỏ nhất và lớn nhất của thuộc tính A. Chuẩn hóa min-max sẽ ánh xạ giá trị v của Ä sang giá
trị v` nằm trong khoảng [new_minA, new_maxA] bằng công thức sau: ' )—PHHa . . 'Z————(W€W
_ MãXi—H€W — HH) Ð H€M — mÌHa HGđXa — HH: Chuẩn hóa min-max bảo đảm mối quan hệ
giữa các giá trị của dữ liệu gốc. Nó sẽ phát hiện ra được các lỗi “vượt quá giới hạn” nếu các đữ liệu
input trong tương lai rơi ra ngoài khoảng giá trị ban đầu của A. Ví dụ: Giả sử rằng giá trị nhỏ nhất và
lớn nhất của thuộc tính thu nhập là là 12000 và 98000. Chúng ta muốn ánh xạ giá trị thu nhập vào
khoảng [0.0... 1.0]. Với chuân hóa min-max thì giá trị 73000 sẽ được chuyền thành: 73,600 —12,000
(1.0—0)-+0 =0.716 98,000 —12,000 Chuẩn hóa š-score Trong chuẩn hóa z-score, các giá trị của thuộc
tính A sẽ được chuân hóa dựa trên giá trị trung bình và độ lệch chuân của A. Một giá trị v của A sẽ
được chuân hóa thành giá trị v` bằng công thức sau: Chú thích: Ha: giá trị trung bình của A Øa: độ lệch
chuẩn của A Phương pháp chuân hóa này hữu ích trong trường hợp ta không biết được giá trị nhỏ nhất
và lớn nhất của A. hoặc khi có những giá trị cá biệt (outlier) “thống tr chuân hóa min-max Ví dụ: Giả
sử rằng giá trị trung bình và độ lệch chuẩn của thuộc tính “thu nhập” là 54000 và 16000. Với cách
chuẩn hóa z-score, giá trị 73000 sẽ được chuyên 73.600 —54,00O ` —————————=I.2^25
thành 16.000 Chuẩn hóa bằng tỉ lệ thập phân (decirmal scaling) Theo phương pháp này, giá trị v sẽ
được chuẩn hóa bằng cách đời dấu phây thập phân của nó, dựa vào giá trị tuyệt đối lớn nhất của A. Một
giá trị v sẽ được chuân hóa thành v” bởi công thức sau: Trong đó j là số nguyên nhỏ nhất sao cho Max(|
v'|) < I Ví dụ: Giả sử giá trị của thuộc tính A nằm trong khoảng từ -986 đến 917. Giá trị tuyệt đối lớn
nhất của A là 986. Vậy j=3 (vì 10?<986<10?). Giá trị 986 sẽ được chuẩn hóa thành -0.986 và 917 được
chuẩn hóa thành 0.917. Lưu ý rằng việc chuân hóa có thể làm thay đôi chút ít giá trị ban đầu, đặc biệt là
ở 2 phương pháp sau. Chúng ta cũng cần lưu lại các tham số chuẩn hóa (ví dụ như giá trị trung bình và
độ lệch chuẩn nếu dùng chuân hóa z-score) để các dữ liệu được bồ sung thểm sau này cũng được chuẩn
hóa theo cùng công thức. Trong việc xây dựng các thuộc tính mới (attribute construction), các thuộc
tính mới sẽ được tạo thành dựa vào các thuộc tính đã biết, sau đó được bổ sung để cải thiện độ chính
xác và độ hiệu biết về câu trúc của dữ liệu nhiều chiều. Ví dụ, chúng ta có thể bổ sung thuộc tính “diện
tích” dựa vào 2 thuộc tính “chiều rộng” và “chiều cao”. Việc kết hợp thuộc tính như vậy giúp phát hiện
ra những thông tin bị thiếu về mối quan hệ giữa các thuộc tính mà có thể hữu ích trong việc khai phá tri
thức. Phần 2.5. Thu gọn dữ liệu Yêu cầu về thu gọn đữ liệu được quan tâm khi bạn phải tiễn hành phân
tích trên một cơ sở dữ liệu không lồ chứa hàng Tetra-bytes đữ liệu (!). Một điều hiển nhiên là bạn
không thể tự phân tích bằng cách tự mình duyệt qua các bảng số liệu, do đó bạn phải tiễn hành phân
tích thông qua máy tính để thu được kết quả trong thời gian hợp lý. Tuy nhiên, đối với những cơ sở đữ
liệu có kích thước quá lớn như vậy thì ngay cả máy tính cũng phải mất hàng thế kỷ nếu phân tích trực
tiếp trên dữ liệu thô. Chính vì vậy, một số kỹ thuật thu gọn dữ liệu được đề xuất có khả năng rút ra
dạng biểu diễn rút gọn của đữ liệu thô mà vẫn đảm bảo tính toàn vẹn của đữ liệu. Các mô hình phân
tích dữ liệu nhờ đó sẽ được cải tiễn cả về mặt tốc độ lẫn chất lượng. Các kỹ thuật chính nhằm thu gọn
đữ liệu bao gồm : Lựa chọn tập thuộc tính (Attribute Subset Selection) : loại bỏ những thành phần dữ
liệu không liên quan hay liên quan ít đến mục đích phân tích đữ liệu để tăng tốc độ phân tích và giảm
nhiễu (gây ra bởi các thuộc tính dư thừa không liên quan) từ đó nâng cao chất lượng phân tích dữ liệu.
e Giảm chiều dữ liệu (Dimensionality Reduction) : chiêu các điểm dữ liệu (data-point) lên một không
gian ít chiều hơn nhằm đơn giản hoá dữ liệu mà không làm giảm chất lượng kết quả phân tích. ® Giảm
kích thước tập dữ liệu (Numerosity Reduction) : thay vì lưu trữ dữ liệu người ta chỉ quan tâm đến dạng
mô hình hóa tham số của dữ liệu. Các tham số này sẽ được ước lượng dựa trên tập dữ liệu thô ban đấu.
Sau đó người ta sẽ lưu trữ các tham số này thay vì toàn bộ dữ liệu. 2.5.1 Lựa chọn tập thuộc tính Trong
thực tế, dữ liệu cần phân tích có thể lên đến hàng trăm thuộc tính, trong đó nhiều thuộc tính không liên
quan hay không đóng góp đáng kể đến mục đích phân tích dữ liệu. Lấy ví dụ, một cửa hàng bán đĩa CD
muốn phân loại các khách quen (dữ liệu lưu trữ trong database) vào hai nhóm với tiêu chí là họ sẽ mua
hay không mua một mẫu sản phâm mới của họ để xác định chiến lược kinh doanh. Họ sẽ tiễn hành
phân tích đữ liệu của từng khách hàng để phân loại, dữ liệu này bao gồm thông tin cá nhân của khách
hàng và hồ sơ mua bán tại cửa hàng này. Như vậy, mỗi mẫu dữ liệu có thể bao gồm hàng trăm thuộc
tính và rất nhiều trong số đó không đóng góp øì cho việc phân tích như địa chỉ, số điện thoại vv... Vấn
đề đặt ra ở đây là làm sao loại bỏ được những thuộc tính không cần thiết đó hay nói cách khác là chọn
ra một tập con các thuộc tính có kích thước nhỏ nhất sao cho khi tiến hành phân tích dữ liệu trên tập
các thuộc tính này ta thu được một cấu trúc phân bố dữ liệu vào các lớp tương ứng có độ sai lệch ít nhất
so với cấu trúc phân bó thu được nếu ta phân tích trực tiếp trên tập đữ liệu thô (theo một tiêu chuẩn nảo
đó được định nghĩa trước). Đây là một vấn đề rất quan trọng vì khi quá trình phân tích dữ liệu chỉ tập
trung trên tập tối ưu các thuộc tính rút gọn đó thì chi phí tính toán sẽ giảm đi đáng kê và các mẫu tìm
được sẽ đơn giản dễ hiểu đồng thời đảm bảo được tính chính xác, tránh được các trường hợp kết quả
phân tích không chính xác do nhiễu (đa phân là xuất hiện ở các thành phần dữ liệu không liên quan đến
mục đích phân tích) Giả sử với mỗi mẫu đữ liệu ta có n thuộc tính thì sẽ có 2" tập con các thuộc tính,
do đó rõ ràng tiếp cận theo hướng vét cạn để giải quyết vấn đề này là không hiệu quả. Để giải quyết
vấn đề này các hướng tiếp cận thông thường là các phương pháp Heuristic, các phương pháp này chủ
yêu áp dụng nguyên lý Grecdy, đưa ra những quyết định tối ưu tại từng thời điểm đề thu gọn không
gian tìm kiếm và tiếp vat LÁ+ sat LÁ+ Những quyết định “tối ưu” tại mỗi thời điểm thường là xác định
những thuộc tính nào là có ảnh hưởng lớn đến sự phân bồ dữ liệu và những thuộc tính nào có ảnh
hưởng không đáng kế bằng các phương pháp, tiêu chuẩn thống kê ( giả sử là các thuộc tính độc lập xác
suất với nhau ) Các mô hình Heuristic nói trên thường là sự kết hợp của các phương pháp cơ bản sau
đây : ® StepwIse forward selectHon : Quá trình bắt đầu với một tập rỗng các thuộc tính, ở mỗi bước
thuộc tính “tốt” nhất trong các thuộc tính chưa thuộc tập tôi ưu sẽ được xác định thông qua một tiêu
chuân nào đó và them vào tập tôi ưu.torward Selection + Tập thuộc tính nguyên thủy : (ÁI, 2, Ai, Au
Ác, Ác} =5 lập thuộc tính chọn lọc : (A,.A,. A,} (reduced set) Hình 215 Forward Seleclion ® StepwIse
backward elimination : Quá trình sẽ bắt đầu với toàn bộ các thuộc tính. Ở mỗi bước những thuộc tính
“tồi” nhất sẽ được xác định và bỏ đi. Backward Elimination ¡_ Tập thuộc tính nguyên thủy : {ÁI, Áo,
¿, Au A¿, A,} +2 (A,,ÔA:, A, Ác, A2) 2 (A,A, A,, A} 2% (A.. A,. A,} (reduced set) Hình 2I6
Backward FEliminatione© Kết hợp Stepwise forward selection và Stepwise backward selection : Tại
mỗi bước chọn ra thuộc tính “tốt” nhất them vào tập tối ưu vả bỏ đi những thuộc tính “tồi” nhất trong
tập các thuộc tính còn lại. se Cây quyết định (Decision Tree) : áp dụng các thuật toán phô biến trên cây
quyết định như ID3, C4.5, CART. Tại mỗi nút trong của cây có một test kiêm định thuộc tính “tốt”
nhất, mỗi nút ngoài ứng với 1 class phân hoạch. Dữ liệu sẽ được đây từ trên xuống. những thuộc tính
nào xuất hiện trên cây sẽ là những thuộc tính trong tập tối ưu. Decision Tree Inducfion = Tập thuộc
tính nguyện thủy : (CÁI, Ấy, Ái, A, Ác, Ac} Hình 217 Decision Tree Induction Điều kiện dừng của các
phương pháp trên có thể tùy biến, phụ thuộc vào bản chất của từng vấn đề, thường là sẽ có một ngưỡng
kết thúc đê dừng quá trình chọn tập thuộc tính tối ưu. Ví dụ : điều kiện dừng của Forward Selection có
thể là khi thuộc tính tốt nhất có độ đo tầm quan trọng nhỏ hơn ngưỡng hay với Backward Elimination
thì điều kiện dừng có thể là khi độ đo tầm quan trọng của thuộc tính “tôi” nhất lớn hơn ngưỡng vv....
2.5.2 Giảm chiều dữ liệu Để giảm số chiều của đữ liệu (dữ liệu đa chiều) nhiều phương pháp mã hóa,
biến đổi dữ liệu được nghiên cứu với mục đích “nén” kích thước dữ liệu, tăng tốc xử lý mà không làm
ảnh hưởng đến kết quả phân tích. Chính vì vậy, người ta đưa ra khái niệm “lossless” và “lossy” trong
quá trình thu gọn kích thước dữ liệu. Cụ thể, nêu đữ liệu nguyên thủy có thể tái dựng lại hoàn chỉnh từ
đữ liệu đã chuyên đổi thì phép chuyên đổi tương ứng được xem là “lossless” ngược lại là “lossy”. Trên
thực tế, không tồn tại một phép biến đổi “lossless” làm giảm kích thước dữ liệu nên vấn đề người ta
quan tâm là nghiên cứu những phép biến đổi “lossy” mà sau khi biến đổi lượng thông tin mắt mát ít,
không ảnh hưởng đáng kể đến kết quả phân tích dữ liệu. Các kỹ thuật chính để giảm chiều dữ liệu gồm
có hai phương pháp là phân tích thành phần chính (Principle Component Analysis) và biến đổi wavelet
rời rạc (Discrete Wavelet Transform). 2.5.2.1 Mavelef Transform Discrete Wavelet Transform là một
phương pháp khá phô biên được sử dụng rộng rãi với nhiều biến thể. Thông dụng nhất có các dạng
Wavelet Transform như Haar-2, Daubechies-4. Daubechies-6. Mỗi dạng Wavelet Transform như vậy
được đặc trưng bởi một phép biến đổi riêng. Ý tưởng chính của phương pháp này là xem một mẫu đữ
liệu n thành phần như một vector n chiều ƒx¡, x¿,.... x¿ }. Mục tiêu của phép biến đổi là tạo ra một
vector độ dài tương ứng ƒy:, y›,..., y„ }, các thành phần của các vector này là các wavelet coefficients.
Đề giảm chiều đữ liệu người ta đề ra một ngưỡng (threshold),các coefficient nhỏ hơn ngưỡng này sẽ
được làm tròn về 0 và áp dụng lại phép biến đổi trên ƒy, ya..... va } ( sau khi làm tròn một số
coefficient dưới ngưỡng } ta sẽ thu được dữ liệu đã giảm chiều. Đa phần các dạng Wavelet Transform
đều rất phức tạp nên đê đễ hiểu ở đây chúng ta sẽ chỉ xem xét dạng Wavelet Transform đơn giản nhất :
Haar-2. Các ví dụ minh họa cũng sẽ được minh họa với dạng Wavelet Transform này. Phép biển đổi dữ
liệu của Haar-2 được đặc trưng bởi ma trận : Mỗi mẫu dữ liệu sẽ được biểu diễn dưới dạng vector :
ƒXo, Xi,..., Xan, Xan. }. Nếu số thành phần của x không là lũy thừa của 2 thì ta thểm 0 vào cho đủ rồi
biến đổi qua các bước sau : se BI : Gom nhóm 2 thành phần kề nhau (xo, Xi). ..., (Xan, Xzn-) e© B2:
Với mỗi vector (xz, xz:¡) ta nhân vào bên phải H; và thu được (xi + X21; X2¡~ Xai-l) . e© B3: Sắp xếp
lại (So, S¡..... Sa, fo, tị,.... tạ) trong đó : ©_ §S¡= Xãi T X2-, © tị =Xai— Xz¿l. se B4: Giữ nguyên ƒt}
và lặp lại quá trình trên cho ƒ so, sị,..., s„ } nếu n> l. Bản chất là ø1ữ lại các hiệu t¡ và tiếp tục biến đôi
các tổng Si. Khi quá trình kết thúc thì ta sẽ thu được dãy wavelet coefficients tương ứng. Sau đó tùy
thuộc vào threshold, ta sẽ làm tròn một số cocfficients về 0. Đề thu được dữ liệu giảm chiều ta làm
ngược lại phép biến đổi trên cho dãy coefficient fso, to, sĩ, tạ... } Ví dụ : Cho mẫu đữ liệu ƒ ao, ai, az, â;
}. ® TransÍorm sftep : ® Thu được : ƒ as— ai, ao † ai, â¿ — 8s, a; + aa } e©_ Sắp xếp lại ( nhằm giữ
lại phần sum và biến đổi phân hiệu ) ta được : ƒ ao — âi, 8a — âa, ao + ai, aa + a; } ( Không biến đổi
tiếp vì ƒ ao - ai, a; - a; } có độ dài bằng 2 ) se Để dựng lại dãy nguyên thủy ta sắp xếp lại hằng số : ƒ ao
— ai, ao + âi, â; — âa, aa + a; } và áp dụng Transform step cho dãy này ta thu được dãy { 2ao, 2a:, 2a.
2a; } ® thu lại được dãy nguyên thủy ban đầu. Trong trường hợp một số coefficient bị làm tròn về bằng
0, ví dụ ao — ai 3 0 thì ta thu được dãy { ao + ai, - (ao + ai), 2a;, 2a; }. Dãy này do có 2 thành phần đầu
đối dấu nhau nên chỉ cần lưu trữ một trong hai nên ta có thể thu gọn thành { ao + ai, 2a›, 2a: } *> siảm
chiều đữ liệu. Khi tiễn hành phân tích đữ liệu ta chỉ quan tâm đến dữ liệu đã giảm chiều ® tăng tốc độ
xử lý + kiểm soát được độ mắt mát đữ liệu. 50 Sơ đô biến đổi + phục hồi dữ liệu : Transform - S_ *®|
[ Transform Step | 3 A:B, Ai 3[ Transform Step | 3 A:B; Aa 2[ Transform Step | 3 Aa-:Ba-¡ >> [|
Truncated | 3 A›.:B,.:... Bị Reconstruct : AmaBaai... Bị >[ Merge Aa.:B,.:¡ | 3® [ Transform Step | 3 A›
>> [ Merge A„Ba] “>> [ Transform Step | 3® À›+ >> [ Merge A:B; | “>[ Transform Step | 3 S Lưu ý :
Nếu lúc Transform ta bỏ qua bước Truncated (giữ nguyên vector coefficient) thì lúc Reconstruct ta sẽ
thu được § (chỉ khác biệt về độ lớn còn phương và chiều không đôi, trong thực tế S sẽ được chuân hóa
bằng cách scale về độ lớn =). 2.5.2.2. Primciple Component Ándlysis Principle Component Analysis
(PCA) là phương pháp hiệu quả đề phân tích dữ liệu đa chiều. Đối với những dạng đữ liệu đa chiều,
khả năng biểu diễn được chúng dưới dạng đồ thị để phân tích mẫu đối với chúng ta là rất hiểm do đó
phương pháp PCA được phát triển nhằm phân tích sự nhất quán và khác biệt của các mẫu dữ liệu.
Điểm nổi bật của PCA là nó cung cấp cho chúng ta một phương pháp làm giảm số chiều của đữ liệu,
nói cho chính xác là chiếu đữ liệu đa chiều lên một không gian ít chiều hơn mà không làm mắt mát quá
nhiều thông tin. Giả sử chúng ta có một tập đữ liệu gồm M mẫu dữ liệu N chiều. Với N lớn, việc phân
tích tập dữ liệu sẽ trở nên rất khó khăn nếu ta làm việc trực tiếp với dữ liệu thô. Ý tưởng chính ở đây là
ta sẽ tập trung phân tích những thành phần chính của các mẫu đữ liệu ( mỗi mẫu có N thành phần ứng
với N chiều ) để làm rõ sự nhất quán và khác biệt giữa các mẫu dữ liệu với nhau và đưa ra một chuân
đo hiệu quả về sự khác biệt đó ( nhằm phân lớp dữ liệu ). Như vậy.,vấn đề ở đây là làm sao ta biết được
thành phần nảo là thành phần chính có ảnh hưởng chủ yêu đến sự phân bố của các mẫu đữ liệu ? Đề
làm rõ vấn đề này chúng ta sẽ lần lượt khảo sát các bước phân tích dữ liệu sau đây : e© Chuẩn hóa dữ
liệu : Ở bước này chúng ta sẽ sử dụng những mẫu dữ liệu 2 chiều (x.y) để minh họa cho ý tưởng chính
và kê từ đây các bước sau cũng sẽ được minh họa bằng những mẫu dữ liệu 2 chiều này. Đối với mỗi
thành phần ta tính trung binh mẫu của chúng rồi trừ đi trung bình mẫu đó. Ví dụ : x + X + 25124 .ñ9 49
05107 -131 | -121 22129 39 .89 1922 a9 8 Data= 3.1 | 3.0 DataAdjust= 1.29 [ 108 Hình 218 Đồ thị biêu
diễn các mẫu dữ liệu hai chiều sau khi chuẩn hoá Tính ma trận Covariance : Ma trận Covariance được
xác định như sau : À# {C¡j =[CX, —A⁄eanXY,)(X , — MeanX,,) J/(M-1) } ;=l Đôi với ví dụ ở trên của
chúng ta thì ma trận Covarlance sẽ như sau : ¬... . .... ˆ \ .615444444. .T716555556 Xác định
eigenvectors và eIgenvalues tương ứng : Ờ đây trước khi đi vào vấn đề ta nhắc lại một chút về
©lpenvector và eieenvalue. Hai khái niệm này được định nghĩa trên ma trận vuông NN. Một ma trận
vuông N*N thì sẽ có đúng N eigenvectors và N eipenvaluestương ứng. Ví dụ : Hình 1 cho ví dụ về một
eipgenvector và một vector không phải eigen vector. (3,2) là một eigenvector và có tính chất là khi ta
nhân ma trận vuông vào bên trái của vector này thì được một vector khác tương tự về phương và chiều
chỉ khác biệt về độ lớn. Đó chính là tính chất đặc biệt của eigenvector. Ngoài ra, eigeenvector còn có
một số tính chất đáng chú ý khác như : - Hai eipenvector bât kỳ của cùng một ma trận vuông trực giao
nhau. Eigenvalue là không đôi bất kê ta thay đổi độ lớn của eigenvector như thể nào đi nữa. hư Ví dụ
trên cho thấy nếu ta nâng độ lớn của vector (3.2) lên thì khi nhân ma trận vuông vào bên trái thì
eieenvalue tương ứng vẫn là 4. Đối với những mô hình phân tích dữ liệu, để thuận tiện người ta thường
chuân hóa sao cho các eIpgenvector có độ lớn là l. Ở đây, ma trận vuông chúng ta xét sẽ là ma trận
Covariance vừa tính với kích thước N*N. Đối với ví dụ minh họa của chúng ta : 190833088 )
EliqEnalues = ( 1.28402771 ng Ủy xe .T35178656 —.677873399 GHEHUGCIGOIS— ( ,6TTST3300
—.735178656 Các eipenvector xếp theo cột ( mỗi cột là một eigenvector ). e Chọn thành phần chính và
thiết lập vector đặc trưng : Mean adjustedl dlata wiih einenveelors naverlayed Hình 219 Mean adjust
data with eigenvecflors Quan sát hình biểu diễn dữ liệu minh họa ở trên ta thấy hai đường nét đứt biểu
diễn 2 eigenvectors. Qua đồ thị ta thấy dữ liệu chủ yếu phân bố xung quanh đường thắng từ góc trái
dươi lên góc phải trên do đó eipenvector tương ứng chính là vector thành phần chính của dữ liệu ( xem
như mỗi eipenvector đại diện cho một thành phân ). Tổng quát, người ta đã chứng minh được rằng
eigenvalue chính là độ đo mức ảnh hưởng của một thành phần đến cấu trúc phân bố của dữ liệu,
eigeenvalue càng lớn thì ảnh hưởng càng cao. Khi tiến hành phân tích dữ liệu ngươi ta có thể bỏ đi
những eigenvector có eigenvalue thấp hơn hắn so với những eipenvector khác với quan điêm là việc bỏ
đi như thể sẽ làm mất rất ít thong tin và lượng thông tin đó sẽ không ảnh hưởng đáng kê đến kết quả
phân tích và tăng tốc độ phân tích lên rất nhiêu. Người ta còn đưa ra khái nệm vector đặc trưng xây
dựng từ những elgenvcctor như sau : EentureVeclm — (im elga cla .... ci1n } Đối với ví dụ minh họa
của chúng ta, vector đặc trưng sẽ là : Ta cũng có thể bỏ đi eipenvector không quan trọng đê giảm chiều
của vector đặc trưng : Lấy đặc trưng mẫu : Đây là bước cuối cùng và cũng là bước dễ nhất trong mô
hình PCA. Ta có công thức sau : FinunlData —= HơniF entuireV ectar x Naudl3nta Arlust Trong đó,
FinalData sẽ là ma trận biểu diễn đặc trưng dữ liệu, RowFeatureVector là chuyên vị của FeatureVector
(dòng thành cột,cột thành dòng — các eigenvector giờ nằm trên một dòng ). tương tự cho
RowDataAdjust — mỗi mẫu đữ liệu chuẩn hóa năm trên 1 cột và FinalData sẽ chứa các đặc trưng đữ
liệu — dặc trưng mỗi mẫu dữ liệu nằm trên 1 cột. Khi tiễn hành phân tích các mẫu đữ liệu người ta sẽ
chỉ quan tâm đến những đặc trưng của mẫu đó ( cột tương ứng trên FimalData ) Lưu ý : từ FinalData ta
cũng có thể phục hồi được dữ liệu nguyên thủy theo một tỉ lệ nào đấy phụ thuộc vào việc chúng ta đã
bỏ đi nhưng eipenvector nảo và bao nhiêu. Ta có công thức : RouDutu Adiust = RouFeatureVectar—L
x FinalData Nếu ta giữ nguyên tất cả các eipenvector thì đữ liệu nguyên thủy sẽ được phục hồi 100%.
Tóm lại thì ý tưởng chính của PCA là loại bỏ đi những thành phần không quan trọng đến cấu trúc phân
bố của các mẫu dữ liệu với giả thiết răng sự loại bỏ đó sẽ dẫn đến mất mát thông tin ít và ảnh hưởng
không đáng kê đến kết quả phân tích dữ liệu. 2.5.3. Giảm kích thước tập dữ liệu “Liệu chúng ta có thể
giảm kích thước tập dữ liệu bằng cách chọn những dạng biểu diễn tương đương nhưng gọn hơn
không ?” Đề trà lời câu hỏi trên người ta đã nghiên cứu và đề xuất một số phương pháp khá hiệu quả.
Các phương pháp này thuộc một trong hai dạng là tham số hoá và không tham số. Đối với những
phương pháp tham số hoá, một mô hình sẽ được sử dụng để ước lượng các điểm dữ liệu hay nói cách
khác là dữ liệu sẽ được mô hình hoá và khi lưu trữ người ta sẽ chỉ lưu trữ các tham số thay vì toàn bộ
dữ liệu. Đối với các phương pháp không tham số, đữ liệu sẽ được gơm nhóm dựa trên những tiêu chuẩn
về sự nhất quán, khác biệt. Các mẫu dữ liệu trong cùng một nhóm sẽ được đại diện bởi một dạng biểu
diễn chung rút gọn (ví dụ như lấy trọng tâm của các mẫu đữ liệu nêu xem chúng như các vector trong
không gian đa chiều). Bằng cách này, người ta sẽ chỉ lưu trữ dạng biêu diễn thu gọn của từng nhóm
thay vì lưu trữ toàn bộ dữ liệu. Các phương pháp phô biến bao gồm : e©_ Tham số hoá : Log-Linear
Models, Gaussian Mixture Models, Regression. se Không tham số : K-Means Clustering, Hierachical
Clustering, Fuzzy C- Means Clusterimng. 2.5.3.1 Regression Đây là dạng mô hình thường dùng đề xấp
xi ra dạng tham số của dữ liệu cho trước. Đơn giản đối với mô hình Linear Regression (hồi quy tuyến
tính) , đữ liệu sẽ được mô hình hoá đề khớp vào một đường thắng. Lấy ví dụ, một biến ngẫu nhiên Y có
thể được mô hình hoá dưới dạng một hàm tuyến tính của một biến ngẫu nhiên X như sau : Y=WX+B
Trong đó, W và B là các hằng số hồi quy. Xét trong ngữ cảnh bài toán khai thác dữ liệu thì X. Y là các
thuộc tính của một mẫu dữ liệu với Y là thuộc tính phụ thuộc cần đoán nhận và X là thuộc tính đã biết
(lưu trữ trong cơ sở dữ liệu). Các hằng số W và B có thể được giải bằng phương pháp tối thiểu hoá lỗi
bình phương (method of least squares) — tối thiêu hoá sự sai lệch giữa hàm thực sự biêu diễn dữ liệu
và hàm tuyến tính chúng ta ước lượng. Mở rộng từ mô hình hồi quy đơn biến trên chúng ta có Multiple
Linear Regression (hôi quy tuyến tính đa biến) trong đó Y = FŒ., X:...., Xu) với F là hàm tuyến tính
của các biến X¡, X¿,..., Xu. Các mô hình hồi quy tuyến tính sẽ giúp ta giảm kích thước tập dữ liệu khi
đưa vào phân tích. Ý tưởng là khi ta đã ước lượng được hàm F thì khi tiến hành phân tích, ta sẽ không
phân tích các thuộc tính Y = F(X:, X¿,..., Xu) vì các thuộc tính như vậy sẽ được xác định bởi X¡, X¿....,
Xu và tập hằng số ao, ai, â¿,... của hàm F. Do đó một mẫu dữ liệu {X¡, X¿.,..., Xx, Y} khi đưa vào phân
tích sẽ được thu gọn thành {X:, X¿,..., Xụ}. Đê hiệu rõ hơn về mô hình hôi quy, ta khảo sát ví dụ sau
trên mô hình hôi quy tuyến tính đơn biến : XValue | * Value x*Y x*x 8ñ 3.1 BŨ * 3.1 = 186 Bũ * 6ñ =
3600 B1 1.5 B1 * 3.6 = 218.6 61 * B1 =3Z721 2 1.8 B2 “ 3.B - 23B.6 B2 “62 — 3844 h3 + B83 “ 4 —
212 B3 “ 63 — 39B B5 4.1 BB “ 4.1 =266.B BB “ 6B = 422B Hình 220 Data Table Trên đây là bảng
đữ liệu của một cơ sở đữ liệu, trong đó mỗi mẫu đữ liệu gổm 2 thuộc tính X, Y. Hàm hỗi quy ta cần
ước lượng có dạng Y = WX + B, nhiệm vụ của ta là từ bảng dữ liệu trên ước lượng W, B “thích hợp”
nhất. Từ bảng trên, ta có : > X =3l] >Ÿ =I86 s« } XY =]1597 3x ”= 19359 N =5 (tổng số mẫu) Đề tối
thiêu hoá hàm lỗi bình phương (MSE) ứng với bảng đữ liệu cho trước, người ta chứng minh được :
«ỔaẮẶ WE=( „X7-—(3 x)(3 7))(V3 X?—(C3 X)) «Ổ B=(}JT—-HƯÀ X)N Như vậy W = 0.19, B = -
§.098. Ta có phương trình hồi quy Y = 0.19X - 8.098, giả sử trường hợp ta muốn ước lượng Y cho một
mẫu chỉ biết X = 64 thì ta thay vào phương trình hồi quy và có Y = 0.19(0.64) - 8.098 = 4.06. 2.5.3.2.
Lkog-Limear Mô hình logarithm tuyến tính (Log-Linear) được thiết kế với mục đích xấp xỉ đạng phân
bố xác suất đa chiều rời rạc của dữ liệu. Cho trước một tập dữ liệu gồm M mẫu đữ liệu N thuộc tính, ta
có thể xem chúng như một tập các điểm trên không gian N chiều. Mô hình logarithm tuyến tính sẽ ước
lượng xác suất của các điểm dữ liệu này dựa trên một tập con các thuộc tính rời rạc của chúng. từ đó
cho phép ta thu sọn đữ liệu trong không gian đa chiều về một không gian ít chiều hơn và có thể phục
hồi dữ liệu nguyên thủy khi cần thiết. Ý tưởng của mô hình này là chỉ ra mối quan hệ giữa các thuộc
tính khi lấy logarithm tự nhiên : Ln(y) = ao † IXI +... † 8NXN Trong đó : v là thuộc tính phụ thuộc
quan hệ đối với {xi} {x;} là các thuộc tính độc lập quan hệ. - faj} là các tham số logarithm tuyến tính.
Các tham số ƒa,} sẽ được ước lượng xấp xỉ bằng cách khớp các mẫu đữ liệu sẵn có giống như trong mô
hình hỏi quy. Bản chất mô hình này là một mô hình xác suất thống kê, người ta sẽ dựa trên số liệu
thống kê về tập dữ liệu mẫu đê xác định sự tổn tại mỗi quan hệ logarithm giữa các thuộc tính. Nếu số
liệu thống kê cho thấy có tồn tại mối liên hệ đó thì mô hình sẽ tìm cách khớp các mẫu dữ liệu theo công
thức trên đê ước lượng các tham số ƒa,}. Ví dụ : Xét bảng số liệu sau: Qua bảng trên ta có thể dễ dàng
nhận thấy có sự liên quan giữa X và Y. Trước hết, rõ ràng X tăng thì Y tăng, ngoài ra đề ý kỹ ta sẽ thấy
khi X tăng chậm thì Y tăng chậm, khi X tăng nhanh thì Y tăng nhanh ® Giữa X, Y có mối liên hệ khá
chặt chẽ. Tất nhiên, đó chỉ là nhận xét theo trực quan, trong thực tế người ta sẽ lập ma trận Covariance
để xác định mức độ liên quan giữa X, Y. Trong ví dụ này, ma trận Covariance cũng sẽ cho cùng một
kết quả như nhận xét ở trên. Ta sẽ thử áp dụng mô hình Log-Linear để ước lượng hàm logarithm tuyến
tính biểu diễn Y theo X: Ln(y) = a+ bx (l) Ta có : Ln(Y) X Lúc này, bài toán quy về việc ước lượng các
hằng số a, b đề khớp các mẫu dữ liệu vào (1). Nếu ta đặt z = In(y) thì (1) trở thành z = a + bx ® bài
toán quy về việc khớp các điểm dữ liệu vào một đường thăng ® Ta có thể áp dụng phương pháp đã
dùng trong mô hình hôi quy : «ỔỎ B=(C> XY7-—(S* xX5 y))/((N5 x?—(Š XY) ~0.375 «e A=(>T-F3
xY)/N ~00(N=6@) Như vậy, ta thu được hàm logarithm tuyến tính lIn(y) = 0.375x. Khi muốn ước
lượng Y cho một mẫu dữ liệu mới chỉ biết X ta có thể áp dụng công thức trên : x=95 Ln(Y) =
0.375*9.5 = 3.5625 2.5.3.3 Œausstan lMixture Models Mô hình hỗn hợp phân bố Gaussian (Gaussian
Mixture Models) bản chất làmột phương pháp gom cụm nhưng khác với các phương pháp gom cụm
khác ở chỗ nó là hình thức gom cụm theo kiêu mô hình tham số. Theo đó, các điểm dữ liệu sẽ được
phân vào các nhóm với các cấu trúc phân bố Gaussian tương ứng chỉ khác biệt nhau về giá trị các tham
sô. Hình 221 Mixtire ofŒGaussian DistriDulion Quy trình ước lượng tham số : Người ta sẽ xem các
mẫu dữ liệu như các điểm được sinh ngẫu nhiên bởi mô hình hỗn hợp và ước lượng các tham số sao
cho xác suất các điểm đữ liệu được sinh ra bởi mô hình hỗn hợp là cao nhất. Nói đơn giản là ta cực đại
hoá xác suât hậu nghiệm :FỐt | tị) = 2# Cœ,;)PÉ Ki ; tị; Hạ: Đáp j Trong đó #4:/6:...:#4 là các giá trị
trung bình nhóm đôi với các câu trúc phân bố Gaussian tương ứng. Nếu xem như các điểm dữ liệu là
độc lập xác suất với nhau ta cân phải cực đại biêu thức sau : H tdata | tị) = LIE „FesujPœ | #¡; Hạ; Hạ
›---; pc 4 1= Với data là tập các điểm đữ liệu x, P( ẾZ,) là xác suất để cấu trúc phân bó thứ ¡ được chọn
để sinh ra một điểm dữ liệu bất kỳ, P(x 2z e, là xác suât đê điêm dữ liệu x được sinh ra ngầu nhiên bởi
câu trúc phân bồ thứ ¡. Vấn đề ở đây là ta phải ước lượng ƒ ⁄4 } sao cho xác suất hậu nghiệm đạt giá trị
lớn nhất (giả sử rằng các cấu trúc phân bố có cùng phương sai). Ta có thể xem L = P(data | { “4 }) là
một hàm nhiều biến, khi đó việc cực đại hoá P(data | ƒ Z4 }) tương đương với việc giải các phương
trình đạo hàm riêng phần để xác định ƒ Z4 } tương ứng : mà =0 Tuy nhiên, việc giải những phương
trình như vậy rất khó và thường là không giải quyết 1 cách trực tiếp được do ta thường không có đầy
đủ thông tin về một mẫu dữ liệu x. ví dụ như ta không biết chính xác x thuộc về nhóm nào mà ta chỉ
biết đại khái là x thuộc về 1 trong số m nhóm nảo đó. Chính vì vậy, người ta đã đề xuất một cách tiếp
cận “mềm dẻo” hơn, đó chính là thuật giải EM (Expectation -—MaxIm1zation). Thuật giải này sẽ sinh
ngẫu nhiên một bộ tham sô và tiên hành hiệu chỉnh bộ tham số này thông qua một chu trình gồm 2
bước được lặp đi lặp lại đến khi nào thoả một điều kiện dừng nào đó. Hai bước đó gồm có Expectation
và Maximization. Ở bước Expectation, thuật giải sẽ ước lượng những thông tin chưa biết dựa vào
những thông tin đã biết (bộ tham số ở thời điểm hiện tại + P( f#Z,) đã biết trước) bằng cách xác định
giá trị trung bình kỳ vọng của chúng theo lý thuyết xác suất. Ở bước Maximization, thuật giải sẽ dựa
vào những thông tin đã ước lượng ở bước Expectation đề tính lại bộ tham số hiện có. where Ñ ís the
number 0ƒ recordi, Hình 222 Mã giả của thuật toán EM Đề hiểu bản chất của thuật giải EM chúng ta sẽ
theo dõi ví dụ sau đây : Giả sử xạ là điểm của học sinh trong một lớp học với xác suất phân bồ : xị =30,
P(xi) = 1⁄2 Xxa= l8, PQ@¿)= # xa:=0,PŒ¿)=2/4 xa= 23, P4) = 1⁄2 - 3tTrường hợp 1 : Qua khảo sát
chúng ta biết được : ® x¡: ahọc sinh ® x;:bhọc sinh ® x;:c học sinh ® x¿: dhọc sinh Như vậy, ta cần
ước lượng #2 đê mô hình xác suất trên “khớp” với đữ liệu thu được qua khảo sát : Đặt L = P(a, b, c, dị
#2), nhận xét rằng việc cực đại hoá L tương đương với cựa đại hoá In(L) do đó đặt P = In(L) ta cần giải
phương trình đạo hàm theo #2 : >(b/2)+ (c/#2)— 3d/(1/2-3 #2) = 0 >> =(b+c)/6*(b+c+d) Ở trường hợp
này, do thông tin có đủ nên việc giải trực tiếp tỏ ra khá thuận lợi. Trường hợp 2 : Qua khảo sát ta biết :
® Có h học sinh đạt x¡ hay xa điểm. ®© Cóc học sinh đạt x; điểm. e©_ Có d học sinh đạt xạ điểm. Ở
trường hợp này, ta thiếu thông tin về a, b và thay vào đó ta chỉ biết a + b = h Đề giải quyết bài toán
trong tình trạng thiếu thông tin như vậy, ta sẽ sử dụng thuật giải EM — ước lượng giá trị trung bình kỳ
vọng a, b sau đó cực đại hoá hàm xác suất hậu nghiệm. Thuật toán EM rất có hiệu quả trong việc xử lý
những mẫu dữ liệu không hoàn chỉnh. Mô hình hỗn hợp các phân bố Gaussian kết hợp giải thuật EM là
một công cụ khá hiệu quả đê giải bài toán gom cụm đữ liệu nhằm giảm kích thước tập đữ liệu khi đi
vào phân tích. 2.5.3.4. K-Means CÏusfering Đây là một giải thuật gom nhóm đơn giản không tham số.
Ý tưởng chính của giải thuật này đơn giản chỉ là xem mỗi mẫu dữ liệu là một điểm trên không gian N
chiếu. trong đó các điểm gần nhau sẽ được gom vào thành một nhóm. Ban đầu giải thuật sẽ sinh ngẫu
nhiên K điểm và xem như đó là trọng tâm của K nhóm tương ứng. Sau đó các điểm sẽ được lần lượt
phân vào các nhóm có trọng tâm gần nó nhất. Cuối cùng, các trọng tâm nhóm sẽ được tính lại dựa trên
các điểm dữ liệu thuộc nhóm đó. Quá trình trên sẽ được lặp lại liên tục cho đến khi phạm vi dao động
của các trọng tâm nhỏ hơn một ngưỡng nảo đó (hội tụ). Ở đây, tiêu chuân gần nhất sẽ được xác định
dựa theo một tiêu chuẩn độ đo khoảng cách nảo đó như Euclide, Minkowsky. Ngưỡng hội tụ sẽ được
thiết lập dựa trên bản chất của dữ liệu. Nhìn chung. đây là một thuật giải dễ cài đặt, dễ hiểu có khả
năng ứng dụng trong thực tế nhưng cũng có nhiều hạn chế. Đầu tiên, thuật giải này có hạn chế ở chỗ ta
phải biết trước K. Ngoài ra, nêu trong tập dữ liệu có nhiều mẫu “cá biệt” (outlier) thì giải thuật sẽ xử lý
không được hiệu quả. 2.5.3.3. Fuzzy C-Means CÏusfering Thuật giải Fuzzy C-Means là một thuật giải
gom nhóm không tham sô dựa trên xác suât. Theo đó, một mẫu dữ liệu có thể thuộc về nhiều nhóm với
xác suất khác nhau. Đôi với thuật giải này thì hàm mục tiêu mà ta cân tôi ưu có dạng : Trong đó : -
u¿ là bậc thành viên của mẫu đữ liệu x; trong nhóm |. _c¡ là trung tâm của nhóm J. |l*|| là một chuẩn đo
nào đó giữa các đối tượng (Euclide, Manhattan, Minkowsky ...) Sơ đồ chung của giải thuật như sau :
= Thuật toắn : — B1: Khởi tạo ngầu nhiên UỞ= íu}. — B2: Tạibước thứk, tỉnh C*= {c) theo UE, ; B3:
Cập nhật U*->UE+, „ B4: Nếu ||U*'— Ư*J<e thi kết thúc,ngược lại quay trở lại bước 2. Hình 223 Sơ
đồ thuật toán Fuzzy C-Means CÏustering Bản chất của thuật giải này là ước lượng các giá trị u¿ nhằm
tối ưu hàm mục tiêu J„ đã nói ở trên. Khi ta ước lượng được u¿ cũng có nghĩa là ta đã xác định được cơ
sở pom nhóm của tập dữ liệu (biết được xác suất để mẫu ¡ thuộc về nhóm 1). Việc giải trực tiếp u¿ sẽ
rất khó vì ta không biết các giá trị trung tâm c¡.do đó cũng giống như ở mô hình Mixture of Gaussian,
chúng ta phải tiếp cận theo một hướng “mềm dẻo” hơn. Theo đó, ban đầu các giá trị u¿ sẽ được sinh
ngẫu nhiên, sau đó các giá trị này sẽ được hiệu chỉnh từ từ. Thuật giải này bao gồm 2 bước : _ Sử dụng
u¿ hiện có để ước lượng c¡. - Dựa vào c¡ vừa ước lượng tính lại uị. Hai bước trên sẽ được lặp đi lặp lại
cho đến khi phạm vi dao động của u¿ nhỏ hơn một ngưỡng cho trước. 2.5.3.6. Hierachical ClÏusfering
Ý tưởng chính của thuật giải này là xây dựng một mô hình gom nhóm phân cấp trong đó từ tập dữ liệu
ban đầu, một cây gom nhóm sẽ được xây dựng. Ban đầu, mỗi mẫu đữ liệu sẽ thuộc về một nhóm -—
nếu ta có N mẫu đữ liệu thì ta sẽ có N nhóm. Tại mỗi thời điểm, nếu số nhóm còn lớn hơn l thì ta chọn
ra hai nhóm gần nhau nhất (theo một tiêu chuân đánh giá nào đó) và trộn chúng lại với nhau bằng cách
tạo một link nỗi chúng với nhau đồng thời phi nhận lại độ dài của link bằng độ đo khoảng cách giữa 2
nhóm đó. Như vậy, ta thấy sau mỗi bước số nhóm sẽ giảm đi 1 và sau N — I bước thì ta sẽ có được
một cây gom nhóm phân cấp. Ví dụ : Ta có 6 mẫu dữ liệu và bảng độ đo khoảng cách giữa chúng nhu
sau : Hình 224 Bảng độ đo khoảng cách giữa các mẫu dữ liệu Ban đầu, mỗi nhóm chỉ có một mẫu dữ
liệu nên khoảng cách giữa 2 nhóm bất kỳ chính là khoảng cách của 2 mẫu dữ liệu tương ứng. Sau một
số bước, nêu các nhóm có hơn một mẫu dữ liệu thì khi tính độ đo khoảng cách giữa chúng. ta sẽ lấy giá
trị trung bình độ đo khoảng cách giữa các mẫu dữ liệu thuộc 2 nhóm tương ứng làm độ đo khoảng cách
giữa chúng. Với nguyên tắc tính khoảng cách như vậy, áp dụng thuật toán nói trên ta thu được cây phân
cấp sau : BA NA RM PFlI MI TO Hình 225 Lược đồ thể hiện cây gom nhóm (clustering tree) Khi đã
xây dựng được cậy phân cấp thì ta có thể pom đữ liệu vào K nhóm với K bất kỳ từ I > N. Đó chính là
điểm mạnh của thuật giải này, qua mô hình cây phân cấp, nó sẽ chỉ ra rõ sự nhất quán. không tương
đồng của các mẫu đữ liệu với nhau. từ đó giùp chúng ta đưa ra quyết định phân dữ liệu vào bao nhiêu
nhóm (trong trường hợp chúng ta không biết K). Đề phân đữ liệu vào K nhóm thì thuật giải chỉ đơn
giản chọn ra K — l1 link dài nhất đê cắt đi. Ở ví dụ trên, nếu ta muốn phân các mẫu dữ liệu vào 2
nhóm thì ta chỉ việc cắt đi link dài nhất : BA NA EM FlI MI TO Hình 226 Phân nhóm bằng cách loại
bỏ link” đài ” nhất Nhìn chung, giải thuật gom nhóm phân cấp này có những ưu điểm nhất định
nhưngmặt khác nó cũng có nhược điểm là không thể hiệu chỉnh cập nhật những gì đã làm như những
thuật giải gom nhóm khác. K-Means có thể hiệu chỉnh lại các giá trị trung tâm nhóm, Gaussian Mixture
Model có thể hiệu chỉnh các tham số của các cấu trúc phân bồ thông qua giải thuật EM, Fuzzy C-
Means có thể hiệu chỉnh các giá trị bậc thành viên còn giải thuật gom nhóm phân cấp lại không thể
undo những gì nó đã làm ở các bước trước - ví dụ. một link đã được tạo ta ở các bước trước thì không
thể hiệu chỉnh hay hủy bỏ ở các bước sau. Điều này làm cho thuật giải gom nhóm phân cấp trở nên
“cứng” và không linh hoạt dẫn đến ảnh hưởng độ chính xác gom nhóm. Phần 2.6. Tông kết Tiền xử lý
dữ liệu là một công đoạn cực kỳ quan trọng đối với việc lưu trữ cũng như khai thác dữ liệu bởi vì dữ
liệu trong thực tế thường không hoàn chỉnh, nhiễu và đôi khi không tương thích. Tiền xử lý dữ liệu bao
gồm các công đoạn chính sau : ® Làm sạch đữ liệu. s® Tích hợp dữ liệu. e©_ Chuyển đổi dữ liệu. ®
Thu gọn dữ liệu. Quá trình làm sạch dữ liệu sẽ cố gắng thểm vào những giá trị bị thiếu, làm trơn dữ liệu
bằng cách khử nhiễu, xác định các mẫu dữ liệu cá biệt (outlier) và hiệu chỉnh, loại bỏ những thành
phần không tương thích. Quá trình tích hợp dữ liệu kết hợp đữ liệu từ nhiều nguồn khác nhau, tổng hợp
thành một nguồn đữ liệu kết dính chặt chẽ. Dữ liệu quản lý, phân tích quan hệ. kiểm định không tương
thích là các kỹ thuật thường dùng để làm trơn (smooth) đữ liệu tích hợp. Quá trình chuyên đổi đữ liệu
sẽ biến đôi đữ liệu về những dạng chuân thuận lợi cho việc khai phá trí thức. Lấy ví dụ, là các giá trị
thuộc tính có thể sẽ được chuẩn hoá sao cho nằm trong khoảng 0.. l. Quá trình thu gọn dữ liệu có thể
được tiến hành thông qua nhiều kỹ thuật : lựa chọn tập thuộc tính, giảm chiều đữ liệu, giảm kích thước
đữ liệu nhằm biêu diễn đữ liệu dưới dạng thu gọn, tối thiêu hoá sự mắt mát thông tin khi rút gọn. Phân
2.7. Giải một số bài tập Bài 1 Sử dụng hai phương pháp a) và b) (mô tả bên đưới) đê chuẩn hoá bảng
dữ liệu sau : Dữ liệu đầu 200 300 400 600 1000 a.. Chuân hóa minmax, min=0 và max = l b. Chuẩn
hóa z-score Bài làm: Trung bình = 500 Độ lệch chuẩn = 316.2278 Kêt quả chuân hóa Dữ liệu đầu
Minmax Z-score 200 0 -0.948683196 300 0.125 -0.632455464 400 0.25 -0.316227732 600 0.5
0.316227732 1000 1 1.58113866 Bài 2 Giả thiết một bệnh viện thống kê dữ liệu về tuổi và lượng mỡ
đối với 18 người lớn được chọn lựa ngẫu nhiên và cho ra bảng kết quả sau : (Các kết quả và đồ thị
được tính và vẽ bằng Excel) Dữ liệu thống kê Tính trung bình trung vị và độ lệch chuẩn. Chuân hoá đữ
liệu theo tiêu chuân z-score. Vẽ đồ thị scatter plot Tính hệ số tương quan Pearson. Giải bài 2 a.. Tính
trung bình, trung vị và độ lệch chuẩn: Trung bình Trung vị Độ lệch chuẩn b. Dữ liệu đã chuân hóa z-
score: Dữ liệu ban đầu c. Đồ thị scatter plot: Hình 227 Đồ thị biểu điễn tương quan giữa 2 biến Tuôi —
%4Mð a A99 d. Hệ số tương quan (Pearsons) = 0.817619. Vậy 2 biến “tuổi” và “%mỡ” (trong cơ thể)
là có tương quan với nhau tương đối mạnh (gần bằng ]). Bài 3 Chất lượng dữ liệu có thể được biểu diễn
theo độ chính xác, sự hoàn thiện và sự tương thích. Chỉ ra hai tiêu chuẩn khác đề đánh giá chất lượng
dữ liệu. Bài làm Chất lượng của dữ liệu còn có thể được biểu diễn thông qua tính kế thừa (inherent
quality) và tính hữu dụng (pragmatic quality). Dữ liệu có tính kế thừa thì sẽ tạo thuận lợi cho quá trình
phân tích dữ liệu, dữ liệu có tính hữu dụng sẽ hỗ trợ giảm nhiễu trong quá trình phân tích. Đây là hai
trong số các tiêu chuẩn quan trọng nhất để đánh giá chất lượng dữ liệu. Bài 4 Trong thực tế, các mẫu
dữ liệu (tuple) có một số trường giá trị thiểu (missing values) là điều thường xảy ra trong thực tế. Mô tả
một vài phương pháp để giải quyết vấn đề đó. Bài làm: Các phương pháp để giải quyết vấn đề thiếu
một số trường giá trị ở một số mẫu dữ liệu (tuple) : e©_ Bỏ qua những mẫu đữ liệu đó : Phương pháp
này không hiệu quả nếu như số lượng giá trị thuộc tính thiếu là không đáng kê so với kích thước của
mẫu dữ liệu tương ứng. se Tự điền vào các giá trị thiêu đó (manually) : Hướng tiếp cận này cho hiệu
quả cao (vì do con người trực tiếp làm) nhưng lại tốn rất nhiều thời gian và hoàn toàn không khả thi khi
xử lý những cơ sở dữ liệu lớn. se Sử dụng hằng số có định để điền vào những giá trị thiểu đó (Unknow/
Null) : Hướng giải quyết này có khả năng đem lại rủi ro cao khi phân tích dữ liệu do các giá trị thiêu
đều được điền bằng cùng một hằng số nến chúng “tương đương” nhau và vì thế chương trình phân tích
đữ liệu có thể “hiểu nhằm” là có một mối liên hệ nào đó (trên thực tế là không có) giữa các mẫu dữ liệu
thông qua các thuộc tính Unknown/ NuÏl. se Sử dụng giá trị trung bình thống kê trên các mẫu hoàn
thiện đê điền vào : đây là một cách làm tương đối khả thi, là ý tưởng đơn giản để làm trơn dữ liệu. e
Tìm giá trị có xác suất cao nhất về độ thích hợp (most likely) đê điền vào các giá trị còn thiếu : Cách
làm này là một hình thức nội suy phức tạp tinh tế hơn nhằm làm trơn đữ liệu. Bài 5 Chỉ ra các khoảng
giá trị ứng với các phương pháp chuẩn hoá dữ liệu sau : a..Ề Min-max normalization b._Z-score
normalization. c. Decimmal scaling normalization. Bài làm a. Khoảng giá trị : [new_ min...new_ max]
b. Giả thiết: m_ Giá trị nhỏ nhất : min. “_ Giá trị lớn nhất : max. " Giá trị trung bình : mean. “ Độ lệch
chuân : stdev (standard deviation). Khoảng giá trị : [(min-mean)/stdev..(max-mean)/stdev | c. Khoảng
giá trị : [-l.. l| Bài 6 Chỉ ra 3 tiêu chuân độ đo thể hiện sự phân tán của dữ liệu. Thảo luận về những tiêu
chuân độ đo này. Bài làm: 3 tiêu chuẩn độ đo thể hiện sự phân tán của dữ liệu : ® Khoảng : là sự sai
biệt giữa giá trị lớn nhất và giá trị nhỏ nhất của đữ liệu. Độ đo này chỉ thể hiện các cận biên của dữ liệu
chứ chưa thể hiện rõ sự biến thiên dao động của dữ liệu trong khoảng. _ Độ lệch chuẩn : Độ đo này thể
hiện sự dao động của các mẫu dữ liệu xung quanh trung tâm đữ liệu (giá trị trung bình). se Hằng số
biến động (Coefficient of Variation) : Goefficient of Variation = —— X 100 Độ đo này thể hiện rõ nét
mức độ phân tán của các mẫu dữ liệu trên toàn tập dữ liệu bằng cách lấy tỉ lệ phần trăm giữa độ lệch
chuẩn và trung bình mẫu. Bài 7 Giá trị thuộc tính tuổi cho các bộ dữ liệu được sắp theo thứ tự tăng dần:
13, 15, ló, 16, 19, 20, 20, 21, 22, 22, 25, 25, 25, 25, 30, 33, 33, 35, 35, 35, 35, 36, 40, 45, 4ó, 52, 70. a.
Tính mean, median sạn TÊt]ổ +16*23+19+2052+ 21+ 22*2+25*4+ 301335213554 +36 + 401 45 +46
+ 52 +70 1+122+122+1+2+4+1+2+4+1+1+1+1+1+1 ~30 Ta có l7 giá trị phân biệt khác nhau, như N là
lẻ, median sẽ bằng giá trị chính giữa —> median = 30 b. mode = 25, 35, bimodal. c. midrange = (13 +
70⁄2 = 42 d. Xấp xỉ: Q¡ = 20 (có xấp xỉ 25% giá trị đữ liệu nhỏ hơn hoặc bằng 20) Q; = 35 (có xấp xi
75% giá trị dữ liệu nhỏ hơn hoặc bằng 35) e. FIve — number summary của dữ liệu: Mininum = 13,
Q¡ = 20, Median = 30, Q; = 35, Maximum = 70 f. Boxplot biêu diễn dữ liệu: Hình 228 Boxplot biêu
diễn đữ liệu Bài 8 Sử dụng đữ liệu được cho trong bài tập 2.4 a.. Phân chia thành các bin với tần số 3.
Bm I1: 13, 15, l6 Bm 2: 1ó, 19, 20 Bm 3: 20, 21, 22 Bm 4: 22, 25, 25 Bm 5: 25, 25, 30 Bm 6: 33, 33,
35 Bm 7: 35, 35, 35 Bm 8: 36, 40, 45 Bm 9: 4ó, 52, 70 Làm mịn đữ liệu bằng bin means: Bm I1: 15,
15, I5 Bm 2: 18, 18, I8 Bm 3: 21, 21, 21 Bài 9 Bm 4: 24, 24, 24 Bm 5: 27, 27, 27 Bm 6: 34, 34, 34 Bm
7: 35, 35, 35 Bm 8: 40, 40, 40 Bm 9: 56, 56, 56 Dựa vào các giá trị Q¡, Q: đã tính trong bài tập 2.4, tính
IQR = Q; — Q\, một phần tử là cá biệt nếu giá trị của nó lớn hơn Q; + 1.5xIQR hay nhỏ hơn Q¡ —
1.5xIQR. Ngoài ra có thể phát hiện các phần tử cá biệt bằng phương pháp repression (phân tích hồi qui)
hay clustering (gom cụm). Một số phương pháp khác làm mịn đữ liệu là regression (phân tích hồi qui)
hay clusterimg (gom cụm). Các vấn đề xem xét trong quá trình tích hợp dữ liệu - Vấn đề xác định tính
tương đương giữa các thực thể gọi là “Entity identification problem”. Chúng ta có thể dựa vào các
metadata của mỗi thuộc tính (gồm tên, ý nghĩa, kiêu đữ liệu, khoảng giá trị, các giá trị nuÌl...) để giải
quyết phần nào vấn đề này. Một vấn đề quan trọng khác là sự dư thừa dữ liệu. Một thuộc tính (như tổng
doanh thu hàng năm) có thể xem như dư thừa vì nó có thể được suy ra từ các thuộc tính khác. Các
thuộc tính dư thừa có thể được phát hiện bằng cách sử dụng phân tích tương quan (correlation
analys1s). Một vấn đề quan trong nữa trong tích hợp đữ liệu là phát hiện và xử lý xung đột giá trị dữ
liệu. Với cùng ] thực thể, giá trị các thuộc tính trong các nguồn dữ liệu khác nhau có thể khác nhau.
Điều này có thể xảy ra do sự thể hiện dữ liệu khác nhau. - Phải chú ý đặc biệt đên câu trúc của dữ liệu.
Điêu này nhắm đảm bảo rắng mọi phụ thuộc hàm của thuộc tính và các ràng buộc khóa ngoại trong hệ
thống nguồn phải được đảm bảo ở trong hệ thống đích. Bài 10 Cho 12 giá trị của thuộc tính giá được
sắp xếp như sau: 5, 10, I1, 13, 15, 35, 50, 55, 72, 92, 204, 215 Phân chia chúng vào 3 bin bằng các
phương pháp sau: a.. Phân chia với tần số bằng nhau: Bm I: 5, 10, 11, 13 Bm 2: 15, 35, 50, 55 Bm 3:
72, 92, 204, 215 b. Phân chia với độ rộng bằng nhau Độ rộng của mỗi khoảng : (215 — 5) / 3 = 70 Bm
1=Š5, 10, 11, 13, 15, 35, 50, 55 Bm 2 = 72, 92 Bm 3 = 204, 215

You might also like