Giới thiệu dự án

Hoạt động cấp tín dụng tiêu dùng và thương mại là trụ cột kinh doanh cốt lõi, đóng góp trên 70% tổng doanh thu của hệ thống Ngân hàng Thương mại (NHTM). Tuy nhiên, đây cũng là lĩnh vực tiềm ẩn mức độ rủi ro cao nhất. Giai đoạn 2020–2021 chứng kiến tỷ lệ nợ xấu gộp (bao gồm nợ xấu nội bảng, nợ bán cho VAMC chưa xử lý và nợ tái cơ cấu tiềm ẩn rủi ro) của toàn hệ thống ngân hàng chạm mốc báo động 6,59%. Thực trạng này đe dọa trực tiếp đến an toàn thanh khoản và sự ổn định của hệ thống tài chính.

Quy trình thẩm định và chấm điểm tín dụng truyền thống tại nhiều tổ chức tài chính bộc lộ nhiều điểm nghẽn nghiêm trọng:

  • Tính chủ quan cao: Kết quả phê duyệt phụ thuộc lớn vào năng lực, kinh nghiệm và góc nhìn chủ quan của cán bộ tín dụng (Credit Officer).
  • Chi phí vận hành và thời gian xử lý lớn: Thẩm định thủ công tiêu tốn trung bình từ 3–5 ngày làm việc cho mỗi hồ sơ khách hàng cá nhân.
  • Khả năng khái quát hóa kém: Các bảng chấm điểm chuyên gia cố định (Scorecard truyền thống) không thích ứng kịp với sự biến động phi tuyến tính của dữ liệu hành vi tiêu dùng hiện đại.

Mục tiêu cụ thể của dự án khóa luận tốt nghiệp ngành Hệ thống Thông tin (Trường Đại học Công nghệ Thông tin – ĐHQG-HCM) bao gồm:

  1. Hệ thống hóa cơ sở lý thuyết về phân loại nhóm nợ (Nhóm 1 đến Nhóm 5) theo quy chuẩn Ngân hàng Nhà nước và nguyên lý định mức rủi ro.
  2. Xây dựng pipeline tiền xử lý dữ liệu quy mô lớn (150.000 bản ghi) xử lý triệt để missing values, outliers và logic bất thường.
  3. Nghiên cứu thực nghiệm, huấn luyện và tối ưu hóa 4 mô hình học máy: Cây quyết định (Decision Tree/CART), Hồi quy Logistic (Logistic Regression với L2 Regularization), Rừng ngẫu nhiên (Random Forest) và Cây tăng cường Gradient (Gradient Boosting Machine - GBM).
  4. Xây dựng hệ thống dự báo xác suất vỡ nợ (Probability of Default - PD), phân lớp rủi ro nợ xấu trong vòng 2 năm với chỉ số ROC-AUC đạt ngưỡng tối ưu phục vụ tự động hóa thẩm định.

Dự án tiếp cận bài toán dưới dạng phân lớp nhị phân có giám sát (Supervised Binary Classification). Hệ thống kỳ vọng mang lại mô hình scoring tự động rút ngắn thời gian thẩm định từ vài ngày xuống dưới 500ms, đạt AUC vượt trội trên 0.86, kiểm soát chặt chẽ tỷ lệ chấp thuận sai (False Acceptance Rate - Type II Error) nhằm bảo toàn vốn tín dụng.

Phạm vi đề tài tập trung vào dữ liệu tín dụng tiêu dùng cá nhân (150.000 hồ sơ khách hàng với 12 thuộc tính tài chính - nhân khẩu học). Giới hạn nghiên cứu không bao gồm việc thẩm định tài sản bảo đảm vật lý phức tạp hoặc doanh nghiệp lớn có báo cáo kiểm toán đặc thù.


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

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

Thị trường chấm điểm tín dụng hiện nay tồn tại nhiều cách tiếp cận khác nhau giữa phương pháp truyền thống và các mô hình học máy hiện đại:

Giải pháp Ưu điểm Nhược điểm Độ chính xác (AUC trung bình) Chi phí triển khai
Bảng điểm chuyên gia (Scorecard truyền thống) Dễ giải thích, tuân thủ hoàn toàn quy định Basel II/III. Cố định, không nắm bắt được tương quan phi tuyến, cập nhật chậm. 0.65 – 0.72 Thấp
Mô hình Hybrid 2 giai đoạn (CBR + ANN / SVM + GA) Độ chính xác cao, xử lý được dữ liệu phức tạp. Kiến trúc nặng, thời gian huấn luyện lâu, khó diễn giải kinh doanh. 0.80 – 0.83 Rất cao
Mô hình Ensemble Tree (Random Forest & GBM đề xuất) Tối ưu hóa Loss function linh hoạt, tự động xử lý tương tác đa biến, tốc độ suy luận nhanh. Cần điều chỉnh siêu tham số kỹ lưỡng để tránh Overfitting. 0.86 – 0.89 Vừa phải

Dự án áp dụng mô hình phân bổ yêu cầu theo phương pháp MoSCoW:

  • Must-have: Pipeline tiền xử lý tự động (Clean, Impute, Normalize), Module huấn luyện 4 thuật toán chuẩn (CART, Logistic Regression L2, Random Forest, GBM), Module đánh giá ROC-AUC và Confusion Matrix.
  • Should-have: Thuật toán Grid Search tối ưu hóa siêu tham số (Hyperparameter Tuning), Biểu đồ tương quan Pearson/Spearman đa biến.
  • Could-have: API Endpoint suy luận thời gian thực cho hệ thống Core Banking.
  • Won't-have: Triển khai hạ tầng phân tán Real-time Big Data Streaming trên Apache Spark (dành cho pha mở rộng sau).

Thiết kế hệ thống

Kiến trúc giải pháp được thiết kế theo mô hình phân tầng module hóa, đảm bảo tính độc lập giữa xử lý dữ liệu, lõi mô hình toán học và giao diện suy luận:

graph TD
    A[Dữ liệu Tín dụng Kaggle - 150.000 dòng] --> B[Tầng Tiền xử lý & Làm sạch Dữ liệu]
    B --> B1[Xử lý Missing: Mean/Median/Mode Imputation]
    B --> B2[Xử lý Outliers & Ép kiểu Dtype]
    B --> B3[Trích xuất & Chọn lọc Đặc trưng]
    
    B1 --> C[Tầng Huấn luyện & Tối ưu Mô hình]
    B2 --> C
    B3 --> C
    
    C --> C1[Logistic Regression - Ridge L2]
    C --> C2[CART - Decision Tree]
    C --> C3[Random Forest Classifier]
    C --> C4[Gradient Boosting Machine - GBM]
    
    C1 --> D[Tầng Đánh giá & Kiểm thử]
    C2 --> D
    C3 --> D
    C4 --> D
    
    D --> E{Bộ Đánh giá ROC-AUC / K-Fold}
    E -->|Lựa chọn mô hình tối ưu| F[Lõi Phân lớp Dự báo Rủi ro Tín dụng]
    F --> G[Nhãn Phân loại: Nợ Tốt / Nợ Xấu]

Technology Stack sử dụng trong dự án:

  • Ngôn ngữ lập trình: Python 3.8.10
  • Thư viện học máy & xử lý dữ liệu: Scikit-Learn v0.24.2, Pandas v1.2.4, NumPy v1.20.1
  • Thư viện trực quan hóa: Matplotlib v3.3.4, Seaborn v0.11.1
  • Môi trường tính toán: Anaconda Distribution (Jupyter Lab / IPython Kernel)

Bộ thuộc tính dữ liệu bao gồm 12 biến cốt lõi:

  1. SeriousDlqin2yrs (Target): Khách hàng nợ quá hạn trên 90 ngày trong 2 năm (0: Không, 1: Có).
  2. RevolvingUtilizationOfUnsecuredLines: Tỷ lệ sử dụng hạn mức tín dụng quay vòng không đảm bảo (Dạng tỷ lệ %).
  3. age: Tuổi của người vay (Số nguyên).
  4. NumberOfTime30-59DaysPastDueNotWorse: Số lần quá hạn 30–59 ngày.
  5. DebtRatio: Tỷ số nợ trên tổng thu nhập (DTI - Debt-to-Income).
  6. MonthlyIncome: Thu nhập thực tế hàng tháng.
  7. NumberOfOpenCreditLinesAndLoans: Số lượng tài khoản tín dụng đang mở.
  8. NumberOfTimes90DaysLate: Số lần trễ hạn nghiêm trọng trên 90 ngày.
  9. NumberRealEstateLoansOrLines: Số lượng khoản vay thế chấp/bất động sản (HELOC).
  10. NumberOfTime60-89DaysPastDueNotWorse: Số lần trễ hạn từ 60–89 ngày.
  11. NumberOfDependents: Số lượng người phụ thuộc.

Methodology

Quy trình phát triển tuân thủ phương pháp luận tiêu chuẩn công nghiệp CRISP-DM (Cross-Industry Standard Process for Data Mining) bao gồm 6 giai đoạn:

Business Understanding -> Data Understanding -> Data Preparation -> Modeling -> Evaluation -> Deployment

Kế hoạch triển khai đề tài:

  • Tuần 1–3: Nghiên cứu nghiệp vụ ngân hàng, phân loại nợ theo Thông tư NHNN, khảo sát các nghiên cứu quốc tế (Baesens et al., Tian et al.).
  • Tuần 4–6: Thu thập, khám phá dữ liệu (EDA), phân tích ma trận tương quan và lập trình pipeline làm sạch.
  • Tuần 7–10: Cài đặt mô hình toán học (CART, Logistic, RF, GBM), thiết kế cấu trúc hàm mất mát (Loss function) và đạo hàm Pseudo-residuals.
  • Tuần 11–13: Huấn luyện, Fine-tuning siêu tham số (GridSearchCV), so sánh đường cong ROC và chỉ số AUC.
  • Tuần 14–16: Đánh giá độ nhạy, kiểm thử giả định và nghiệm thu báo cáo khóa luận.

Implementation và kết quả

Development process

Quá trình phát triển tập trung vào việc mô hình hóa toán học các thuật toán phân lớp cốt lõi.

1. Cơ sở toán học của Thuật toán Cây Tăng cường Gradient (GBM)

GBM xây dựng một chuỗi hàm $F_m(x)$ tuần tự theo hướng cực tiểu hóa hàm mất mát $L(y, F(x))$. Đối với bài toán phân lớp rủi ro tín dụng nhị phân ($y \in {0, 1}$), hàm mất mát Negative Log-Likelihood (Log-Loss) được áp dụng:

$$L(y, F(x)) = - \left[ y \ln(p) + (1 - y) \ln(1 - p) \right] = y \ln(1 + e^{-F(x)}) + (1 - y) \ln(1 + e^{F(x)})$$

Trong đó $p = \frac{1}{1 + e^{-F(x)}}$ là xác suất dự báo vỡ nợ (Log-odds).

Các bước tính toán chi tiết:

  • Khởi tạo giá trị ban đầu với hàm hằng số: $$F_0(x) = \arg\min_{\gamma} \sum_{i=1}^N L(y_i, \gamma) = \ln\left(\frac{p}{1-p}\right) = \ln\left(\frac{\sum y_i}{N - \sum y_i}\right)$$
  • Tại mỗi vòng lặp $m = 1, 2, \dots, M$:
    1. Tính toán phần dư giả (Pseudo-residuals) cho từng mẫu $i = 1, \dots, N$: $$r_{im} = -\left[\frac{\partial L(y_i, F(x_i))}{\partial F(x_i)}\right]{F(x) = F{m-1}(x)} = y_i - p_{m-1}(x_i)$$
    2. Huấn luyện một cây hồi quy (Regression Tree) để xấp xỉ các phần dư $r_{im}$, chia không gian đặc trưng thành các vùng đầu cuối $R_{jm}$ ($j = 1, \dots, J_m$).
    3. Tính giá trị đầu ra tối ưu $\gamma_{jm}$ cho mỗi nút lá: $$\gamma_{jm} = \frac{\sum_{x_i \in R_{jm}} r_{im}}{\sum_{x_i \in R_{jm}} p_{m-1}(x_i)(1 - p_{m-1}(x_i))}$$
    4. Cập nhật mô hình với hệ số học tập (Learning rate $\eta$): $$F_m(x) = F_{m-1}(x) + \eta \sum_{j=1}^{J_m} \gamma_{jm} \cdot \mathbb{I}(x \in R_{jm})$$

2. Kỹ thuật tiền xử lý và Pipeline mã nguồn Python

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split, GridSearchCV
from sklearn.linear_model import LogisticRegression
from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier
from sklearn.metrics import roc_auc_score, roc_curve, classification_report

# 1. Load và tiền xử lý dữ liệu
def preprocess_credit_data(filepath: str) -> pd.DataFrame:
    df = pd.read_csv(filepath)
    if 'Unnamed: 0' in df.columns:
        df.drop(columns=['Unnamed: 0'], inplace=True)
    
    # Xử lý missing values theo chuẩn nghiệp vụ
    # MonthlyIncome: Điền giá trị trung vị (median) cho các trường null
    income_median = df['MonthlyIncome'].median()
    df['MonthlyIncome'].fillna(income_median, inplace=True)
    
    # NumberOfDependents: Biến phân loại rời rạc, áp dụng giá trị Mode
    dep_mode = df['NumberOfDependents'].mode()[0]
    df['NumberOfDependents'].fillna(dep_mode, inplace=True)
    
    # Ép kiểu dữ liệu về định dạng tối ưu bộ nhớ
    int_cols = ['age', 'NumberOfTime30-59DaysPastDueNotWorse', 
                'NumberOfOpenCreditLinesAndLoans', 'NumberOfTimes90DaysLate',
                'NumberRealEstateLoansOrLines', 'NumberOfTime60-89DaysPastDueNotWorse',
                'NumberOfDependents', 'SeriousDlqin2yrs']
    for col in int_cols:
        df[col] = df[col].astype(np.int64)
        
    return df

# 2. Pipeline Huấn luyện và Đánh giá Mô hình
def train_credit_scoring_models(df: pd.DataFrame):
    X = df.drop(columns=['SeriousDlqin2yrs'])
    y = df['SeriousDlqin2yrs']
    
    X_train, X_test, y_train, y_test = train_test_split(
        X, y, test_size=0.25, random_state=42, stratify=y
    )
    
    models = {
        "Logistic_Regression_L2": LogisticRegression(penalty='l2', C=1.0, max_iter=1000, solver='lbfgs'),
        "Random_Forest": RandomForestClassifier(n_estimators=100, max_depth=10, min_samples_split=10, random_state=42),
        "Gradient_Boosting": GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, max_depth=5, random_state=42)
    }
    
    results = {}
    for name, model in models.items():
        model.fit(X_train, y_train)
        y_pred_proba = model.predict_proba(X_test)[:, 1]
        auc = roc_auc_score(y_test, y_pred_proba)
        results[name] = {"model": model, "auc_score": auc}
        print(f"Model: {name} | Test ROC-AUC: {auc:.4f}")
        
    return results, X_test, y_test

Testing và validation

Quá trình kiểm thử được thực hiện qua kỹ thuật phân chia Stratified Train-Test Split (75% Train, 25% Test tương đương 37.500 mẫu kiểm thử độc lập) nhằm bảo toàn tỷ lệ mất cân bằng mẫu của tập dữ liệu thực tế (~6.68% nợ xấu).

Các tham số kiểm thử chính:

  • Tối ưu siêu tham số C trong Hồi quy Logistic L2: Thử nghiệm $C \in [0.001, 0.01, 0.1, 1.0, 10.0]$, kết quả ổn định nhất tại $C = 1.0$.
  • Tối ưu độ sâu (max_depth) và kích thước nút (min_samples_split) trong Random Forest: max_depth biến thiên từ 4 đến 15, tối ưu tại max_depth = 10 với số lượng cây n_estimators = 100.
  • Tối ưu số vòng lặp và tốc độ học trong GBM: learning_rate $\eta = 0.1$, max_depth = 5 giúp cực tiểu hóa hiện tượng Overfitting trên tập kiểm định.
                    Confusion Matrix (GBM Model - Cutoff = 0.5)
                              Dự báo: 0           Dự báo: 1
       Thực tế: 0 (Nợ tốt)      34.620 (TN)          375 (FP)
       Thực tế: 1 (Nợ xấu)       1.850 (FN)          655 (TP)

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

Mô hình phân lớp Train ROC-AUC Test ROC-AUC Tỷ lệ Accuracy (%) Thời gian suy luận (1000 mẫu)
Cây quyết định (CART) 0.8120 0.7435 91.2% 1.2 ms
Hồi quy Logistic (L2 Penalty) 0.7012 0.6985 93.3% 1.8 ms
Rừng ngẫu nhiên (Random Forest) 0.8845 0.8542 93.7% 45.6 ms
Cây tăng cường Gradient (GBM) 0.8920 0.8665 94.1% 8.4 ms

Mô hình Gradient Boosting Machine (GBM) đạt hiệu năng cao nhất với ROC-AUC trên tập kiểm thử đạt 0.8665, vượt trội so với Hồi quy Logistic truyền thống (0.6985) và hạn chế đáng kể tình trạng suy giảm hiệu năng do Overfitting so với Cây quyết định đơn lẻ.


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

Các cải tiến kỹ thuật nổi bật

  • Phương pháp xấp xỉ phần dư hàm mất mát phi tuyến: Ứng dụng thuật toán GBM cho dữ liệu hành vi tín dụng tiêu dùng giúp khai thác triệt để các thuộc tính tương tác phức tạp (như mối quan hệ phi tuyến giữa DebtRatioRevolvingUtilizationOfUnsecuredLines).
  • Chiến lược Imputation thích ứng: Thay vì loại bỏ các hàng có dữ liệu trống làm mất 19,8% tập mẫu, dự án áp dụng chiến lược điền dữ liệu phân hóa (Median cho thu nhập liên tục và Mode cho số người phụ thuộc), duy trì trọn vẹn 150.000 bản ghi huấn luyện.
  • So sánh thực nghiệm toàn diện: Cung cấp bức tranh đối chiếu định lượng giữa mô hình tuyến tính chuẩn mực (Logistic Regression L2) và các mô hình Ensemble hiện đại.
                    SO SÁNH HIỆU QUẢ PHÂN LỚP (ROC-AUC)
  
  GBM (Đề xuất)        [========================================] 0.8665 (+24.05%)
  Random Forest        [======================================  ] 0.8542 (+22.29%)
  Decision Tree (CART) [=================================       ] 0.7435 (+6.44%)
  Logistic Regression  [===============================         ] 0.6985 (Baseline)

Đóng góp thực tiễn cho ngành

Đồ án chứng minh tính khả thi của việc thay thế các hệ thống chấm điểm thủ công bằng pipeline học máy gọn nhẹ, có khả năng tích hợp trực tiếp vào hệ thống Core Banking hoặc quy trình cấp tín dụng số (Digital Lending), giúp giảm tỷ lệ trích lập dự phòng rủi ro nợ xấu từ 15–20% cho ngân hàng thương mại.


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

Kịch bản ứng dụng thực tế

  1. Phê duyệt tự động thẻ tín dụng và vay tiêu dùng tín chấp: Khách hàng nộp hồ sơ trực tuyến, hệ thống trích xuất đặc trưng và tính toán chỉ số rủi ro tức thì. Nếu xác suất vỡ nợ $P(\text{Default}) < 0.15$, hệ thống tự động giải ngân.
  2. Cảnh báo sớm rủi ro khoản vay hiện hữu (Early Warning System - EWS): Quét định kỳ hàng tháng dữ liệu giao dịch của khách hàng, theo dõi biến động RevolvingUtilization và lịch sử chậm trả 30–59 ngày để điều chỉnh hạn mức kịp thời.

Yêu cầu triển khai và Kiến trúc phần cứng

[Khách hàng / App Mobile] 
          │  (HTTPS / RESTful JSON)
          ▼
[API Gateway: NGINX Reverse Proxy]
          │
          ▼
[FastAPI / Flask Microservice (Python 3.8)] ──> [Model Artifact: gbm_model.pkl]
          │
          ▼
[Cơ sở dữ liệu: PostgreSQL / Redis Caching]
  • Yêu cầu phần cứng máy chủ (Server Minimum Specs):
    • CPU: 4 Cores (Intel Xeon hoặc AMD EPYC tương đương)
    • RAM: 8GB DDR4
    • Ổ cứng: 50GB SSD NVMe
    • HĐH: Ubuntu Server 20.04 LTS / CentOS 8
  • Hiệu năng hệ thống (System Throughput):
    • Tốc độ phản hồi API: $< 15\text{ms}$ / request.
    • Tải xử lý: 500 requests/giây (RPS) trên một instance đơn lẻ.

Phân tích Chi phí - Lợi ích (ROI)

  • Chi phí đầu tư ban đầu: Hạ tầng máy chủ và tích hợp phần mềm ước tính khoảng 150–200 triệu VNĐ.
  • Lợi ích kinh tế: Tiết kiệm 65% chi phí nhân sự thẩm định sơ cấp; giảm 1.5% tỷ lệ nợ xấu thực tế phát sinh hàng năm. Với danh mục cho vay tiêu dùng quy mô 1.000 tỷ VNĐ, giá trị bảo toàn vốn đạt hàng chục tỷ VNĐ mỗi năm, đem lại thời gian hoàn vốn (Payback Period) dưới 6 tháng.

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

Hạn chế kỹ thuật

  • Tính chất dữ liệu tĩnh: Bộ dữ liệu Kaggle 2011 mang tính chất snapshot tĩnh, chưa tích hợp được dữ liệu chuỗi thời gian thực (Time-series transactional data) và dữ liệu phi cấu trúc (social footprint, telco data).
  • Mất cân bằng mẫu tự nhiên: Tỷ lệ nhãn nợ xấu chỉ chiếm ~6.68%, tuy đã được xử lý bằng Stratified Split nhưng chưa áp dụng các kỹ thuật tổng hợp mẫu nâng cao như SMOTE hoặc Focal Loss.
  • Tính khả giải thích (Model Explainability): Mô hình GBM hoạt động như một "hộp đen" (Black-box), cần bổ sung các công cụ giải thích như SHAP (SHapley Additive exPlanations) để đáp ứng yêu cầu giải trình minh bạch theo quy chuẩn của cơ quan quản lý tín dụng.

Hướng phát triển tương lai

  1. Mở rộng thử nghiệm các thuật toán tân tiến hơn như XGBoost, LightGBM và CatBoost kết hợp cơ chế xử lý dữ liệu phân tán.
  2. Tích hợp module SHAP/LIME để tự động xuất biên bản giải trình lý do từ chối khoản vay cho khách hàng.
  3. Xây dựng giải pháp MLOps hoàn chỉnh (dùng MLflow, Docker, Kubernetes) để tự động hóa quá trình tái huấn luyện mô hình (Continuous Training) khi dữ liệu thị trường biến động.

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

+-------------------------------------------------------------------------+
|                         CÁC BÊN HƯỞNG LỢI                               |
+-------------------------------------------------------------------------+
| 1. Sinh viên / Học viên:                                                |
|    - Tham khảo source code hoàn chỉnh và phương pháp luận CRISP-DM.     |
|    - Nắm vững công thức toán học và cách cài đặt GBM từ số 0.           |
|                                                                         |
| 2. Kỹ sư Dữ liệu / Lập trình viên:                                      |
|    - Mẫu pipeline làm sạch, tiền xử lý dữ liệu mất cân bằng.            |
|    - Template kiến trúc triển khai mô hình học máy dạng Microservice.   |
|                                                                         |
| 3. Ngân hàng / Tổ chức Tài chính:                                       |
|    - Giải pháp tự động hóa phê duyệt tín dụng, giảm 70% thời gian xử lý.|
|    - Mô hình dự báo đạt ROC-AUC 0.8665, giảm thiểu tổn thất nợ xấu.     |
|                                                                         |
| 4. Nhà nghiên cứu Học thuật:                                            |
|    - Dữ liệu thực nghiệm so sánh đa thuật toán trên tập 150.000 mẫu.    |
|    - Cơ sở phát triển các mô hình Hybrid và kỹ thuật Explainable AI.    |
+-------------------------------------------------------------------------+

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

1. Cần cấu hình kỹ thuật tối thiểu nào để triển khai hệ thống này?

Để triển khai môi trường huấn luyện và phục vụ suy luận, hệ thống yêu cầu môi trường Python 3.8+ với các thư viện: scikit-learn>=0.24, pandas>=1.2, numpy>=1.20. Về phần cứng, máy chủ cần tối thiểu 4-core CPU, 8GB RAM và 20GB dung lượng lưu trữ trống.

2. Giới hạn mở rộng (Scalability) của mô hình là gì và giải pháp xử lý?

Mô hình Scikit-Learn GBM thuần xử lý trên RAM đơn máy có thể gặp giới hạn bộ nhớ khi tập dữ liệu vượt quá 10 triệu bản ghi. Giải pháp xử lý khi mở rộng là chuyển đổi sang framework LightGBM hoặc XGBoost on Ray/Spark, cho phép huấn luyện phân tán đa nút và tính toán trên GPU.

3. Hệ thống tích hợp với phần mềm Core Banking hiện hữu như thế nào?

Hệ thống được đóng gói dưới dạng Docker Container chạy RESTful API (FastAPI). Core Banking chỉ cần gửi bản tin JSON chứa thông tin khách hàng qua giao thức HTTPS POST; API sẽ phản hồi điểm số rủi ro ($0.0 - 1.0$) và khuyến nghị phê duyệt trong thời gian dưới 20ms.

4. Chi phí bảo trì và nhu cầu vận hành hệ thống định kỳ ra sao?

Hệ thống vận hành hoàn toàn tự động, chỉ cần tối thiểu 01 kỹ sư Data/MLOps bán thời gian để giám sát hiệu năng (Model Drift). Chi phí hạ tầng Cloud/Server duy trì chỉ khoảng 2–5 triệu VNĐ/tháng. Cần thực hiện tái đánh giá và huấn luyện lại mô hình định kỳ 3–6 tháng/lần.

5. Dự toán chi phí và thời gian thu hồi vốn (ROI) thực tế?

Với tổng chi phí đầu tư phần mềm và hạ tầng ban đầu ước tính khoảng 150–200 triệu VNĐ, một tổ chức tài chính quy mô vừa có thể tiết kiệm hàng trăm triệu đồng chi phí nhân sự và hạn chế hàng tỷ đồng rủi ro mất vốn tín dụng mỗi năm, mang lại điểm hòa vốn và sinh lời trong vòng 3–6 tháng vận hành.


Kết luận

Khóa luận tốt nghiệp "Hệ thống đánh giá rủi ro tín dụng" của tác giả Nguyễn Bích Trâm (Khoa Hệ thống Thông tin, Trường Đại học Công nghệ Thông tin – ĐHQG-HCM) đã giải quyết trọn vẹn bài toán cấp thiết trong hoạt động quản trị rủi ro ngân hàng. Đề tài chứng minh tính ưu việt vượt trội của thuật toán Gradient Boosting Machine (GBM) với chỉ số kiểm thử ROC-AUC đạt 0.8665, vượt qua các phương pháp truyền thống như Hồi quy Logistic (0.6985) và Cây quyết định CART (0.7435).

Nghiên cứu mang lại giá trị thực tiễn to lớn cho ngành công nghệ tài chính (Fintech) và ngân hàng số, cung cấp nền tảng vững chắc để chuyển đổi từ mô hình phê duyệt thủ công sang quy trình tự động hóa thông minh, chính xác và an toàn.