1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo ngôn ngữ lập trình python Đ ti áp dụng mô hình logistic regression Để chuẩn Đoán bệnh tim mạch

31 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Áp Dụng Mô Hình Logistic Regression Để Chuẩn Đoán Bệnh Tim Mạch
Tác giả Đỗ Ngọc Tiến, Trần Quang Minh Khang, Nguyễn Xuân Chính
Người hướng dẫn Đinh Thu Khánh
Trường học Trường Đại Học Điện Lực
Chuyên ngành Công Nghệ Thông Tin
Thể loại báo cáo
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 31
Dung lượng 2,26 MB

Nội dung

Chúng em sẽ tiến hành một cuộc điều tra sâu sắc vào các phương pháp,công cụ và dữ liệu được sử dụng để xây dựng mô hình dự đoán bệnh tim mạch.Đồng thời, chúng tôi cũng sẽ đánh giá sự hiệ

Trang 1

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO NGÔN NGỮ LẬP TRÌNH PYTHON

Đ TI: ÁP DỤNG MÔ HÌNH LOGISTIC REGRESSION

ĐỂ CHUẨN ĐOÁN BỆNH TIM MẠCH

Giảng viên hướng dẫn : ĐINH THU KHÁNH

Sinh viên thực hiện : ĐỖ NGỌC TIẾN

: TRẦN QUANG MINH KHANG : NGUYỄN XUÂN CHÍNH

Hà Nội, tháng 4 năm 2024

Trang 3

MỤC LỤC

MỤC LỤC 1

DANH MỤC HÌNH ẢNH 2

LỜI MỞ ĐẦU 3

CHƯƠNG 1: TỔNG QUAN V NGÔN NGỮ PYTHON 4

1.1 G IỚI THIỆU V YTHON P 4

1.2 Đ ẶC ĐIỂM NỔI BẬT CỦA YTHON P 4

1.3 C Ú PHÁP CƠ BẢN CỦA YTHON P 4

1.4 Ứ NG DỤNG CỦA YTHON P 6

1.5 Ư U ĐIỂM V HẠN CHẾ CỦA YTHON P 7

1.5.1 Ưu điểm: 7

1.5.2 Hạn chế: 7

CHƯƠNG 2: THUẬT TOÁN LOGISTIC REGRESSION 8

2.1 T HUẬT TOÁN L OGISTIC R EGRESSION (H ỒI QUY L OGISTIC L GÌ ) ? 8

2.2 T ÌM HIỂU V THUẬT TOÁN L OGISTIC REGRESSION 8

2.3 C ÁC CÁCH TIẾP CẬN PHÂN TÍCH HỒI QUY L OGISTIC DỰA TRÊN KẾT QUẢ CỦA BIẾN PHỤ THUỘC 8

2.3.1 Hồi quy Logistic nhị phân 8

2.3.2 Hồi quy Logistic đa thức 8

2.3.3 Hồi quy Logistic thứ tự 9

2.4 Ứ NG DỤNG CỦA HỒI QUY L OGISTIC 9

2.5 C ÁCH HOẠT ĐỘNG CỦA MÔ HÌNH HỒI QUY L OGISTIC 10

2.5.1 Phương trình được ứng dụng trong mô hình hồi quy Logistic 10

2.5.2 Biến được sử dụng trong mô hình hồi quy Logistic 10

2.5.3 Hàm hồi quy Logistic 11

2.5.4 Phân tích hồi quy Logistic với nhiều biến độc lập 12

2.5.5 Log của tỷ số “odds” 13

CHƯƠNG 3: ỨNG DỤNG THUẬT TOÁN LOGISTIC REGRESSION CHO BI TOÁN DỰ ĐOÁN BỆNH TIM MẠCH 15

3.1 C Ơ SỞ DỮ LIỆU HUẤN LUYỆN 15

3.2 T HỰC HIỆN THUẬT TOÁN L OGISTIC REGRESSION TRONG BI TOÁN CHUẨN ĐOÁN BỆNH TIM MẠCH 17

3.2.1 Cài đặt môi trường và các thư viện 17

3.2.2 Làm sạch và trực quan hoá dữ liệu 18

3.2.3 Huấn luyện mô hình sử dụng thuật toán “Logistic Regression” 22

3.2.4 Đánh giá mô hình huấn luyện qua các chỉ số 22

3.2.5 Dự đoán kết quả 25

KẾT LUẬN 26

TI LIỆU THAM KHẢO 27

Trang 4

DANH MỤC HÌNH ẢNH

Hình 2.1: Đồ thị của phương trình tuyến tính 10

Hình 2.2: Phương trình Logistic 11

Hình 2.3: Đồ thị của phương trình Logistic 11

Hình 2.4: Đồ thị của e −x 12

Hình 2.5: Phương trình tính tỷ số Odds 14

Hình 3.1: Cài đặt thư viện hỗ trợ 17

Hình 3.2: Độ dữ liệu từ bộ nhớ 17

Hình 3.3: Trực quan hoá dữ liệu 18

Hình 3.4: Kiểm tra dữ liệu 19

Hình 3.5: Hiển thị quan hệ với dữ liệu "target" 20

Hình 3.6: Đánh giá và lựa chọn mô hình phù hợp 21

Hình 3.7: Sử dụng thuật toán để huấn luyện mô hình 22

Hình 3.8: Đánh giá của chỉ số "ROC" và "AUC" 23

Hình 3.9: Đánh giá các chỉ số βx 23

Hình 3.10: Mức độ ảnh hưởng của các biến đối với kết quả dự đoán 24

Hình 3.11: Dự đoán kết quả 25

Trang 5

Trong bối cảnh này, Machine Learning đã trở thành một công cụ quantrọng để xây dựng các mô hình dự đoán, từ việc phân loại tình trạng sức khỏeđến việc dự đoán nguy cơ mắc các bệnh lý cụ thể Trong báo cáo này, chúng em

sẽ tập trung vào ứng dụng của Machine Learning trong việc dự đoán khả năngmắc bệnh tim mạch

Chúng em sẽ tiến hành một cuộc điều tra sâu sắc vào các phương pháp,công cụ và dữ liệu được sử dụng để xây dựng mô hình dự đoán bệnh tim mạch.Đồng thời, chúng tôi cũng sẽ đánh giá sự hiệu quả và tính ứng dụng của các môhình này trong thực tiễn y học

Bằng cách kết hợp kiến thức về y học và kỹ thuật Machine Learning,chúng em hy vọng rằng báo cáo này sẽ cung cấp cái nhìn sâu sắc và toàn diện vềcách máy học có thể được áp dụng để cải thiện khả năng dự đoán và chẩn đoánbệnh tim mạch, đồng thời đưa ra những cơ hội và thách thức trong lĩnh vực này

Trang 6

CHƯƠNG 1: TỔNG QUAN V Đ TI

1.1 Đặt vấn đề

Trong những năm gần đây, sự gia tăng về tỷ lệ mắc các bệnh lý tim mạch

đã trở thành một trong những thách thức lớn của y học hiện đại Theo Tổ chức

Y tế Thế giới (WHO), các bệnh về tim mạch là nguyên nhân hàng đầu gây tửvong trên toàn cầu, vượt qua cả các bệnh ung thư và tai nạn giao thông Việcphát hiện sớm và chính xác các dấu hiệu bệnh tim mạch giúp gia tăng hiệu quảđiều trị và giảm thiểu nguy cơ tử vong, góp phần cải thiện chất lượng cuộc sốngcho bệnh nhân

Trong bối cảnh đó, đề tài "Ứng dụng mô hình hồi quy logistic để chẩnđoán bệnh tim mạch" được thực hiện nhằm khám phá tiềm năng của việc ứngdụng các thuật toán học máy trong y học, đặc biệt là để dự đoán và chẩn đoáncác bệnh lý tim mạch dựa trên dữ liệu y tế Bằng cách sử dụng ngôn ngữ lậptrình Python, đề tài này hy vọng sẽ xây dựng một mô hình có độ chính xác cao,

có khả năng hỗ trợ các bác sĩ và chuyên gia y tế trong việc đưa ra quyết địnhlâm sàng và nâng cao hiệu quả điều trị

1.2 Mô tả đề tài

Đề tài này tập trung vào việc ứng dụng mô hình hồi quy logistic, mộttrong những mô hình phân loại phổ biến, để chẩn đoán bệnh tim mạch dựatrên các chỉ số sức khỏe của bệnh nhân Hồi quy logistic là một phương pháphọc máy có giám sát, phù hợp cho các bài toán dự đoán nhị phân Trong trườnghợp này, mô hình sẽ dự đoán khả năng mắc bệnh tim mạch của một người dựatrên các chỉ số như tuổi, huyết áp, cholesterol, chỉ số đường huyết, số lượnghồng cầu, v.v Những yếu tố này được lấy từ các bộ dữ liệu y tế uy tín và sẽđược tiền xử lý trước khi huấn luyện mô hình

Thông qua việc áp dụng các kỹ thuật tiền xử lý dữ liệu, phân tích và huấnluyện mô hình, đề tài sẽ giúp xây dựng một công cụ hỗ trợ chẩn đoán ban đầu,

có thể giúp cảnh báo nguy cơ bệnh sớm Dữ liệu đầu vào sẽ là các thông tin y tế

cá nhân của bệnh nhân, sau đó hệ thống sẽ dự đoán và đưa ra kết luận về khả

Trang 7

1.3 Phân tích yêu cầu

1.3.1 Yêu cầu chức năng

sức khỏe từ người dùng, thực hiện các bước xử lý cần thiết, và đưa ra kếtquả dự đoán có khả năng mắc bệnh tim hay không

thân thiện, cho phép người dùng nhập các thông tin cần thiết như tuổi,giới tính, huyết áp, mức cholesterol, và các chỉ số khác

hiển thị kết quả dự đoán dưới dạng thông báo dễ hiểu (ví dụ: "Nguy cơmắc bệnh tim cao", "Nguy cơ mắc bệnh tim thấp")

các yếu tố ảnh hưởng đến kết quả chẩn đoán, giúp người dùng hiểu rõ hơn

về rủi ro sức khỏe của họ và những thay đổi tích cực có thể thực hiện đểgiảm nguy cơ

từng người dùng (nếu được phép), để giúp theo dõi tiến triển sức khỏe quathời gian và cải thiện độ chính xác của mô hình

1.3.2 Yêu cầu phi chức năng

người dùng

dùng

dự đoán và có khả năng nâng cấp khi cần thiết.mở rộng để dễ dàng cậpnhật mô hình hoặc thêm các tính năng mới trong tương lai, chẳng hạn nhưtích hợp thêm thuật toán hoặc cập nhật dữ liệu đầu vào

Trang 8

 Độ tin cậy và chính xác cao: Để hỗ trợ chẩn đoán bệnh chính xác, môhình phải đạt được độ chính xác cao trong dự đoán và có thể cải tiếnthông qua các phương pháp học máy tiên tiến hơn nếu cần thiết.

CHƯƠNG 2: GIỚI THIỆU NGÔN NGỮ PYTHON

1.1 Giới thiệu về Python

Python là một ngôn ngữ lập trình bậc cao, được phát triển bởi Guido vanRossum và ra mắt lần đầu vào năm 1991 Nó được thiết kế với mục tiêu tạo ramột ngôn ngữ dễ đọc, dễ viết và dễ học Python đặc biệt phổ biến nhờ tính đơngiản và cú pháp rõ ràng, giúp lập trình viên tập trung vào giải quyết vấn đề hơn

là bị phân tâm bởi các chi tiết cú pháp phức tạp

Python hiện nay là một trong những ngôn ngữ lập trình được sử dụngrộng rãi nhất trên thế giới, từ phát triển web, phát triển phần mềm, đến khoa học

dữ liệu, trí tuệ nhân tạo (AI), học máy (Machine Learning) và nhiều lĩnh vựckhác

Hình 1.1: Logo Python

1.2 Đặc điểm nổi bật của Python

ngôn ngữ tự nhiên nên rất phù hợp cho những người mới học lập trình

Trang 9

 Mã nguồn mở: Python là một ngôn ngữ mã nguồn mở, điều này có nghĩa

là mọi người đều có thể sử dụng, chỉnh sửa và đóng góp vào sự phát triểncủa nó

macOS, Linux, v.v

rộng rất mạnh mẽ Các thư viện như NumPy, Pandas, Matplotlib, learn, TensorFlow, v.v là những công cụ hỗ trợ quan trọng trong các lĩnhvực khoa học dữ liệu và trí tuệ nhân tạo

tượng (OOP), lập trình hàm (functional programming), và lập trình thủ tục(procedural programming)

1.3 Cú pháp cơ bản của Python

Python có cú pháp gọn gàng, dễ đọc và không yêu cầu dấu chấm phẩy ởcuối mỗi dòng như một số ngôn ngữ khác Một vài khái niệm cơ bản trong cúpháp Python bao gồm:

sử dụng Ví dụ:

Hình 1.1: Biến và kiểu dữ liệu

Trang 10

 Vòng lặp và điều kiện: Python sử dụng cú pháp thụt lề (indentation)

để xác định các khối mã lệnh.

Hình 1.2: Vòng lặp và điều kiện

 Hàm: Hàm trong Python được khai báo bằng từ khóa def:

Hình 1.3: Hàm trong python

Trang 11

- Khoa học dữ liệu: Python là ngôn ngữ phổ biến nhất trong lĩnh vực khoa học

dữ liệu với các thư viện mạnh mẽ như Pandas để xử lý dữ liệu, NumPy để làmviệc với mảng đa chiều, Matplotlib và Seaborn để trực quan hóa dữ liệu Các thưviện này giúp phân tích dữ liệu một cách nhanh chóng và hiệu quả, hỗ trợ việckhám phá và hiểu rõ hơn về các mẫu và xu hướng trong dữ liệu

- Học máy (Machine Learning) và Trí tuệ nhân tạo (AI): Python có các công cụmạnh mẽ như Scikit-learn (thư viện cho các mô hình học máy), TensorFlow, vàKeras (dùng cho các mô hình mạng nơ-ron) giúp các nhà phát triển dễ dàng xâydựng các mô hình học máy và AI Python cũng được sử dụng rộng rãi trong cáclĩnh vực liên quan đến thị giác máy tính (computer vision) và xử lý ngôn ngữ tựnhiên (NLP)

- Phát triển phần mềm: Python có thể được sử dụng để phát triển các ứng dụngphần mềm từ nhỏ đến lớn nhờ vào tính linh hoạt và khả năng mở rộng Với cácthư viện như Tkinter (giao diện đồ họa), PyQt, hay Kivy, Python cho phép pháttriển ứng dụng máy tính để bàn (desktop) hoặc các ứng dụng đa nền tảng

- Tự động hóa: Python được sử dụng rộng rãi để viết các script tự động hóa côngviệc như quản lý hệ thống, xử lý file, và web scraping (trích xuất dữ liệu từ cáctrang web) Các công cụ như Selenium và BeautifulSoup giúp việc thu thập dữliệu từ web trở nên dễ dàng và hiệu quả hơn

Python đã khẳng định vị thế của mình trong các lĩnh vực này nhờ sự linh hoạt,

dễ sử dụng, và hệ sinh thái thư viện phong phú, giúp lập trình viên giải quyếtnhiều loại vấn đề khác nhau một cách hiệu quả

Trang 12

1.5 Ưu điểm và hạn chế của Python

1.5.1 Ưu điểm:

thế giới, luôn sẵn sàng hỗ trợ và chia sẻ kiến thức

nhau từ phát triển web đến học máy

1.5.2 Hạn chế:

hơn do là ngôn ngữ thông dịch

việc phát triển ứng dụng di động so với các ngôn ngữ chuyên biệt nhưSwift (iOS) hay Kotlin (Android)

ngôn ngữ khác

Trang 13

CHƯƠNG 3: THUẬT TOÁN LOGISTIC REGRESSION 2.1 Thuật toán Logistic Regression(Hồi quy Logistic ) là gì?

Hồi quy Logistic là một kỹ thuật phân tích dữ liệu sử dụng toán học đểtìm ra mối quan hệ giữa hai yếu tố dữ liệu Sau đó, kỹ thuật này sử dụng mốiquan hệ đã tìm được để dự đoán giá trị của những yếu tố đó dựa trên yếu tố cònlại Dự đoán thường cho ra một số kết quả hữu hạn, như có hoặc không

2.2 Tìm hiểu về thuật toán Logistic regression

Hồi quy Logistic là một kỹ thuật quan trọng trong lĩnh vực trí tuệ nhân tạo

và máy học (AI/ML) Mô hình machine learning là các chương trình phần mềm

có thể được đào tạo để thực hiện các tác vụ xử lý dữ liệu phức tạp mà không cần

sự can thiệp của con người Mô hình machine learning được xây dựng bằng hồiquy Logistic có thể giúp các tổ chức thu được thông tin chuyên sâu hữu ích từ

dữ liệu kinh doanh của mình Họ có thể sử dụng những thông tin chuyên sâu này

để phân tích dự đoán nhằm giảm chi phí hoạt động, tăng độ hiệu quả và đổichỉnh quy mô nhanh hơn

2.3 Các cách tiếp cận phân tích hồi quy Logistic dựa trên kết quả của biến phụ thuộc

2.3.1 Hồi quy Logistic nhị phân

Hồi quy Logistic nhị phân phù hợp với các vấn đề phân lớp nhị phân chỉ

có hai kết quả có thể xảy ra Biến phụ thuộc chỉ có thể có hai giá trị, chẳng hạnnhư có và không hoặc 0 và 1

Dù hàm Logistic tính toán một phạm vi giá trị giữa 0 và 1, mô hình hồiquy nhị phân vẫn sẽ làm tròn kết quả đến các giá trị gần nhất Nói chung, kếtquả dưới 0,5 sẽ được làm tròn thành 0 và kết quả trên 0,5 sẽ được làm tròn thành

1, do đó hàm Logistic trả về một kết quả nhị phân

2.3.2 Hồi quy Logistic đa thức

Hồi quy đa thức có thể phân tích các vấn đề có một số kết quả có thể xảy

ra, miễn là số kết quả hữu hạn Ví dụ: kỹ thuật này có thể dự đoán xem giá nhà

sẽ tăng 25%, 50%, 75% hay 100% dựa trên dữ liệu dân số, nhưng sẽ không thể

dự đoán được giá trị chính xác của một ngôi nhà

Trang 14

Hồi quy Logistic đa thức hoạt động bằng cách ánh xạ các giá trị kết quảcho các giá trị khác nhau giữa 0 và 1 Hàm Logistic có thể trả về một khoảng dữliệu liên tục như 0,1, 0,11, 0,12, v.v., do đó hồi quy đa thức cùng nhóm đầu rađến các giá trị gần nhất có thể có.

2.3.3 Hồi quy Logistic thứ tự

Hồi quy Logistic thứ tự, hay mô hình logit có thứ tự, là một loại hồi quy

đa thức đặc biệt cho các vấn đề trong đó các số đại diện cho các bậc chứ khôngphải là giá trị thực tế Ví dụ: bạn sẽ sử dụng hồi quy thứ tự để dự đoán đáp áncho câu hỏi khảo sát yêu cầu khách hàng đánh giá dịch vụ của bạn ở mức kém,

ổn, tốt hoặc xuất sắc dựa trên một giá trị số, chẳng hạn như số lượng mặt hàng

họ mua từ bạn trong năm

2.4 Ứng dụng của hồi quy Logistic

Hồi quy Logistic có một số ứng dụng thực tế trong nhiều ngành côngnghiệp khác nhau

+ Sản xuất: Các công ty sản xuất áp dụng phân tích hồi quy Logistic để ước tínhxác suất xảy ra sự cố ở bộ phận trong máy móc Sau đó, họ sẽ lên lịch bảo trìdựa trên xác suất đã ước tính này để giảm thiểu sự cố trong tương lai

+ Chăm sóc sức khỏe: Các nhà nghiên cứu y khoa lên kế hoạch điều trị và chămsóc dự phòng bằng cách dự đoán khả năng mắc bệnh ở bệnh nhân Họ sử dụngcác mô hình hồi quy Logistic để so sánh tác động của tiền sử gia đình hoặc của

bộ gen lên bệnh tật

+ Tài chính: Các công ty tài chính phải phân tích các giao dịch tài chính để đềphòng gian lận, xem xét các đơn xin vay và đơn bảo hiểm để đề phòng rủi ro.Những vấn đề này phù hợp với mô hình hồi quy Logistic bởi chúng có kết quả

cụ thể, chẳng hạn như rủi ro cao hoặc rủi ro thấp và gian lận hoặc không gianlận

+ Bộ phận Tiếp thị: Các công cụ quảng cáo trực tuyến sử dụng mô hình hồi quyLogistic để dự đoán xem người dùng sẽ nhấp vào một quảng cáo hay không Kếtquả là, các nhà tiếp thị có thể phân tích phản ứng của người dùng đối với những

từ ngữ và hình ảnh khác nhau, tạo ra các quảng cáo hiệu suất cao có khả năng

Trang 15

2.5 Cách hoạt động của mô hình hồi quy Logistic

Để hiểu rõ về mô hình hồi quy Logistic , trước tiên chúng ta phải hiểu cácphương trình và biến

2.5.1 Phương trình được ứng dụng trong mô hình hồi quy Logistic

Trong toán học, phương trình cho ta mối quan hệ giữa hai biến: x và y.Bạn có thể sử dụng các phương trình hoặc hàm này để vẽ đồ thị theo trục x vàtrục y bằng cách nhập các giá trị khác nhau của x và y:

Ví dụ: Nếu bạn vẽ đồ thị cho hàm “y = 2 * x” là một hàm tuyến tính, chúng ta

sẽ có một đường thẳng như hình dưới đây:

Hình 2.1: Đồ thị của phương trình tuyến tính

2.5.2 Biến được sử dụng trong mô hình hồi quy Logistic

Trong thống kê, biến là các yếu tố dữ liệu hoặc thuộc tính có giá trị khácnhau Bất kỳ phân tích nào cũng có một số biến nhất định là biến độc lập hoặcbiến giải thích Những thuộc tính này là nguyên nhân của một kết quả Các biếnkhác là biến phụ thuộc hoặc biến đáp ứng; giá trị của chúng phụ thuộc vào cácbiến độc lập Nhìn chung, hồi quy Logistic khám phá cách các biến độc lập ảnhhưởng đến một biến phụ thuộc bằng cách xem xét các giá trị dữ liệu lịch sử của

cả hai biến

Trang 16

Trong ví dụ ở trên của chúng tôi, “x” được gọi là biến độc lập, biến dựđoán hoặc biến giải thích vì nó có một giá trị đã xác định “Y” được gọi là biếnphụ thuộc, biến kết quả hoặc biến đáp ứng vì giá trị của nó không xác định.

2.5.3 Hàm hồi quy Logistic

Hồi quy Logistic là một mô hình thống kê sử dụng hàm Logistic , hayhàm logit trong toán học làm phương trình giữa “x”và “y” Hàm logit ánh xạ “y”làm hàm sigmoid của “x”

Hình 2.2: Phương trình Logistic

Trong đó:

F(x) : đầu ra từ 0 đến 1 (ước tính xác suất)

X: Nhập vào hàm

E: số e trong logarit tự nhiên

Nếu vẽ phương trình hồi quy Logistic này, bạn sẽ có một đường conghình chữ S như hình dưới đây

Ngày đăng: 26/12/2024, 17:08

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN