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

Phân tích khả năng trả nợ của khách hàng dựatrên bộ dữ liệu loan prediction bằng phần mềm orange

42 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 42
Dung lượng 2,55 MB

Nội dung

Kỹ thuật phân lớp được đánh giá là một kỹ thuật khai phá dữ liệu được sử dụng rộng rãi nhất với nhiều mở rộng.Ngày nay, phân lớp dữ liệu classification là một trong những hướng nghiên cứ

Trang 1

TRƯỜNG CÔNG NGH VÀ THIẾẾT KẾẾỆKHOA CÔNG NGH THÔNG TIN KINH DOANHỆ

DỰ ÁN CUỐI KÌMÔN KHOA HỌC DỮ LIỆU

Đề tài: Phân tích khả năng trả nợ của khách hàng dựa

trên bộ dữ liệu Loan Prediction bằng phần mềm Orange

Trang 2

Mục lục

Phụ lục 1

CHƯƠNG 1: TỔNG QUAN 1

1.1 Tổng quan về bài toán phân lớp dữ liệu 1

1.2 Giới thiệu về Python và phần mềm Orange 1

1.3 Lý do lựa chọn đề tài 1

CHƯƠNG 2 CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU 1

2.1 Các Mô Hình Phân Lớp Dữ Liệu 1

2.1.1 Mô hình Logistic Regression 1

2.1.2 Mô hình decision tree 1

2.1.3 Mô Hình Support Vector Machine 1

2.2 Quy trình phân lớp dữ liệu 1

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

2.2.2 Phân lớp dữ liệu 1

2.2.3 Đánh giá tính hiệu quả 1

CHƯƠNG 3 CÁC KẾT QUẢ THỰC NGHIỆM 1

3.3.1 Phân tích dựa trên ma trận nhầm lẫn(Confusion Matrix) 1

3.3.2 Phân tích dựa trên ROC analysis 1

Trang 4

LỜI CẢM ƠN

Đầu tiên, em xin cảm Đại học UEH đã đưa môn học Khoa học dữ liệu vào chương trình giảng dạy, môn học đã giúp em tiếp cận gần hơn đến với dữ liệu và các phương pháp khai thác dữ liệu Đặc biệt, em xin gửi lời cảm ơn sâu

sắc đến giảng viên phụ trách bộ môn này của chúng em - thầy Đặng Ngọc Hoàng Thành Trong suốt học phần, thầy đã rất nhiệt tình dạy dỗ, truyền đạt

những kiến thức quý báu cho chúng em, bên cạnh đó thầy còn rất tận tâm hỗ trợ khi chúng em gặp khó khăn và cần sự giúp đỡ từ thầy Chúng em cảm thấy rất biết ơn và vô cùng yêu quý thái độ nhiệt tình, thân thiện và tận tâm này từ thầy Nhờ vậy, chúng em đã tích lũy được rất nhiều kiến thức bổ ích để làm nền tảng vững chắc cho các môn học sau này Và hơn thế nữa, chúng em cũng rất cảm kích và trân trọng vì nhờ sự hỗ trợ của thầy, chúng em đã hoàn thiện đề tài nghiên cứu này một cách chỉn chu và trọn vẹn nhất

Bộ môn Khoa học dữ liệu là môn học bổ ích, nó giúp cung cấp đủ kiến thức, gắn liền với nhu cầu thực tiễn của sinh viên - đặc biệt là đối với sinh viên thuộc khoa Công nghệ thông tin kinh doanh Tuy nhiên, do vốn kiến thức còn nhiều hạn chế và khả năng tiếp thu thực tế còn nhiều bỡ ngỡ Mặc dù chúng em đã cố gắng hết sức nhưng chắc chắn bài nghiên cứu này khó có thể tránh khỏi những thiếu sót và nhiều chỗ còn chưa chính xác, kính mong thầy xem xét và góp ý để bài nghiên cứu của nhóm được hoàn thiện hơn

Trang 5

CHƯƠNG 1: TỔNG QUAN

1.1 Tổng quan về bài toán phân lớp dữ liệu

Kỹ thuật phân lớp dữ liệu trong khai phá dữ liệu là một trong những vấn đề nghiên cứu mở rộng hiện nay; tập trung chủ yếu vào thống kê, máy học và mạng nơtrôn Kỹ thuật phân lớp được đánh giá là một kỹ thuật khai phá dữ liệu được sử dụng rộng rãi nhất với nhiều mở rộng.

Ngày nay, phân lớp dữ liệu (classification) là một trong những hướng nghiên cứu chính của khai phá dữ liệu Phân lớp dữ liệu là quá trình phân một đối tượng dữ liệu vào một hay nhiều lớp (loại) đã cho trước nhờ một mô hình phân lớp Quá trình gán nhãn (thuộc lớp nào) cho đối tượng dữ liệu chính là quá trình phân lớp dữ liệu.

Ví dụ: Mô hình phân lớp dự báo thời tiết có thể cho biết thời tiết ngày mai là ngày mưa, hay nắng dựa vào những thông số về độ ẩm, sức gió, nhiệt độ, của ngày hôm nay và các ngày trước đó Hay nhờ các luật về xu hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra những quyết sách đúng đắn về lượng mặt hàng cũng như chủng loại bày bán…Một mô hình dự đoán có thể dự đoán được lượng tiền tiêu dùng của khách hàng tiềm năng dựa trên những thông tin về thu thập và nghề nghiệp của khách hàng.

1.2 Giới thiệu về Python và phần mềm Orange

Python là ngôn ngữ lập trình máy tính bậc cao thường được sử dụng để xây dựng trang web và phần mềm, tự động hóa các tác vụ và tiến hành phân tích dữ liệu Python là ngôn ngữ có mục đích chung, nghĩa là nó có thể được sử dụng để tạo nhiều chương trình khác nhau và không chuyên biệt cho bất kỳ vấn đề cụ thể nào

Phần mềm Orange - một trong những phần mềm có thể giúp cho việc khai phá dữ liệu trở nên dễ dàng hơn.

Phần mềm Orange được biết đến bởi việc tích hợp các công cụ khai phá dữ liệu mã nguồn mở và học máy thông minh, đơn giản, được lập trình bằng Python với giao diện trực quan và tương tác dễ dàng Với nhiều chức năng, phần mềm này có thể phân tích được những dữ liệu từ đơn giản đến phức tạp, tạo ra những đồ hoạ đẹp mắt và thú vị và còn giúp việc khai thác dữ liệu và máy học trở nên dễ dàng hơn cả cho người dùng mới và chuyên gia.

Thực chất, Orange là một thư viện quy trình và đối tượng cốt lõi của C++ kết hợp rất nhiều thuật toán Data mining và học máy tiêu chuẩn và không tiêu chuẩn Nó là một công cụ trực quan hóa dữ liệu, Data mining và máy học nguồn mở Orange là một môi trường có thể viết kịch bản để tạo mẫu nhanh các thuật toán và mẫu thử

Trang 6

nghiệm mới nhất Nó là một nhóm các mô-đun dựa trên python tồn tại trong thư viện lõi Nó triển khai một số chức năng mà thời gian thực thi không cần thiết và điều đó được thực hiện bằng Python.

Orange cung cấp cho người dùng tập các toolbox tinh gọn nhất giúp ta bắt tay ngay vào phân tích dữ liệu gồm:

Data: dùng để rút trích, biến đổi, và nạp dữ liệu (ETL process).

Trang 7

Visualize: dùng để biểu diễn biểu đồ (chart) giúp quan sát dữ liệu được tốt hơn.

Model: gồm các hàm machine learning phân lớp dữ liệu, có cả Neural Network gồm

các hyper-parameter cơ bản để bạn xây dựng nhanh Deep learning thần thánh mà các fan Deep-learning based đang theo đuổi.

Trang 8

Evaluate: các phương pháp đánh giá mô hình máy học.

Unsupervised: gồm các hàm machine learning gom nhóm dữ liệu.

1.3 Lý do lựa chọn đề tài

Trong hoàn cảnh kinh tế khó khăn hiện nay, nhu cầu vay tiền từ ngân hàng của các cá nhân đang ngày càng tăng cao Trong khi đó, việc thẩm định tín dụng của ngân hàng vẫn còn gặp nhiều khó khăn Đánh giá khách hàng đòi hỏi nhiều yếu tố, tuy

Trang 9

nhiên hiện tại khả năng thẩm định tín dụng của ngân hàng còn hạn chế, chủ yếu việc đánh giá còn phụ thuộc vào năng lực và cảm tính của bộ phận tín dụng Điều này đặt ra rất nhiều rủi ro cho ngân hàng trong quá trình cho vay tiền.

Trước tình hình đó, nhóm chúng tôi đã quyết định chọn đề tài “Phân tích khảnăng trả nợ của khách hàng dựa trên bộ dữ liệu Loan Prediction bằng phần mềmOrange”.Việc phân tích này sẽ giúp cho các ngân hàng có thể đánh giá rủi ro vay tiền

của mình một cách chính xác và khoa học hơn.

Bộ dữ liệu này sử dụng các thông tin về tuổi tác, thu nhập, kinh nghiệm việc làm, nghề nghiệp, tình trạng hôn nhân…Bằng cách sử dụng các công cụ phân tích dữ liệu, chúng tôi hy vọng có thể đưa ra những kết luận và dự đoán về khả năng trả nợ của khách hàng trong tương lai.

Tóm lại, việc phân tích khả năng trả nợ của khách hàng thông qua bộ dữ liệu Loan Prediction là rất cần thiết và hữu ích trong thời điểm hiện tại.

CHƯƠNG 2 CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU2.1 Các Mô Hình Phân Lớp Dữ Liệu

2.1.1 Mô hình Logistic Regression2.1.1.1 Định nghĩa

Hồi quy logistic là một kỹ thuật phân tích dữ liệu sử dụng toán học để tìm ra mối quan hệ giữa hai yếu tố dữ liệu Sau đó, kỹ thuật này sử dụng mối quan hệ đã tìm được để dự đoán giá trị của những yếu tố đó dựa trên yếu tố còn lại Dự đoán thường cho ra một số kết quả hữu hạn, như có hoặc không.

Hồi quy logistic là một kỹ thuật quan trọng trong lĩnh vực trí tuệ nhân tạo và máy học (AI/ML) Mô hình ML là các chương trình phần mềm có thể được đào tạo để thực hiện các tác vụ xử lý dữ liệu phức tạp mà không cần sự can thiệp của con người Mô hình ML được xây dựng bằng hồi quy logistic có thể giúp các tổ chức thu được thông tin chuyên sâu hữu ích từ dữ liệu kinh doanh của mình Họ có thể sử dụng những thông tin chuyên sâu này để phân tích dự đoán nhằm giảm chi phí hoạt động, tăng độ hiệu quả và đổi chỉnh quy mô nhanh hơn

2.1.1.2 Thuật toán:

Đối với bài toán phân lớp Tập nhãn y y y1, 2, ,yn

với n là số lớp

Một đối tượng dữ liệu x x x1, 2, ,xd với d là thuộc tính của mỗi dòng dữ liệu và được biểu diễn dưới dạng vector

e dự đoán đối tượng xem đối tượng x sở hữu các thuộc tính cụ thể sẽ thuộc vào lớp y nào.

Trong đó:

d là số lượng đặc trưng (thuộc tính) của dữ liệu,

Trang 10

w là trọng số ban đầu sẽ được khởi tạo ngẫu nhiên, sau đó sẽ được điều chỉnh lại cho

- Logistics là một phương pháp mạnh mẽ trong việc xử lý các dữ liệu phân loại (classification) vì nó cho phép tính toán chính xác xác suất mà một quan sát (observation) được phân loại vào một nhóm nhất định.

- Logistics là một phương pháp linh hoạt và có thể được áp dụng nhiều lĩnh vực khác nhau, bao gồm kinh tế, y học , khoa học xã hội và kỹ thuật.

- Logistics dễ dàng hiểu và áp dụng vì nó dựa trên mô hình hồi quy tuyến tính đơn giản.

Nhược điểm :

- Logistics không thể xử lý các dữ liệu đa trị (multional data) và phụ thuộc vào giải định về sự độc lập giữa các quan sát.

- Logistics có thể gặp vấn đề khi dữ liệu không phân bố đều (imbalanced data) hoặc khi có nhiều biến độc lập (independent variables) liên quan mật thiết với nhau.

- Logistics không thể xử lý các dữ liệu không liên tục (non-continuous data) hoặc dữ liệu không tuân theo phân phối chuẩn (non-normal data).

2.1.2 Mô hình decision tree2.1.2.1 Khái niệm:

Cây quyết định là đồ thị các quyết định cùng các kết quả khả dĩ đi kèm nhằm hỗ trợ quá trình ra quyết định Trong lĩnh vực khai thác dữ liệu, cây quyết định là phương pháp nhằm mô tả, phân loại và tổng quát hóa tập dữ liệu cho trước Cấu trúc của một cây quyết định bao gồm các nút và các nhánh.

Trang 11

- Nút dưới cùng được gọi là nút lá, trong mô hình phân tích dữ liệu là các giá trị của các nhãn lớp các nút khác được gọi là nút con Nút đầu tiên được gọi là nút gốc của cây.

- Mỗi một nhánh của cây xuất hiện từ một nút p nào đó tương ứng với một phép so sánh dựa trên miền giá trị của nút đó.

2.1.2.2.Thuật toán CLS

Thuật toán CLS được thiết kế theo chiến lược chia để trị từ trên xuống Nó gồm các bước sau:

1 Tạo nút T, nút này gồm tất cả các mẫu của tập huấn luyện.

2 Nếu tất cả các mẫu trong T thuộc cùng một lớp và có thuộc tính quyết định

● Chia tập mẫu trong T thành các tập hợp con T1,T2, ,Tn chia theo giá trị của X

● Tạo n nút con Ti (i=1,2, ,n) với nút chua là nút T ● Tạo các nhánh nối từ nút T đến các nút Ti (i=1,2, ,n) là các

thuộc tính của X

4 Thực hiện lặp cho các nút con Ti (i=1,2, ,n) và quay lại bước 2.

2.1.2.3.Thuật toán ID3

ID3 được xem như là một cải tiến của CLS với khả năng lựa chọn thuộc tính tốt nhất để tiếp tục triển khai cây tại mỗi bước ID3 xây dựng quyết định từ trên xuống, sử dụng độ đo information Gain để đo tính hiệu quả của các thuộc tính phân lớp Trong quá trình xây dựng cây quyết định theo thuật toán ID3 tại mỗi bước phát triển cây, thuộc tính được chọn là thuộc tính có giá trị Gain lớn nhất

Hàm xây dựng cây quyết định thuật toán ID3 Fuction induce_tree ( tập_ví_dụ, tập_thuộc_tính)

Trang 12

begin

if mọi ví dụ trong tập_ví_dụ đều nằm trong cùng một lớp then return một nút lá được nhấn bởi lớp đó

else if tập_thuộc_tính là rỗng then

return nút lá được gắn nhãn bởi tuyến của tất cả các lớp trong tập_ví_dụ else begin

chọn một thuộc tính P, lấy nó làm gốc cho cây hiện tại; xóa P ra khỏi tập_thuộc_tính;

với mỗi giá trị V của P begin

tạo một nhánh của cây gán nhãn V;

đặt vào phân_vùng các ví dụ trong tập_ví_dụ có giá trị V tại thuộc tính P; gọi induce_tree(phân_vùng v tập_thuộc_tính), gắn kết quả vào nhánh V

Trang 13

- Có thể xử lý trên nhiều kiểu dữ liệu khác nhau - Xử lý tốt một lượng dữ liệu lớn trong thời gian ngắn Khuyết điểm:

- Khó giải quyết trong tình huống dữ liệu phụ thuộc thời gian - Chi phí xây dựng mô hình cao

2.1.3 Mô Hình Support Vector Machine2.1.3.1.Khái niệm

SVM là một thuật toán có giám sát, SVM nhận dữ liệu vào, xem chúng như những vector trong không gian và phân loại chúng vào các lớp khác nhau bằng cách xây dựng một siêu phẳng trong không gian nhiều chiều làm mặt phân cách các lớp dữ liệu.

Để tối ưu kết quả phân lớp thì phải xác định siêu phẳng (hyperlane) có khoảng cách đến các điểm dữ liệu (margin) của tất cả các lớp xa nhất có thể.

SVM có nhiều biến thể phù hợp với các bài toán phân loại khác nhau.

Là khoảng cách giữa siêu phẳng đến 2 điểm dữ liệu gần nhất tương ứng với các phân lớp SVM cố gắng tối ưu bằng cách tối đa hóa giá trị margin này, từ đó tìm ra siêu phẳng đẹp nhât để phân 2 lớp dữ liêu Nhờ vậy, SVM có thể giảm thiếu việc phân lớp sai (misclassfication) đói với điểm dữ liệu mới đưa vào

Trang 14

Support vectors

Bài toán của chúng ta trở thành tìm ra 2 đường biên của 2 lớp dữ liệu sao cho khoảng cách giữa 2 đường này là lớn nhất Siêu phẳng cách đều 2 biên đó chính là siêu phẳng cần tìm cách điểm xanh, đỏ nằm trên 2 đường bên (màu xanh lá) được gọi là các support vector, vì chúng có nhiệm vụ hỗ trợ để tìm ra siêu phẳng

2.1.3.2 Thuật toán

Số chiều của không gian bài toán (còn gọi là không gian đặc trưng) tương ứng với số lương thuộc tính (đặc trưng) của một đối tượng dữ liệu.

Trang 15

Phương trình biểu diễn siêu phẳng cần tìm (hyperlane) trong không gian đa chiều là: và giá trị margin W x bT 0 và giá trị margin = w

Mục tiêu của SVM là cần tìm giá trị margin cực đại đồng nghĩa với việc w đạt cực tiểu với điều kiện:

( T ) 1, 1,2, ,

Hàm mục tiêu cần tối ưu là một norm nên là một hàm lồi => bài toán quy hoạch toàn phương (Quadratic Programing)

Các biến thể của SVM

2.1.3.3 Ưu điểm và Nhược điểm

Ưu điểm:

- Tiết kiệm bộ nhớ (do quá trình test chỉ cần so điểm dữ liệu mới với mặt siêu phẳng tìm được mà không cần tính toán lại)

- Linh hoạt: vừa có thể phân lớp tuyến tính và phi tuyến (sử dụng các kernel

Trang 16

2.2 Quy trình phân lớp dữ liệu2.2.1 Tiền xử lý dữ liệu

Khái niệm: Là quá trình xử lý dữ liệu thô/gốc (raw/original data)( có thể có

cấu trúc hoặc không có cấu trúc; nằm ở nhiều định dạng khác nhau (tập tin hoặc CSDL)), nhằm cải thiện chất lượng dữ liệu (quality of the data) và do đó, cải thiện chất lượng của kết quả khai phá.

Khi nói về chất lượng của dữ liệu(Data quality) thì các tính chất sau đây thường được nhắc đến:

+ Tính chính xác: Độ chính xác của thông tin và mức độ đúng đắn của dữ liệu so với thực tế

+ Tính hiện hành: Đánh giá mức độ cập nhật và đồng bộ của dữ liệu Dữ liệu cập nhật càng nhanh và càng chính xác thì tính hiện hành càng cao

+Tính toàn vẹn: Tiêu chí này xem như liệu một tập dữ liệu có tuân theo các quy tắc và tiêu chuẩn đã đặt ra hay không Có bất kỳ giá trị nào bị thiếu có thể làm tổn hại đến hiệu quả của dữ liệu hoặc khiến các nhà phân tích không nhận ra các mối quan hệ hoặc mẫu quan trọng không?

+ Tính nhất quán : Tất cả các lần lặp lại của một phần dữ liệu phải giống nhau.

Các bước tiền xử lý dữ liệu:

+ Làm sạch dữ liệu: Là quá trình loại bỏ nhiễu (remove noise), hiệu chỉnh những phần dữ liệu không nhất quán (correct data inconsistencies) Quá trình này có thể bao gồm các công việc sau:

Tóm tắt hoá dữ liệu: Là quá trình trích xuất thông tin quan trọng và đại diện của dữ liệu Trong bước này ta cần xác định được thuộc tính (properties) của dữ liệu về xu hướng chính (central tendency) và sự phân tán (dispersion) được sử dụng để mô tả và hiểu về phân bố của dữ liệu Một số độ đo của xu hướng chính có thể kể đến như mean, median, mode, midrange…hay độ do của sự phân tán như quartiles, interquartile range (IQR), variance

Ngoài ra, việc nhận diện dữ liệu nổi bật/hiếm (outliers) hoặc nhiễu (noise) trong tập dữ liệu cũng rất quan trọng Outliers là các giá trị rất khác biệt so với các giá trị còn lại trong tập dữ liệu, trong khi noise là các giá trị không có ý nghĩa hoặc sai lệch so với các giá trị khác Việc nhận diện và loại bỏ outliers và noise sẽ cải thiện độ chính xác của phân tích dữ liệu và giúp đưa ra quyết định chính xác hơn.

Xử lý dữ liệu bị thiếu (missing data): Dữ liệu bị thiếu là một vấn đề phổ biến trong quá trình thu thập dữ liệu Nguyên nhân dẫn đến việc dữ liệu bị thiếu có thể đến từ nhiều nguồn khách quan(Dữ liệu bị thiếu do lỗi hệ thống hoặc thiên tai, tai nạn, hoặc do không thu thập đủ dữ liệu vì lý do thời gian, tài nguyên…) và chủ quan(Người sử dụng không cung cấp đủ thông tin yêu cầu) Tuy nhiên

Trang 17

nguyên nhân dù đến từ nguồn nào thì ta cũng phải đưa ra giải pháp cho việc xử lý dữ liệu bị thiếu, một số phương pháp có thể kể đến như:

1 Bỏ qua: Đây là giải pháp đơn giản nhất, trong đó các mẫu bị thiếu sẽ được bỏ qua trong quá trình phân tích Tuy nhiên, nếu tỷ lệ dữ liệu bị thiếu quá cao, việc bỏ qua dữ liệu sẽ dẫn đến giảm đáng kể độ chính xác và độ tin cậy của phân tích.

2 Xử lý tay (không tự động, bán tự động): Đây là phương pháp thủ công, trong đó người phân tích sẽ kiểm tra và điền vào các giá trị bị thiếu dựa trên kiến thức chuyên môn và thông tin khác.

3 Dùng giá trị thay thế (tự động): Đây là phương pháp sử dụng giá trị thay thế cho các giá trị bị thiếu dựa trên các thống kê như trung bình, trung vị, trị phổ biến nhất, trị dự đoán Phương pháp này thường được sử dụng khi tỷ lệ dữ liệu bị thiếu không quá cao.

4 Ngăn chặn dữ liệu bị thiếu: Phương pháp này là việc thiết kế tốt cơ sở dữ liệu và các thủ tục nhập liệu (các ràng buộc dữ liệu), nhằm đảm bảo dữ liệu được nhập đầy đủ và chính xác từ đầu.

Xử lý dữ liệu bị nhiễu (noisy data): Là các giá trị dữ liệu bất thường hoặc sai lệch có thể ảnh hưởng đến kết quả cuối cùng Việc xử lý dữ liệu bị nhiễu bao gồm việc loại bỏ các giá trị dữ liệu bất thường hoặc giảm thiểu tác động của dữ liệu nhiễu Nguyên nhân gây ra dữ liệu nhiễu có thể kể đến như sự không nhất quán trong quy ước đặt tên hay mã dữ liệu, định dạng không nhất quán của các vùng dữ liệu, thiết bị ghi nhận dữ liệu bị lỗi

Một số phương pháp xử lý dữ liệu bị nhiễu: 1 Sử dụng các bộ siêu dữ liệu (metadata)

2 Áp dụng các ràng buộc dữ liệu (data constraints) trong cơ sở dữ liệu: Các ràng buộc này bao gồm các quy tắc và giới hạn mà các dữ liệu phải tuân thủ để đảm bảo tính nhất quán và chính xác của chúng Ví dụ, ràng buộc kiểm tra kiểu dữ liệu (data type) đảm bảo rằng giá trị nhập vào phải tuân thủ đúng kiểu dữ liệu được định nghĩa trước đó.

3 Các nhà phân tích thực hiện kiểm tra để phát hiện các vấn đề không nhất quán trong dữ liệu: Nhà phân tích dữ liệu có thể sử dụng các kỹ thuật phân tích dữ liệu để nhận diện và sửa chữa các dữ liệu không nhất quán như trùng lặp, sai định dạng.

4 Điều chỉnh dữ liệu không nhất quán bằng tay: Điều chỉnh các quy ước đặt tên hoặc mã dữ liệu để đảm bảo nhất quán Ví dụ, đổi tên hoặc mã dữ liệu cho phù hợp với quy ước đã được thiết lập trước đó.

Trang 18

+ Tích hợp dữ liệu: Là quá trình kết hợp dữ liệu từ các nguồn khác nhau thành một tập dữ liệu lớn hơn hoặc một kho dữ liệu duy nhất, giúp cho việc truy xuất và sử dụng dữ liệu trở nên dễ dàng hơn.

Một số vấn đề mà tích hợp dữ liệu thường gặp phải như:

1 Vấn đề nhận dạng thực thể: Trong quá trình tích hợp dữ liệu từ các nguồn khác nhau, các thực thể diễn tả cùng một thực thể thực nhưng lại có các cách đặt tên khác nhau Điều này dẫn đến khó khăn trong việc nhận dạng chính xác các thực thể tương đương nhau trong các nguồn dữ liệu khác nhau(Ví dụ: ở mức lược đồ (schema): customer_id trong nguồn S1 và cust_number trong nguồn S2 hay ở mức thể hiện (instance): “R & D” trong nguồn S1 và “Research &

Development” trong nguồn S2 “Male” và “Female” trong nguồn S1 và “Nam” và “Nữ” trong nguồn S2.)

2 Vấn đề dư thừa (redundancy): Là một vấn đề phổ biến khi tích hợp dữ liệu Nó xảy ra khi có nhiều bản sao của cùng một thông tin trong các nguồn dữ liệu khác nhau Khi dữ liệu được lưu trữ nhiều lần, nó không chỉ tốn tài nguyên lưu trữ mà còn có thể dẫn đến những vấn đề về tính nhất quán và tính chính xác của dữ liệu Nguyên nhân của vấn đề này có thể đến từ việc tổ chức dữ liệu kém, không nhất quán trong việc đặt tên chiều/thuộc tính…

Giải pháp: Ta có thể sử dụng phân tích tương quan (correlation analysis) để giải quyết các dữ liệu dư thừa Đối với các thuộc tính số (numerical attributes), ta có thể đánh giá tương quan giữa hai thuộc tính với các hệ số tương quan(chẳng hạn như hệ số tương quan Pearson) Đối với các thuộc tính rời rạc

(categorical/discrete attributes), ta có thể đánh giá tương quan giữa hai thuộc tính với phép kiểm thử (chi bình phương)

3 Vấn đề mâu thuẫn giá trị dữ liệu: Cho cùng một thực thể thật, các giá trị thuộc tính đến từ các nguồn dữ liệu khác nhau có thể khác nhau về cách biểu diễn (representation), đo lường (scaling), và mã hóa (encoding) ( Ví dụ:Mâu thuẫn do định dạng: dd/mm/yyyy và mm/dd/yyyy, mâu thuẫn do đơn vị: gram và kg, mâu thuẫn do mã hóa: “yes” và “no” với “1” và “0”.)

Trang 19

+ Chuyển đổi dữ liệu: Là quá trình thay đổi hoặc biến đổi dữ liệu từ một định dạng hoặc cấu trúc sang một định dạng hoặc cấu trúc khác mà phù hợp với mục đích sử dụng của nó.

Quá trình này có thể bao gồm các bước như:

1 Làm trơn dữ liệu (smoothing): Các phương pháp binning (bin means, bin medians, bin boundaries), hồi quy, các kỹ thuật gom cụm (phân tích phần tử biên), các phương pháp rời rạc hóa dữ liệu

2 Kết hợp dữ liệu (aggregation): Các tác vụ kết hợp/tóm tắt dữ liệu, chuyển dữ liệu ở mức chi tiết này sang dữ liệu ở mức kém chi tiết hơn, hỗ trợ việc phân tích dữ liệu ở nhiều độ mịn thời gian khác nhau

3 Tổng quát hóa dữ liệu (generalization): Chuyển đổi dữ liệu cấp thấp/nguyên tố/thô sang các khái niệm ở mức cao hơn thông qua các phân cấp ý niệm 4 Chuẩn hóa dữ liệu (normalization)

5 Xây dựng thuộc tính (attribute/feature construction): Các thuộc tính mới được xây dựng và thêm vào từ tập các thuộc tính sẵn có

+ Rút gọn dữ liệu (data reduction): thu giảm kích thước dữ liệu (nghĩa là giảm số phần tử) bằng kết hợp dữ liệu (data aggregation), loại bỏ các đặc điểm dư thừa (redundant features) (nghĩa là giảm số chiều/thuộc tính dữ liệu), gom cụm dữ liệu

Một số phương pháp rút gọn dữ liệu có thể kể đến như:

Trang 20

1 Kết hợp khối dữ liệu (data cube aggregation): là phương pháp tập trung vào các khối dữ liệu và thực hiện kết hợp các khối để giảm kích thước dữ liệu Ví dụ: kết hợp dữ liệu bằng các hàm nhóm: average, min, max, sum, count 2 Chọn tập con các thuộc tính (attribute subset selection): là phương pháp

giảm số lượng thuộc tính trong dữ liệu bằng cách chọn một tập con các thuộc tính quan trọng nhất Việc chọn tập con các thuộc tính này dựa trên các tiêu chí như độ quan trọng, độ tương quan giữa các thuộc tính, độ phân loại và độ phân biệt của các thuộc tính.

3 Thu giảm chiều (dimensionality reduction): là phương pháp giảm số lượng chiều của dữ liệu bằng cách giảm số lượng thuộc tính hoặc biến Một số phương pháp thu giảm chiều có thể kể đến như biển đổi wavelet hay phân tích nhân tố chính

4 Thu giảm lượng (numerosity reduction): là phương pháp giảm số lượng phần tử của dữ liệu bằng cách kết hợp các phần tử có tính chất tương tự nhau Một số phương pháp thu giảm lượng có thể kể đến như mô hình ước lượng các dữ liệu, các phương pháp phi thông số…

5 Tạo phân cấp ý niệm (concept hierarchy generation): là phương pháp phân cấp các giá trị của thuộc tính thành các nhóm hoặc lớp, giúp giảm kích thước dữ liệu phương pháp này giúp khai phá dữ liệu ở nhiều mức trừu tượng và áp dụng cho một số thuộc tính số như binning, histogram analysis, entropy-based discretization… hay thuộc tính rời rạc nhuw

categorical/discrete attribute

6 Rời rạc hóa (discretization) là quá trình chuyển đổi dữ liệu liên tục thành dữ liệu rời rạc, thông thường được sử dụng để xử lý dữ liệu liên tục trong khai phá dữ liệu Rời rạc hóa được sử dụng để giảm số chiều của dữ liệu và làm cho dữ liệu dễ dàng hiểu và xử lý Ta có thể thực hiện rời rạc hóa dữ liệu theo hai cách: Top down và bottom up, supervised và unsupervised

2.2.2 Phân lớp dữ liệu

2.2.2.1 Tổng quan về phân lớp dữ liệu

Quá trình phân lớp dữ liệu gồm 2 bước chính:

Bước 1: Xây dựng mô hình (hay còn gọi là giai đoạn “học” hay “tập huấn" ) Mục đích của bước này là xây dựng một mô hình xác định một tập các lớp dữ liệu

Công đoạn này được xem là công đoạn quan trọng trong các bài toán về Machine Learning

Dữ liệu đầu vào: là dữ liệu mẫu đã được gán nhãn và tiền xử lý Các thuật toán phân lớp: cây quyết định, hàm số toán học, tập luật…

Trang 21

Kết quả của bước này là mô hình phân lớp đã được huấn luyện (trình phân lớp)

Quá trình phân lớp dữ liệu - Bước xây dựng mô hình phân lớp

Bước 2: Kiểm tra và đánh giá, bước này sử dụng mô hình phân lớp đã được xây dựng ở bước 1 vào việc phân lớp Chia thành 2 bước nhỏ:

Bước 2.1: Đánh giá mô hình (Kiểm tra tính đúng đắn của mô hình)

Dữ liệu đầu vào: là một tập dữ liệu mẫu khác đã được gán nhãn và tiền xử lý Tuy nhiên lúc đưa vào mô hình phân lớp, ta “lờ” đi thuộc tính đã được gán nhãn

Tính đúng đắn của mô hình sẽ được xác định bằng cách so sánh thuộc tính gán nhãn của dữ liệu đầu vào và kết quả phân lớp của mô hình.

Ngày đăng: 08/04/2024, 08:03

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w