TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU
Khai phá dữ liệu là gì?
Khai phá dữ liệu là quá trình phân tích và sắp xếp các tập hợp dữ liệu lớn để nhận diện mẫu và thiết lập mối quan hệ, từ đó giải quyết các vấn đề thông qua phân tích dữ liệu Các công cụ khai phá dữ liệu giúp doanh nghiệp dự đoán xu hướng tương lai.
Lợi ích của Khai phá dữ liệu
Khai phá dữ liệu mang lại lợi ích chính là phát hiện các mẫu và mối liên hệ tiềm ẩn trong cơ sở dữ liệu, giúp chúng ta làm chủ kho dữ liệu lớn Thông qua việc xây dựng mô hình tri thức dựa trên nguồn dữ liệu có sẵn, Khai phá dữ liệu cung cấp nhiều giá trị quan trọng cho doanh nghiệp.
Lịch sử bán hàng và hành vi khách hàng đóng vai trò quan trọng trong việc phát triển các mô hình dự báo doanh số, đồng thời giúp xác định sản phẩm và dịch vụ mới cho tương lai.
Các công ty trong ngành tài chính sử dụng các công cụ Khai phá dữ liệu để xây dựng các mô hình phát hiện rủi ro và gian lận
Trong lĩnh vực sản xuất công nghiệp, khai phá dữ liệu đóng vai trò quan trọng trong việc nâng cao an toàn sản phẩm, xác định các vấn đề về chất lượng, quản lý chuỗi cung ứng hiệu quả và cải thiện hoạt động vận hành sản xuất.
Hình 1.3.1: Lợi ích của Khai phá dữ liệu
Các bước chính trong khai phá dữ liệu
Dữ liệu dùng để Khai phá
Tìm hiểu nghiệp vụ Tìm hiểu dữ liệu
Xây dựng mô hình Triển khai
Kiểm thử & Đánh giá mô hình
Hình 1.3.1: Các bước khai phá dữ liệu Bước 1: Tìm hiểu nghiệp vụ - Business Understanding Bước 2: Tìm hiểu dữ liệu - Data Understanding
Bước 3: Chuẩn bị dữ liệu - Data preparation Việc chuẩn bị dữ liệu bao gồm các bước
Tập hợp dữ liệu Làm sạch dữ liệu Chuyển đổi dữ liệu Chọn lọc dữ liệu
Dữ liệu dùng để Khai phá
Hình 1.3.2: Các bước chuẩn bị data Bước 4: Xây dựng mô hình hóa - Model Building
Bước 5: Kiểm thử và đánh giá mô hình - Testing and Evaluation
Các kỹ thuật khai phá dữ liệu
Kỹ thuật phân lớp là một trong những phương pháp khai phá dữ liệu phổ biến, được áp dụng trong nhiều lĩnh vực như quản lý rủi ro, lựa chọn quảng cáo phù hợp cho từng nhóm khách hàng, và phân tích khả năng chuyển đổi của khách hàng sang sản phẩm của đối thủ cạnh tranh.
Kỹ thuật phân lớp là phương pháp tổ chức dữ liệu thành các lớp đã được xác định trước, còn gọi là học có giám sát Trong quá trình phân loại, các nhãn lớp được sử dụng để phân loại các đối tượng, dựa trên một tập huấn luyện chứa các đối tượng đã được gán nhãn Thuật toán học có giám sát sẽ được áp dụng cho các đối tượng cần phân loại, nhằm mô hình hóa quá trình phân lớp dữ liệu một cách hiệu quả.
Kỹ thuật phân cụm khác với phân lớp ở chỗ không cần nhãn lớp đã biết và không có dữ liệu huấn luyện Quá trình phân cụm dựa trên sự tương đồng giữa các thuộc tính của đối tượng Phân cụm thường được coi là một dạng học không có giám sát.
Kỹ thuật phân tích luật kết hợp 1.4.3.
Kỹ thuật phân tích luật kết hợp, hay còn gọi là kỹ thuật phân tích giỏ hàng, thường được áp dụng trong việc phân tích giao dịch dữ liệu và giải quyết các bài toán lựa chọn hàng hóa đi kèm.
Kỹ thuật phân tích luật kết hợp giúp khám phá các mối liên hệ giữa các thuộc tính dữ liệu, cho thấy những thuộc tính này thường xuất hiện đồng thời trong các tập dữ liệu.
Kỹ thuật bài toán hồi quy 1.4.4.
Kỹ thuật hồi quy cũng tương tự như kỹ thuật phân lớp Điểm khác biệt là hồi quy dự đoán cho các dữ liệu liên tục
Dự đoán là phần quan trọng của KHAI PHÁ DỮ LIỆU Có hai loại dự đoán chính:
Dự đoán về một số giá trị dữ liệu chưa biết hay có xu hướng sắp xảy ra
Dự đoán để phân lớp dựa trên (một tập huấn luyện và giá trị thuộc tính) của đối tượng
Kỹ thuật phân tích chuỗi 1.4.6.
Là kỹ thuật để tìm ra các mẫu trong một loạt các giá trị hay trạng thái rời rạc
Việc lựa chọn hàng hóa của khách hàng có thể được mô hình hóa như một chuỗi dữ liệu, trong đó hành động chọn mặt hàng A, sau đó là B, C… tạo thành một chuỗi các trạng thái rời rạc Đồng thời, thời gian lại được thể hiện dưới dạng chuỗi số liên tục.
Phân tích chuỗi (PTC) và phân tích luật kết hợp (PTLKH) đều nhằm phân tích các tập hợp đối tượng hoặc trạng thái Tuy nhiên, PTC tập trung vào việc phân tích sự chuyển đổi giữa các trạng thái, trong khi PTLKH xem mỗi mặt hàng trong giỏ hàng là độc lập và tương đương.
Trong mô hình chuỗi, thứ tự lựa chọn giữa mặt hàng A và mặt hàng B có ý nghĩa khác nhau, trong khi ở mô hình kết hợp, việc chọn A trước B hay B trước A đều không tạo ra sự khác biệt.
Kỹ thuật phân tích độ lệch 1.4.7.
Kỹ thuật phát hiện điểm biên, hay còn gọi là phát hiện ngoại lệ, được sử dụng để xác định những đối tượng dữ liệu không tuân theo các đặc tính và hành vi chung Phát hiện điểm biên có nhiều ứng dụng thực tiễn, trong đó nổi bật là việc kiểm tra xác thực thẻ tín dụng.
1.5 Các thuật toán phân lớp
Rừng ngẫu nhiên (Random Forest) là một công cụ ước tính mạnh mẽ, sử dụng nhiều cây quyết định trên các mẫu dữ liệu con khác nhau và kết hợp kết quả để cải thiện độ chính xác dự đoán Phương pháp này giúp kiểm soát sự phù hợp quá mức, với cỡ mẫu phụ tương đương với cỡ mẫu đầu vào nhưng được lấy mẫu có thay thế Một trong những ưu điểm nổi bật của rừng ngẫu nhiên là khả năng giảm thiểu tình trạng phù hợp quá mức và thường cho kết quả chính xác hơn so với cây quyết định trong nhiều trường hợp.
Nhƣợc điểm: Dự đoán thời gian thực chậm, khó thực hiện và thuật toán phức tạp
Hồi quy logistic - Logistic Regression 1.5.2.
Hồi quy logistic là một phương pháp phân loại tương tự như hồi quy tuyến tính, cho phép dự đoán xác suất thuộc về một lớp nhất định Thông qua hàm logistic, nó ánh xạ giá trị dự đoán từ 0 đến 1, giúp người dùng hiểu rõ hơn về khả năng xảy ra của các kết quả.
Các mô hình hồi quy logistic hoạt động hiệu quả khi các lớp dữ liệu có thể được phân tách tuyến tính, tức là có thể phân chia bằng một bề mặt quyết định duy nhất Ngoài ra, hồi quy logistic cũng cho phép thường xuyên hóa thông qua việc áp dụng hình phạt cho các hệ số với cường độ hình phạt có thể điều chỉnh.
Điểm mạnh của mô hình logistic là khả năng cung cấp diễn giải xác suất chính xác và có thể được thường xuyên hóa để tránh hiện tượng quá mức Hơn nữa, các mô hình này có thể dễ dàng được cập nhật với dữ liệu mới thông qua việc sử dụng gốc dốc ngẫu nhiên.
Hồi quy logistic có những điểm yếu, đặc biệt khi phải đối mặt với nhiều ranh giới quyết định phi tuyến tính Phương pháp này thiếu sự linh hoạt cần thiết để nắm bắt các mối quan hệ phức tạp trong dữ liệu một cách tự nhiên.
Cây quyết định - Decision tree 1.5.3.
Cây hồi quy, hay còn gọi là cây quyết định, hoạt động theo phương pháp phân cấp bằng cách chia dữ liệu thành các nhánh riêng biệt nhằm tối đa hóa thông tin trong mỗi lần phân tách Cấu trúc phân nhánh này giúp cây hồi quy học hỏi các mối quan hệ phi tuyến tính một cách tự nhiên.
Đề tài khai phá dữ liệu phân lớp rủi ro tín dụng
Trong luận văn này, tác giả nghiên cứu ứng dụng khai phá dữ liệu trong việc phân lớp rủi ro tín dụng, một yếu tố thiết yếu trong quy trình cho vay của ngành tài chính ngân hàng Việc đánh giá rủi ro tín dụng giúp ngân hàng đưa ra quyết định khách quan về khả năng giải ngân cho vay Thiếu sót trong bước này có thể dẫn đến những quyết định sai lầm Đánh giá rủi ro tín dụng thường liên quan đến việc định lượng khả năng mất mát của ngân hàng khi thực hiện cho vay, dựa trên giá trị tài sản thế chấp, thông tin về người vay, khả năng mất vốn, và tỷ lệ thu hồi trong trường hợp người vay không trả nợ.
Do đó ta có thể sử dụng các phương pháp phân lớp - classifications áp dụng trên thông tin dữ liệu của khách vay để phân loại nhóm khách hàng.
BÀI TOÁN PHÂN LỚP DỰ BÁO RỦI RO TÍN DỤNG
Lý thuyết rủi ro tín dụng
Khái niệm rủi ro tín dụng 2.1.1.
Tín dụng ngân hàng là mối quan hệ tín dụng giữa ngân hàng, tổ chức tín dụng và các cá nhân, tổ chức kinh tế, dựa trên nguyên tắc hoàn trả Việc hoàn trả nợ gốc liên quan đến giá trị hàng hóa trên thị trường, trong khi hoàn trả lãi vay thể hiện giá trị thặng dư Trong mối quan hệ tín dụng, hai bên tham gia chính là ngân hàng cho vay và người đi vay.
Rủi ro tín dụng là:
Khoản lỗ có nguy cơ xảy ra khi ngân hàng cấp tín dụng
Ngân hàng phải đối mặt với nhiều thiệt hại nghiêm trọng khi người vay không trả nợ đúng hạn hoặc không thực hiện nghĩa vụ cam kết trong hợp đồng vay, bất kể lý do nào Những khoản nợ xấu này không chỉ ảnh hưởng đến lợi nhuận của ngân hàng mà còn gây ra rủi ro tài chính lớn, làm giảm uy tín và khả năng huy động vốn trong tương lai.
Những nguyên nhân phát sinh rủi ro tín dụng 2.1.2.
Rủi ro tín dụng thường xảy ra bởi những nguyên nhân sau:
Khách hàng vay vốn có thể đối mặt với nhiều rủi ro như tai nạn bất ngờ hoặc thua lỗ trong kinh doanh, dẫn đến tình trạng không đủ khả năng thanh toán nợ Điều này có thể gây ra nợ quá hạn, ảnh hưởng tiêu cực đến tình hình tài chính của họ.
Do tác động của tình hình kinh tế trong nước và thế giới
Các vấn đề vì ham lợi nhuận, vi phạm nguyên tắc cho vay, phân tích đánh giá khách hàng sai, quyết định cho vay thiếu thông tin xác thực
Ngân hàng thực hiện phân loại nợ như sau:
Nhóm 1 (nợ được đánh giá là đủ tiêu chuẩn):
Nợ trong hạn là khoản vay chưa đến thời hạn thanh toán, được ngân hàng đánh giá có khả năng thu hồi cả gốc và lãi đầy đủ đúng hạn.
Các món nợ khác của Khách hàng cũng đều không bị quá hạn
Nhóm 2 (nợ được đánh giá là cần chú ý):
Nợ đã quá hạn chưa quá 3 tháng
Nợ đã được cơ cấu lại thời hạn trả nợ trong hạn
Nhóm 3 bao gồm những khoản tín dụng mà khả năng thu hồi cả gốc và lãi được đánh giá là cao, tuy nhiên, khách hàng có dấu hiệu suy giảm khả năng trả nợ.
Các khoản nợ quá hạn từ 3 tháng => đến 6 tháng
Các khoản nợ đã được cơ cấu lại thời hạn trả nợ nhưng bị quá hạn trên 90 ngày
Nợ được xem là rủi ro có khả năng không thu hồi đầy đủ cả gốc lẫn lãi khi đến hạn, dẫn đến khả năng tổn thất một phần của nợ gốc và lãi.
Các khoản nợ quá hạn từ 6 tháng => đến 1 năm
Các khoản nợ được được cơ cấu lại thời hạn trả nợ nhưng bị quá hạn từ 90 đến 180 ngày
Các khoản nợ bị đánh giá là có khả năng tổn thất cao
Nhóm 5 (nợ có khả năng bị mất vốn):
Nợ quá hạn trên 1 năm
Các khoản nợ khoanh phải chờ Chính Phủ xử lý
Các khoản nợ được cơ cấu lại thời hạn trả nợ nhưng bị quá hạn trên 180 ngày
Trên quan điểm phân hạng nợ Tốt/Xấu thì:
Nợ Tốt: là những khoản vay nằm trong Nhóm 1, 2
Nợ Xấu: là những khoản vay nằm trong Nhóm 3, 4, 5 Điều kiện vay vốn
Các khách hàng muốn được vay vốn phải có các điều kiện sau đây:
Có năng lực pháp luật dân sự, năng lực hành vi dân sự và chịu trách nhiệm dân sự theo quy định của pháp luật
Có mục đích sử dụng vay vốn hợp pháp
Có khả năng tài chính đảm bảo trả nợ trong thời hạn cam kết
Có phương án sản xuất kinh doanh, dự án đầu tư, dịch vụ khả thi và có hiệu quả
Căn cứ xác định định mức cho vay 2.1.5.
Nhu cầu vay vốn của khách hàng
Mức vốn của khách hàng tham gia vào dự án, phương án kinh doanh, sản xuất, dịch vụ, đời sống
Tỷ lệ cho vay tối đa so với giá trị tài sản bảo đảm tiền vay theo quy định về bảo đảm tiền vay của ngân hàng
Khả năng hoàn trả nợ của khách hàng
Khả năng nguồn vốn của ngân hàng không được vượt quá mức cho vay đã được tổng giám đốc ngân hàng phê duyệt Điều này đảm bảo rằng ngân hàng hoạt động trong khuôn khổ quy định và duy trì sự ổn định tài chính.
Ngân hàng cho vay các đối tượng sau:
Giá trị vật tư, máy móc, hàng hoá, thiết bị và các khoản chi phí để khách hàng thực hiện các dự án sản xuất, kinh doanh dịch vụ
Ngân hàng không cho vay các đối tượng sau:
Số tiền thuế phải nộp
Số tiền để trả nợ gốc và lãi vay cho các tổ chức tín dụng khác
Số tiền vay trả cho chính tổ chức tín dụng cho vay vốn
Mô hình lƣợng hóa rủi ro tín dụng cho khách hàng cá nhân 2.1.7.
Dưới đây là bảng tiêu chí cho mô hình chấm điểm tín dụng khách hàng cá nhân của VietinBank
Bảng 2: Chấm điểm tín dụng khách hàng cá nhân tại VietinBank
STT Các hạng mục xác định chất lƣợng tín dụng Điểm số
1 Nghề nghiệp của người vay
Chuyên gia hay phụ trách kinh doanh Công nhân có kinh nghiệm (tay nghề cao) Nhân viên văn phòng
Sinh viên Công nhân không có kinh nghiệm Công nhân bán thất nghiệp
STT Các hạng mục xác định chất lƣợng tín dụng Điểm số
Nhà riêng Nhà thuê hay căn hộ Sống cùng bạn hay người thân
Tốt Trung bình Không có hồ sơ Tồi
5 Thời gian cư trú tại điểm hiện tại
7 Số người sống phụ thuộc
8 Các tài khoản tại ngân hàng
Tiết kiệm thẻ & Tài khoản tiết kiệm Tài khoản tiết kiệm
Tiết kiệm thẻ Không có
0 Khi cấp tín dụng cho khách hàng, ngân hàng thường căn cứ vào 3 chỉ tiêu là:
Nguồn trả nợ của khách
Mục đích sử dụng vốn vay
Hai tiêu chí này ảnh hưởng trực tiếp đến điểm tín dụng của khách hàng Dựa trên kết quả điểm tín dụng, ngân hàng sẽ tiến hành phân loại và quyết định cấp tín dụng cho từng khách hàng.
Mặc dù khách hàng được đánh giá là loại tốt và đáp ứng đủ ba tiêu chí, nhưng ngân hàng vẫn phải đối mặt với nguy cơ rủi ro khi cấp vốn vay.
Rủi ro tín dụng (RRTD) có ảnh hưởng lớn đến sự phát triển của ngân hàng và nền kinh tế Việc dự đoán và phòng ngừa rủi ro trở nên quan trọng trong bối cảnh này Áp dụng các kỹ thuật khai phá dữ liệu cho bài toán RRTD giúp phát hiện nguồn tri thức mới, hỗ trợ các chuyên gia ngân hàng trong việc đánh giá và phòng ngừa rủi ro hiệu quả.
Hình 2.3.1: Phát biểu bài toán Đầu vào:
Để xây dựng mô hình hiệu quả, việc tập hợp thông tin khách hàng và lịch sử trả nợ là rất quan trọng Dữ liệu này được chia thành hai tập: Tập huấn luyện (Training Set) để phát triển mô hình, và Tập kiểm thử (Testing Set) nhằm kiểm chứng độ chính xác của mô hình.
Tập thông tin khách hàng mới cần dự báo Áp dụng mô hình
Dữ liệu Kiểm thử Kiểm thử mô hình Mô hình phân lớp
Dự đoán Phân loại nợ Đầu ra:
Đưa ra mô hình phân lớp dự báo, các chỉ số đánh giá mô hình, các luật rút ra từ mô hình giúp phân loại các khách hàng mới
Khách hàng vay vốn có mục đích mua nhà, với thu nhập trên 11 triệu đồng, hiện đang thuê nhà và làm việc tại công ty phần mềm với chức vụ chuyên viên Thời gian công tác trong lĩnh vực chuyên môn của khách hàng này chưa đến 3 năm.
Đầu ra: o Dự báo khách hàng có khả năng rơi vào nhóm nợ cần chú ý (nhóm
Mục tiêu của bài toán là phát triển một mô hình chứa các tập luật ràng buộc dữ liệu, tạo thành cơ sở tri thức Mô hình này sẽ giúp phân loại khách hàng mới dựa trên thông tin đầu vào của khách vay.
Việc dự báo chính xác sẽ giúp ngân hàng giảm thiểu các rủi ro có thể có từ các khách hàng có khả năng không trả được nợ
Quy trình phân lớp xây dựng mô hình
Để xây dựng mô hình theo yêu cầu của bài toán ở mục 2.3, chúng ta cần thực hiện theo các bước sau: đầu tiên, xây dựng mô hình từ tập huấn luyện.
Hình 2.4.1: Quy trình huấn luyện - training
Quá trình phân lớp thực hiện nhiệm vụ xây dựng mô hình các công cụ phân lớp giúp cho việc gán nhãn phân loại cho các dữ liệu
Nhãn “An toàn” hoặc “Rủi ro” cho các yêu cầu vay vốn; “Có” hoặc
“Không” cho các thông tin thị trường…
Các Nhãn dùng phân loại được biểu diễn bằng các giá trị rời rạc trong đó việc sắp xếp trùng là không có ý nghĩa
Phân lớp dữ liệu gồm hai quá trình
Công cụ phân lớp sẽ được phát triển nhằm phân tích nguồn dữ liệu Quá trình này bao gồm việc xây dựng một thuật toán phân lớp thông qua việc học từ tập dữ liệu huấn luyện đã được chuẩn bị sẵn, trong đó có nhiều bộ dữ liệu khác nhau.
Một bộ dữ liệu X biểu diễn bằng một vector n chiều, X = (x1, x2, …, xn), đây là các giá trị cụ thể của một tập n thuộc tính của nguồn dữ liệu {A1, A2,
…, An} Mỗi bộ được giả sử rằng nó thuộc về một lớp được định nghĩa trước với các nhãn xác định
IF age=young THEN loan_decicion=risky
IF income=high THEN loan_decicion=safe
IF age=middle AND income=low THEN loan_decicion=risky
Mô hình hóa b Đánh giá mô hình bằng tập kiểm kiểm thử - Data test
Hình 2.4.2: Quy trình test dữ liệu c Áp dụng mô hình để dự đoán dữ liệu mới
Hình 2.4.3: Quy trình áp dụng mô hình
Mô hình phân lớp dự báo rủi ro
Dựa trên quy trình phân lớp dữ liệu, ta có thể áp dụng mô hình sau vào bài toán phân lớp rủi ro tín dụng
Tập huấn luyên (Training Set)
Tập kiểm thử (Testing Set) Khách hàng mới Đánh giá
Thuật toán phân lớp Áp dụng
Các thuật toán áp dụng:
Thuật toán Apriori khai phá luật kết hợp
Hình 2.5.1: Mô hình phân lớp dự báo rủi ro Để xây dựng được mô hình phân lớp dữ liệu ta cần 2 yếu tố
Bộ dữ liệu đầu vào (Tập huấn luyện & Tập kiểm thử)
IF age=young THEN loan_decicion=risky
IF income=high THEN loan_decicion=safe
IF age=middle AND income=low THEN loan_decicion=risky
(Jonh henry, middle, low) Loan_decicion?
Lựa chọn nghiên cứu thuật toán
Dựa vào Ưu nhược điểm của các thuật toán đã được trình bày sơ lược ở chương
I (Mục 1.6 – Các thuật toán phân lớp)
Dựa trên tính chất dữ liệu của bài toán rủi ro tín dụng, các thuộc tính dữ liệu thường có dải giá trị hạn chế Theo quy trình của Ngân hàng, những giá trị rời rạc này thường được phân loại và nhóm lại thành một tập hữu hạn.
Tuổi của khách vay thì từ 28 – 65, nhưng thực tế thì sẽ được chia thành 5 nhóm tuổi Tín dụng để quản lý
Khách vay thường sinh sống tại nhiều địa chỉ khác nhau, nhưng thực tế có thể được phân loại thành một số khu vực cụ thể như Khu vực Hà Nội 1, Khu vực Hà Nội 2, và các khu vực nông thôn.
Tiền vay có giá trị đa dạng, từ 18 triệu đến hơn 18 tỷ đồng, và được phân loại thành các nhóm giá trị khác nhau.
Tác giả nhận thấy rằng thuật toán phân lớp bằng cây quyết định và thuật toán Navie Bayes là những phương pháp phù hợp cho dữ liệu trong quản lý rủi ro tín dụng Do đó, trong khuôn khổ luận văn, tác giả quyết định nghiên cứu sâu hai thuật toán này.
Phân lớp Cây quyết định 2.5.1.
2.5.1.1 Thuật toán cây quyết định
Cây quyết định là một cấu trúc giống như sơ đồ, trong đó các nút bên trong đại diện cho tính năng, nhánh thể hiện quy tắc quyết định, và các nút lá biểu thị kết quả Nút gốc ở trên cùng học cách phân vùng dựa trên giá trị thuộc tính và thực hiện phân vùng đệ quy Cấu trúc này hỗ trợ quá trình ra quyết định, mang lại tính trực quan và dễ hiểu, tương tự như tư duy của con người Chính vì vậy, cây quyết định được coi là một công cụ hiệu quả trong việc phân tích và giải thích dữ liệu.
Cây quyết định là một thuật toán Machine Learning (ML) dạng hộp trắng, cho phép người dùng hiểu rõ logic ra quyết định của nó, khác với các thuật toán hộp đen như Mạng thần kinh So với Mạng thần kinh, thời gian đào tạo của cây quyết định nhanh hơn, và độ phức tạp thời gian của nó phụ thuộc vào số lượng bản ghi và thuộc tính trong dữ liệu Là một phương pháp không phân phối và không tham số, cây quyết định không dựa vào các giả định phân phối xác suất, đồng thời có khả năng xử lý dữ liệu chiều cao với độ chính xác tốt.
2.5.1.2 Hoạt động của thuật toán Cây quyết định Ý tưởng cơ bản về hoạt động của thuật toán cây quyết định như sau:
1 Chọn thuộc tính tốt nhất bằng cách sử dụng các biện pháp lựa chọn thuộc tính (ASM – attribute selection measure) để phân chia các bản ghi
2 Biến thuộc tính đó thành nút quyết định và chia tập dữ liệu thành các tập con nhỏ hơn
3 Bắt đầu xây dựng cây bằng cách lặp lại quy trình này một cách đệ quy cho mỗi Node con cho đến khi một trong những điều kiện sẽ khớp:
Tất cả các bộ dữ liệu thuộc về cùng một giá trị thuộc tính
Không còn thuộc tính nào nữa
Không có nhiều trường hợp nữa
Lựa chọn thuộc tính tốt nhất dựa vào chỉ số Gain, Gini
Tách dữ liệu thành các tập nhỏ hơn theo thuộc tính cha
3 recall – độ hồi tưởng Lặp lại xử lý với node con
Hình 2.6.2: luồng hoạt động của cây quyết định
2.5.1.3 Các biện pháp lựa chọn thuộc tính
Biện pháp lựa chọn thuộc tính là một heuristic quan trọng trong việc xác định tiêu chí phân tách dữ liệu, giúp tối ưu hóa quá trình phân vùng Còn được gọi là quy tắc chia tách, nó xác định các điểm dừng cho bộ dữ liệu tại một nút nhất định ASM (attribute selection measure) đánh giá và xếp hạng từng thuộc tính dựa trên tập dữ liệu hiện có, với thuộc tính tốt nhất được chọn làm thuộc tính chia Đối với thuộc tính có giá trị liên tục, việc xác định các điểm phân chia cho các nhánh là cần thiết Những biện pháp lựa chọn phổ biến bao gồm Thông tin đạt được, Tỷ lệ tăng và Chỉ số Gini.
Shannon đã phát minh ra khái niệm entropy, đo lường sự không tinh khiết của bộ đầu vào, được hiểu là tính ngẫu nhiên hoặc tạp chất trong hệ thống Trong lý thuyết thông tin, entropy đề cập đến tạp chất trong một nhóm ví dụ, và thông tin đạt được là sự giảm entropy Độ lợi thông tin được tính bằng sự khác biệt giữa entropy trước và sau khi tách bộ dữ liệu dựa trên các giá trị thuộc tính Thuật toán cây quyết định ID3 (Iterative Dichotomiser) áp dụng thông tin này để tối ưu hóa quá trình phân tích dữ liệu.
Trong đó, Pi là xác suất mà một tuple tùy ý trong D thuộc về lớp Ci
Thông tin (D) là lượng thông tin trung bình cần thiết để xác định nhãn lớp của một tuple trong D
| Dj | / | D | đóng vai trò là trọng lượng của phân vùng thứ j
InfoA (D) là thông tin dự kiến cần có để phân lớp một tuple từ D dựa trên phân vùng của A
Thuộc tính A có mức tăng thông tin cao nhất, Gain (A), được chọn làm thuộc tính tách tại nút N ()
Thông tin đạt được có thiên vị đối với thuộc tính có nhiều giá trị riêng biệt, như customer_ID Khi thuộc tính này không có thông tin phân vùng thuần túy, điều này dẫn đến việc tối đa hóa thông tin đạt được nhưng lại tạo ra phân vùng không hiệu quả.
C4.5, một phiên bản nâng cấp của ID3, áp dụng tỷ lệ khuếch đại để cải thiện thông tin phân loại Tỷ lệ khuếch đại giúp xử lý vấn đề sai lệch bằng cách bình thường hóa mức tăng thông tin thông qua thông tin phân tách Phiên bản Java của thuật toán C4.5, được gọi là J48, có thể được tìm thấy trong công cụ khai phá dữ liệu WEKA.
| Dj | / | D | đóng vai trò là trọng lượng của phân vùng thứ j
v là số lượng giá trị rời rạc trong thuộc tính A
Tỷ lệ khuếch đại có thể được định nghĩa là
( ) Thuộc tính có tỷ lệ khuếch đại cao nhất được chọn làm nút gốc
Một thuật toán cây quyết định khác sử dụng phương thức Gini để tạo các điểm phân chia
Trong đó, pi là xác suất mà một tuple trong D thuộc về lớp Ci
Chỉ số Gini đánh giá sự phân chia nhị phân cho từng thuộc tính bằng cách tính tổng trọng số của tạp chất trong các phân vùng Khi thực hiện phân chia nhị phân trên thuộc tính A, dữ liệu D sẽ được chia thành hai phần D1 và D2, và chỉ số Gini của D sẽ được xác định dựa trên tạp chất của các phân vùng này.
Khi thuộc tính có giá trị rời rạc, tập hợp con sẽ cung cấp chỉ số Gini tối thiểu để lựa chọn thuộc tính tách Đối với thuộc tính có giá trị liên tục, chiến lược là chọn các cặp giá trị liền kề làm điểm phân tách, và điểm nào có chỉ số Gini nhỏ hơn sẽ được chọn làm điểm phân tách.
( ) ( ) ( ) Thuộc tính có chỉ số Gini tối thiểu được chọn làm thuộc tính tách
Khi thực hiện phân lớp, bước đầu tiên là hiểu vấn đề và xác định các tính năng cũng như nhãn tiềm năng Các tính năng, như nghề nghiệp, thu nhập, tuổi tác, địa điểm, lịch sử cho vay trước đây, lịch sử giao dịch và điểm tín dụng, là những đặc điểm ảnh hưởng đến kết quả của nhãn Những đặc điểm này đóng vai trò quan trọng trong việc xây dựng mô hình phân loại khách hàng trong lĩnh vực phân phối cho vay.
Quá trình phân lớp bao gồm hai giai đoạn chính: giai đoạn học tập và giai đoạn đánh giá Trong giai đoạn học tập, mô hình phân loại được đào tạo trên một tập dữ liệu cụ thể Sau đó, trong giai đoạn đánh giá, hiệu suất của mô hình sẽ được kiểm tra Hiệu suất này được đánh giá dựa trên nhiều thông số khác nhau như độ chính xác, tỷ lệ lỗi, độ chính xác và độ thu hồi.
Test Kiểm thử mô hình
3 recall – độ hồi tưởng Xây dựng mô hình
Hình 2.6.3: Quy trình phân lớp
2.5.2.2 Phân lớp Naive Bayes là gì?
THỰC NGHIỆM TRÊN DỮ LIỆU VIETINBANK
Khảo sát hoạt động tín dụng của hệ thống Vietinbank
Tổng quan hoạt động tín dụng của Vietinbank 3.1.1.
Tổng dư nợ của VietinBank đã ghi nhận sự tăng trưởng ấn tượng từ năm 2012 đến 2017, với giá trị tăng từ 333,356 tỷ đồng năm 2012 lên 790,688 tỷ đồng năm 2017, tương đương mức tăng gấp 2,3 lần.
Hình 3.1.1: Tổng dư nợ VietinBank từ 2013 – 2017
VietinBank đang điều chỉnh cơ cấu tín dụng bằng cách giảm tỷ trọng cho vay ngắn hạn và tăng dần tỷ trọng cho vay trung dài hạn Sự chuyển dịch này phản ánh sự phát triển bền vững và ổn định hơn trong quy mô dư nợ của ngân hàng.
Hình 3.1.2: Cơ cấu tín dụng VietinBank theo kỳ hạn từ 2012 - 2017
So sánh các chỉ tiêu tín dụng, huy động, lợi nhuận, tỷ lệ nợ xấu với các ngân hàng Việt Nam (2017)
Hình 3.1.3: So sánh chỉ tiêu tín dụng, huy động, lợi nhuận, nợ xấu
Hình 3.1.4: Biểu đồ kiểm soát nợ xấu giai đoạn 2010 đến 2017
Từ năm 2012 đến 2017, hoạt động tín dụng của VietinBank đã ghi nhận sự phát triển nhanh chóng và bền vững, đồng thời khả năng kiểm soát nợ xấu được đánh giá tích cực trong ngành ngân hàng.
Các biện pháp quản trị nợ xấu đã đƣợc áp dụng tại VietinBank 3.1.2.
3.1.2.1 Hệ thống xếp hạng tín dụng: Đây là hệ thống xương sống trong hoạt động cấp tín dụng của VietinBank VietinBank là tổ chức tín dụng trong nước đầu tiên áp dụng hệ thống xếp hạng tín dụng (XHTD) chuẩn mực vào hoạt động cho vay Theo quy định của hệ thống XHTD của VietinBank tất cả các khách hàng có quan hệ tín dụng với VietinBank đều phải được XHTD, kết quả XHTD được sử dụng để quyết định các nội dung tín dụng liên quan về tỷ lệ TSBĐ, chính sách giá, phí, phân loại nợ, điều kiện tín dụng… Hệ thống XHTD được xây dựng trên cơ sở phân tích định tính và phân tích định lượng Tất cả các thông số đều được lượng hóa qua số điểm để ra kết quả xếp hạng tín dụng của khách hàng
3.1.2.2 Công tác dự báo nợ có khả năng chuyển xấu:
VietinBank thường xuyên đánh giá danh mục để dự báo nợ tiềm ẩn rủi ro và nợ có khả năng chuyển thành nợ xấu, nhằm đưa ra giải pháp tín dụng phù hợp Quy trình này được thực hiện bởi hai bộ phận độc lập: bộ phận phê duyệt tín dụng và bộ phận kiểm tra giám sát tuân thủ Dự báo nợ xấu chủ yếu dựa trên phương pháp định tính từ ý kiến chuyên gia Kết quả dự báo này giúp VietinBank điều chỉnh thẩm quyền phê duyệt tại các chi nhánh, dự kiến quỹ dự phòng rủi ro và định hướng phê duyệt tín dụng cho khách hàng.
3.1.2.3 Những tồn tại, hạn chế
Mặc dù VietinBank đã đạt được nhiều kết quả khả quan về tài chính và cấu trúc hệ thống, nhưng công tác quản trị chất lượng tín dụng và quản trị nợ xấu vẫn còn nhiều vấn đề cần được khắc phục.
VietinBank chưa xác định rõ ràng đối tượng khách hàng mục tiêu, điều này gây khó khăn cho các bộ phận thẩm định trong việc rà soát và tiết kiệm thời gian trong quá trình lọc khách hàng.
Trong công tác đánh giá rủi ro tín dụng trong cho vay, cán bộ ngân hàng thường dựa vào kinh nghiệm cá nhân hoặc ý kiến chuyên gia, nhưng phương pháp này có nhiều hạn chế do phụ thuộc vào năng lực và tâm lý của từng cá nhân Việc thiếu thông tin cần thiết để phân tích cũng làm giảm độ tin cậy và tính chính xác của đánh giá Điều này không chỉ tiềm ẩn nhiều rủi ro mà còn ảnh hưởng trực tiếp đến hiệu quả hoạt động của ngân hàng.
VietinBank hiện đang thiếu các công cụ hỗ trợ thẩm định tín dụng, bao gồm trung tâm hỗ trợ pháp lý, trung tâm định giá tài sản bảo đảm, và hệ thống tra cứu các văn bản quy phạm pháp luật cũng như nội bộ liên quan đến thẩm định tín dụng Ngoài ra, ngân hàng cũng cần một hệ thống tra cứu thông tin về các doanh nghiệp đang gặp phải những vấn đề bất lợi từ nhiều nguồn khác nhau.
VietinBank còn thiếu các sản phẩm cho vay chuyên biệt
Công tác đánh giá nghiên cứu ngành tại VietinBank cần được nâng cao về độ chuyên sâu để hỗ trợ hiệu quả cho cán bộ tín dụng Hiện tại, vẫn còn thiếu hụt nhiều thống kê chuyên ngành và phân tích về các rủi ro đặc trưng của ngành.
Hệ thống xếp hạng tín dụng của VietinBank chỉ mới có chiều xếp hạng khách hàng, chưa có chiều xếp hạng khoản cấp tín dụng
Công tác rà soát các chính sách trong hoạt động cấp tín dụng của VietinBank còn chậm chưa theo kịp các thay đổi trong thực tế
Công tác đào tạo nhân sự tín dụng tại VietinBank được chú trọng, nhưng chất lượng đào tạo vẫn chưa đạt yêu cầu Đào tạo chủ yếu tập trung vào lý thuyết, thiếu hụt các khóa học thực tiễn và cơ hội trao đổi, chia sẻ kinh nghiệm.
Mô tả bài toán áp dụng KPDL hỗ trợ quản lý rủi ro tín dụng
Ngân hàng cần xác định những khoản vay mới, trong tương lai sẽ là nợ Tốt hay nợ Xấu
Kết quả phân tích sẽ tạo ra một mô hình giúp dự đoán các khoản vay thuộc nhóm nợ Xấu (nhóm 3, 4, 5) hay nhóm nợ Tốt (nhóm 1, 2).
Mô hình này không chỉ dự đoán nhóm khoản vay mà còn là công cụ hữu ích để tra cứu các thuộc tính liên quan đến khoản vay, như lãi suất, lãi phạt trả chậm và sự thay đổi trong thu nhập cố định của khách vay.
Thu thập dữ liệu cho vay của hệ thống Vietinbank
Để giới hạn phạm vi bài toán, luận văn này chỉ tập trung vào cho vay khách hàng cá nhân, nhằm phân tích và đánh giá các khía cạnh liên quan đến dịch vụ cho vay trong lĩnh vực này.
Mô hình dữ liệu tại Core Vietinbank
Data warehouse Terminal data Terminal app Core Bank Synchronize area
CIF LOAN DEPOSIT PAYMENT TF EPS/IBPS
Hình 3.3.1: Mô hình datawarehouse của Vietinbank
Các phân hệ dữ liệu trên hệ thống Core của Vietinbank cần cho bài toán phân tích rủi ro tín dụng gồm:
Kế toán tổng hợp – giao dịch GL
Phân hệ tiền gửi – deposit
Phân hệ tiền vay – Loan
Phân hệ chuyển tiền – fund transfer
Phân hệ tài trợ thương mại – TF (trace finance)
Module CIF – Module quản lý thông tin hồ sơ khách hàng
Môi trường
Hệ thống khảo sát dịch vụ
Hình 3.4.1: Môi trường thực nghiệm
Thu thập dữ liệu
Nguồn dữ liệu sẽ được lấy từ 2 Module là: Loan (Module cho vay) & CIF (Module quản lý thông tin khách hàng)
Loan_trans Loan_Limit Loan_Col Loan_Dict
KHACH_HANG HOP_DONG_VAY
CIF_Info CIF_Acct CIF_Service
Hình 3.5.1: Mô hình thu thập dữ liệu Module Loan:
Loan_Trans: bảng giao dịch thanh toán Loan, trả nợ theo kỳ
Loan_Limit: Định mức được vay
Loan_Col: Tài sản đảm bảo
Loan_Dict: Bảng tham chiếu giá trị tài sản
Loan_Info: Thông tin chi tiết khoản vay
CIF_Info: Thông tin khách hàng (họ tên, nơi ở, khu vực…)
CIF_Acct: Thông tin tài khoản (ATM, VISA, E-Parter, Credit, debit…)
CIF_Service: Thông tin dịch vụ liên quan đến tài khoản (Thanh toán trực tuyến, biến động số dư, thanh toán viện phí, thu hộ tự động…)
Dữ liệu được chiết xuất từ hệ thống ngân hàng sẽ tập trung vào các phạm vi:
Tập trung vào khách hàng cá nhân
Thu thập các khoản vay có cả nhóm nợ tốt và xấu
Khách hàng thường lựa chọn các loại khoản vay như vay đầu tư bất động sản, vay mua ô tô, vay cho kinh doanh hộ cá thể và vay tiêu dùng cá nhân.
Biến đổi dữ liệu, tính toán sinh ra các bảng
Tên trường Loại dữ liệu Mô tả
MA_KHACH_HANG Kiểu ký tự Số định đanh trên Corebanking của khách hàng (CIF NO)
HO_TEN Kiểu ký tự Họ tên khách hàng
NGHE_NGHIEP Kiểu ký tự Nghề nghiệp của khách hàng
XEP_LOAI_KHACH_HANG Kiểu ký tự Xếp loại khách hàng (Tốt, Trung
Binh, Xấu) Trong luận văn này lấy tất cả khách hàng đều có được ngân hàng xếp loại Tốt
GIOI_TINH Kiểu ký tự Giới tính (Nam, Nữ)
THU_NHAP_ON_DINH Kiểu ký tự Thu nhập có ổn định không
(Có, không) Trong luận văn lấy tất cả khách hàng đều có thu nhập ổn định
TT_HON_NHAN Kiểu ký tự Tình trạng hôn nhân (Đã kết hôn, chưa kết hôn)
CON_CAI Kiểu số Số con (1,2,3 )
CU_TRU Kiểu ký tự Tình trạng cư trú (Khu vực
Trung tâm thành phố, KV1 thành phố, nông thôn …)
Bảng hợp đồng vay: Bảng tổng hợp bản ghi hợp đồng vay, bảng này chứa hầu hết các thông tin hợp đồng cho vay
Tên trường Loại dữ liệu Mô tả
MA_KHACH_HANG Kiểu ký tự Số định đanh trên
SO_HOP_DONG_VAY Kiểu ký tự Số hợp đồng cho vay
SO_TIEN_VAY Kiểu số Số tiền vay
MUC_DICH_VAY Kiểu ký tự Mục đích vay
Kiểu ký tự Giá trị đảm bảo khoản vay (VD: Bất động sản, tín chấp bằng lương …)
Kiểu ký tự Nhóm nợ của khoản vay
Bảng định mức hợp đồng vay: Bảng này quản lý chi tiết định mức cấp khoản vay căn cứ vào thu nhập, thời gian vay của hợp đồng vay
Tên trường Loại dữ liệu Mô tả
MA_KHACH_HANG Kiểu ký tự Số định đanh trên Corebanking của khách hàng
SO_HOP_DONG_VAY Kiểu ký tự Số hợp đồng cho vay DINH_MUC_DUOC_VAY Kiểu số Định mức được vay
Làm sạch dữ liệu
Loại bỏ những khoản vay kỳ hạn dưới 1 năm
Loại bỏ những giao dịch liên quan đến thế chấp thương mại, bảo lãnh hải quan
Loại bỏ các trường hợp cho vay ưu đãi với cán bộ nhân viên Ngân hàng
Xử lý sai logic dữ liệu
Xử lý null value & missing value Giảm bớt dữ liệu
Giảm thiểu biểu diễn các thuộc tính của dữ liệu giúp giảm kích thước dữ liệu, đồng thời vẫn đảm bảo thu được kết quả khai thác dữ liệu tương đương.
Gom nhóm dữ liệu là một trong những cách phổ biến để giảm kích thước dữ liệu:
Gom thông tin địa chỉ theo các khu vực
Gom các hình thức nghề nghiệp
Gom nhóm định mức các khoản vay
Chuyển đổi dữ liệu từ các trường trong bảng thành một tập hợp dữ liệu cụ thể, như danh sách dưới đây.
Bảng danh sách các trường dữ liệu dùng để thực nghiệm
Tên trường Loại dữ liệu Mô tả
XEP_LOAI_KHACH_HANG Kiểu ký tự Xếp loại khách hàng (Tốt, Trung
Bình, Xấu) THU_NHAP_ON_DINH Kiểu ký tự Thu nhập có ổn định không (Có, không)
Tình trạng hôn nhân được phân loại thành hai loại chính: đã kết hôn và chưa kết hôn Bên cạnh đó, tình trạng cư trú cũng được phân chia theo các khu vực như trung tâm thành phố, khu vực 1 của thành phố và nông thôn.
NGHE_NGHIEP Kiểu ký tự Nghề nghiệp của khách hàng DINH_MUC_DUOC_VAY Kiểu số Định mức được vay
Mục đích vay (MUC_DICH_VAY) và giá trị đảm bảo khoản vay (GT_DAM_BAO) là hai yếu tố quan trọng trong quá trình vay vốn, với giá trị đảm bảo có thể là bất động sản hoặc tín chấp bằng lương Bên cạnh đó, chỉ số nhóm nợ (CHI_SO_NHOM_NO) giúp phân loại khoản vay thành các nhóm khác nhau, trong đó nhóm nợ tốt là một trong những tiêu chí đánh giá khả năng trả nợ của người vay.
Tìm hiểu dữ liệu
Tìm hiểu về từng trường dữ liệu bao gồm phân bố và các thống kê cơ bản như giá trị tối thiểu (min), tối đa (max), khoảng (range), trung vị (median), và số lần xuất hiện nhiều nhất (mode) Đồng thời, cần chú ý đến chất lượng dữ liệu, bao gồm các vấn đề như giá trị null, giá trị thiếu (missing value), giá trị trống (empty value), và các điểm ngoại lai (outliers) Nếu cần thiết, hãy quay lại bước trước để đảm bảo tính chính xác của dữ liệu.
Biểu diễn mối liên quan giữa các Field thuộc tính với thông tin Chi_So_No (thông tin phân loại nhóm nợ Tốt/Xấu)
Hình 3.9.1: Biểu diễn dữ liệu
Lựa chọn thuật toán
Trong khuôn khổ luận văn, các thuộc tính dữ liệu của rủi ro tín dụng thường mang tính rời rạc và có thể được phân loại thành các nhóm miền giá trị nhất định.
Do đó tác giả lựa chọn đi sâu nghiên cứu 3 thuật toán để áp dụng là:
Nạve Bayes là một thuật toán phân lớp dữ liệu dựa trên tính xác suất điều kiện của các thông tin đầu vào Thuật toán này nổi bật với ưu điểm dễ dàng mô hình hóa và tính trực quan cao, rất phù hợp cho các tập dữ liệu có dải giá trị nhỏ.
Lựa chọn công cụ
Trong khuôn khổ luận văn, tác giả chọn công cụ Weka - Waikato Environment for Knowledge Analysis
Weka là phần mềm học máy được phát triển tại Đại học Waikato, New Zealand, được viết bằng Java Phần mềm này cung cấp một bộ công cụ trực quan và các thuật toán để phân tích dữ liệu và xây dựng mô hình dự đoán, đi kèm với giao diện người dùng đồ họa Weka hỗ trợ nhiều nhiệm vụ khai thác dữ liệu tiêu chuẩn như xử lý trước dữ liệu, phân cụm, phân loại, hồi quy, trực quan hóa và lựa chọn tính năng.
Weka cung cấp API cho phép tích hợp bộ công cụ vào ứng dụng doanh nghiệp Trong luận văn này, tác giả đã thực hiện việc tích hợp Weka API vào hệ thống Khảo sát tín dụng Survey360 của Ngân hàng Vietinbank.
Xây dựng mô hình phân lớp
Lựa chọn dữ liệu & thuộc tính
Loại bỏ thuộc tính không dùng để phân tích: ở đây ta loại bỏ thuộc tính MA_KH, HO_TEN
Hình 3.12.1: Loại bỏ các thuộc tính không sử dụng Thuộc tính DINH_MUC_DUOC_VAY
Là kiểu số, có giá trị nhỏ nhất và lớn nhất lần lượt là: 25,000,000 và 1,835,200,000
Ngoài ra thuộc tính này có nhiều giá trị khác nhau vì vậy sẽ chuyển giá trị của thuộc tính từ kiểu số sang kiểu rời rạc
Chia miền giá trị của Field này thành 10 khoảng giá trị, dựa vào tần suất xuất hiện trong dữ liệu Kết quả 10 khoảng giá trị thuộc tính như sau:
Hình 3.12.2: Đặt khoảng cho thuộc tính định mức được vay
Hình 3.12.3: Đặt khoảng cho thuộc tính định mức được vay
Là kiểu số, có các giá trị 28-65
Ta chọn cách chuyển giá trị số của thuộc tính này thành các 05 khoảng giá trị như bảng dưới
Hình 3.12.4: Đặt khoảng cho thuộc tính Tuổi
Mô hình Cây quyết định J48
Xây dựng cây quyết định bắt đầu từ nút gốc, nơi tất cả dữ liệu được học Việc chọn nút gốc để phân hoạch dữ liệu một cách đệ quy cần phải có đánh giá Đánh giá nút gốc dựa trên độ lợi thông tin, sử dụng entropy của Shannon (C4.5 - Quinlan) hoặc chỉ số Gini (CART-Breiman).
Weka cung cấp công cụ GainRatioAttributeEval để tính độ lợi thông tin (Information Gian)
Thực hiện tính độ lợi thông tin trên Weka - GainRatioAttributeEval
Hình 3.12.5: Chọn công cụ chạy bảng độ lợi thông tin trên Weka
Bảng độ lợi thông tin trên Weka cho thấy rằng khi phân tích khoản vay từ thuộc tính CHI_SO_NHOM_NO, chúng ta có thể sử dụng giá trị cột Gain Ratio để thực hiện việc cắt tỉa, tạo gốc, cành và lá cho mô hình, với thứ tự từ cao xuống thấp.
Bảng 1: Bảng độ lợi thông tin
Hình 3.12.7: Biểu đồ Gain – độ lợi thông tin
Chỉ số Gain đƣợc tính dựa trên thuật toán sau: a Tính Entropy dữ liệu phân lớp
C={Tốt, Xấu}, Tốt: 23526 bản ghi, Xấu: 6158 bản ghi P(c) – tỷ số thuộc tính theo từng phân lớp trên tổng số bản ghi Áp dụng công thức
( ) b Tính information Gain & Entropy cho các thuộc tính đặc trƣng
Tính Entropy chi tiết cho Dữ liệu đặc trưng Thuộc tính Mariage {DaKetHon, ChuaKetHon= 8160}
Tính trung bình Entropy cho thuộc tính Mariage (Tình trạng kết hôn)
Gain(A) = H(S) – I(A) Gain(Mariage) = 0.73658 – 0.73536 = 0.00122 d Lặp lại bước b & c để thực hiện tính hết chỉ số Gain cho tất cả các thuộc tính đặc trƣng
3.12.2.2 Tham số thuật toán J48 trên Weka
Hình 3.12.8: Hướng dẫn vào màn hình tham số J48 trên Weka Bảng ý nghĩa các tham số của J48 trên Weka 3.8.0
Các tham số quan trọng trong việc xây dựng cây quyết định bao gồm: **binarySplits**, xác định việc sử dụng phân tích nhị phân cho các thuộc tính nominal; **reducedErrorPruning**, cho phép áp dụng phương pháp xén tỉa giảm bớt lỗi thay vì xén tỉa C4.5; **Debug**, khi thiết lập là true, sẽ hiển thị thông tin bổ sung trên màn hình console trong quá trình phân lớp; **minNumObj**, chỉ định số lượng tối thiểu các thể hiện trên mỗi nút lá; **numFolds**, xác định lượng dữ liệu cho việc xén tỉa, trong đó mỗi fold được dùng cho xén tỉa và phần còn lại cho phát triển cây; và cuối cùng là **confidenceFactor**, mức độ tin cậy để quyết định có thực hiện xén tỉa hay không.
Dữ liệu đầu vào cho thực nghiệm sẽ sử dụng các giá trị mặc định, ngoại trừ thuộc tính saveInstanceData được đặt thành true, nhằm cho phép xác định từng mẫu được phân loại sau khi cây phân loại hoàn thành.
3.12.2.3 Tham số dữ liệu training
Hình 3.12.9: Hướng dẫn cấu hình tham số xuất dữ liệu trên Weka
Tỷ lệ phân chia cho biết số mẫu được chọn cho tập huấn luyện (training set) và số mẫu được chọn cho tập kiểm tra (test set)
Ví dụ: Percentage split = 66% nghĩa là 66% mẫu dùng tập huấn luyện và 34% mẫu dùng kiểm tra
3.12.2.4 Thực nghiệm dữ liệu với J48 trên Weka
Dữ liệu thực nghiệm được chia thành hai phần: huấn luyện và kiểm thử Dữ liệu huấn luyện được sử dụng để tạo mẫu, trong khi dữ liệu kiểm thử được dùng để thực hiện dự đoán và xác định kết quả là Tốt hoặc Xấu.
Thực nghiệm sẽ tiến hành 05 lần với các tỷ lệ như sau:
L1 : Sử dụng J48 cắt tỉa trên tập dữ liệu với tỷ lệ huấn luyện 55%
L2 : Sử dụng J48 cắt tỉa trên tập dữ liệu với tỷ lệ huấn luyện 66% (giá trị mặc định của Weka)
L3 : Sử dụng J48 cắt tỉa trên tập dữ liệu với tỷ lệ huấn luyện 70%
L4 : Sử dụng J48 cắt tỉa trên tập dữ liệu tỷ lệ huấn luyện 85%
L5 : Sử dụng J48 cắt tỉa trên tập dữ liệu tỷ lệ huấn luyện 90%
Kết quả các lần chạy ta có bảng sau:
Bảng 2: Thống kê các lần chạy thực nghiệm với J48 trên Weka
Tỷ lệ huấn luyện/kiểm thử
Số mẫu phân lớp đúng
Số mẫu Phân lớp sai
Tỷ lệ phân lớp đúng
Tỷ lệ phân lớp sai
Biểu đồ thực nghiệm theo Số phân lớp/Phân lớp đúng/Phân lớp sai:
Hình 3.12.10: Biểu đồ phân lớp J48
3.12.2.5 Đánh giá các lần chạy thực nghiệm với thuật toán J48
Hình 3.12.11: Biểu đồ xác suất J48
Tổng số lớp Số mẫu phân lớp đúng Số mẫu Phân lớp sai
Tỷ lệ phân lớp đúng
Trong các lần chạy thực nghiệm, lần chạy L1 đạt hiệu quả phân lớp cao nhất với 82.0000% trong tổng số 5 lần thử Do đó, lần chạy L2 với tỷ lệ huấn luyện 55% được xác định là lựa chọn tối ưu nhất.
Phân lớp Naive Bayes là một thuật toán phân loại dựa trên lý thuyết xác suất, cho phép đưa ra phán đoán và phân loại dữ liệu dựa trên các quan sát và thống kê.
Thuật toán Naive Bayes là một công cụ quan trọng trong lĩnh vực Machine Learning, được sử dụng để đưa ra dự đoán chính xác dựa trên các tập dữ liệu đã thu thập Với tính đơn giản và độ chính xác cao, Naive Bayes đã trở thành lựa chọn phổ biến cho nhiều ứng dụng khác nhau.
Naive Bayes thuộc vào nhóm Supervised Machine Learning Algorithms (học có giám sát), tức là máy học từ các ví dụ từ các mẫu dữ liệu đã có
3.12.3.1 Cấu hình tham số thuật toán Naive Bayes
Hình 3.12.12: Cấu hình tham số thuật toán Naive Bayes
Tiến hành chạy thuật toán
Hình 3.12.13: Kết quả chạy thuật toán Naive Bayes trên Weka Thuật toán được chạy 5 lần với tỷ lệ tham số như sau:
Trong nghiên cứu này, chúng tôi áp dụng phân lớp Naive Bayes trên tập dữ liệu với nhiều tỷ lệ huấn luyện khác nhau, bao gồm 55%, 66%, 70%, 85% và 90% Mỗi tỷ lệ này cho phép đánh giá hiệu quả của mô hình trong việc phân loại dữ liệu, từ đó rút ra được những kết luận về độ chính xác và khả năng dự đoán của phân lớp Naive Bayes.
Kết quả các lần chạy:
Tỷ lệ huấn luyện/kiểm thử
Số mẫu phân lớp đúng
Số mẫu Phân lớp sai
Tỷ lệ phân lớp đúng
Tỷ lệ phân lớp sai
Bảng 3 trình bày thống kê về các lần chạy thực nghiệm của phương pháp phân lớp Naive Bayes trên phần mềm Weka, bao gồm các số liệu về tổng số phân lớp, số phân lớp đúng và số phân lớp sai Biểu đồ kết quả thể hiện mối quan hệ giữa các chỉ số này, giúp đánh giá hiệu quả của thuật toán trong việc phân loại dữ liệu.
Hình 3.12.14: Biểu đồ phân lớp Nạve Bayes
Tổng số lớp Số mẫu phân lớp đúng Số mẫu Phân lớp sai
3.12.3.2 Đánh giá các lần chạy thực nghiệm thuật toán Naive Bayes
Hình 3.12.15: Biểu đồ tỷ lệ chính xác Navie Bayes
Kết quả từ các lần chạy thực nghiệm cho thấy, mô hình L2 đạt hiệu quả cao nhất với tỷ lệ phân lớp đúng là 73,95% Do đó, việc sử dụng Naive Bayes với tỷ lệ huấn luyện 66% là lựa chọn tối ưu nhất cho việc xử lý dữ liệu.
Đánh giá mô hình
So sánh kết quả các lần chạy giữa 2 thuật toán
Hình 3.13.1: Biểu đồ so sánh tỷ lệ phân lớp đúng J48 & Navie bayes
Tỷ lệ phân lớp đúng
Biểu đồ so sánh tỷ lệ phân lớp đúng J48 & Navie bayes
Tất cả các thí nghiệm sử dụng cùng một bộ dữ liệu, từ các lần chạy thực nghiệm của J48 và Naive Bayes trên Weka, chúng tôi đã xác định được tỷ lệ tối ưu cho hai thuật toán này.
+ J48 lựa chọn tỷ lệ huấn luyện 82%
+ Naive Bayes chọn tỷ lệ huấn luyện 73,95%
Trong các thử nghiệm, thuật toán J48 cho thấy tỉ lệ thực hiện cao hơn Naive Bayes, với hiệu quả phân lớp đúng đạt 82,00% và lớp sai 18,00% Ngược lại, Naive Bayes chỉ đạt lớp đúng 73,95% và lớp sai 26,15% Do đó, J48 là lựa chọn tối ưu nhất, và tỷ lệ dữ liệu tập huấn phù hợp nhất là 55% Kết quả đánh giá cho thấy J48 đạt tỷ lệ phân lớp đúng cao nhất.
Lần chạy đạt tỷ lệ phân lớp đúng cao nhất:
Tỷ lệ dữ liệu huấn luyện: 55%
Mô hình cây quyết định được xây dựng:
Cây quyết định kích cỡ: 63
Số lượng lá: 57 Bảng thông số kết quả chạy thuật toán:
Hình 3.13.2: kết quả lần chạy phù hợp nhất J48 Ý nghĩa các giá trị quan trọng:
TPrate (tỷ lệ mẫu tích cực - Positive): Cao
TP=TP/(TP+FN) Example:
FPrate (tỷ lệ mẫu tích cực sai): Thấp
FP=FP/(FP + TN) Example:
Precision (Giá trị dự đoán mẫu tích cực đúng): Cao
Recall (Giá trị biểu diễn tỷ lệ mẫu cần thực hiện lại): Cao
F- measure: Biểu diễn trung bình điều hòa giữa recall và precision F-measure = 2TP / (2TP + FP + FN)
Confusion Matrix - Ma trận sự nhầm lẫn:
Ma trận vuông này thể hiện số lượng lớp dữ liệu, với giá trị tại hàng thứ 2, cột a cho biết số điểm thuộc lớp a nhưng được dự đoán nhầm vào lớp b Qua bảng ma trận, có thể nhận thấy dữ liệu ở dòng b (Xấu) và cột a (Tốt) có 04 lớp có khả năng bị xếp nhầm Đánh giá lần chạy Navie cho thấy tỷ lệ dữ liệu tập huấn đạt 55%.
Lần chạy đạt tỷ lệ phân lớp đúng cao nhất:
Tỷ lệ dữ liệu huấn luyện: 55%
Bảng thông số kết quả chạy thuật toán
Hình 3.13.3: kết quả lần chạy phù hợp nhất Navie Bayes
3.14 Triển khai tích hợp hệ thống Khai phá dữ liệu
Weka ngoài cung cấp ứng dụng chạy độc lập, còn cung cấp cả API để các doanh nghiệp có thể tích hợp vào ứng dụng của mình
Trong luận văn này, tác giả thực nghiệm tích hợp Weka API vào hệ thống Portal: “Khảo sát tín dụng 360 o ” của Ngân hàng Vietinbank
Hình 3.14.2: Màn hình giao diện
Màn hình kết quả chạy với J48
Hình 3.14.3: Màn hình kết quả