Bối cảnh và vấn đề nghiên cứu

Lý do chọn đề tài và bối cảnh thực tiễn

Trong giai đoạn phát triển mạnh mẽ của công nghệ thông tin và khoa học dữ liệu, Machine Learning (ML - Học máy) cùng Trí tuệ nhân tạo (AI) và Dữ liệu lớn (Big Data) đã trở thành các lĩnh vực nghiên cứu trọng điểm, được ứng dụng sâu rộng trong nhiều ngành như y tế, tài chính - ngân hàng, xử lý ngôn ngữ tự nhiên và thị giác máy tính. Về bản chất toán học, quá trình huấn luyện hầu hết các mô hình học máy có giám sát (Supervised Learning) đều quy về bài toán tối ưu hóa: tìm tập tham số mô hình nhằm cực tiểu hóa hàm chi phí (Cost Function).

Các phương pháp tối ưu hóa truyền thống như Gradient Descent thường gặp hạn chế về tốc độ hội tụ và việc lựa chọn tốc độ học (learning rate), trong khi phương pháp Newton đòi hỏi chi phí tính toán và bộ nhớ rất lớn để nghịch đảo ma trận đạo hàm bậc hai (ma trận Hessian) khi số chiều dữ liệu tăng cao. Để khắc phục những điểm yếu này, các thuật toán xấp xỉ Quasi-Newton, tiêu biểu là thuật toán BFGS (Broyden–Fletcher–Goldfarb–Shanno), được phát triển nhằm cập nhật ma trận Hessian thông qua thông tin đạo hàm bậc nhất (gradient). Xuất phát từ bối cảnh học thuật và thực tiễn nêu trên, tác giả Mai Phương Đông đã thực hiện khóa luận tốt nghiệp ngành Tin học kinh tế tại Trường Đại học Kinh tế – Đại học Huế với đề tài: "Tìm hiểu về thuật toán BFGS và ứng dụng".

Mục tiêu và nhiệm vụ nghiên cứu

Khóa luận xác định các mục tiêu và nhiệm vụ nghiên cứu cụ thể bao gồm:

  1. Tìm hiểu các lý thuyết cơ bản về Machine Learning và các mô hình toán học trong Supervised Learning (Học có giám sát).
  2. Nghiên cứu cơ sở lý thuyết, cơ chế vận hành và phương pháp cập nhật ma trận xấp xỉ Hessian của thuật toán Quasi-Newton nói chung và thuật toán BFGS nói riêng.
  3. Tìm hiểu và ứng dụng thuật toán tìm kiếm đường đi Backtracking line search để xác định bước nhảy tối ưu trong mỗi vòng lặp.
  4. Xây dựng chương trình tính toán và thực thi thuật toán trên môi trường ngôn ngữ lập trình GNU Octave / MATLAB.
  5. Ứng dụng thuật toán BFGS để giải quyết các bài toán tối ưu hàm chi phí trong phân loại nhị phân, phân loại phi tuyến và bài toán nhận diện ký tự, chữ số viết tay.

Đối tượng và phạm vi nghiên cứu

  • Đối tượng nghiên cứu: Thuật toán tối ưu hóa số BFGS; các bài toán hồi quy tuyến tính (Linear Regression) và phi tuyến; mô hình phân loại nhị phân (Binary Classification) sử dụng Logistic Regression; mô hình phân loại nhiều lớp (Multiclass Classification) thông qua chiến lược One-vs-all; kỹ thuật chuẩn hóa chống quá khớp (Regularization).
  • Phạm vi nội dung và công nghệ: Các giải thuật tối ưu trong Supervised Learning; kỹ thuật lập trình ma trận hóa trên môi trường GNU Octave / MATLAB; kỹ thuật xử lý dữ liệu ảnh ma trận điểm phục vụ nhận dạng ký tự.
  • Dữ liệu nghiên cứu:
    • Dữ liệu dự đoán tuyển sinh gồm 100 mẫu ($100 \times 3$) từ khóa học Machine Learning của Đại học Stanford.
    • Dữ liệu kiểm thử chất lượng vi mạch (chipset) gồm 118 mẫu ($118 \times 3$) từ Đại học Stanford.
    • Bộ dữ liệu chữ số viết tay chuẩn MNIST gồm 5.000 mẫu (500 mẫu cho mỗi chữ số từ 0 đến 9).
    • Bộ dữ liệu chữ cái viết tay A-Z Handwritten Alphabets từ Kaggle, trích xuất 13.000 mẫu phục vụ huấn luyện.
  • Thời gian và địa điểm thực hiện: Nghiên cứu được tiến hành từ ngày 01/10/2018 đến ngày 30/12/2018 tại Khoa Hệ thống thông tin Kinh tế, Trường Đại học Kinh tế – Đại học Huế và quá trình thực tập tại Công ty MagRabbit Huế.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết và mô hình toán học

Khóa luận xây dựng hệ thống cơ sở lý thuyết dựa trên hai trục chính: Giải tích tối ưu hóa số học và Lý thuyết học máy có giám sát.

  1. Phương pháp Newton và giới hạn: Phương pháp Newton giải phương trình $f(x) = 0$ hoặc tìm cực trị của hàm nhiều biến thông qua khai triển Taylor bậc hai: $$f(x_k + \Delta x) \approx f(x_k) + \nabla f(x_k)^T \Delta x + \frac{1}{2} \Delta x^T B \Delta x$$ Điểm hạn chế là bắt buộc ma trận đạo hàm bậc hai (Hessian) phải xác định và chi phí tính nghịch đảo $O(n^3)$ rất tốn kém khi số chiều $n$ lớn.
  2. Thuật toán Quasi-Newton và BFGS: Thay vì tính toán trực tiếp ma trận Hessian, phương pháp Quasi-Newton xây dựng ma trận xấp xỉ đối xứng xác định dương $B_k$ biến thiên qua từng bước lặp dựa trên phương trình Secant: $$B_{k+1} s_k = y_k$$ Trong đó $s_k = x_{k+1} - x_k$ và $y_k = \nabla f(x_{k+1}) - \nabla f(x_k)$. Công thức cập nhật hạng hai BFGS có dạng: $$B_{k+1} = B_k - \frac{B_k s_k s_k^T B_k}{s_k^T B_k s_k} + \frac{y_k y_k^T}{y_k^T s_k}$$ Để tối ưu hóa tính toán, công thức Sherman-Morrison được áp dụng để tính trực tiếp nghịch đảo $B_{k+1}^{-1}$ mà không cần làm phép đảo ma trận.
  3. Thuật toán Backtracking line search: Dùng để xác định bước nhảy $\alpha_k > 0$ theo hướng tìm kiếm $d_k = - B_k^{-1} \nabla f(x_k)$, thỏa mãn điều kiện suy giảm Armijo: $$f(x + \alpha d) \le f(x) + c \alpha m$$ với các tham số kiểm soát $c \in (0, 1)$ và hệ số thu nhỏ $\tau \in (0, 1)$.
  4. Mô hình hồi quy và phân loại trong Machine Learning:
    • Hồi quy tuyến tính (Simple & Multiple Linear Regression): sử dụng hàm giả thuyết $h_\theta(x) = \theta^T x$ và hàm chi phí sai số bình phương trung bình $J(\theta)$ có tính lồi ngặt.
    • Hồi quy Logistic (Logistic Regression): kết hợp hàm tuyến tính với hàm kích hoạt Sigmoid $g(z) = \frac{1}{1 + e^{-z}}$, đưa đầu ra về khoảng xác suất $(0, 1)$. Hàm chi phí Cross-Entropy được biểu diễn: $$J(\theta) = -\frac{1}{m} \sum_{i=1}^{m} \left[ y^{(i)} \log(h_\theta(x^{(i)})) + (1 - y^{(i)}) \log(1 - h_\theta(x^{(i)})) \right]$$
    • Kỹ thuật Regularization: Bổ sung thành phần phạt $\frac{\lambda}{2m} \sum_{j=1}^{n} \theta_j^2$ vào hàm chi phí để hạn chế hiện tượng quá khớp (overfitting) khi mở rộng số chiều đa thức phi tuyến.
    • Chiến lược One-vs-all: Huấn luyện $K$ bộ phân loại nhị phân độc lập cho bài toán phân loại $K$ lớp đối tượng, gán nhãn theo mô hình có xác suất dự đoán $h_\theta^{(k)}(x)$ lớn nhất.

Phương pháp nghiên cứu thực tế

  • Phương pháp tối ưu hóa số học: Lập trình thực nghiệm giải thuật BFGS kết hợp Backtracking line search, tự động điều chỉnh tốc độ học qua từng vòng lặp để hội tụ về điểm cực tiểu toàn cục của hàm chi phí lồi.
  • Phương pháp giải tích toán học: Chứng minh và kiểm chứng tính lồi ngặt của các hàm chi phí trong Linear Regression và Logistic Regression nhằm đảm bảo mọi cực tiểu địa phương tìm được bởi BFGS đều là nghiệm tối ưu toàn cục duy nhất.
  • Phương pháp thực nghiệm và so sánh đối chuẩn: Cài đặt thuật toán trên GNU Octave/MATLAB, tiến hành đo lường hiệu năng và so sánh kết quả phân loại (độ chính xác, phương trình đường ranh giới quyết định) giữa thuật toán BFGS tự lập trình với hàm tối ưu tích hợp sẵn fminunc của Octave/MATLAB trên cùng một số lượng vòng lặp ($N = 200$).

Nội dung chính theo từng chương

Chương 1: Thuật toán BFGS

Chương này tập trung phân tích nguồn gốc toán học, cấu trúc giải thuật và cơ chế tối ưu của thuật toán BFGS trong không gian đa chiều. Tác giả trình bày chi tiết từ giải thuật Newton một biến, mở rộng sang hệ nhiều biến với ma trận đạo hàm Jacobi và ma trận Hessian. Sau khi chỉ ra hai nhược điểm cốt lõi của phương pháp Newton (phụ thuộc điểm khởi tạo và độ phức tạp tính toán ma trận Hessian bậc hai), chương phân tích giải pháp Quasi-Newton thông qua phương trình Secant và lớp cập nhật Broyden.

Nội dung trọng tâm của chương là việc triển khai thuật toán BFGS 5 bước kết hợp thuật toán Backtracking line search nhằm tự động xác định kích thước bước nhảy $\alpha_k$. Đồng thời, chương trình bày phương pháp ứng dụng bổ đề đảo ma trận Sherman-Morrison, giúp tính toán trực tiếp ma trận nghịch đảo Hessian xấp xỉ $B_{k+1}^{-1}$, qua đó tiết kiệm đáng kể thời gian xử lý và tài nguyên bộ nhớ máy tính.

Chương 2: Cơ sở lý thuyết Machine Learning

Chương 2 cung cấp bức tranh tổng quan về các phương pháp huấn luyện trong Machine Learning theo định nghĩa của Tom Mitchell, phân định rõ giữa học có giám sát (Supervised Learning) và học không giám sát (Unsupervised Learning). Tác giả đi sâu vào chi tiết toán học của hai bài toán nền tảng:

  • Hồi quy tuyến tính đơn biến (SLR) và đa biến (MLR): Định nghĩa cấu trúc hàm giả thuyết Hypothesis Function $h_\theta(x) = \theta^T x$, xây dựng hàm chi phí bình phương sai số $J(\theta)$, biểu diễn dạng ma trận hóa $J(\theta) = \frac{1}{2m} (X\theta - y)^T (X\theta - y)$ và chứng minh tính lồi ngặt.
  • Phân loại nhị phân (Binary Classification) với Logistic Regression: Phân tích lý do không thể dùng hàm chi phí bình phương (gây mất tính lồi khi qua hàm Sigmoid) và chuyển sang hàm chi phí Cross-Entropy. Tác giả thiết lập công thức tính Gradient $\nabla J(\theta) = \frac{1}{m} X^T (g(X\theta) - y)$ dưới dạng ma trận hóa.
  • Phân loại đa lớp One-vs-all và kỹ thuật Regularization: Trình bày cơ chế chia bài toán $n$ lớp thành $n$ bài toán phân loại nhị phân và kỹ thuật bổ sung tham số điều chuẩn $\lambda$ vào hàm mất mát nhằm triệt tiêu phương sai cao (high variance/overfitting).

Chương 3: Áp dụng BFGS vào bài toán phân loại

Chương 3 trình bày các thực nghiệm cụ thể khi áp dụng thuật toán BFGS để tối ưu hóa hàm chi phí cho hai bài toán phân loại thực tế:

  1. Bài toán phân loại nhị phân (Xét tuyển sinh viên): Sử dụng bộ dữ liệu 100 mẫu điểm thi. Mô hình phân loại tuyến tính sử dụng Logistic Regression tối ưu bằng BFGS và so sánh với hàm fminunc của Octave ở 200 vòng lặp. Kết quả ghi nhận véc-tơ tham số $\theta$ với hệ số chặn $\theta_0 = -25.168936$. Thuật toán BFGS tìm được đường phân cách phân định rõ ràng giữa hai miền đỗ/trượt, đạt độ chính xác 92%, vượt trội hơn mức 89% của fminunc.
  2. Bài toán phân loại phi tuyến có Regularization (Kiểm định vi mạch bán dẫn - Chipset): Sử dụng 118 mẫu dữ liệu kiểm thử vi mạch không thể phân tách tuyến tính. Tác giả tiến hành mở rộng không gian đặc trưng bằng các đa thức bậc 6 dạng $x_1^{6-k} x_2^k$ ($k \in {1, \dots, 6}$). Mô hình Regularized Logistic Regression được kiểm thử với các giá trị tham số điều chuẩn $\lambda$ khác nhau ($\lambda = 0; 0.01; 0.03; 0.1; 0.3; 1$). Thực nghiệm chỉ ra tác động rõ rệt của $\lambda$: khi $\lambda = 0$, mô hình bị overfitting tạo ranh giới quá phức tạp; khi $\lambda$ tăng hợp lý ($\lambda = 1$), đường bao phân cách trở nên trơn tru và tổng quát hóa tốt hơn.
Bài toán thực nghiệm Kích thước dữ liệu Số vòng lặp Độ chính xác fminunc Độ chính xác BFGS
Tuyển sinh đại học (Tuyến tính) $100 \times 3$ 200 89% 92%
Kiểm định vi mạch (Phi tuyến) $118 \times 3$ 200 Khảo sát theo $\lambda$ Khảo sát theo $\lambda$

Chương 4: Áp dụng BFGS vào bài toán nhận diện chữ viết tay

Chương 4 mở rộng phạm vi ứng dụng của thuật toán BFGS sang bài toán thị giác máy tính nhận dạng ảnh ký tự:

  • Nhận diện chữ số viết tay: Thực nghiệm trên tập dữ liệu chuẩn MNIST gồm 5.000 mẫu ảnh ma trận (500 mẫu/chữ số từ 0 đến 9). Tác giả kết hợp mô hình Regularized Logistic Regression với chiến lược phân lớp One-vs-all, sử dụng thuật toán BFGS để tối ưu 10 hàm chi phí tương ứng với 10 lớp chữ số.
  • Nhận diện chữ cái viết tay: Thực nghiệm trên bộ dữ liệu A-Z Handwritten Alphabets (trích xuất 13.000 mẫu từ tập gốc hơn 3 triệu dòng của Kaggle). Mô hình mở rộng cấu trúc One-vs-all lên 26 lớp ký tự (A đến Z).
  • Đồ án phân tích cấu trúc dữ liệu ảnh đầu vào, ma trận hóa các trọng số, tối ưu hóa các bước nhảy hội tụ bằng Backtracking line search và chứng minh tính khả thi của giải thuật BFGS trong việc giải quyết các bài toán phân loại đa lớp có số chiều tham số lớn.

Kết quả và đóng góp

Kết quả nghiên cứu chính

Khóa luận đã triển khai thành công mô hình toán học và mã nguồn thuật toán BFGS kết hợp Backtracking line search trên môi trường GNU Octave/MATLAB, đạt được các kết quả cụ thể sau:

  1. Hiệu năng tối ưu phân loại nhị phân: Trên tập dữ liệu tuyển sinh 100 mẫu, thuật toán BFGS tự cài đặt đạt độ chính xác 92%, cao hơn 3% so với hàm chuẩn fminunc của Octave/MATLAB (đạt 89%) tại cùng mốc 200 vòng lặp.
  2. Khả năng xử lý bài toán phi tuyến: Xây dựng thành công mô hình phân loại phi tuyến cho 118 mẫu chipset nhờ kỹ thuật mở rộng đa thức bậc 6 và chuẩn hóa Regularization. Đã phân tích thực nghiệm và vẽ trực quan hóa đường ranh giới quyết định (Decision Boundary) ở các mức $\lambda \in {0; 0.01; 0.03; 0.1; 0.3; 1}$, chứng minh cơ chế kiểm soát overfitting hiệu quả của mô hình khi kết hợp BFGS.
  3. Ứng dụng nhận dạng ký tự đa lớp: Áp dụng thành công thuật toán BFGS cho bài toán nhận dạng 5.000 mẫu chữ số MNIST (10 lớp) và 13.000 mẫu chữ cái A-Z Kaggle (26 lớp) thông qua cơ chế One-vs-all, hoàn thiện quy trình huấn luyện đa lớp trên dữ liệu thực tế.

Đóng góp của đề tài

  • Về mặt học thuật và phương pháp: Hệ thống hóa cơ sở toán học chặt chẽ của các thuật toán tối ưu Quasi-Newton; làm rõ mối liên hệ giữa điều kiện Secant, cập nhật hạng hai BFGS và công thức nghịch đảo Sherman-Morrison trong việc giải quyết bài toán cực tiểu hóa hàm chi phí lồi.
  • Về mặt kỹ thuật và ứng dụng: Tự xây dựng trọn vẹn bộ mã nguồn thuật toán BFGS và Backtracking line search trên Octave mà không phụ thuộc hoàn toàn vào các hộp công cụ (toolbox) có sẵn. Cung cấp quy trình chi tiết về việc ma trận hóa dữ liệu và xử lý bài toán phân loại từ đơn biến, đa biến, phi tuyến đến phân loại đa lớp quy mô lớn.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế của đề tài

Dựa trên phạm vi và nội dung trình bày trong khóa luận, các hạn chế được ghi nhận bao gồm:

  • Tốc độ thực thi và khả năng hội tụ của thuật toán BFGS vẫn phụ thuộc vào giá trị khởi tạo ban đầu và việc lựa chọn các tham số kiểm soát $c, \tau$ trong thuật toán Backtracking line search.
  • Khi số lượng lớp phân loại và kích thước dữ liệu tăng cao (như tập chữ cái 26 lớp), thời gian huấn luyện tăng lên do phải chạy lặp $K$ lần mô hình One-vs-all độc lập.
  • Nghiên cứu chỉ dừng lại ở các mô hình phân loại tuyến tính, phi tuyến bậc thấp và One-vs-all Logistic Regression; chưa mở rộng sang các kiến trúc mạng nơ-ron nhiều tầng (Multi-layer Neural Networks) hoặc Deep Learning.
  • Toàn bộ thuật toán được cài đặt và đánh giá trên môi trường GNU Octave/MATLAB với các tập dữ liệu tĩnh, chưa xây dựng giao diện người dùng hoàn chỉnh hay triển khai thực tế trên hệ thống sản xuất.

Hướng nghiên cứu tiếp

  • Tối ưu hóa hiệu năng tính toán của mã nguồn BFGS, nghiên cứu biến thể L-BFGS (Limited-memory BFGS) để tiết kiệm bộ nhớ khi xử lý các tập dữ liệu có số chiều tham số cực lớn.
  • Tích hợp giải thuật BFGS vào quá trình lan truyền ngược (backpropagation) để huấn luyện các mạng nơ-ron nhân tạo sâu (Deep Neural Networks).
  • Mở rộng phạm vi thử nghiệm trên toàn bộ cơ sở dữ liệu ảnh quy mô lớn và phát triển ứng dụng nhận dạng chữ viết tay trực tiếp thời gian thực.

Giá trị tham khảo

Tài liệu khóa luận có giá trị tham khảo chuyên môn đối với:

  • Sinh viên các ngành Hệ thống thông tin, Tin học kinh tế, Khoa học máy tính, Toán tin: Nguồn tài liệu chi tiết để hiểu sâu bản chất giải tích của các thuật toán tối ưu hóa số học và kỹ thuật ma trận hóa khi lập trình học máy trên GNU Octave / MATLAB.
  • Người nghiên cứu và lập trình viên Machine Learning: Tham khảo phương pháp tự lập trình các giải thuật tối ưu Quasi-Newton, cách giải quyết bài toán phi tuyến thông qua biến đổi đa thức đặc trưng, kỹ thuật điều chuẩn Regularization và cơ chế phân lớp One-vs-all.
  • Phần đáng tham khảo nhất: Chương 1 (biến đổi toán học của BFGS và Sherman-Morrison), Chương 2 (dẫn xuất đạo hàm ma trận của Cross-Entropy Loss) và Phụ lục mã nguồn chi tiết các hàm BFGS, Backtracking line search.

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

1. Tại sao thuật toán BFGS lại được ưu tiên sử dụng thay thế cho phương pháp Newton truyền thống trong tối ưu hóa hàm chi phí?

Phương pháp Newton đòi hỏi phải tính toán ma trận đạo hàm bậc hai (Hessian) và nghịch đảo ma trận này ở mỗi vòng lặp, dẫn tới chi phí tính toán $O(n^3)$ và tốn bộ nhớ rất lớn khi số chiều dữ liệu tăng. Thuật toán BFGS thuộc họ Quasi-Newton khắc phục điểm này bằng cách ước lượng xấp xỉ ma trận Hessian thông qua các véc-tơ gradient liên tiếp (dựa trên phương trình Secant và cập nhật hạng hai), đồng thời sử dụng công thức Sherman-Morrison để tính trực tiếp ma trận nghịch đảo mà không cần đảo ma trận thực sự.

2. Vai trò của thuật toán Backtracking line search trong cấu trúc của BFGS là gì?

Backtracking line search có nhiệm vụ xác định độ lớn bước di chuyển (bước nhảy $\alpha_k > 0$) dọc theo hướng tìm kiếm $d_k$ sao cho giá trị hàm chi phí giảm đủ lớn, thỏa mãn điều kiện Armijo ($f(x + \alpha d) \le f(x) + c \alpha m$). Thuật toán bắt đầu bằng một bước nhảy tương đối lớn và thu nhỏ dần theo hệ số $\tau \in (0, 1)$, giúp thuật toán BFGS tự động điều chỉnh tốc độ học (learning rate) tối ưu tại từng vòng lặp mà không cần người dùng chọn cố định bằng tay.

3. Trong bài toán thực nghiệm phân loại nhị phân dữ liệu tuyển sinh, thuật toán BFGS đạt kết quả ra sao so với hàm fminunc của Octave?

Trên tập dữ liệu tuyển sinh gồm 100 mẫu ($100 \times 3$) từ Đại học Stanford với 200 vòng lặp, thuật toán BFGS tự cài đặt đạt độ chính xác phân loại là 92%, cao hơn độ chính xác 89% của hàm tối ưu hóa tích hợp sẵn fminunc trong Octave/MATLAB.

4. Tác giả đã giải quyết bài toán phân loại phi tuyến trên tập dữ liệu kiểm thử vi mạch (chipset) bằng phương pháp nào?

Tác giả đã tạo thêm các đặc trưng phi tuyến từ hai đầu vào gốc $x_1, x_2$ bằng cách bổ sung các thành phần đa thức bậc 6 dạng $x_1^{6-k} x_2^k$ ($k \in {1, \dots, 6}$). Do số đặc trưng tăng lên làm tăng nguy cơ quá khớp (overfitting), tác giả đã kết hợp mô hình hồi quy Logistic với kỹ thuật chuẩn hóa Regularized Logistic Regression và thử nghiệm trên nhiều giá trị tham số $\lambda$ khác nhau nhằm tìm ra đường ranh giới quyết định tối ưu.

5. Khóa luận sử dụng các bộ dữ liệu nào cho bài toán nhận diện chữ số và chữ viết tay ở Chương 4?

Tác giả sử dụng hai bộ dữ liệu:

  • Bộ dữ liệu chữ số viết tay MNIST với 5.000 mẫu được chia đều (500 mẫu cho mỗi chữ số từ 0 đến 9).
  • Bộ dữ liệu chữ cái viết tay A-Z Handwritten Alphabets từ Kaggle, trong đó tác giả trích xuất 13.000 mẫu để phục vụ huấn luyện phân loại 26 lớp ký tự theo chiến lược One-vs-all.

Kết luận

Khóa luận tốt nghiệp của tác giả Mai Phương Đông đã hoàn thành việc nghiên cứu toàn diện về cơ sở lý thuyết và thuật toán tối ưu hóa số Quasi-Newton BFGS kết hợp kỹ thuật tìm kiếm đường đi Backtracking line search. Đề tài đã làm rõ phương pháp luận toán học trong việc giải quyết bài toán cực tiểu hóa hàm chi phí lồi của các mô hình học máy có giám sát (Linear Regression, Logistic Regression, Regularization và One-vs-all). Các kết quả thực nghiệm trên môi trường GNU Octave/MATLAB đối với bài toán tuyển sinh, kiểm thử vi mạch và nhận dạng chữ viết tay (MNIST, A-Z Kaggle) đã khẳng định tính chính xác, hiệu quả và giá trị ứng dụng thực tiễn của giải thuật BFGS trong phân loại dữ liệu.