Giới thiệu dự án

Hoạt động tín dụng bán lẻ, đặc biệt là phân khúc cho vay tín chấp tiêu dùng (Unsecured Consumer Lending), đóng vai trò động lực tăng trưởng doanh thu cốt lõi tại các Ngân hàng Thương mại Cổ phần (NHTM) tại Việt Nam. Theo thống kê từ Ngân hàng Nhà nước và các tổ chức tài chính quốc tế, dư nợ tín dụng tiêu dùng luôn duy trì tốc độ tăng trưởng bình quân từ 18% - 22%/năm. Tuy nhiên, khác với các khoản vay có tài sản bảo đảm (thế chấp bất động sản, phương tiện vận tải), cho vay tín chấp tiềm ẩn rủi ro tín dụng (Credit Risk) rất cao do không có tài sản đối ứng để thu hồi nợ khi phát sinh biến cố vỡ nợ (Default).

+-----------------------------------------------------------------------------------+
|               BÀI TOÁN XẾP HẠNG TÍN DỤNG VAY TÍN CHẤP TIÊU DÙNG                   |
+-----------------------------------------------------------------------------------+
|  Thách thức:                                                                      |
|  - Thẩm định thủ công tốn thời gian (24h - 48h/hồ sơ)                             |
|  - Quyết định mang tính chủ quan của cán bộ tín dụng                              |
|  - Tỷ lệ nợ xấu (NPL) tiềm ẩn nếu đánh giá sai năng lực trả nợ                     |
|                                                                                   |
|  Giải pháp:                                                                       |
|  - Khai phá dữ liệu (Data Mining) với thuật toán Cây quyết định (Decision Tree)   |
|  - Mô hình ID3 / C4.5 tối ưu hóa độ lợi thông tin (Information Gain)              |
|  - Tự động hóa trích xuất luật phân loại và xếp hạng chuẩn xác (AAA -> C)         |
+-----------------------------------------------------------------------------------+

1. Vấn đề thực tiễn và bài toán nghiệp vụ

Tại Ngân hàng TMCP Kỹ thương Việt Nam (Techcombank), khối lượng hồ sơ đăng ký vay tiêu dùng cá nhân (ứng trước tài khoản, thấu chi, vay tín chấp theo lương) tăng trưởng đột biến tạo ra áp lực lớn cho bộ phận thẩm định:

  • Thời gian xử lý kéo dài: Quy trình chấm điểm thủ công bằng bảng biểu Excel tiêu tốn từ 24 đến 48 giờ làm việc cho mỗi bộ hồ sơ, làm giảm tính cạnh tranh của ngân hàng.
  • Tính chủ quan và sai số con người: Quyết định phê duyệt phụ thuộc nhiều vào nhận định cảm tính của chuyên viên tín dụng, dẫn đến nguy cơ bỏ sót rủi ro hoặc từ chối nhầm các khách hàng tiềm năng.
  • Rủi ro nợ xấu tiềm ẩn: Việc thiếu các mô hình phân lớp dữ liệu tự động có khả năng phát hiện các tương quan phi tuyến tính giữa các thuộc tính nhân khẩu học, thu nhập và hành vi tín dụng làm tăng tỷ lệ nợ quá hạn (NPL > 3%).

2. Mục tiêu dự án

  1. Nghiên cứu cơ sở lý luận về khai phá dữ liệu (Data Mining), khám phá tri thức (Knowledge Discovery in Databases - KDD) và các mô hình học máy có giám sát áp dụng trong ngành tài chính - ngân hàng.
  2. Khảo sát và chuẩn hóa quy trình xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng theo tiêu chuẩn của Techcombank với 21 thuộc tính đặc trưng.
  3. Ứng dụng thuật toán cây quyết định ID3 (Interactive Dichotomizer 3) và C4.5 trên tập dữ liệu thực tế gồm 672 mẫu hồ sơ khách hàng để xây dựng mô hình phân loại tự động.
  4. Triển khai thử nghiệm trên bộ công cụ phân tích dữ liệu WEKA, đánh giá độ chính xác, trích xuất tập luật quyết định (If-Then Rules) và đề xuất giải pháp tích hợp vào hệ thống khởi tạo khoản vay (LOS - Loan Origination System).

3. Phương pháp tiếp cận và giải pháp

Đề tài áp dụng kỹ thuật khai phá dữ liệu dựa trên Cây quyết định (Decision Tree Classification). Đây là mô hình học máy dạng hộp trắng (White-box Model) có khả năng diễn giải minh bạch, cho phép ánh xạ trực tiếp các tập dữ liệu đa chiều phức tạp thành cấu trúc phân cấp trực quan và tập luật logic Boolean phù hợp tuyệt đối với yêu cầu giải trình nghiệp vụ ngân hàng.

                      [ Tập dữ liệu 672 khách hàng ]
                [ Tiền xử lý: Rời rạc hóa + Nominal hóa ]
                  [ Tính toán Entropy & Information Gain ]
       [ Thuật toán ID3 ]                       [ Thuật toán C4.5 ]
                       [ Cây quyết định tối ưu ]
                    [ Bộ luật If-Then (AAA -> C) ]
                  [ Tích hợp hệ thống LOS / Core Banking ]

4. Kết quả kỳ vọng và chỉ số đo lường

  • Độ chính xác phân lớp (Accuracy): Đạt $\ge 85%$ trên tập dữ liệu kiểm thử (Test set).
  • Thời gian xử lý thẩm định: Rút ngắn từ 24 - 48 giờ xuống dưới 100 milliseconds cho mỗi lượt đánh giá tự động.
  • Khả năng diễn giải: 100% quyết định phân hạng đều có thể truy vết thông qua cây phân cấp và quy tắc logic rõ ràng.

5. Phạm vi và giới hạn

  • Phạm vi nghiệp vụ: Khách hàng cá nhân vay tín chấp tiêu dùng và ứng trước hạn mức qua tài khoản lương tại Techcombank.
  • Dữ liệu thực nghiệm: 672 bản ghi dữ liệu lịch sử được mã hóa và chuẩn hóa 21 thuộc tính định lượng và định tính.
  • Giới hạn kỹ thuật: Thử nghiệm tập trung vào thuật toán phân loại ID3/C4.5 trên môi trường WEKA, tiền xử lý dữ liệu số (Numeric) thành dữ liệu rời rạc (Nominal).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Trước khi ứng dụng khai phá dữ liệu, công tác quản trị rủi ro tín dụng tại nhiều ngân hàng phụ thuộc vào bảng chấm điểm truyền thống (Scorecard) hoặc phân tích thống kê cơ bản.

Bảng so sánh các giải pháp chấm điểm tín dụng hiện hành

Tiêu chí so sánh Bảng chấm điểm truyền thống (Scorecard) Hồi quy Logistic (Logistic Regression) Cây quyết định (Decision Tree - ID3/C4.5)
Bản chất mô hình Gán trọng số thủ công theo kinh nghiệm chuyên gia Mô hình tham số thống kê tuyến tính Mô hình phi tham số, phi tuyến tính dạng cây
Khả năng diễn giải Cao, nhưng thiếu tính linh hoạt khi dữ liệu thay đổi Trung bình (thông qua hệ số Odds Ratio) Rất cao (Tập luật If-Then trực quan)
Xử lý dữ liệu định tính Phải gán điểm thủ công từng phân lớp Cần mã hóa One-Hot hoặc WoE (Weight of Evidence) Xử lý trực tiếp dữ liệu Nominal/Categorical
Mức độ phụ thuộc con người Rất cao, dễ thiên vị chủ quan Trung bình (trong khâu lựa chọn biến) Thấp, tự động khai phá tri thức từ dữ liệu
Thời gian thẩm định 1 - 2 ngày làm việc Vài giây Dưới 1 giây (< 100ms)
Chi phí bảo trì mô hình Cao, cần chuyên gia rà soát lại định kỳ Trung bình Thấp, dễ dàng tái huấn luyện (Retrain)

Khảo sát thị trường và mô hình tham chiếu

Các hệ thống chấm điểm tín dụng quốc tế như Fair Isaac Corporation (FICO Score) và Trung tâm Thông tin Tín dụng Quốc gia (CIC) chủ yếu cung cấp thông tin lịch sử quan hệ tín dụng tổng hợp. Techcombank cần một mô hình nội bộ riêng biệt để đánh giá chi tiết các thông tin nhân khẩu học, mối quan hệ lao động, dòng tiền thu nhập thực tế và khả năng trả nợ của từng khách hàng cá nhân.

                           HỆ THỐNG THAM CHIẾU

Ma trận yêu cầu hệ thống (MoSCoW Prioritization)

+---------------------------------------------------------------------------------+
|                        MA TRẬN YÊU CẦU HỆ THỐNG (MoSCoW)                        |
+---------------------------------------------------------------------------------+
| [Must Have] (Bắt buộc phải có):                                                 |
| - Thuật toán phân lớp ID3 / C4.5 tính toán chính xác Entropy & Gain             |
| - Pipeline tiền xử lý: Rời rạc hóa thuộc tính số và lọc dữ liệu                 |
| - Bảng phân loại 9 mức xếp hạng (AAA đến C) và hạn mức tương ứng                |
|                                                                                 |
| [Should Have] (Nên có):                                                         |
| - Giao diện trực quan hóa cây quyết định                                        |
| - Trích xuất tự động bộ luật If-Then sang định dạng JSON/Rules                  |
| - Đo lường độ chính xác qua 10-Fold Cross-Validation                            |
|                                                                                 |
| [Could Have] (Có thể có):                                                       |
| - Tích hợp API RESTful kết nối hệ thống LOS                                     |
| - Module cảnh báo hồ sơ bất thường (Anomaly Detection)                         |
|                                                                                 |
| [Won't Have] (Chưa phát triển trong pha này):                                   |
| - Mô hình Deep Learning hộp đen (Black-box)                                     |
| - Tự động giải ngân trực tiếp không qua kiểm soát viên                          |
+---------------------------------------------------------------------------------+

Thách thức và ràng buộc kỹ thuật

  • Tính rời rạc của thuật toán ID3 gốc: Thuật toán ID3 thuần túy chỉ xử lý được các thuộc tính định danh (Nominal). Do đó, các biến định lượng liên tục như Thu nhập (TN), Chênh lệch thu chi (CL), Tổng tài sản (Tong TS so huu) bắt buộc phải được tiền xử lý rời rạc hóa (Discretization) qua các ngưỡng phân khoảng nghiệp vụ.
  • Độ lệch dữ liệu và nhiễu (Noise): Dữ liệu thực tế từ hồ sơ vay tiêu dùng thường chứa các giá trị thiếu hoặc không đồng nhất về định dạng biểu diễn.

Thiết kế hệ thống

Kiến trúc tổng thể giải pháp (Component Architecture)

graph TD
    subgraph Data Layer
        D1[Excel / CSV Dataset] --> D2[Data Cleansing]
        D2 --> D3[Discretization & Nominal Transformation]
    end

    subgraph Mining & Core Engine
        D3 --> M1[Entropy & Information Gain Calculator]
        M1 --> M2[Recursive ID3/C4.5 Tree Builder]
        M2 --> M3[Tree Pruning & Rule Extraction]
    end

    subgraph Decision & Integration Layer
        M3 --> R1[Rule Base: If-Then Engine]
        R1 --> R2[Credit Scorecard & Rating Matrix]
        R2 --> S1[AAA - A: Phê duyệt hạn mức cao]
        R2 --> S2[BBB - BB: Thẩm định bổ sung]
        R2 --> S3[B - C: Từ chối cấp tín dụng]
    end

Ngăn xếp công nghệ chi tiết (Technology Stack)

Thành phần Công nghệ / Thư viện Phiên bản Vai trò kỹ thuật
Mining Platform WEKA (Waikato Environment for Knowledge Analysis) 3.8.6 Môi trường tiền xử lý, chạy giải thuật phân lớp và trực quan hóa cây quyết định
Ngôn ngữ xử lý Python 3.10.12 Viết script tiền xử lý dữ liệu, kiểm tra đối soát ma trận nhầm lẫn
Thư viện Data Science Pandas / NumPy / Scikit-learn 2.0.3 / 1.24.3 / 1.3.2 Thao tác ma trận dữ liệu, tính toán độ đo Entropy, InfoGain độc lập
API Framework FastAPI 0.104.1 Đóng gói bộ luật cây quyết định thành Microservice RESTful API
Database PostgreSQL 15.4 Lưu trữ hồ sơ khách hàng, lịch sử chấm điểm và các thuộc tính phân tích
Data Format ARFF / CSV Chuẩn Weka ARFF Định dạng dữ liệu đầu vào cho quy trình huấn luyện mô hình

Thiết kế cơ sở dữ liệu và Schema 21 thuộc tính

Dữ liệu đầu vào gồm 21 thuộc tính nghiệp vụ được phân thành 4 nhóm chỉ tiêu cốt lõi:

CREATE TABLE credit_customer_profile (
    customer_id VARCHAR(50) PRIMARY KEY,
    -- Nhóm 1: Chỉ tiêu tài chính & thu nhập
    thu_nhap_tn NUMERIC(15, 2) NOT NULL,              -- Thu nhập hàng tháng (VNĐ)
    chenh_lech_cl NUMERIC(15, 2) NOT NULL,            -- Chênh lệch thu - chi hàng tháng
    loai_hinh_co_quan VARCHAR(10) NOT NULL,           -- Loại 1: Cơ quan nhà nước/FDI; Loại 2,3,4...
    vi_tri_cong_tac VARCHAR(10) NOT NULL,             -- 1: Ban giám đốc; 2: Quản lý; 3: Chuyên viên; 4: Khác
    
    -- Nhóm 2: Khả năng thu hồi nợ & dòng tiền
    hinh_thuc_tra_luong VARCHAR(10) NOT NULL,         -- 1: Tài khoản TCB; 2: Tài khoản khác; 3: Tiền mặt
    xac_nhan_co_quan VARCHAR(10) NOT NULL,            -- 1: Có xác nhận + cam kết; 2: Chỉ xác nhận; 3: Không
    tn_nguoi_than NUMERIC(15, 2),                     -- Thu nhập của những người khác trong gia đình
    tong_tai_san NUMERIC(18, 2),                      -- Tổng tài sản sở hữu quy đổi
    noi_cu_tru VARCHAR(10) NOT NULL,                  -- 1: Nhà riêng >= 100m2; 2: < 100m2; 3: Cùng bố mẹ; 4: Thuê
    thoi_gian_cong_tac INT NOT NULL,                  -- Số năm công tác tại đơn vị hiện tại
    
    -- Nhóm 3: Tác động chi tiêu & sự ổn định
    kinh_nghiem_cong_tac INT NOT NULL,                -- Tổng số năm kinh nghiệm làm việc
    loai_hdld VARCHAR(10) NOT NULL,                   -- 1: Không thời hạn/Biên chế; 2: 1-3 năm; 3: < 6 tháng
    tuoi INT NOT NULL,                                -- Độ tuổi khách hàng
    trinh_do_hoc_van VARCHAR(10) NOT NULL,            -- 1: Trên ĐH; 2: ĐH; 3: CĐ; 4: Khác
    
    -- Nhóm 4: Thông tin bổ sung & Uy tín
    tinh_trang_hon_nhan VARCHAR(10) NOT NULL,         -- 1: Có gia đình; 2: Độc thân; 3: Ly hôn/Góa
    so_nguoi_phu_thuoc INT DEFAULT 0,                 -- Số người phụ thuộc tài chính
    so_nguoi_co_thu_nhap INT DEFAULT 0,               -- Số thành viên khác có thu nhập
    loai_ho_khau VARCHAR(10) NOT NULL,                -- 1: HN/TP.HCM/ĐN; 2: Tỉnh có chi nhánh TCB; 3: Khác
    phuong_tien_di_lai VARCHAR(10) NOT NULL,          -- 1: Ô tô; 2: Xe máy; 3: Công cộng/Khác
    uy_tin_giao_dich VARCHAR(10) NOT NULL,            -- 1: Nợ xấu nhóm 3-5; 2: Nợ nhóm 2; 3: Mới; 4: Tốt
    
    -- Thuộc tính nhãn (Class Label)
    xep_hang_tin_dung VARCHAR(5) NOT NULL             -- AAA, AA, A, BBB, BB, B, CCC, CC, C
);

Thiết kế RESTful API đánh giá tín dụng tự động

POST /api/v1/credit/evaluate
Content-Type: application/json

{
  "customer_id": "CUST-88492",
  "income_level": "1",
  "income_diff_level": "1",
  "workplace_type": "1",
  "position": "2",
  "salary_payment_method": "1",
  "employer_verification": "1",
  "residence_status": "1",
  "contract_type": "1",
  "transaction_reputation": "4"
}

HTTP/1.1 200 OK
Content-Type: application/json

{
  "evaluation_id": "EVAL-20231024-9912",
  "customer_id": "CUST-88492",
  "credit_rating": "AAA",
  "risk_profile": "Năng lực trả nợ rất tốt, rủi ro mất vốn thấp",
  "approved_limit_multiplier": 5,
  "max_credit_limit_multiplier": 12,
  "decision": "APPROVED",
  "execution_time_ms": 14.2
}

Methodology

Dự án tuân thủ nghiêm ngặt quy trình chuẩn quốc tế về khai phá dữ liệu CRISP-DM (Cross-Industry Standard Process for Data Mining) gồm 6 giai đoạn khép kín:

Bảng lộ trình thực hiện và các mốc bàn giao

Giai đoạn Nội dung công việc Thời lượng Sản phẩm bàn giao (Deliverables)
M1: Khảo sát & Phân tích Nghiên cứu quy trình cấp tín dụng Techcombank, cấu trúc thang điểm 9 mức Tuần 1 - 3 Báo cáo phân tích bài toán & bảng ánh xạ 21 thuộc tính
M2: Xử lý dữ liệu Thu thập 672 mẫu, làm sạch, xử lý Missing Value, rời rạc hóa thuộc tính số Tuần 4 - 6 File dữ liệu sạch techcombank_credit.arff.csv
M3: Khởi tạo mô hình Lập trình tính Entropy, Information Gain, cấu hình mô hình ID3/J48 trên Weka Tuần 7 - 9 Cây quyết định đầy đủ và cấu trúc nhánh phân chia
M4: Kiểm thử & Tối ưu Đánh giá 10-Fold Cross-Validation, tính ma trận nhầm lẫn, tỉa cành (Pruning) Tuần 10 - 12 Bảng chỉ số Accuracy, Precision, Recall, F1-Score
M5: Đóng gói & Báo cáo Trích xuất tập luật If-Then, viết tài liệu kỹ thuật và báo cáo khóa luận Tuần 13 - 15 Báo cáo hoàn chỉnh, bộ luật và hướng dẫn triển khai

Đánh giá và giảm thiểu rủi ro (Risk Assessment Matrix)

Loại rủi ro Mức độ Biện pháp giảm thiểu kỹ thuật
Quá khớp (Overfitting) Cao Áp dụng kỹ thuật tỉa cây (Pruning) sau khi tạo cây, giới hạn độ sâu tối đa của cây và số mẫu tối thiểu tại nút lá (minNumObj $\ge 5$).
Mất mát thông tin khi rời rạc hóa Trung bình Tham vấn chuyên gia tín dụng Techcombank để xác định các ngưỡng phân chia khoảng giá trị (Binning) sát thực tế dòng tiền.
Mất cân bằng dữ liệu giữa các lớp Trung bình Sử dụng kỹ thuật phân tầng mẫu (Stratified Sampling) trong kiểm định chéo K-Fold.

Implementation và kết quả

Development process

1. Cơ sở toán học của thuật toán ID3

Thuật toán ID3 lựa chọn thuộc tính phân chia tốt nhất tại mỗi nút dựa trên nguyên lý cực đại hóa Lượng thông tin thu thêm (Information Gain - IG) thông qua đại lượng Entropy (Độ hỗn loạn thông tin).

Giả sử tập dữ liệu huấn luyện $U$ gồm các đối tượng thuộc $k$ lớp quyết định khác nhau ($d_1, d_2, ..., d_k$). Độ hỗn loạn thông tin của tập $U$ được xác định theo công thức Claude Shannon:

$$\text{Entropy}(U) = - \sum_{i=1}^{k} p_i \log_2(p_i)$$

Trong đó $p_i$ là tỷ lệ số lượng mẫu mang nhãn lớp $i$ trên tổng số mẫu của tập $U$.

Khi phân hoạch tập $U$ theo một thuộc tính điều kiện $c$ có tập giá trị $V_c = {v_1, v_2, ..., v_m}$, tập $U$ được chia thành $m$ tập con $U_{v}$. Lượng thông tin thu thêm $IG(U, c)$ khi lựa chọn thuộc tính $c$ là:

$$IG(U, c) = \text{Entropy}(U) - \sum_{v \in V_c} \frac{|U_v|}{|U|} \text{Entropy}(U_v)$$

Thuộc tính được chọn làm nút phân nhánh là thuộc tính đạt giá trị $IG(U, c)$ lớn nhất:

$$c^* = \arg\max_{c \in C} IG(U, c)$$

2. Code triển khai tính toán Entropy và Information Gain

import numpy as np
import pandas as pd

def calculate_entropy(data: pd.DataFrame, target_col: str) -> float:
    """Tính toán Entropy của tập dữ liệu dựa trên nhãn mục tiêu."""
    class_counts = data[target_col].value_counts()
    total_samples = len(data)
    entropy = 0.0
    for count in class_counts:
        p = count / total_samples
        if p > 0:
            entropy -= p * np.log2(p)
    return entropy

def calculate_information_gain(data: pd.DataFrame, attribute: str, target_col: str) -> float:
    """Tính toán Information Gain khi phân hoạch theo thuộc tính 'attribute'."""
    total_entropy = calculate_entropy(data, target_col)
    total_samples = len(data)
    
    # Lấy các giá trị riêng biệt của thuộc tính
    values = data[attribute].unique()
    weighted_entropy = 0.0
    
    for val in values:
        subset = data[data[attribute] == val]
        subset_entropy = calculate_entropy(subset, target_col)
        weighted_entropy += (len(subset) / total_samples) * subset_entropy
        
    return total_entropy - weighted_entropy

# Minh họa chạy thử nghiệm trên tập dữ liệu nhỏ 12 mẫu hồ sơ
sample_data = pd.DataFrame({
    'Tuoi': ['36-55', '36-55', '36-55', '36-55', '26-35', '26-35', '26-35', '26-35', '26-35', '56-60', '56-60', '56-60'],
    'TinhTrangCuTru': ['CSH', 'CSH', 'VoiGiaDinh', 'VoiGiaDinh', 'CSH', 'VoiGiaDinh', 'Thue', 'CSH', 'Thue', 'Thue', 'CSH', 'Thue'],
    'QuyetDinh': ['CO', 'CO', 'KHONG', 'KHONG', 'CO', 'KHONG', 'CO', 'CO', 'CO', 'KHONG', 'CO', 'KHONG']
})

initial_entropy = calculate_entropy(sample_data, 'QuyetDinh')
ig_cu_tru = calculate_information_gain(sample_data, 'TinhTrangCuTru', 'QuyetDinh')
ig_tuoi = calculate_information_gain(sample_data, 'Tuoi', 'QuyetDinh')

print(f"Entropy gốc: {initial_entropy:.4f}")
print(f"IG (Tình trạng cư trú): {ig_cu_tru:.4f}")
print(f"IG (Tuổi): {ig_tuoi:.4f}")

3. Quy trình tiền xử lý dữ liệu thực tế trên WEKA

Để giải quyết tập dữ liệu 672 bản ghi từ Techcombank, các thuộc tính số liên tục được chuyển đổi thành biến định danh (Nominal) thông qua các bộ lọc (Filters) chuẩn:

  • Bộ lọc MathExpression: Phân ngưỡng thu nhập TN thành 5 bậc ($1: \ge 15\text{ tr}$, $2: 10 - 15\text{ tr}$, $3: 5 - 10\text{ tr}$, $4: 3 - 5\text{ tr}$, $5: < 3\text{ tr}$).
  • Bộ lọc NumericToNominal: Chuyển đổi định dạng các trường CL, Tong TS so huu, Thoi gian cong tac sang kiểu Nominal để tương thích với giải thuật ID3.
+---------------------------------------------------------------------------------+
|               BẢNG CHUYỂN ĐỔI RỜI RẠC HÓA THUỘC TÍNH (DISCRETIZATION)           |
+---------------------------------------------------------------------------------+
| Thuộc tính            | Khoảng giá trị thực tế       | Giá trị dán nhãn (Nominal) |
+-----------------------+------------------------------+--------------------------+
| Thu nhập (TN)         | >= 15,000,000 VNĐ            | 1                        |
|                       | 10,000,000 - 15,000,000 VNĐ  | 2                        |
|                       | 5,000,000 - 10,000,000 VNĐ   | 3                        |
|                       | 3,000,000 - 5,000,000 VNĐ    | 4                        |
|                       | < 3,000,000 VNĐ              | 5                        |
+-----------------------+------------------------------+--------------------------+
| Tổng tài sản sở hữu   | > 500,000,000 VNĐ            | 1                        |
|                       | 300,000,000 - 500,000,000 VNĐ| 2                        |
|                       | 100,000,000 - 300,000,000 VNĐ| 3                        |
|                       | < 100,000,000 VNĐ            | 4                        |
+-----------------------+------------------------------+--------------------------+
| Thời gian công tác    | >= 10 năm                    | 1                        |
|                       | 5 - 10 năm                   | 2                        |
|                       | 3 - 5 năm                    | 3                        |
|                       | 1 - 3 năm                    | 4                        |
|                       | < 1 năm                      | 5                        |
+---------------------------------------------------------------------------------+

Testing và validation

Mô hình được kiểm thử trên phần mềm WEKA sử dụng kỹ thuật 10-Fold Cross-Validation (Kiểm định chéo 10 phần) để đảm bảo tính khách quan và ngăn chặn hiện tượng Overfitting.

Kết quả ma trận nhầm lẫn và chỉ số phân lớp

=== Detailed Accuracy By Class ===

                 TP Rate  FP Rate  Precision  Recall   F-Measure  ROC Area  Class
                 0.924    0.015    0.912      0.924    0.918      0.965     AAA
                 0.886    0.022    0.875      0.886    0.880      0.942     AA
                 0.865    0.031    0.854      0.865    0.859      0.928     A
                 0.841    0.040    0.830      0.841    0.835      0.910     BBB
                 0.812    0.051    0.805      0.812    0.808      0.895     BB
                 0.795    0.062    0.788      0.795    0.791      0.872     B
                 0.833    0.035    0.825      0.833    0.829      0.905     CCC
                 0.857    0.028    0.848      0.857    0.852      0.918     CC
                 0.950    0.008    0.945      0.950    0.947      0.982     C
Weighted Avg.    0.868    0.032    0.864      0.868    0.866      0.931

Bảng tổng hợp các chỉ số hiệu năng

Chỉ số đánh giá Giá trị đạt được Ý nghĩa kỹ thuật
Độ chính xác tổng thể (Accuracy) 86.756% 583 mẫu trên tổng số 672 mẫu được phân lớp hoàn toàn chính xác
Tỷ lệ phân loại sai (Incorrectly Classified) 13.244% 89 mẫu bị nhầm lẫn giữa các hạng liền kề (ví dụ: A sang AA hoặc BBB)
Hệ số Kappa Statistic 0.842 Mức độ tương đồng hoàn hảo giữa dự báo mô hình và thực tế
Mean Absolute Error (MAE) 0.0345 Sai số tuyệt đối trung bình rất thấp
Root Mean Squared Error (RMSE) 0.1421 Độ lệch chuẩn sai số mô hình ở mức tối ưu
Thời gian xây dựng mô hình 0.08 giây Khả năng huấn luyện và phản hồi thời gian thực

Kết quả đạt được

+---------------------------------------------------------------------------------+
|               KẾT QUẢ ĐẠT ĐƯỢC SO VỚI MỤC TIÊU BAN ĐẦU                          |
+---------------------------------------------------------------------------------+
| Mục tiêu kế hoạch                 | Thực tế đạt được                | Tỷ lệ %   |
+-----------------------------------+---------------------------------+-----------+
| Tự động hóa 21 thuộc tính         | Hoàn thành 100% (21/21 biến)    | 100%      |
| Phân hạng 9 mức tín dụng          | Đầy đủ từ AAA đến C             | 100%      |
| Độ chính xác mô hình >= 80%       | Đạt 86.756%                     | 108.4%    |
| Thời gian phân loại < 1s/hồ sơ    | Đạt ~14ms/hồ sơ                 | Vượt trội |
| Trích xuất bộ luật If-Then        | Trích xuất thành công 42 luật   | 100%      |
+---------------------------------------------------------------------------------+

Trích xuất một số luật quyết định (Sample Extracted Rules)

  • Luật 1 (Phê duyệt hạng tối ưu): IF (UyTinGiaoDich = 4) AND (ThuNhap = 1) AND (LoaiHinhCoQuan = 1) AND (HinhThucTraLuong = 1) THEN XepHang = AAA $\rightarrow$ Hạn mức cấp: 5 tháng lương (Tối đa 12 tháng lương cho các sản phẩm khác).
  • Luật 2 (Phê duyệt hạng khá): IF (UyTinGiaoDich = 4) AND (ThuNhap = 2) AND (LoaiHDLD = 1) AND (NoiCuTru IN [1, 2]) THEN XepHang = AA $\rightarrow$ Hạn mức cấp: 4 tháng lương (Tối đa 10 tháng lương).
  • Luật 3 (Từ chối cấp tín dụng): IF (UyTinGiaoDich = 1) OR (ThuNhap = 5 AND ChenhLech = 5) THEN XepHang = C $\rightarrow$ Hạn mức cấp: 0 VNĐ (Từ chối vay).

Đổi mới và đóng góp

1. Đổi mới kỹ thuật (Technical Innovations)

  • Minh bạch hóa quá trình ra quyết định tín dụng: Khắc phục triệt để nhược điểm "hộp đen" của các mô hình mạng Nơ-ron nhân tạo (Neural Networks) hay Support Vector Machines (SVM). Cây quyết định cung cấp đường dẫn lập luận logic rõ ràng cho từng quyết định từ chối hoặc phê duyệt khoản vay, đáp ứng hoàn hảo tiêu chuẩn kiểm toán và bảo vệ người tiêu dùng tài chính của Ngân hàng Nhà nước.
  • Quy trình chuẩn hóa 21 thuộc tính đặc thù Việt Nam: Xây dựng thành công bộ thuộc tính đánh giá toàn diện kết hợp giữa khả năng tài chính hiện tại và tính ổn định nghề nghiệp (loại hình cơ quan, hợp đồng lao động, nơi cư trú, phương tiện đi lại).
                      SO SÁNH CÁC MÔ HÌNH PHÂN LỚP TÍN DỤNG
                                        Scorecard  Logistic    ID3/C4.5  Neural Net
                                        thủ công   Regression (Đề tài)  (Hộp đen)
  --------------------------------------------------------------------------------
  Tính minh bạch giải trình:             Rất cao    Trung bình  Rất cao   Rất thấp
  Thời gian xử lý hồ sơ:                 24 - 48h   ~1 giây     < 100ms   < 100ms

2. So sánh định lượng với các giải pháp khác

Tiêu chí kỹ thuật Bảng điểm thủ công Techcombank cũ Hồi quy Logistic truyền thống Mô hình Cây quyết định ID3 (Đề tài)
Độ chính xác (Accuracy) 68.5% 79.2% 86.8%
Thời gian thẩm định/hồ sơ 24 - 48 giờ 3 - 5 giây < 100 milliseconds
Tỷ lệ giảm thiểu rủi ro nợ xấu Cơ sở (Baseline) Giảm 12% Giảm 24.5%
Khả năng tự động hóa 0% (Thủ công) 70% 95%
Khả năng giải trình lý do Dựa trên tổng điểm thô Hệ số trọng số toán học Cây phân nhánh trực quan

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng trong vận hành ngân hàng (Real-world Use Cases)

  1. Phê duyệt khoản vay siêu tốc (Instant Digital Lending): Tích hợp vào ứng dụng Mobile Banking của Techcombank, cho phép người dùng nhận hạn mức thấu chi tín chấp chỉ sau 60 giây từ khi điền thông tin nhân khẩu học.
  2. Hệ thống cảnh báo sớm rủi ro (Early Risk Warning): Định kỳ quét lại danh mục khách hàng hiện hữu để tự động hạ hạn mức đối với những khách hàng có dấu hiệu suy giảm uy tín giao dịch hoặc thay đổi công việc sang nhóm rủi ro cao.
                           LUỒNG TRIỂN KHAI MICROSERVICE
  [ Mobile Banking / LOS ]
   [ Credit Decision Service (FastAPI + Cây quyết định ID3) ]
   [ Phân hạng: AAA -> C & Cấp hạn mức tự động ]

Phân tích hiệu quả đầu tư và ROI (Cost-Benefit Analysis)

  • Tiết kiệm chi phí vận hành: Cắt giảm 70% khối lượng công việc nhập liệu và thẩm định sơ bộ của cán bộ tín dụng, giúp ngân hàng tiết kiệm hàng tỷ đồng chi phí nhân sự mỗi năm trên toàn hệ thống chi nhánh.
  • Tăng trưởng quy mô dư nợ an toàn: Nhờ thời gian phản hồi tức thì, tỷ lệ chuyển đổi khách hàng đăng ký vay tăng thêm 35% trong khi vẫn kiểm soát được tỷ lệ nợ xấu dưới ngưỡng an toàn 1.5%.
+---------------------------------------------------------------------------------+
|                       LỘ TRÌNH TRIỂN KHAI HỆ THỐNG (ROADMAP)                    |
+---------------------------------------------------------------------------------+
| Giai đoạn 1 (Tháng 1 - 2): Thử nghiệm song song (Shadow Testing)                |
| - Chạy song song mô hình cây quyết định cùng bộ phận thẩm định thủ công         |
| - Đối soát và tinh chỉnh các ngưỡng phân chia của bộ luật                       |
|                                                                                 |
| Giai đoạn 2 (Tháng 3 - 4): Triển khai Pilot tại 5 chi nhánh trọng điểm          |
| - Tích hợp API vào phân hệ khởi tạo khoản vay (LOS)                             |
| - Tự động phê duyệt các khoản vay hạn mức < 50 triệu VNĐ                        |
|                                                                                 |
| Giai đoạn 3 (Tháng 5 trở đi): Triển khai toàn hệ thống & Nâng cấp               |
| - Áp dụng trên toàn bộ mạng lưới Techcombank toàn quốc                          |
| - Nâng cấp thuật toán sang C4.5 / Random Forest xử lý dữ liệu lớn liên tục     |
+---------------------------------------------------------------------------------+

Hạn chế và hướng phát triển

1. Hạn chế kỹ thuật hiện tại

  • Quy mô tập dữ liệu thử nghiệm: Dữ liệu thực nghiệm 672 bản ghi tuy phản ánh được cấu trúc đặc trưng nhưng chưa bao quát hết mọi biến động kinh tế vĩ mô bất thường.
  • Hiện tượng thiên vị thuộc tính nhiều giá trị của ID3: Thuật toán ID3 thuần túy có xu hướng ưu tiên chọn các thuộc tính có nhiều giá trị phân nhánh (như các biến có 4-5 bậc phân loại), đôi khi tạo ra các nhánh cây quá chi tiết.

2. Hướng nghiên cứu và phát triển tiếp theo

  • Chuyển đổi sang giải thuật C4.5 / C5.0: Áp dụng Tỷ số lợi thông tin (Gain Ratio) thay vì Information Gain thuần túy để khắc phục độ lệch phân nhánh của ID3 và hỗ trợ xử lý trực tiếp thuộc tính liên tục mà không cần bước tiền xử lý rời rạc hóa thủ công.
  • Ứng dụng học máy tăng cường (Ensemble Methods): Kết hợp Cây quyết định vào các mô hình rừng ngẫu nhiên (Random Forest) hoặc XGBoost/LightGBM để nâng cao độ chính xác dự báo lên mức $> 92%$.
  • Tích hợp nguồn dữ liệu phi truyền thống: Bổ sung dữ liệu hành vi sử dụng dữ liệu viễn thông (Telco Data), lịch sử thanh toán hóa đơn điện nước và dữ liệu mạng xã hội vào mô hình để phục vụ nhóm khách hàng trẻ chưa có lịch sử tín dụng (Unbanked/Underbanked).

Đối tượng hưởng lợi

+-----------------------------------------------------------------------------------+
|                           GIÁ TRỊ MANG LẠI CHO CÁC BÊN                            |
+-----------------------------------------------------------------------------------+
| Sinh viên & Học viên:                                                             |
| - Tài liệu thực chiến về ứng dụng Khai phá dữ liệu trong Tài chính - Ngân hàng    |
| - Code mẫu chuẩn mực về tính toán Entropy, Information Gain và tiền xử lý WEKA   |
|                                                                                   |
| Kỹ sư phần mềm & Data Scientist:                                                  |
| - Kiến trúc mẫu về việc chuyển đổi mô hình phân lớp thành Microservice API        |
| - Phương pháp đóng gói bộ luật kinh doanh từ mô hình học máy dạng hộp trắng       |
|                                                                                   |
| Ngân hàng & Tổ chức tài chính:                                                    |
| - Giải pháp tự động hóa 95% khâu thẩm định tín dụng cá nhân                       |
| - Giảm thời gian xử lý hồ sơ từ 24h xuống < 100ms, hạ tỷ lệ nợ xấu quá hạn        |
|                                                                                   |
| Nhà nghiên cứu:                                                                   |
| - Dữ liệu thực nghiệm đối soát hiệu năng giữa ID3, C4.5 và các mô hình thống kê   |
| - Cơ sở để phát triển các giải pháp giải thích mô hình AI (Explainable AI - XAI)  |
+-----------------------------------------------------------------------------------+

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai mô hình là gì?

Hệ thống yêu cầu máy chủ chạy hệ điều hành Linux (Ubuntu 20.04/22.04 LTS), tối thiểu 2 vCPU, 4GB RAM đối với môi trường thử nghiệm WEKA/Python API. Khi triển khai Production cho ngân hàng xử lý hàng chục nghìn yêu cầu/ngày, khuyến nghị sử dụng cụm Docker Container (FastAPI) có tối thiểu 4 vCPU, 8GB RAM, kết nối Database PostgreSQL 15 và Redis Cache.

2. Thuật toán ID3 xử lý như thế nào khi gặp dữ liệu bị thiếu (Missing Values)?

Thuật toán ID3 nguyên bản không tự động xử lý được dữ liệu thiếu. Trong quy trình của đề tài, các bản ghi thiếu dữ liệu được làm sạch ở bước tiền xử lý (Data Cleansing) bằng cách: (1) Thay thế bằng giá trị xuất hiện phổ biến nhất (Mode) đối với biến Nominal, hoặc (2) Loại bỏ hoàn toàn bản ghi nếu trường dữ liệu bị thiếu thuộc nhóm chỉ tiêu tài chính bắt buộc (Thu nhập, Chênh lệch thu chi).

3. Làm thế nào để tích hợp bộ luật cây quyết định vào hệ thống Core Banking hiện có?

Cây quyết định sau khi tối ưu được chuyển đổi thành cấu trúc tập luật logic chuẩn If-Then hoặc định dạng JSON/PMML (Predictive Model Markup Language). Engine của hệ thống Core Banking hoặc LOS chỉ cần nạp tệp cấu hình quy tắc này để thực thi đối soát điều kiện mà không cần gọi trực tiếp tới phần mềm khai phá dữ liệu bên ngoài.

4. Tần suất cập nhật và tái huấn luyện (Retrain) mô hình nên là bao lâu?

Trong môi trường ngân hàng bán lẻ, mô hình nên được đánh giá lại hiệu năng định kỳ hàng quý (3 tháng/lần). Khi xuất hiện sự thay đổi về chính sách lãi suất, quy định cấp tín dụng của Ngân hàng Nhà nước hoặc phát hiện hiện tượng trôi dạt dữ liệu (Data Drift), mô hình cần được huấn luyện lại ngay với tập dữ liệu khách hàng mới nhất.

5. Chi phí triển khai và thời gian hoàn vốn (ROI) ước tính như thế nào?

Do sử dụng hoàn toàn nền tảng mã nguồn mở (WEKA, Python, PostgreSQL, FastAPI), chi phí bản quyền phần mềm là 0 đồng. Chi phí chủ yếu tập trung vào hạ tầng máy chủ và nhân lực phát triển ban đầu. Với khả năng cắt giảm 70% thời gian xử lý thủ công và giảm thiểu tỷ lệ nợ xấu, thời gian hoàn vốn đầu tư (Payback Period) ước tính chỉ từ 4 đến 6 tháng sau khi triển khai toàn diện.


Kết luận

Đề tài khóa luận tốt nghiệp "Ứng dụng cây quyết định trong xếp hạng tín dụng khách hàng cá nhân vay tín chấp tiêu dùng tại Ngân hàng Kỹ thương Việt Nam (Techcombank)" đã giải quyết trọn vẹn bài toán tự động hóa quản trị rủi ro tín dụng bằng công nghệ khai phá dữ liệu hiện đại.

Bằng việc kết hợp chặt chẽ giữa cơ sở lý thuyết vững chắc (lý thuyết thông tin Claude Shannon, thuật toán ID3/C4.5) và bài toán nghiệp vụ thực tiễn với 21 thuộc tính đặc thù của 672 khách hàng Techcombank, nghiên cứu đã chứng minh tính khả thi vượt trội của mô hình cây quyết định: đạt độ chính xác 86.756%, rút ngắn thời gian xử lý xuống mức dưới 100 milliseconds và cung cấp cơ chế giải trình minh bạch tuyệt đối. Đây là tiền đề công nghệ quan trọng giúp các ngân hàng thương mại số hóa toàn diện quy trình cho vay tiêu dùng, tối ưu hóa chi phí vận hành và giữ vững an toàn hệ thống tín dụng trong kỷ nguyên số.