1. Machine Learning

Machine Learning (viết tắt là ML): hiểu đơn giản là kỹ thuật giúp máy học một thứ gì đó từ dữ liệu nó được cung cấp. Cách tốt nhất để hiểu một vấn đề là đi thẳng vào ví dụ thực tế như sau:

Ví dụ hãy viết 1 chương trình dự đoán giá bất động sản dựa trên tập dữ liệu thực tế giả sử như sau:

Diện tíchGiá
30m230 \, m^21 tỷ
50m250 \, m^22.5 tỷ
80m280 \, m^24 tỷ
100m2100 \, m^26 tỷ

Cách tiếp cận truyền thống

Thì bằng cách nào đó bạn phải có công thức trước rồi mới lập trình cho máy tính toán ví dụ:

y=ax+by = ax + b

Cách tiếp cận ML

Sử dụng công thức phức tạp hơn:

y=a0+a1x1+a2x2+a3x3++anxny = a_0 + a_1x_1 + a_2x_2 + a_3x_3 + \dots + a_nx_n

Trong đó:

AI Models hiện đại

Các mô hình AI nổi tiếng:

Đặc điểm:

Neural Networks (Mạng nơ Ron)

Neural network

Mạng nơ-ron này bao gồm các lớp cụ thể chia thành 3 loại:

Tại sao phải chuyển logits thành xác suất?

  1. Logits không dễ hiểu với con người, vì chúng không ở dạng xác suất.
  2. Để chuyển logits thành xác suất, một hàm softmax thường được sử dụng
    • Biến các logits thành giá trị trong khoảng [0, 1],
    • Đảm bảo tổng tất cả các xác suất bằng 1.

Công thức của softmax:

P(yi)=elogitijelogitjP(y_i) = \frac{e^{logit_i}}{\sum_{j} e^{logit_j}}

Kết quả là gì?

Sau khi logits được chuyển thành xác suất, mô hình sẽ:

Ví dụ

Giả sử bạn đang dự đoán từ tiếp theo trong câu "I Love", và từ điển gồm các từ: cats, dogs, apples.

Logits từ lớp đầu ra: Logits là: [2.0, 1.0, 0.5] (một danh sách điểm số thô).

Áp dụng hàm softmax chuyển logits thành xác suất:

P(cats)=e2.0e2.0+e1.0+e0.50.63P(cats) = \frac{e^{2.0}}{e^{2.0} + e^{1.0} + e^{0.5}} \approx 0.63 P(dogs)=e1.0e2.0+e1.0+e0.50.23P(dogs) = \frac{e^{1.0}}{e^{2.0} + e^{1.0} + e^{0.5}} \approx 0.23 P(apples)=e0.5e2.0+e1.0+e0.50.14P(apples) = \frac{e^{0.5}}{e^{2.0} + e^{1.0} + e^{0.5}} \approx 0.14

Kết quả dự đoán: Mô hình chọn từ cats vì nó có xác suất cao nhất 0.63.

Tóm lại: ML cơ bản là sự kết hợp của các phép toán:

Đại số tuyến tính, Giải tích, và Xác suất thống kê

2. Deep Learning