Linear Regression (hồi quy tuyến tính)

Posted by hodacnguyen on 10/10/2024 09:24
AI Machine Learning
Linear Regression (hồi quy tuyến tính)

Linear Regression (hồi quy tuyến tính) là một trong những thuật toán đơn giản và phổ biến nhất trong Machine Learning, được sử dụng để mô hình hóa mối quan hệ giữa biến đầu vào (independent variables hay features) và biến đầu ra (dependent variable hay target).

Mô hình cơ bản của Linear Regression:

Mô hình hồi quy tuyến tính cố gắng tìm một hàm số tuyến tính để dự đoán giá trị đầu ra dựa trên đầu vào:

y=wTx+by = \mathbf{w}^T \mathbf{x} + bTrong đó:

  • yy: Giá trị đầu ra dự đoán (target).
  • x\mathbf{x}: Vector đặc trưng (features) đầu vào.
  • w\mathbf{w}: Vector trọng số (weights) mà mô hình học được.
  • bb: Bias (độ lệch), điều chỉnh dự đoán của mô hình.

1. Linear Regression đơn biến (Simple Linear Regression)

Nếu mô hình chỉ có một biến đầu vào, thì mô hình được gọi là Simple Linear Regression và có dạng:

y=w1x+b

  • w1w_1: Trọng số hoặc hệ số góc (slope) của đường thẳng.
  • xx: Biến đầu vào (feature).
  • bb: Bias, còn gọi là hệ số cắt (intercept), là giá trị của yy khi x=0x = 0.

Mục tiêu là tìm được w1w_1bb sao cho đường thẳng y=w1x+by = w_1 x + b là tốt nhất để dự đoán giá trị yy dựa trên giá trị xx.

2. Linear Regression đa biến (Multiple Linear Regression)

Khi có nhiều biến đầu vào (nhiều features), mô hình có dạng tổng quát hơn:

y=w1x1+w2x2++wnxn+b

Hoặc viết dưới dạng vector:

y=wTx+b

  • w=(w1,w2,,wn)\mathbf{w} = (w_1, w_2, \dots, w_n): Vector trọng số cho các biến đầu vào.
  • x=(x1,x2,,xn)\mathbf{x} = (x_1, x_2, \dots, x_n): Vector đầu vào (features).
  • bb: Bias.

Mục tiêu là tối ưu hóa w\mathbf{w} và bb để dự đoán yy dựa trên tập hợp các đặc trưng x\mathbf{x}.

3. Hàm mất mát (Loss Function)

Trong hồi quy tuyến tính, hàm mất mát phổ biến là Mean Squared Error (MSE), giúp đo lường sự khác biệt giữa giá trị dự đoán y^\hat{y} và giá trị thực yy:

MSE=1mi=1m(yiy^i)2

Trong đó:

  • yiy_i: Giá trị thực tế.
  • y^i\hat{y}_i: Giá trị dự đoán bởi mô hình.
  • mm: Số lượng mẫu.

Mục tiêu của hồi quy tuyến tính là tìm các giá trị của w\mathbf{w} và bb sao cho hàm mất mát MSE được tối thiểu hóa.

Để tìm các trọng số w\mathbf{w} và bias bb sao cho hàm mất mát LL là nhỏ nhất, ta có thể sử dụng các phép toán đại số để tìm cực tiểu của hàm này.

a. Chuyển đổi về Dạng Ma Trận
  • Giả sử ta có nn mẫu dữ liệu, ta có thể biểu diễn tập dữ liệu dưới dạng ma trận:

    • Ma trận đặc trưng XX có kích thước n×mn \times m (với mm là số lượng đặc trưng).
    • Vector mục tiêu yy có kích thước n×1n \times 1.
  • Ta có thể mở rộng mô hình để bao gồm bias bb bằng cách thêm một cột các giá trị 1 vào ma trận XX:

X=(1x11x12x1m1x21x22x2m1xn1xn2xnm)X' = \begin{pmatrix} 1 & x_{11} & x_{12} & \cdots & x_{1m} \\ 1 & x_{21} & x_{22} & \cdots & x_{2m} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_{n1} & x_{n2} & \cdots & x_{nm} \end{pmatrix}

Và trọng số sẽ là w\mathbf{w}' bao gồm cả bb.

b. Tính Đạo Hàm
  • Để tối thiểu hóa hàm mất mát, ta tính đạo hàm theo trọng số và đặt nó bằng 0:

wL(w)=2nXT(yXw)=0

c. Giải Đạo Hàm
  • Giải phương trình trên để tìm trọng số:

XT(yXw)=0    XTy=XTXw

  • Sau đó, nếu ma trận XTXX^T X khả nghịch (invertible), ta có:

w=(XTX)1XTy

* Điều kiện

Phương trình này hoạt động hiệu quả khi:

  • Ma trận XTXX^T X là khả nghịch, tức là nó không có các đặc trưng tuyến tính (các cột của ma trận XX phải độc lập tuyến tính).
  • Dữ liệu không bị phân tán quá mức và mô hình hồi quy tuyến tính là phù hợp với tập dữ liệu.

4. Ứng dụng của Linear Regression

Linear Regression được sử dụng rộng rãi trong nhiều bài toán dự đoán, ví dụ:

  • Dự đoán giá nhà dựa trên các yếu tố như diện tích, số phòng, vị trí.
  • Dự đoán doanh thu bán hàng dựa trên chi tiêu quảng cáo, giá sản phẩm, mùa vụ.
  • Phân tích xu hướng: Dự đoán xu hướng trong tương lai từ các dữ liệu quá khứ như thời tiết, tài chính, v.v.

You need to log in to comment.

Comments

No comments yet.