Linear regression : Hồi quy tuyến tính

·

3 min read

Thuật toán hồi quy tuyến tính thường được dùng để dự đoán: Ví dụ như dự đoán giá nhà theo diện tích, gần trường học bệnh viện; giá rau củ quả theo màu sắc, độ lớn...

I, Đặt vấn đề

Cho một tập kết quả định giá nhà theo diện tích của một chuyên viên định giá nhà. tập kết quả được biểu diễn dưới dạng dữ liệu gồm input( số \(m^2\)) và output( giá nhà) lần lượt được ký hiệu là \(x, y\). Chuyên viên định giá nhà họ dựa vào những kinh nghiệm của bản thân họ trong việc định giá nhà mà họ đã trải qua để định giá một ngôi nhà. Kinh nghiệm ở đây chính là số lượng nhà mà họ đã định giá hay nói cách khác là số lượng tập kết quả mà họ tạo được ra input và output . Câu hỏi đặt ra có cách nào để có thể dùng máy móc dự đoán thay cho chuyên viên định giá kia không?

Diện tích ( \(m^2\) )Giá nhà ( triệu VND )
30448.524
32.4138509.248
34.8276535.104
37.2414551.432
39.6552623.418
......

Và chúng ta có một ý tưởng là sẽ dựa vào những dữ liệu có được để tìm ra một phương trình miêu tả sự biến đổi của giá nhà theo diện tích. Ta biết rằng mọi phương trình đều được biểu diễn bằng hình học.

Với tập dữ liệu \(x,y\) trên ta có thể tìm ra phương trình đường thẳng ta có dạng:

$$y = ax+b$$

Giả sử với hai điểm dữ liệu \(x_1 = 30\); \(y_1 = 448,524\); \(x_2 = 32,4138\); \(y_2 = 509,248\)). Ta tìm được phương trình đường thẳng: \(y = 25.157x - 306.186.\)

Sau đó ta thử dự đoán giá nhà với \(x_3 = 34,8276\) ta được \(\hat{y_3} = 569,972\). Với bảng dữ liệu thực tế ta thấy rằng có sự sai lệch giữa giá trị dự đoán và giá trị thực tế. Ta gọi đó là sai số \(L_3 = |\hat{y_3} - y_3| = |569,972 - 535.104| = 34,868.\)

Tiếp tục ta thử dự đoán giá nhà với \(x_4 = 37.2414\) ta được \(\hat{y_4} = 630,696.\)

Sai số \(L_4 = |\hat{y_4} - y_4| = |630,696 - 551.432| = 79,264 .\)

Ta ở mỗi điểm dữ liệu lại có một giá trị sai số khác nhau. Từ đó ta có sự sai số của một module dự đoán bẳng trung bình tổng của sai số ở mỗi điểm dữ liệu được gọi là Hàm thất thoát Loss Funcion :

$$\frac{1}{N}\sum_{i=0}^N L_i$$

Ở đây ta nhận thấy vấn đề của việc dự đoán chính là sai số, sai số càng lớn kết quả dự đoán càng tệ và càng không đáng tin. Vậy chúng ta cần làm tăng sự đáng tin bằng cách giảm sai số. Hay nói cách khác tìm giá trị nhỏ nhất của hàm thất thoát \(L\).

Ở bài viết sau tôi sẽ giới thiệu thuật toán để tìm \(min\) của \(L\).