fbpx Thuật toán Linear Regression và Những ứng dụng thực tế | Ứng Dụng AI Trong Kỷ Nguyên Mới| Gen AI Skip to main content
Linear Regression

Thuật toán Linear Regression và Những ứng dụng thực tế

 


📘 1. Cơ sở lý thuyết thuật toán Linear Regression

1.1. Khái niệm:

  • Linear Regression (Hồi quy tuyến tính) là thuật toán dự đoán mối quan hệ tuyến tính giữa biến đầu vào (X) và biến đầu ra (Y).

  • Mục tiêu: Xây dựng đường thẳng tuyến tính sao cho khoảng cách giữa các điểm dữ liệu và đường thẳng là nhỏ nhất.

 


1.2. Hàm mất mát (Loss Function):

  • Hàm mất mát phổ biến nhất là Mean Squared Error (MSE):

 

Hàm mất mát


1.3. Phương pháp Gradient Descent:

  • Gradient Descent là phương pháp tối ưu hóa để tìm giá trị tối ưu của β0\beta_0 và β1\beta_1.

  • Cập nhật tham số:

cập nhập tham số


1.4. Hệ số xác định R2R^2:

  • xác đinh r

     


1.5. Ưu điểm và nhược điểm:

Ưu điểm Nhược điểm
Dễ hiểu và triển khai Nhạy cảm với outliers
Giải thích dễ dàng Không hiệu quả với quan hệ phi tuyến
Hiệu suất tính toán nhanh Giả định phân phối tuyến tính


2. Ứng dụng thực tế của Linear Regression

Linear Regression được sử dụng trong các bài toán dự đoán có mối quan hệ tuyến tính, như:

🔥 2.1. Dự đoán giá nhà (Real Estate Pricing):

  • Dữ liệu: Diện tích, số phòng, vị trí.

  • Mục tiêu: Dự đoán giá bán nhà.

  • Input: [diện tích, số phòng]

  • Output: Giá bán

Phương trình tuyến tính:

Giaˊ nhaˋ=β0+β1×Diện tıˊch+β2×Soˆˊ phoˋng\text{Giá nhà} = \beta_0 + \beta_1 \times \text{Diện tích} + \beta_2 \times \text{Số phòng}


🔥 2.2. Dự đoán doanh thu bán hàng (Sales Prediction):

  • Dữ liệu: Chi phí quảng cáo, số lượng sản phẩm bán ra.

  • Mục tiêu: Dự đoán doanh thu.

  • Input: [chi phí quảng cáo, số lượng sản phẩm]

  • Output: Doanh thu


🔥 2.3. Dự đoán điểm thi học sinh (Student Score Prediction):

  • Dữ liệu: Số giờ học, điểm trung bình môn Toán, Anh.

  • Mục tiêu: Dự đoán điểm cuối kỳ.

Phương trình tuyến tính:

Điểm thi=β0+β1×Soˆˊ giờ học+β2×Điểm trung bıˋnh\text{Điểm thi} = \beta_0 + \beta_1 \times \text{Số giờ học} + \beta_2 \times \text{Điểm trung bình}


🔥 2.4. Dự đoán chi phí y tế (Medical Cost Prediction):

  • Dữ liệu: Tuổi, BMI, tiền sử bệnh.

  • Mục tiêu: Dự đoán chi phí y tế.

  • Input: [tuổi, BMI, tiền sử bệnh]

  • Output: Chi phí y tế


🔥 2.5. Dự đoán nhu cầu tiêu thụ điện (Energy Consumption):

  • Dữ liệu: Nhiệt độ, giờ trong ngày, ngày trong tuần.

  • Mục tiêu: Dự đoán lượng điện tiêu thụ.



3. Mã nguồn thực tế: Dự đoán giá nhà bằng Linear Regression

# Import thư viện
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score

# Dữ liệu giả lập
data = {
    'Area': [30, 45, 60, 75, 90],
    'Price': [300, 450, 600, 750, 900]
}
df = pd.DataFrame(data)

# Chia dữ liệu
X = df[['Area']]
y = df['Price']

# Huấn luyện mô hình
model = LinearRegression()
model.fit(X, y)

# Hệ số hồi quy
print("Intercept:", model.intercept_)
print("Slope:", model.coef_[0])

# Dự đoán giá nhà diện tích 70m2
predicted_price = model.predict([[70]])
print(f"Giá nhà 70m2: {predicted_price[0]} triệu")

# Đánh giá mô hình
y_pred = model.predict(X)
print("MSE:", mean_squared_error(y, y_pred))
print("R^2:", r2_score(y, y_pred))

# Vẽ đồ thị
plt.scatter(X, y, color='blue', label='Dữ liệu thực tế')
plt.plot(X, y_pred, color='red', label='Đường hồi quy')
plt.xlabel('Diện tích (m2)')
plt.ylabel('Giá (triệu)')
plt.title('Mô hình Linear Regression')
plt.legend()
plt.grid()
plt.show()

Tóm lại:

  • Linear Regression là thuật toán cơ bản, dễ hiểu và dễ triển khai.

  • Ứng dụng rộng rãi trong dự đoán dữ liệu có mối quan hệ tuyến tính.

  • Nên chú ý đến các giả định như: dữ liệu không có outliers quá lớn, quan hệ phải tuyến tính.


 

About

Công ty thiết kế web app chuyên thiết kế web và các dịch vụ maketing digital, seo, google adword...