1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài báo cáo linear regression

23 156 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 0,92 MB
File đính kèm 25_Huỳnh Thị Châu Lan.rar (3 MB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Để dự đoán được những đều tương tự ta dùng HỒI QUY TUYẾN TÍNH để đưa ra một dự đoán có khả năng chính xác cao.Mục tiêu của đề tài Hiểu rõ được thuật toán hồi quy tuyến tính và có thể á

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP HCM

KHOA CÔNG NGHỆ THÔNG TIN

BÀI BÁO CÁO

TP HỒ CHÍ MINH, 2021

Tìm hiểu phương pháp hồi quy tuyến tính

và ứng dụng cho bài toán dự báo

GIẢNG VIÊN HƯỚNG DẪN: HUỲNH THỊ CHÂU LAN

SINH VIÊN THỰC HIỆN: 2

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP HCM

KHOA CÔNG NGHỆ THÔNG TIN

BÀI BÁO CÁO

Tìm hiểu phương pháp hồi quy tuyến tính

và ứng dụng cho bài toán dự báo

GIẢNG VIÊN HƯỚNG DẪN: HUỲNH THỊ CHÂU LAN

SINH VIÊN THỰC HIỆN: 2

NGUYỄN CÔNG TRUNG 2033180121

PHẠM ĐOÀN MINH HẬU 2033180133

Trang 3

BẢN NHẬN XÉT CỦA GVHD

Trang này đính kèm bản nhận xét của GVHD

Trang 4

LỜI CAM ĐOAN

Chúng tôi cam đoan rằng bài báo cáo đồ án này là do chính chúng tôi thực hiện dưới

sự hướng dẫn của cô Lan Các số liệu và kết quả phân tích trong báo cáo là trung thực

Trang 5

2

Trang 6

LỜI CẢM ƠN

Để hoàn thành đồ án này, trước hết chúng em xin gửi lời cảm ơn chân thành đến quý thầy, cô trong khoa Công nghệ Thông Tin trường Đại học Công nghiệp thực phẩm Tp Hồ Chí Minh đã truyền đạt kiến thức và kinh nghiệm quý báu cho chúng em trong suốt quá trình học tập và rèn luyện tại trường

Trong quá trình thực hiện đề tài chúng em đã gặp không ít khó khăn Nhưng với sự động viên giúp đỡ của quý thầy cô, người thân và bạn bè, chúng em cũng đã hoàn thành tốt đề tài nghiên cứu của mình và có được những kinh nghiệm, kiến thức hữu ích cho bản thân

Đặc biệt chúng em xin gởi lời cảm ơn sâu sắc đến cô Huỳnh Thị Châu Lan, người đã trực tiếp hướng dẫn và tận tình giúp đỡ chúng em trong suốt thời gian thực hiện đề tài

Dù đã cố gắng nhưng không thể tránh khỏi những sai sót Rất mong sự thông cảm và đóng góp ý kiến của quý thầy cô và các bạn để đồ án được hoàn thiện

Cuối cùng, xin kính chúc quý thầy cô và các bạn sức khỏe, luôn thành công trong công việc và cuộc sống

Chúng em xin chân thành cảm ơn!

Trang 7

MỤC LỤ

BẢN NHẬN XÉT CỦA GVHD iii

LỜI CAM ĐOAN i

TÓM TẮT ĐỒ ÁN ii

LỜI CẢM ƠN iii

MỤC LỤC iv

DANH MỤC HÌNH ẢNH v

DANH MỤC TỪ VIẾT TẮT 1

MỞ ĐẦU 2

Đặt vấn đề 2

Mục tiêu của đề tài 2

CHƯƠNG 1 TỔNG QUAN 3

1.1 Tổng quan về hồi quy tuyến tính 3

1.1.1 Khái niệm 3

1.1.2 Bản chất của thuật toán 3

1.2 Phân loại hồi quy tuyến tính 4

1.2.1 Hồi quy tuyến tính đơn giản ( simple linear regression ) 4

1.2.2 Hồi quy tuyến tính đa biến (linear regression multiple features) 5

CHƯƠNG 2 VẼ ĐƯỜNG THẲNG MÔ HÌNH HỒI QUY TUYẾN TÍNH 6

2.1 Vẽ đường hồi quy 6

2.2 Dùng kỹ thuật Gradient Descent 7

CHƯƠNG 3 THỰC NGHIỆM 11

3.1 Yêu cầu 11

3.2 Thực Hiện Trên Python 11

3.3 Tiến hành 11

3.4 Sử dụng SPSS để dự đoán 14

KẾT LUẬN 14

TÀI LIỆU THAM KHẢO 15

4

Trang 8

DANH MỤC HÌNH ẢNH

Hình 1: Ví dụ hồi quy tuyến tính 3

Hình 2: Bản chất hồi quy tuyến tính 3

Hình 3: Sơ đồ biểu diễn các điểm (x i ,y i ) 4

Hình 4: Mô hình 1 biến 4

Hình 5: Tập dữ liệu 6

Hình 6: Mô hình vẽ tìm đường thẳng hồi quy 7

Hình 7 Chọn α trên j(α)’ 8

Hình 8 Với giá trị learning rate cao 9

Hình 9 Với giá trị learning rate quá bé 9

Hình 10 Tỷ lệ hàm lỗi và số lần lặp 10

Hình 11 Mỗi α là một đường thẳng dự đoán mới 10

Hình 12: Cài các thư viện cho python 11

Hình 13: Đọc dữ liệu từ file 11

Hình 14: Lệnh biễu diễn các số liệu 12

Hình 15: Biểu đồ thể hiện các giá trị của dữ liệu 12

Hình 16: Lấy ra dữ liệu cần tính 12

Hình 17: Tìm hệ số 13

Hình 18: Công thức đường thẳng cần tìm 13

Hình 19: Kết quả dùng đường hồi quy và kết quả thực 13

Hình 20: Chỉ số MAPE, RMSE và tỷ lệ dự đoán chính xác 13

Hình 21: Sử dụng SPSS 14

Trang 9

DANH MỤC TỪ VIẾT TẮT

MAPE (Mean Absolute Percent Error): Sai số tương đối trung bìnhRMSE(Root Mean Squared Error): Root Mean Squared Error

1

Trang 10

y khoa có thể dự đoán một bệnh nhân khi có chiều cao và cân nặng sẽ bị tiểu đường hay không Đây không phải là sứ “đoán mò” mà sự ra quyết định có hay không mang tính khoa học và có logic Để dự đoán được những đều tương tự ta dùng HỒI QUY TUYẾN TÍNH để đưa ra một dự đoán có khả năng chính xác cao.

Mục tiêu của đề tài

Hiểu rõ được thuật toán hồi quy tuyến tính và có thể áp dụng dự đoán một vài bài toán hiệu quả Với tỷ lệ chính xác hơn 80%

Trang 11

CHƯƠNG 1 TỔNG QUAN

1.1 Tổng quan về hồi quy tuyến tính

1.1.1 Khái niệm

 Hồi quy tuyến tính ( linear regression) là một thuật toán có giám sát Nghĩa là từ

dữ liệu đầu vào ta sẽ cho ra một dữ liệu có liên quan đến dữ liệu đầu ra

 Mục tiêu của giải thuật hồi quy tuyến tính là dự đoán giá trị của một hoặc nhiều biến mục tiêu liên tục (continuous target variable)

o Ví dụ : Dự đoán bệnh của bệnh nhân dựa vào thông tin chiều cao, cân nặng, tuổi

Hình 1: Ví dụ hồi quy tuyến tính

1.1.2 Bản chất của thuật toán

Về cơ bản thì ta sẽ có một tập huấn luyện chứa các cặp (xi,yi) tương ứng và nhiệm vụ

của ta là phải tìm giá trị y ứng với một đầu x mới vào Để làm điều này ta cần tìm

được quan hệ giữa (xi,yi) để từ đó đưa ra được dự đoán Hay nói cách trừu tượng hơn

là ta cần vẽ được một đường quan hệ thể hiện mối quan hệ trong tập dữ liệu

3

Trang 12

Hình 2: Bản chất hồi quy tuyến tính

1.2 Phân loại hồi quy tuyến tính

Hồi quy tuyến tính được chia làm 2 dạng:

1 Hồi quy tuyến tính đơn giản ( 1 biến)

2 Hồi quy tuyến tính đa biến

1.2.1 Hồi quy tuyến tính đơn giản ( simple linear regression )

Ở dạng này ta hiểu sẽ có một biết x cho ra một biến y tương ứng Tương tự

như trong không gian 2 chiều oxy

Ví Dụ: ta có dữ liệu markerting tính ra sales Ở đây chỉ có 1 biến là marketing

Hình 3: Sơ đồ biểu diễn các điểm (x i ,y i )

Mô hình trên ta sẽ đi tìm một đường thưởng y=ax+b có liên quan đến các điểm

trên

Chúng ta không thể tìm một đường thẳng đi qua tất cả điểm trên Nhưng chúng

ta có thể tìm được một đường thẳng tương đối nằm giữa các điểm

Trang 13

Hình 4: Mô hình 1 biến

Đường thẳng làm sao để gọi là tương đối chính xác Tìm dùng phương pháp bìnhphương sai nhỏ nhất hay gọi là hàm lỗi (cost) Tức từ một đường thẳng bất kỳ ta sẽtính tổng bình phương các điểm đến đường thẳng sao cho nhỏ nhất thì đường thẳng đóđược coi là đường tương đối chính xác Làm sao để vẽ được đường thẳng này?

Ta có 2 cách để vẻ:

1 Tính đạo hàm của tổng bình phương tìm giá trị sao cho tổng bình phương này lànhỏ nhất

2 Dùng công thức toán học để tìm ra đường thẳng

1.2.2 Hồi quy tuyến tính đa biến (linear regression multiple features)

Mô hình này tương tự như hồi quy tuyến tính đơn giản ( 1 biến) nhưng khác ở chỗ môhình này mở rộng hơn về biến

Ví dụ: ta sẽ có dữ liệu markting, chi phí nhân công, chi phí mặt bằng, … Tính

ra giá của một sản phẩm Ở đây biến là (markting, chi phí nhân công, chi phí mặt bằng,

….)

Do nhiều hơn 1 biến nên ta không thể dùng công thức y=ax+b ta sẽ phải dùng

công thức khác: y=a 1 x 1 +a 2 x 2 +a 3 x 3 +…+a 0

Cách thực hiện ta có thể áp dụng kỹ thuật Gradient Descent để tìm được đường

hồi quy tốt nhất Với cách này ta sẽ tìm min của hàm lỗi (cost).

CHƯƠNG 2 VẼ ĐƯỜNG THẲNG MÔ HÌNH HỒI QUY TUYẾN TÍNH

2.1 Vẽ đường hồi quy.

Ta có tập dữ liệu

5

Trang 15

Hình 6: Mô hình vẽ tìm đường thẳng hồi quy

Tới đây ta dùng phương pháp nhân ma trận trong toàn học đẻ tìm 2 số a, b

2.2 Dùng kỹ thuật Gradient Descent

Để dùng kỹ thuật Gradient Descent ta cần nhắc lại hàm lỗi (cost) ở trên, thì

hàm lỗi này chính là khoảng cách giữ các điểm với đường thẳng ta cần dự đoán hàm

này càng gần giá trị min thì càng tốt vì khi đấy đường thẳng chúng ta tìm được sẽ là

đường thẳng tương đối chính xác

Để tìm được giá trị min của hàm lỗi ta cần đạo hàm hàm lỗi này và tìm giá trị

cực tiểu của hàm

Ta có hàm lỗi là J(α) =

H(x0 ) làm đường thằng cần dự đoán

m là tổng số feature

Đạo hàm hàm lỗi ta được J(α)’=

Lúc đầu ta sẽ chọn ngẫu nhiên số α thay vào J(α)’ để biết được tại thời

điểm α là hàm lỗi J(α) đang tăng hay giảm để các vòng lặp sau sẽ tăng hay giảm α.

7

Trang 16

Hình 7 Chọn α trên j(α)’

Giá trị α tiếp theo sẽ phụ thuộc vào giá trị learning rate Learning rate là giá trị

chênh lệch giữa 2 α Nếu như giá trị learning rate quá lớn thì khi α giảm sẽ qua khỏi điểm cực trị sẽ không được giá trị như mong muốn

Trang 17

Hình 8 Với giá trị learning rate cao

Nếu như giá trị learning rate quá bé thì vòng lặp sẽ hoạt rất lâu tốn rất nhiều tàinguyên của máy

Hình 9 Với giá trị learning rate quá bé

Cho nên chọn learning rate là rất quan trọng với một tập dữ liệu lớn

Sau mỗi lần train lại thì hàm lỗi sẽ giảm cho đến 1 giá trị gần bằng 0

9

Trang 18

Hình 10 Tỷ lệ hàm lỗi và số lần lặp

Mỗi lặp là sẽ có 1 α mới suy ra sẽ có 1 đường thằng dự đoán mới Càng về sau

sẽ càng hội tụ lại

Trang 19

CHƯƠNG 3 THỰC NGHIỆM

3.1 Yêu cầu

Dùng ngôn ngữ python để thực hiện bài toán Vì python hỗ trợ nhiều công cụ tính toán về ma trận Hoặc có thể dùng phần mềm SPSS có tích hợp công cụ tìm đường hồi quy

3.2 Thực Hiện Trên Python

Hình 3.1 Dữ liệu đầu vào

Ta cần có 1 dữ liệu đầu vào đủ lớn để có thể tìm ra được đường hồi quy chínhxác nhất

3.3 Tiến hành

Bước 1 Cài các thư viện cần thiết cho python

Hình 12: Cài các thư viện cho python

Bước 2 Đọc dữ liệu đầu vào bằng lệnh

pd.read_cgv("D:/Advertising.csv")

Hình 13: Đọc dữ liệu từ file

11

Trang 20

Bước 3 Dùng các thư viện matplotlib.pyplot để hiển thị các giá trị sales lên đồ

thị

Hình 14: Lệnh biễu diễn các số liệu

Hình 15: Biểu đồ thể hiện các giá trị của dữ liệu

Bước 4 Lấy ra dữ liệu xi cần tính toán

Trang 21

Bước 5 Dùng hàm linear regression trong thư viện skitlearn

Hình 17: Tìm hệ số

Hình 18: Công thức đường thẳng cần tìm

Bước 6 Kiểm tra kết quả từ đường hồi quy với kết quả thực

Hình 19: Kết quả dùng đường hồi quy và kết quả thực

Hình 20: Chỉ số MAPE, RMSE và tỷ lệ dự đoán chính xác

13

Trang 22

3.4 Sử dụng SPSS để dự đoán

Hình 21: Sử dụng SPSS

Các hệ số khá là tương đồng với thuật toán sử dụng ngôn ngữ python

KẾT LUẬN

Ngày nay xã hội phát triển, khi đưa ra một dự đoán ta đều phải có những căn

cứ Trí tuệ nhân tạo là một phần của tương lai để có thể dạy cho những công cụ AI đó

ta cần hiểu rõ hơn sâu hơn về hồi quy

Trang 23

TÀI LIỆU THAM KHẢO

 https://www.youtube.com/watch?

v=PNp1prcWbkM&list=PLDpRz2wA0qZzTcDLeXP5PSCfmQ96l9-Qr

 https://machinelearningcoban.com/2016/12/28/linearregression/

15

Ngày đăng: 22/12/2021, 21:00

HÌNH ẢNH LIÊN QUAN

Mô hình trên ta sẽ đi tìm một đường thưởng y=ax+b có liên quan đến các điểm trên. - Bài báo cáo linear regression
h ình trên ta sẽ đi tìm một đường thưởng y=ax+b có liên quan đến các điểm trên (Trang 12)
1.2.1. Hồi quy tuyến tính đơn giản ( simple linearregressio n) - Bài báo cáo linear regression
1.2.1. Hồi quy tuyến tính đơn giản ( simple linearregressio n) (Trang 12)
Từ bảng trên ta sẽ được: 50=15a+b.1 - Bài báo cáo linear regression
b ảng trên ta sẽ được: 50=15a+b.1 (Trang 14)

TỪ KHÓA LIÊN QUAN

w