Hồi quy logistic phù hợp để sử dụng xây dựng một mô hình toán học dự đoán khả năng sống sót của các hành khách dựa trên các thông tin cá nhân được cung cấp.. giả đã ứng dụng mô hình hồi
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM
- - - - - -
ĐỀ TÀI:
HỒI QUY LOGISTIC
Giảng viên hướng dẫn : TS Tôn Thất Tú Sinh viên thực hiện : Nguyễn Thị Hoa Lớp : 17CTUD
Đà Nẵng, 12/2020
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM
- - - - - -
ĐỀ TÀI:
HỒI QUY LOGISTIC
Giảng viên hướng dẫn : TS Tôn Thất Tú Sinh viên thực hiện : Nguyễn Thị Hoa Lớp : 17CTUD
Trang 3MỞ ĐẦU 3
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 5
A XÁC SUẤT 5
1 Biến ngẫu nhiên 5
2 Phân phối rời rạc 5
3 Ước lượng tham số 5
4 Phương pháp ước lượng hợp lý cực đại 6
B PHẦN MỀM R VÀ R-STUDIO 8
1 Lịch sử ra đời 8
2 Ứng dụng 8
3 Các thư viện và câu lệnh sẽ dùng 9
CHƯƠNG 2: BÀI TOÁN HỒI QUY LOGISTIC 11
1 Lý do dùng bài toán hồi quy Logistic 11
2 Xây dựng mô hình lý thuyết 11
3 Sai số dự báo 13
4 Khảo sát sự ảnh hưởng của biến độc lập đến biến phụ thuộc 16
5 Ứng dụng mô hình trong bộ dữ liệu Titanic 16
PHỤ LỤC 28
KẾT LUẬN 32
TÀI LIỆU THAM KHẢO 33
Trang 4LỜI CẢM ƠN
Lời đầu tiên của khóa luận tác giả xin gửi lời cảm ơn sâu sắc đến thầy Tôn Thất Tú đã tận tình hướng dẫn tác giả trong suốt quá trình thực hiện để tác giả có thể hoàn thành được khóa luận này
Tác giả cũng xin gửi lời cảm ơn chân thành nhất đến tất cả các thầy cô đã tận tình dạy bảo tác giả trong suốt thời gian tác giả học tập tại Khoa Toán của trường Đại học Sư phạm – Đại học Đà Nẵng
Đồng thời tác giả cũng xin gửi lời cảm ơn đến các bạn trong lớp 17CTUD đã nhiệt tình giúp đỡ tác giả trong quá trình học tập tại lớp
Vì thời gian và kiến thức còn hạn chế nên mặc dù bản thân đã cố gắng hết sức nhưng bài luận văn vẫn không thể tránh khỏi thiếu sót Tác giả kính mong nhận được những ý kiến đóng góp quý báu từ các thầy cô và các bạn để khóa luận được hoàn thiện hơn
Tác giả
Nguyễn Thị Hoa
Trang 5MỞ ĐẦU
1 Lý do chọn đề tài
Thống kê là một ngành khoa học nghiên cứu các phương pháp điều tra và thu thập dữ liệu, sắp xếp, trình bày dữ liệu và xử lý dữ liệu nhằm rút ra các thông tin hữu ích về tổng thể nghiên cứu Ngày nay, với sự phát triển của công nghệ thông tin, việc thu thập dữ liệu và tính toán của con người đã trở nên dễ dàng hơn Chính vì vậy, ngành thống kê có điều kiện phát triển mạnh mẽ và có rất nhiều ứng dụng trong hầu hết các lĩnh vực của đời sống xã hội
Một trong những bài toán điển hình trong thống kê là bài toán phân lớp Bài toán này được mô tả đơn giản như sau: Giả sử ta có K lớp được đánh số từ 1 đến K và một mẫu gồm n đối tượng với các đặc điểm của chúng đã biết chúng thuộc lớp nào Bài toán phân lớp đặt ra là khi ta có một đối tượng mới với các đặc điểm của chúng thì ta có thể dự đoán chúng thuộc lớp nào hay không? Bài toán này có ứng dụng rất rộng rãi trong cuộc sống, chẳng hạn như được dùng để phân loại sản phẩm tự động, phân loại email, phân loại video, … Về bản chất, đây là bài toán hồi quy với biến đầu ra nhận K giá trị Khi K bằng 2 người ta thường gọi là hồi quy nhị phân hoặc hồi quy logistic
Trong lịch sử hàng hải vụ đắm tàu Titanic được xem là một trong những vụ đắm tàu thương mại thảm khốc nhất Vào ngày 15 tháng 4 năm 1912, trong chuyến đi đầu tiên của mình, con tàu RMS Titanic được coi là “không thể chìm” đã bị chìm sau khi va chạm với một tảng băng trôi Thật không may, do không có đủ thuyền cứu sinh cho tất cả mọi người trên tàu nên điều này dẫn đến cái chết của 1502 trong số 2224 hành khách và đoàn thủy thủ Bộ dữ liệu liên quan đến thông tin của các nạn nhân đã qua đời cũng như những người may mắn sống sót đã được công bố trên nhiều trang website, chẳng hạn tại địa chỉ
https://www.kaggle.com/c/titanic/data
Sau khi nghiên cứu bộ dữ liệu, tác giả nhận thấy rằng mặc dù có một số yếu tố may mắn liên quan đến việc sống sót, nhưng có vẻ như một số nhóm người có khả năng sống sót cao hơn những nhóm khác Điều này cho thấy những thông tin về hành khách có thể giúp ta phán đoán về khả năng sống sót của họ Hồi quy logistic phù hợp để sử dụng xây dựng một mô hình toán học dự đoán khả năng sống sót của các hành khách dựa trên các thông tin cá nhân được cung cấp
Với các lý do trên, tác giả chọn đề tài “Hồi quy logistic” để làm đề tài khóa luận của mình Bên cạnh việc trình bày lý thuyết về mô hình hồi quy logistic, tác
Trang 6giả đã ứng dụng mô hình hồi quy này để phân tích bộ dữ liệu về vụ đắm tàu Titanic với sự hỗ trợ của phần mềm thống kê R
2 Mục đích nghiên cứu
Tìm hiểu về hồi quy logistic và ứng dụng để dự báo khả năng sống sót của hành khách trên tàu Titanic
3 Đối tượng nghiên cứu
Hồi quy logistic và dữ liệu về vụ đắm tàu Titanic
4 Phạm vi nghiên cứu
- Hồi quy logistic và ứng dụng để phân tích bộ dữ liệu tài Titanic
- Sử dụng tỉ lệ dự báo đúng làm chỉ số trong việc xác định ngưỡng xác suất dùng để phân lớp
5 Phương pháp nghiên cứu
- Nghiên cứu lý thuyết về hồi quy logistic, tìm hiểu về việc sử dụng phần mềm R trong phân tích thống kê
- Tìm hiểu về bộ dữ liệu nghiên cứu
- Đọc tài liệu, trao đổi với giáo viên hướng dẫn
6 Ý nghĩa khoa học và thực tiễn
Khóa luận cung cấp một số kết quả phân tích thống kê về bộ dữ liệu vụ đắm tàu Titanic, cho người đọc thấy được các yếu tố ảnh hưởng đến khả năng sống sót của các hành khách trên tàu Khóa luận là một tài liệu tham khảo tốt cho các bạn sinh viên ngành Toán khi học về Thống kê cũng như mong muốn tìm hiểu ứng dụng của Thống kê trong cuộc sống
7 Cấu trúc khóa luận
Trong đề tài này, chúng tôi trình bày về cách sử dụng phương pháp hồi quy Logistic để dự báo về sự sống sót của hành khách trên tàu Titanic Nội dung đề tài được trình bày trong 2 chương Ngoài ra, luận văn có Lời cảm ơn, Mục lục, Mở đầu, Kết luận, Tài liệu tham khảo
Chương 1 trình bày về kiến thức cơ sở bao gồm: Xác suất và Phần mềm R và R-Studio
Chương 2, trình bày về bài toán hồi quy Logistic bao gồm: lý do dùng bài toán hồi quy Logistic, cách xây dựng mô hình Logistic lý thuyết, sai số dự báo trong mô hình, khảo sát sự ảnh hưởng của biến độc lập đến biến phụ thuộc và ứng dụng mô hình Logistic trong phân tích bộ dữ liệu Titanic
Trang 7CHƯƠNG I: CƠ SỞ LÝ THUYẾT
A XÁC SUẤT
1 Biến ngẫu nhiên
Tập tất cả các kết quả có thể xảy ra của một phép thử được gọi là không gian mẫu, kí hiệu là Ω
Mỗi tập con của không gian mẫu được gọi là biến cố Một biến cố xảy ra khi
thực hiện phép thử nếu kết quả của thực hiện phép thử rơi vào biến cố đó
Hàm X xác định trên không gian mẫu Ω và nhận giá trị trong ℝ được gọi là
biến ngẫu nhiên nếu với mọi 𝑥 ∈ ℝ, tập hợp các kết quả {𝜔: 𝑋(𝜔) < 𝑥} lập thành một biến cố ngẫu nhiên
Tập hợp các giá trị của X được gọi là miền giá trị của X, kí hiệu là 𝑋(Ω)
Nói một cách trực quan, biến ngẫu nhiên là một đại lượng có thể nhận giá trị này hày giá trị khác phụ thuộc vào kết quả của phép thử
Có 2 loại biến ngẫu nhiên:
• Biến ngẫu nhiên rời rạc: biến ngẫu nhiên có tập giá trị có số lượng hữu hạn
hoặc vô hạn đếm được
• Biến ngẫu nhiên liên tục: biến ngẫu nhiên thỏa các điều kiện sau:
o Tập giá trị tạo thành 1 đoạn, khoảng hoặc hợp các đoạn, khoảng
3 Ước lượng tham số
Cho mẫu ngẫu nhiên {𝑋1, 𝑋2, … , 𝑋𝑛} từ tổng thể có phân phối phụ thuộc vào tham số 𝜃 Khi đó, một thống kê 𝜃̂ = 𝜃̂(𝑋1, 𝑋2, … , 𝑋𝑛) được gọi là một ước lượng
của tham số 𝜃
Trang 8Nói chung, ước lượng 𝜃̂ = 𝜃̂(𝑋1, 𝑋2, … , 𝑋𝑛) của tham số 𝜃 là một biến ngẫu nhiên Với một mẫu giá trị cụ thể {𝑥1, 𝑥2, … , 𝑥𝑛} ta thu được một giá trị cụ thể 𝜃̂ Khi đó, giá trị 𝜃̂ = 𝜃̂(𝑥1, 𝑥2, … , 𝑥𝑛) được gọi là ước lượng điểm của tham số 𝜃 dựa
trên mẫu giá trị {𝑥1, 𝑥2, … , 𝑥𝑛}
4 Phương pháp ước lượng hợp lý cực đại
Cho {𝑘1, 𝑘2, … , 𝑘𝑛} là mẫu ngẫu nhiên kích thước 𝑛 của phân phối rời rạc 𝑋 có hàm xác suất 𝑝(𝑘, 𝜃) với 𝜃 là tham số chưa biết Hàm hợp lý 𝐿(𝜃) là hàm được định nghĩa như sau:
𝐿(𝜃) = ∏ 𝑝(𝑘𝑖, 𝜃)
Nếu {𝑥1, 𝑥2, … , 𝑥𝑛} là mẫu ngẫu nhiên kích thước 𝑛 của phân phối liên tục có hàm mật độ xác suất 𝑓(𝑥, 𝜃) với 𝜃 là tham số chưa biết thì hàm hợp lí 𝐿(𝜃) là hàm được định nghĩa như sau:
𝐿(𝜃) = ∏ 𝑓(𝑥𝑖, 𝜃)
Cho hàm hợp lí 𝐿(𝜃) với tham số 𝜃 chưa biết Nếu 𝜃𝑀𝐿 là giá trị tham số thỏa mãn 𝐿(𝜃𝑀𝐿) > 𝐿(𝜃) với mọi 𝜃 thì 𝜃𝑀𝐿 được gọi là ước lượng hợp lí cực đại của
Trang 9Ví dụ 2: Tìm ước lượng tham số của phân phối chuẩn 𝑁(𝜇, 𝜎2) bằng phương pháp ước lượng hợp lý cực đại
Giải: Phân phối chuẩn 𝑁(𝜇, 𝜎2) có hàm mật độ xác suất:
Trang 10R là một ngôn ngữ lập trình mà nhiều nhà khoa học dữ liệu và nhà thống kê sử dụng cho mục đích trực quan hóa và phân tích dữ liệu Hiện nay, R đang nổi lên như là một ngôn ngữ mang nhiều tiềm năng và ngày càng mở rộng với hàng ngàn gói lệnh (packages) phục vụ cho nhiều lĩnh vực ứng dụng khác nhau
R là một ngôn ngữ lập trình và môi trường phần mềm dành cho tính toán và đồ họa thống kê Đây là một bản hiện thực ngôn ngữ lập trình S với ngữ nghĩa khối từ vựng lấy cảm hứng từ Scheme (một ngôn ngữ lập trình hỗ trợ nhiều khuôn mẫu lập trình, được biết đến với khả năng hỗ trợ lập trình hàm) R do Ross Ihaka và Robert Gentleman tạo ra tại Đại học Auckland, New Zealand, đến nay do R Development Core Team chịu trách nhiệm phát triển Tên của ngôn ngữ một phần lấy từ chữ cái đầu của hai tác giả (Robert Gentleman và Ross Ihaka), một phần cũng là cách chơi chữ từ tên S
Ngôn ngữ R đã trở thành một tiêu chuẩn trên thực tế (de facto) giữa các nhà thống kê cho thấy sự phát triển của phần mềm thống kê, và được sử dụng rộng rãi để phát triển phần mềm thống kê và phân tích dữ liệu
R là một bộ phận của dự án GNU (một hệ điều hành và bộ sưu tập phần mềm máy tính phong phú) Mã nguồn của nó được công bố tự do theo Giấy phép Công cộng GNU, và có các phiên bản cho nhiều hệ điều hành khác nhau R sử dụng giao diện dòng lệnh, tuy cũng có một vài giao diện đồ họa người dùng dành cho nó
2 Ứng dụng
Chúng ta có thể sử dụng ngôn ngữ lập trình R nhưng một công cụ chuẩn lĩnh vực học máy (Machine Learning), thống kê cũng như phân tích dữ liệu Các đối tượng, hàm, và packages dễ dàng được tạo bởi R Thêm vào đó, nó độc lập với nền tảng cũng như là miễn phí Vì vậy, ai cũng có thể cài đặt mà không cần phải trả bất kí loại phí nào Hơn nữa, nó cũng có thể chạy trên tất cả các hệ điều hành phổ biến như: Windows, Mac, Lunix
Trang 11Ngôn ngữ lập trình R không đơn thuần chỉ là một package thống kê, nó còn cho phép chúng ta tích hợp với các ngôn ngữ khác (C, C++) Do đó, bạn có thể làm việc mới một số nguồn dữ liệu cũng như các package thống kê của các ngôn ngữ lập trình khác Và kết quả là nhờ đó mà R có cộng đồng người dùng ngày càng lớn mạnh không ngừng, đặc biệt là khi AI, Machine Learning hay Deep Learning đang là những ngành cực hot
Các công việc cần sử dụng đến R không chỉ liên quan đến các công ty thiên về công nghệ thông tin mà có rất nhiều lĩnh vực khác cũng đội ngũ phân tích dữ liệu biết sử dụng ngôn ngữ này, nổi bật trong số đó là:
• Chuyên viên phân tích dữ liệu • Phân tích kinh doanh
• Tư vấn phân tích
3 Các thư viện và câu lệnh sẽ dùng • Thư viện: VIM
Thư viện này bao gồm các công cụ để hiển thị các giá trị bị thiếu, có thể được sử dụng để khám phá dữ liệu và cấu trúc của các giá trị bị thiếu này Tùy thuộc vào cấu trúc của chúng, các phương pháp tương ứng có thể giúp xác định cơ chế tạo ra các giá trị thay thế cho dữ liệu bị thiếu
• Thư viện: pROC
Một gói trong R để hiển thị và phân tích các đường cong ROC, như: tính diện tích dưới đường cong ROC, vẽ đường cong ROC, tính khoảng tin cậy của các ngưỡng phân lớp…
• Thư viện: caret
Gói caret (viết tắt của Classification And REgression Training) là một tập hợp các gói lệnh được tổ chức chặc chẽ để phục vụ cho bài toán phân loại và hồi quy trên R Thư viện này chứa các công cụ cho:
Trang 12- Phân chia dữ liệu - Tiền xử lý
- Lựa chọn biến
- Điều chỉnh các tham số mô hình - Ước tính tầm quan trọng biến đổi
- Chạy mô hình hồi quy và mô hình phân loại
Trang 13CHƯƠNG 2: BÀI TOÁN HỒI QUY LOGISTIC
1 Lý do dùng bài toán hồi quy Logistic
Hồi quy logistic được phát triển bởi nhà thống kê David Cox (1958) Mục tiêu sử dụng mô hình này cũng giống như bất kì mô hình hồi quy nào khác trong thống kê, đó là, tìm ra mô hình phù hợp nhất và tối ưu nhất trong mô tả mối quan hệ giữa
biến mục tiêu y (đối tượng nghiên cứu) và một tập hợp các biến độc lập (biến dự
đoán hoặc biến giải thích, yếu tố tác động) qua đó đưa các kết quả dự báo trong tương lai
Mô hình hồi quy logistic được áp dụng vào quy tình phân tích dữ liệu khi: • Cần phân loại đối tượng nghiên cứu vào các nhóm
• Số nhóm bằng 2
Điều này đồng nghĩa là biến mục tiêu y sẽ chỉ có 2 giá trị 0 (không) và 1(có)
(dạng binary logistic) Trên thực tế, có rất nhiều hiện tượng tự nhiên, hiện tượng
kinh tế, xã hội,… mà chúng ta cần dự đoán khả năng xảy ra của nó: chiến dịch quảng cáo có được chấp nhận hay không, người vay có trả được nợ hay không, công ty có phá sản hay không, khách hàng có mua hay không,…
2 Xây dựng mô hình lý thuyết
Hàm logistic được cho bởi:
Trang 14Xét mô hình hồi quy với các biến độc lập 𝑋 = (𝑋1, 𝑋2, … , 𝑋𝑘) và biến phụ thuộc 𝑌, trong đó, 𝑌 nhận 2 giá trị 0 và 1
Đặt 𝑝(𝑥) = 𝑃(𝑌 = 1|𝑋 = 𝑥) Giá trị
𝑜𝑑𝑑𝑠(𝑥) = 𝑝(𝑥) 1 − 𝑝(𝑥) được gọi là tỉ số odd (odds ratio)
Mô hình hồi quy logistic có dạng:
Trang 15Các hệ số 𝛽 = (𝛽0, , 𝛽𝑘)được tìm khi ta tìm giá trị lớn nhất của hàm 𝐿(𝛽) theo 𝛽
Trong R, để thực hiện chạy mô hình hồi quy logistic, ta sử dụng hàm 𝑔𝑙𝑚 với
tham số bổ sung 𝑓𝑎𝑚𝑖𝑙𝑦 = “𝑏𝑖𝑛𝑜𝑚𝑖𝑎𝑙”
3 Sai số dự báo
Khi xây dựng mô hình hồi quy logistic, điều mà ta quan tâm dĩ nhiên không phải chỉ có mỗi ý nghĩa của các biến độc lập có phù hợp hay có ý nghĩa để đưa vào mô hình phục vụ dự báo cho biến mục tiêu hay không, mà đó chính là khả năng dự báo chính xác kết quả đạt được của biến mục tiêu so với thực tế Vì mục tiêu sau cùng của hồi quy logistic là khả năng dự báo của mô hình thu được
Mô hình chúng ta xây dựng thực chất mới chỉ khớp hay mang đặc trưng của bộ dữ liệu huấn luyện nên nó sẽ đưa ra kết quả dự báo tương đối chính xác với những đối tượng được nghiên cứu trong tập này, còn các đối tượng trong dữ liệu thực tế thì sao? Mức độ phù hợp của mô hình dùng để dự báo kết quả trong thực tế là như thế nào chính là điều chúng ta cần đánh giá
Đánh giá độ hiệu quả của những mô hình phân, phương pháp Confusion Matrix (ma trận nhầm lẫn) là điển hình nhất, với cấu trúc tổng quát như sau:
Lớp thực tế
Lớp dự đoán Positive True positive (TP) False positive (FP) Negative False negative (FN) True negative (TN) Với:
▪ TP = True positive: dương tính thật ▪ FP = False positive: dương tính giả ▪ TN = True negative: âm tính thật ▪ FN = False negative: âm tính giả
Trang 16o Specificity (độ đặc hiệu): tỉ lệ loại Negative đúng trên tổng số các trường hợp Negative:
𝑆𝑝𝑒𝑐𝑖𝑓𝑖𝑐𝑖𝑡𝑦 = 𝑇𝑁𝑅 = 𝑇𝑁 𝑇𝑁 + 𝐹𝑃
- Tính chính xác:
o Accuracy (ACC = tỉ lệ phân loại chính xác): tỉ lệ của tất cả trường hợp phân loại đúng (không phân biệt Positive hay Negative) trên toàn bộ trường hợp trong mẫu kiểm định:
𝑇𝑃 + 𝐹𝑃 + 𝑇𝑁 + 𝐹𝑁
o Balanced accuracy (BAC): Khi cả hia nhãn Positive/Negative bị mất cân đối, một tiêu chí phù hợp hơn là BAC: độ chính xác sau cân bằng:
𝐵𝐴𝐶 = 𝑇𝑃𝑅 + 𝑇𝑁𝑅 2
o Precision =Positive predictive value (PPV = độ chính xác): đo lường tính “xác định” hay khả năng phân loại Positive chính xác của mô hình:
Nếu xem 𝐹1 và 𝐹𝛽 là quan trọng như nhau thì 𝐹1 là tiêu chí thích hợp nhất khi kiểm định mô hình phân loại vì khi 𝐹1 đạt tối ưu thì cả Precision và Recall đều phải tối ưu, ngược lại, chỉ cần một trong hai có giá trị thấp thì 𝐹1 sẽ thấp
Trang 17b) Đồ thị ROC
Đường cong ROC (Receiver operating characteristic) là đồ thị thể hiện sự dao động của TPR (Sensitivity) tùy theo FPR (1-Specificity) khi dịch chuyển qua các ngưỡng cắt khác của xác suất p
Ở đây chúng ta chú ý hai điều:
- Trục hoành của đường là (1 – Specificcity) còn trục tung là Sensitivity và chỉ nằm trong khoảng từ 0 đến 1
- Một mô hình có khả năng phân loại tốt là mô hình mà có đường ROC này càng lồi về phía trên Chú ý rằng phần diện tích của hình nằm phía dưới đường ROC nhận giá trị từ 0 đến 1 và được gọi là AUC – viết tắt của Area Under the Curve
Theo mặc định, ngưỡng cắt của xác suất phân loại là 0.5 nhưng trong một số trường hợp, ngưỡng này có thể được điều chỉnh Ví dụ nếu ta muốn tạo ra một quy luật chẩn đoán nhạy hơn so với mặc định, ta có thể giảm ngưỡng cắt còn 0.4 hay 0.3 cho nhãn Positive, như vậy sẽ làm tăng đồng thời FPR và TPR, và giảm đồng thời FNR, TNR theo luật bù trừ, làm giảm tỉ lệ bỏ sót chẩn đoán Đường cong ROC cho phép khảo sát tất cả khả năng về ngưỡng cắt khác nhau và ảnh hưởng lên TPR và FPR Đường cong này cho phép đánh giá hiệu năng tổng quát của mô hình Mô hình tối ưu sẽ có TPR cao và FPR thấp (gần góc trên bên trái ROC) và AUC gần 1 nhất có thể