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

Sử dụng thuật toán phân lớp nhị phân dự Đoán khả năng mắc bênh ung thư phổi, bệnh tim v bệnh ung thư gan

48 2 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 đề Sử Dụng Thuật Toán Phân Lớp Nhị Phân Dự Đoán Khả Năng Mắc Bệnh Ung Thư Phổi, Bệnh Tim Và Bệnh Ung Thư Gan
Tác giả Đỗ Xuân Nam
Người hướng dẫn Đào Nam Anh
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 Chuyên Đề
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 48
Dung lượng 7,92 MB

Cấu trúc

  • CHƯƠNG 1. TỔNG QUAN VỀ HỌC MÁY 2 (7)
    • 1.1. Khái niệm về học máy 2 (8)
    • 1.2. Phân nhóm các thuật toán học máy 2 (8)
      • 1.2.1. Học có giám sát (Supervised Learning) 2 (8)
      • 1.2.2. Học phi giám sát (Unsupervised Learning)-UL 3 (9)
      • 1.2.3. Học tăng cường (Reinforcement Learning) 5 (11)
      • 1.2.4. Học bán giám sát (semi-Supervised Learning) 6 (12)
    • 1.3. Ứng dụng của học máy 6 (12)
  • CHƯƠNG 2: PHÂN LỚP DỮ LIỆU VỚI MÔ HÌNH SVM 9 (15)
    • 2.1. Khái niệm phân lớp dữ liệu 9 (15)
    • 2.2 Mô hình SVM 11 (18)
  • CHƯƠNG 3: ỨNG DỤNG PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN DỰ ĐOÁN KHẢ NĂNG MẮC BỆNH UNG THƯ PHỔI, BỆNH TIM V BỆNH UNG THƯ GAN 14 (20)
    • 3.1. Giới thiệu bài toán 14 (20)
      • 3.1.1. Bài toán dự đoán khả năng mắc bệnh ung thư phổi 14 (20)
      • 3.1.2 Bài toán dự đoán khả năng mắc bệnh tim 14 (21)
      • 3.1.3 Bài toán dự đoán khả năng mắc bệnh ung thư gan 15 (22)
    • 3.2 Môi trường thử nghiệm 17 (24)
      • 3.2.1. Giới thiệu python 17 (24)
      • 3.2.2. Đặc điểm của Python: 17 (25)
      • 3.2.3. Cài đặt Python 18 (25)
    • 3.3 Xây dựng bộ dữ liệu 18 (26)
      • 3.3.1 Bộ dữ liệu dự đoán khả năng mắc bệnh ung thư phổi 18 (26)
      • 3.3.2 Bộ dữ liệu dự đoán khả năng mắc bệnh tim 26 (34)

Nội dung

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN NHẬP MÔN HỌC MÁY ĐỀ TI: SỬ DỤNG THUẬT TOÁN PHÂN LỚP NHỊ PHÂN DỰ ĐOÁN KHẢ NĂNG MẮC BÊNH UNG THƯ PHỔI, BỆNH

TỔNG QUAN VỀ HỌC MÁY 2

Khái niệm về học máy 2

Học máy là một lĩnh vực con của trí tuệ nhân tạo, sử dụng các thuật toán để cho phép máy tính học từ dữ liệu và thực hiện công việc mà không cần lập trình rõ ràng Điều này mang lại khả năng tự động học hỏi và cải thiện hiệu suất, độ chính xác dựa trên kinh nghiệm từ dữ liệu đầu vào Học máy tập trung vào phát triển phần mềm và chương trình máy tính có khả năng truy cập và tận dụng dữ liệu để tự học.

Học máy cần sự đánh giá của con người để hiểu dữ liệu cơ sở và lựa chọn kỹ thuật phân tích phù hợp Trước khi sử dụng, dữ liệu phải sạch, không có sai lệch và không chứa dữ liệu giả Các mô hình học máy yêu cầu một lượng dữ liệu lớn để huấn luyện và đánh giá Trước đây, thuật toán học máy không có đủ dữ liệu để mô hình hóa các mối quan hệ, nhưng sự phát triển của dữ liệu lớn đã cung cấp nguồn dữ liệu phong phú, giúp cải thiện độ chính xác và khả năng dự đoán của các mô hình.

Phân nhóm các thuật toán học máy 2

1.2.1 Học có giám sát (Supervised Learning)

Học có giám sát là phương pháp sử dụng dữ liệu đã được gán nhãn để suy luận mối quan hệ giữa đầu vào và đầu ra Dữ liệu này, gọi là dữ liệu huấn luyện, bao gồm các cặp đầu vào-đầu ra, giúp mô hình dự đoán kết quả cho đầu vào mới chưa từng thấy Ví dụ điển hình của học có giám sát bao gồm dự đoán giá nhà và phân loại email Các mô hình phổ biến trong phương pháp này bao gồm mạng nơ-ron, SVM và CNN.

Hình 1 Mô hình học có giám sát

Supervised Learning là một thuật toán dự đoán đầu ra của dữ liệu mới dựa trên các cặp dữ liệu đã biết trước, bao gồm input và outcome, thường được gọi là data và label Đây là nhóm thuật toán phổ biến nhất trong lĩnh vực Machine Learning.

1.2.2 Học phi giám sát (Unsupervised Learning)-UL

Học phi giám sát khác với học có giám sát ở chỗ nó sử dụng dữ liệu chưa được gán nhãn để suy luận và tìm cấu trúc trong tập dữ liệu Phương pháp này thường được áp dụng để phân tích và khám phá dữ liệu mà không có tiêu chí đánh giá rõ ràng cho cấu trúc tìm ra Một trong những ứng dụng phổ biến nhất của học không giám sát là phân cụm dữ liệu, chẳng hạn như phương pháp K-mean, giúp nhóm các đối tượng tương tự nhau lại với nhau.

Hình 2 Mô hình học không giám sát

Trong thuật toán Học không giám sát, chúng ta chỉ có dữ liệu đầu vào mà không biết dữ liệu đầu ra hay nhãn Thuật toán này sử dụng cấu trúc của dữ liệu để thực hiện các nhiệm vụ như phân nhóm hoặc giảm số chiều của dữ liệu, giúp tối ưu hóa việc lưu trữ và tính toán.

Một cách toán học, Học không giám sát là khi chúng ta chỉ có dữ liệu vào

X mà không biết nhãn Y tương ứng.

Sự khác nhau giữa học có giám sát và học không giám sát:

Hình 3 Sự khác biệt giữa 2 mô hình SL và UL

Học có giám sát là phương pháp huấn luyện mô hình với dữ liệu đầu vào và đầu ra tương ứng, nhằm giảm thiểu sai số dự đoán trong các vòng lặp huấn luyện Sau khi hoàn tất quá trình này, mô hình có khả năng dự đoán đầu ra cho các đầu vào mới chưa từng xuất hiện trong dữ liệu huấn luyện Nếu đầu ra được biểu diễn dưới dạng rời rạc, đây được gọi là bài toán phân loại; ngược lại, nếu đầu ra là liên tục, thì đó là bài toán hồi quy.

Học không giám sát là phương pháp huấn luyện mô hình chỉ sử dụng dữ liệu đầu vào mà không có đầu ra, giúp mô hình tìm ra cấu trúc và mối quan hệ giữa các đầu vào Một trong những kỹ thuật quan trọng nhất trong học không giám sát là phân cụm, cho phép tạo ra các cụm khác nhau, mỗi cụm đại diện cho một đặc trưng của dữ liệu Ngoài ra, các phương pháp học không giám sát khác bao gồm phát hiện điểm bất thường và phân tách giá trị đặc trưng (Singular-value decomposition).

1.2.3 Học tăng cường (Reinforcement Learning)

Phương pháp học tăng cường tập trung vào việc tối ưu hóa hành động của tác tử trong môi trường nhằm thu được phần thưởng tối đa Khác với học có giám sát, phương pháp này không sử dụng cặp dữ liệu gán nhãn trước làm đầu vào và cũng không đánh giá các hành động là đúng hay sai.

1.2.4 Học bán giám sát (semi-Supervised Learning)

Semi-Supervised Learning là phương pháp giải quyết các bài toán khi có một lượng lớn dữ liệu X, nhưng chỉ một phần trong số đó được gán nhãn Các bài toán này nằm giữa học có giám sát và không có giám sát Một ví dụ điển hình là khi chỉ một số ít hình ảnh hoặc văn bản, chẳng hạn như ảnh về người hoặc động vật, và các văn bản khoa học hay chính trị, được gán nhãn, trong khi phần lớn hình ảnh và văn bản còn lại thu thập từ internet vẫn chưa có nhãn.

Nhiều bài toán Machine Learning gặp khó khăn trong việc thu thập dữ liệu có nhãn do tốn thời gian và chi phí cao, đặc biệt là những loại dữ liệu cần chuyên gia để gán nhãn, như hình ảnh y học Trong khi đó, dữ liệu chưa có nhãn có thể được thu thập dễ dàng và với chi phí thấp từ internet.

Hình 5 Học bán giám sát

Ứng dụng của học máy 6

Nhiều hoạt động hàng ngày của chúng ta được trợ giúp bởi các thuật toán machine learning, bao gồm:

 Các kết quả tìm kiếm trên web.

 Quảng cáo theo thời gian thực trên các trang web và các thiết bị di động.

 Phân tích tình cảm dựa trên văn bản.

 Điểm số tín dụng và lời mời chào tiếp theo tốt nhất.

 Dự đoán những hư hỏng của thiết bị.

 Những mô hình định giá mới.

 Phát hiện xâm nhập mạng.

 Nhận dạng qua pattern (mẫu) và hình ảnh.

 Lọc bỏ các email spam

Những lĩnh vực đang áp dụng Machine learning hiện nay:

 Các dịch vụ tài chính

Ngân hàng và doanh nghiệp tài chính áp dụng công nghệ Machine Learning chủ yếu để xác định insights từ dữ liệu và ngăn chặn lừa đảo Thông qua việc phân tích dữ liệu, Machine Learning giúp phát hiện cơ hội đầu tư và thông báo cho nhà đầu tư về thời điểm giao dịch hợp lý Bên cạnh đó, công nghệ này cũng hỗ trợ trong việc phát hiện khách hàng có hồ sơ rủi ro cao và sử dụng giám sát mạng để nhận diện các tín hiệu lừa đảo.

Các tổ chức chính phủ chuyên về an ninh cộng đồng và tiện ích xã hội sở hữu nguồn dữ liệu phong phú có thể khai thác để tạo ra những insights giá trị Việc phân tích dữ liệu cảm biến giúp chính phủ nâng cao hiệu quả dịch vụ và tiết kiệm chi phí Hơn nữa, công nghệ machine learning hỗ trợ trong việc phát hiện gian lận và giảm thiểu nguy cơ trộm cắp danh tính.

Machine learning đang trở thành một xu hướng phát triển nhanh chóng trong ngành chăm sóc sức khỏe Sự xuất hiện của các thiết bị và máy cảm ứng đeo được cho phép thu thập dữ liệu để đánh giá tình trạng sức khỏe của bệnh nhân trong thời gian thực, mang lại nhiều lợi ích cho việc theo dõi và cải thiện sức khỏe.

Công nghệ Machine Learning hỗ trợ các chuyên gia y tế trong việc nhận diện xu hướng và tín hiệu, từ đó nâng cao hiệu quả chẩn đoán và điều trị bệnh.

Các trang web hiện nay sử dụng Machine Learning để phân tích hành vi mua hàng trước đây, từ đó đề xuất những sản phẩm mà bạn có thể quan tâm Việc tiếp nhận và phân tích dữ liệu nhằm cá nhân hóa trải nghiệm mua sắm và thực hiện các chiến dịch Marketing sẽ định hình tương lai của ngành bán lẻ.

Tìm kiếm những nguồn nguyên liệu mới Phân tích các mỏ dầu dưới đất.

Dự đoán tình trạng thất bại của bộ cảm biến lọc dầu là một ứng dụng quan trọng trong ngành công nghiệp, giúp tối ưu hóa các kênh phân phối nhằm đạt hiệu quả cao và tiết kiệm chi phí Sự phát triển mạnh mẽ của Machine Learning trong lĩnh vực này cho thấy tiềm năng ứng dụng ngày càng lớn và đa dạng.

Phân tích dữ liệu để xác định các patterns và xu hướng là yếu tố then chốt trong ngành vận tải, giúp tối ưu hóa hiệu suất trên từng tuyến đường và dự đoán vấn đề tiềm ẩn nhằm tăng cường lợi nhuận Machine learning đóng vai trò quan trọng trong việc phân tích dữ liệu và mô hình hóa, hỗ trợ các doanh nghiệp vận chuyển, vận tải công cộng và các tổ chức logistics khác.

PHÂN LỚP DỮ LIỆU VỚI MÔ HÌNH SVM 9

Khái niệm phân lớp dữ liệu 9

Phân lớp là một phương pháp học có giám sát, trong đó tập dữ liệu huấn luyện bao gồm các quan sát và nhãn chỉ định lớp Những dữ liệu mới sẽ được phân loại dựa trên thông tin từ tập huấn luyện này.

Kỹ thuật phân lớp được tiến hành gồm 2 bước : Xây dựng mô hình và sử dụng mô hình.

Xây dựng mô hình là quá trình mô tả một tập hợp các lớp đã được định nghĩa trước, trong đó mỗi bộ dữ liệu được gán thuộc về một lớp thông qua thuộc tính nhãn lớp Tập hợp các bộ dữ liệu này được gọi là tập huấn luyện và được sử dụng để phát triển mô hình Mô hình có thể được biểu diễn dưới dạng các luật phân lớp, cây quyết định hoặc các công thức toán học.

Việc sử dụng mô hình nhằm mục đích phân lớp dữ liệu trong tương lai hoặc cho những đối tượng chưa biết đến Trước khi áp dụng mô hình, cần đánh giá tính chính xác của nó bằng cách so sánh nhãn đã biết của mẫu kiểm tra với kết quả phân lớp do mô hình đưa ra Độ chính xác được tính là tỷ lệ phần trăm mẫu kiểm tra được phân loại đúng, trong đó tập kiểm tra phải độc lập với tập huấn luyện.

Các thuật toán phân lớp dữ liệu

Phân lớp với cây quyết định (decision tree)

 Phân lớp với Nạve Bayesian

Phân lớp với k phần tử gần nhất (k-nearest neighbor)

Phân lớp với máy vector hỗ trợ (SVM)

Phân lớp với mạng neural (neural network)

Phân lớp dựa trên tiến hoá gen (genetic algorithms)

Phân lớp với lý thuyết tập thô, tập mờ (rough sets)

Phân lớp với lý thuyết tập mờ (fuzzy sets)

Phân lớp nhị phân (Binary classification) là quá trình phân loại các đối tượng trong một tập hợp thành hai nhóm dựa trên một thuộc tính cụ thể Các nhiệm vụ phân loại nhị phân thường gặp bao gồm việc xác định xem một đối tượng có thuộc về nhóm này hay nhóm kia dựa trên tiêu chí đã định.

 Kiểm tra y khoa xem một bệnh nhân có bệnh nào đó hay không (thuộc tính để phân loại là căn bệnh đó)

Quản lý chất lượng trong nhà máy đóng vai trò quan trọng trong việc xác định liệu sản phẩm có đạt tiêu chuẩn đủ tốt để đưa ra thị trường hay không Quy trình này giúp phân loại sản phẩm, từ đó quyết định xem sản phẩm nên được bán hay cần phải loại bỏ Tính đủ tốt là thuộc tính chính để đánh giá chất lượng sản phẩm, đảm bảo rằng chỉ những sản phẩm đạt yêu cầu mới được cung cấp cho khách hàng.

Để xác định tính liên quan của một trang hay bài báo trong kết quả truy vấn, cần xem xét sự hiện diện của các từ khóa quan trọng Đánh giá bộ phân lớp nhị phân thường áp dụng trong việc kiểm tra hiệu quả của một xét nghiệm y khoa, thông qua các khái niệm như độ nhạy và độ đặc hiệu Ví dụ, khi xét nghiệm một nhóm người để phát hiện bệnh, việc này trở nên cần thiết để đảm bảo tính chính xác của kết quả.

 Một số người có bệnh, và kết quả xét nghiệm là dương tính (positive).

Họ được gọi là các dương tính đúng.

 Một số người có bệnh, nhưng kết quả xét nghiệm âm tính (negative).

Họ được gọi là các âm tính sai.

 Một số không có bệnh, và kết quả xét nghiệm cũng là âm tính Họ được gọi là các âm tính đúng.

 Một số không có bệnh, nhưng kết quả xét nghiệm lại là dương tính Họ được gọi là các dương tính sai.

Tổng số người dương tính đúng âm tính đúng dương tính sai âm tính sai, , , chiếm 100% tổng số người được xét nghiệm.

Độ nhạy (sensitivity) là tỷ lệ giữa số người bị bệnh được xác định đúng và tổng số người thực sự mắc bệnh, được tính bằng công thức (dương tính đúng)/(dương tính đúng + âm tính sai) Đây có thể được hiểu là xác suất xét nghiệm cho kết quả dương tính khi người được xét nghiệm thực sự mắc bệnh Độ nhạy càng cao, khả năng không phát hiện bệnh càng thấp, tương tự như trong quản lý chất lượng tại nhà máy, khi đó càng ít sản phẩm lỗi được đưa ra thị trường.

Đặc trưng là tỷ lệ số người không bị bệnh có kết quả xét nghiệm âm tính so với tổng số người không có bệnh, được tính bằng công thức (âm tính đúng)/(âm tính đúng + dương tính sai) Đây cũng là xác suất xét nghiệm cho kết quả âm tính ở những người khỏe mạnh Độ đặc trưng cao giúp giảm thiểu số người khỏe mạnh bị nhầm lẫn là mắc bệnh và trong sản xuất, nó giảm thiểu chi phí do loại bỏ các sản phẩm chất lượng tốt.

Về mặt lý thuyết, độ nhạy và đặc trưng là độc lập, có thể đạt đến 100% đồng thời Tuy nhiên, trong thực tế, việc cải thiện một yếu tố thường đòi hỏi phải đánh đổi yếu tố còn lại, khiến cho việc đạt được cả hai trở nên không thể.

Một điểm quan trọng cần lưu ý là độ nhạy và độ đặc trưng của một xét nghiệm là độc lập với tỷ lệ giữa số cá thể âm tính và dương tính Tuy nhiên, giá trị của chúng lại phụ thuộc vào tổng số cá thể được kiểm tra Ví dụ, một xét nghiệm có thể cho kết quả độ nhạy 99% và độ đặc trưng 99%.

 Giả sử số người kiểm tra là 2000 người, trong đó 1000 có bệnh và

Trong một nghiên cứu với 1000 mẫu, hệ thống đã xác định chính xác 990 người dương tính và 990 người âm tính, đồng thời chỉ có 10 trường hợp âm tính sai và 10 trường hợp dương tính sai Kết quả cho thấy tỉ lệ dự đoán chính xác đạt 99% cho cả hai loại kết quả, chứng tỏ rằng hệ thống này có độ tin cậy cao.

Trong một cuộc kiểm tra với 2000 người, chỉ có 100 người thực sự mắc bệnh Kết quả cho thấy có 99 trường hợp dương tính đúng và 1 trường hợp âm tính sai, trong khi có 1881 trường hợp âm tính đúng và 19 trường hợp dương tính sai Trong tổng số 118 người có kết quả dương tính (19+99), chỉ có 99 người thực sự bị bệnh.

Mô hình SVM 11

SVM (Support Vector Machine) là 1 thuật toán học máy thuộc nhóm

Học có giám sát (Supervised Learning) là phương pháp được áp dụng trong các bài toán phân lớp dữ liệu và hồi quy Trong đó, SVM (Support Vector Machine) là một thuật toán mạnh mẽ cho phân loại nhị phân, giúp nhận diện và phân loại dữ liệu vào hai lớp khác nhau Bằng cách sử dụng một bộ ví dụ luyện tập đã được phân loại trước, thuật toán SVM sẽ xây dựng một mô hình để phân loại các ví dụ mới vào hai thể loại tương ứng.

 Phương trình tuyến tính của SVM có dạng:

Trong không gian hai chiều, vector w thuộc Rn được xem là hệ số ứng với các chiều của vector b, và trong trường hợp này, nó được gọi là đường thẳng Ngược lại, trong không gian ba chiều, vector này tương ứng với mặt phẳng.

 Công thức của sai số dự đoán:

Trong đó, e đại diện cho sai số dự đoán, y là giá trị thực và ŷ (hay y_pred) là giá trị dự đoán Sử dụng hàm bình phương giúp tránh việc phương trình cho ra kết quả âm; do đó, sai số e cần được giữ ở mức càng nhỏ càng tốt.

Độ chính xác (accuracy) là một phương pháp đánh giá phổ biến và đơn giản, được tính bằng cách lấy tỷ lệ giữa số điểm dự đoán đúng và tổng số điểm trong tập dữ liệu kiểm thử.

Trong đó TP, TN là dự đoán đúng

FP, FN là dự đoán sai

Precision – bao nhiêu cái đúng được lấy ra

Recall – bao nhiêu cái được lấy ra là đúng

ỨNG DỤNG PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN DỰ ĐOÁN KHẢ NĂNG MẮC BỆNH UNG THƯ PHỔI, BỆNH TIM V BỆNH UNG THƯ GAN 14

Giới thiệu bài toán 14

3.1.1 Bài toán dự đoán khả năng mắc bệnh ung thư phổi

Ung thư phổi, hay còn gọi là ung thư phế quản, là một loại khối u ác tính hình thành từ các tế bào biểu mô của phế quản, tiểu phế quản, phế nang hoặc từ các tuyến của phế nang Hiện nay, ung thư phổi là căn bệnh ung thư phổ biến nhất trên toàn thế giới, với tỷ lệ mắc mới và tỷ lệ tử vong cao nhất.

Chẩn đoán ung thư phổi bắt đầu khi phát hiện khối u bất thường qua tự kiểm tra hoặc chụp X-quang, hoặc khi có dấu hiệu canxi hóa trên phim Sau khi xác định có khối u nghi ngờ, bác sĩ sẽ tiến hành các bước chẩn đoán để xác định liệu khối u đó có phải là ung thư hay không.

- Giá trị input: Thông tin, đặc tính của một người có có khả năng mắc bệnh hoặc không.

- Giá trị ouput: Kết quả người được chuẩn đoán có bị mắc bệnh ung thư phổi hay không.

- Lấy dữ liệu về thông tin, chỉ số của người bệnh.

- Trích chọn đặc trưng từ tập dữ liệu lấy được.

- Huấn luyện tập dữ liệu.

- Chuẩn đoán khả năng mắc bệnh của người bệnh.

3.1.2 Bài toán dự đoán khả năng mắc bệnh tim

Phổi là bộ phận quan trọng của hệ hô hấp, giúp chúng ta hít thở Ung thư phổi xảy ra khi có sự tăng trưởng không kiểm soát của các tế bào bất thường ở một hoặc cả hai phổi, chủ yếu là từ lớp niêm mạc đường thở Những tế bào này không hình thành mô phổi khỏe mạnh mà phân chia nhanh chóng, tạo thành các khối u gây cản trở chức năng của phổi.

Tại Singapore, ung thư phổi đứng thứ hai trong số các loại ung thư phổ biến ở nam giới và thứ ba ở nữ giới Nam giới có nguy cơ phát triển ung thư phổi cao gấp ba lần so với nữ giới.

Để phát hiện ung thư phổi, có thể cần thực hiện các thủ thuật chẩn đoán như X-quang phổi và chụp cắt lớp vi tính (CT) Ngoài ra, các xét nghiệm khác cũng được thực hiện để thu thập mẫu xét nghiệm.

Tế bào học đờm là quá trình thu thập mẫu đờm, tức là dịch đặc ho ra từ phổi, để gửi đến phòng xét nghiệm Mục đích của việc này là kiểm tra sự hiện diện của tế bào ung thư, giúp chẩn đoán và theo dõi tình trạng sức khỏe của bệnh nhân.

Chọc dịch màng phổi: Dịch màng phổi (dịch từ vùng phổi) được lấy bằng cách sử dụng một kim dài và gửi đến phòng xét nghiệm để kiểm tra.

Nội soi phế quản là một thủ thuật y tế, trong đó ống nội soi được đưa qua mũi hoặc miệng vào phổi để lấy mẫu tế bào Mẫu tế bào này sẽ được gửi đến phòng xét nghiệm để kiểm tra sự hiện diện của tế bào ung thư.

Chọc hút bằng kim nhỏ là một kỹ thuật y tế giúp thu thập mẫu mô hoặc dịch từ phổi hoặc hạch bạch huyết Quá trình này được thực hiện bằng cách sử dụng một kim mảnh để lấy mẫu, sau đó các mẫu này sẽ được gửi đến phòng xét nghiệm để phân tích và kiểm tra.

Sinh thiết mở là thủ thuật được thực hiện khi có nghi ngờ về sự hiện diện của mô ung thư ở những vùng khó tiếp cận trong cơ thể Thủ thuật này bao gồm việc rạch một vết nhỏ ở thành ngực để tiến hành sinh thiết trực tiếp vào khối u phổi hoặc hạch bạch huyết.

Sau khi phát hiện ra một khối u đáng ngờ, bác sĩ sẽ tiến hành chẩn đoán để xác định xem nó có phải là ung thư hay không

- Giá trị input: Thông tin, đặc tính của một người có có khả năng mắc bệnh hoặc không.

- Giá trị ouput: Kết quả người được chuẩn đoán có bị mắc bệnh ung thư phổi hay không.

- Lấy dữ liệu về thông tin, chỉ số của người bệnh.

- Trích chọn đặc trưng từ tập dữ liệu lấy được.

- Huấn luyện tập dữ liệu.

- Chuẩn đoán khả năng mắc bệnh của người bệnh.

3.1.3 Bài toán dự đoán khả năng mắc bệnh ung thư gan

Gan là một phần quan trọng của hệ thống miễn dịch, chứa nhiều tế bào Kupffer giúp tiêu diệt tác nhân gây bệnh xâm nhập qua ruột Ung thư gan xảy ra khi các tế bào ung thư phát triển trong mô gan, với ung thư gan nguyên phát xuất phát từ chính gan Tại Singapore, ung thư phổi là loại ung thư phổ biến thứ hai ở nam giới và thứ ba ở nữ giới, với nguy cơ mắc bệnh ở nam giới cao gấp ba lần so với nữ giới.

Có thể phát hiện ung thư gan qua các triệu chứng như:

Vàng da (jaundice) là triệu chứng phổ biến, thường dễ nhận thấy khi tiếp xúc với ánh nắng Triệu chứng này xảy ra do tắc nghẽn đường mật, thường là kết quả của khối u, dẫn đến việc muối mật (bilirubin) trào ngược vào máu và lắng đọng ở da Ngoài ra, vàng da thường đi kèm với phân bạc màu và nước tiểu sẫm màu, giống như nước vối.

 Vàng mắt: biểu hiện ở củng mạc mắt có màu vàng sậm Dấu hiệu này có thể xuất hiện trước hoặc đồng thời với vàng da.

Ngứa (pruritus) là triệu chứng thường đi kèm với vàng da, nhưng cũng có thể xuất hiện trước khi vàng da xảy ra Mức độ ngứa thường tăng cao vào ban đêm và thường không đáp ứng với các loại thuốc điều trị da liễu thông thường Nguyên nhân của tình trạng ngứa này là do sự lắng đọng của acid mật ở da, kích thích các thụ thể thần kinh cảm giác, gây ra cảm giác khó chịu cho người bệnh.

Gầy sút cân là một triệu chứng phổ biến, xảy ra trong khoảng 30-50% các trường hợp khi chẩn đoán Tình trạng này thường là hệ quả của rối loạn tiêu hóa, bao gồm các vấn đề như chán ăn, ăn không tiêu và chướng bụng, do sự thiếu hụt dịch mật được bài xuất xuống ruột.

 Đau bụng vùng gan: giai đoạn sớm thì thường đau mơ hồ, không rõ ràng. Khi đau bụng nhiều thì thường do các biến chứng của tắc mật.

 Gan to, có thể sờ thấy bờ gan ở dưới bờ sườn với mật độ mềm trong 25% các trường hợp.

 Khối khu trú: ít khi sờ thấy khối khu trú vùng gan.

Các biện pháp chẩn đoán bệnh Ung thư gan

Chẩn đoán ung thư tế bào gan nguyên phát cần đáp ứng ít nhất một trong ba tiêu chuẩn quy định Điều này được nêu rõ trong Hướng dẫn chẩn đoán và điều trị ung thư tế bào gan nguyên phát của Bộ Y tế.

 Có bằng chứng giải phẫu bệnh lý là ung thư tế bào gan nguyên phát.

 Hình ảnh điển hình trên CT ổ bụng có cản quang hoặc MRI có cản từ + AFP > 400 ng/ml

Hình ảnh điển hình trên CT hoặc MRI ổ bụng có cản quang, kết hợp với mức AFP tăng cao nhưng chưa đạt 400 ng/ml, cùng với sự hiện diện của virus viêm gan B hoặc C, có thể chỉ ra nguy cơ bệnh lý Trong trường hợp cần thiết, bác sĩ lâm sàng có thể chỉ định thực hiện sinh thiết gan để đánh giá thêm tình trạng bệnh.

 Các trường hợp không đủ các tiêu chuẩn trên đều phải làm sinh thiết gan để chẩn đoán xác định

Môi trường thử nghiệm 17

Python là ngôn ngữ lập trình phổ biến hiện nay, được sử dụng để phát triển đa dạng ứng dụng phần mềm như chương trình desktop, server và ứng dụng web Ngoài ra, Python còn được ưa chuộng trong lĩnh vực khoa học dữ liệu và là ngôn ngữ chính để xây dựng các chương trình trí tuệ nhân tạo, bao gồm machine learning.

Python là một ngôn ngữ lập trình thân thiện với người mới học nhờ vào cú pháp đơn giản và rõ ràng Với số lượng từ khóa hạn chế, Python dễ dàng tiếp cận và giúp người học nhanh chóng nắm bắt các khái niệm lập trình cơ bản.

Python là một ngôn ngữ lập trình dễ hiểu, với mã lệnh rõ ràng và dễ đọc Ngay cả khi bạn chưa có kinh nghiệm với Python, bạn vẫn có thể đoán được ý nghĩa của từng dòng lệnh trong mã nguồn.

Python là ngôn ngữ lập trình có tính tương thích cao, cho phép các chương trình phần mềm được viết bằng Python chạy mượt mà trên nhiều hệ điều hành khác nhau như Windows, Mac OSX và Linux.

Cài đặt bộ thư viện : Numpy , Pip install pandas , Pip install sklearn

 Cài đặt ngôn ngữ lập trình Python: Python 3.7.9

(https://www.python.org/downloads/windows/)

 Môi trường lập trình Python: Python

Xây dựng bộ dữ liệu 18

3.3.1 Bộ dữ liệu dự đoán khả năng mắc bệnh ung thư phổi

Dữ liệu nghiên cứu bao gồm 60 bệnh nhân với các chỉ số khối u bất thường, giúp xác định khả năng mắc bệnh ung thư của từng bệnh nhân.

- Đặt Y là khả năng mắc bệnh ung thư phổi, với X = 0 là không mắc bệnh X=1 là mắc bệnh.

- Bộ dữ liệu gồm 5 thuộc tính bao gồm:

+ Name, Surname -> Represents the patient name (Đại diện cho tên bệnh nhân).

+ Age -> Age of the patient (Tuổi của bệnh nhân).

+ Smokes -> Smoking level of the patient (Mức độ hút thuốc của bệnh nhân).

+AreaQ -> Air Quality of the area where patient resides (Chất lượng không khí của khu vực bệnh nhân cư trú).

+ Alkhol -> Alcohol intake level of the patient (Mức độ uống rượu của bệnh nhân).

+Result -> Patient detected with Lung Cancer (Bệnh nhân được chuẩn đoán bị Ung thư Phổi.).

Bộ dữ liệu được chia thành hai phần: 80% được sử dụng để huấn luyện mô hình (tập train) và 20% còn lại được dùng để kiểm tra độ chính xác của mô hình (tập test).

Hình 7 Dữ liệu dự đoán khả năng mắc bệnh ung thư phổi

 Khai báo thư viện Đọc file dữ liệu, phân tích dữ liệu, chuẩn hoá, chia tỉ lệ tập train-test

 Chạy mô hình học máy

 Đánh giá mô hình dựa trên kết quả dự đoán (với độ đo đơn giản Accuracy, Precision, Recall)

 Sau khi thử nghiệm với bộ cơ sở dữ liệu thì kết quả phân lớp đạt 92% Đối với Precision, Recall:

X= df[['Smokes' 'Age', ]] y= df['Result'] x0 = X[y== ]0 x1 = X[y== ]1 plt.plot(x0,'b^', markersize = 4, alpha = 8) plt.plot(x1,'go', markersize = 4, alpha = 8) plt.xlabel('Smokes') plt.ylabel('Age') plt.plot() plt.show()

Hình 8 Hình minh họa dự đoán khả năng mắc bệnh ung thư phổi

3.3.2 Bộ dữ liệu dự đoán khả năng mắc bệnh tim

Dữ liệu từ 1025 bệnh nhân với các chỉ số mắc bệnh khác nhau sẽ được sử dụng để chẩn đoán nguy cơ mắc bệnh Bệnh viện sẽ phân loại bệnh nhân thành hai nhóm: nhóm có nguy cơ mắc bệnh cao và nhóm có nguy cơ mắc bệnh thấp, từ đó tổng hợp và phân tích toàn bộ dữ liệu.

- Đặt Y là khả năng mắc bệnh của bệnh nhân, với Y=0 là không mắc bệnh, ngược lại Y=1 là mắc bệnh.

- Bộ dữ liệu gồm 10 thuộc tính:

• sbp: huyết áp tâm thu

• tobacco: thuốc lá tích lũy (kg)

• ldl: cholesterol lipoprotein mật độ thấp

• famhist: tiền sử gia đình mắc bệnh tim (Hiện tại = 1, Vắng mặt = 0)

• alcohol: mức tiêu thụ rượu hiện tại

• chd: bệnh tim mạch vành (có = 1 hoặc không = 0)

Bộ dữ liệu được chia thành hai phần: 80% được sử dụng làm bộ dữ liệu huấn luyện cho mô hình (tập train), trong khi 20% còn lại được dùng để kiểm tra độ chính xác của mô hình (tập test).

Hình 9 Dữ liệu dự đoán khả năng mắc bệnh tim

 Đọc file dữ liệu, phân tích dữ liệu, chuẩn hoá, chia tỉ lệ tập train-test

 Chạy mô hình học máy

 Đánh giá mô hình dựa trên kết quả dự đoán (với độ đo đơn giản Accuracy, Precision, Recall)

 Sau khi thử nghiệm với bộ cơ sở dữ liệu thì kết quả phân lớp đạt71% Đối với Precision, Recall:

#ma tran ket qua du doan from sklearn.metrics import confusion_matrix confusion_matrix1 = confusion_matrix(y_test,y_pred) print(confusion_matrix1)

X= df[['age' 'tobacco', ]] y= df['chd'] x0 = X[y== ]0 x1 = X[y== ]1 plt.plot(x0,'b^', markersize = 4, alpha = 8) plt.plot(x1,'go', markersize = 4, alpha = 8) plt.xlabel('age') plt.ylabel('tobacco') plt.plot() plt.show()

Hình 10 Hình minh họa dự đoán khả năng mắc bệnh tim

3.3.3 Bộ dữ liệu dự đoán khả năng mắc bệnh gan

Dữ liệu nghiên cứu bao gồm 398 bệnh nhân với các chỉ số khối u bất thường khác nhau, nhằm xác định khả năng mắc bệnh ung thư Thông qua việc phân tích các chỉ số này, nghiên cứu cung cấp cơ sở để chẩn đoán chính xác tình trạng bệnh lý của bệnh nhân.

- Đặt Y là khả năng mắc bệnh ung thư gan, với X = 1 là không mắc bệnh X=2 là mắc bệnh.

- Bộ dữ liệu gồm 5 thuộc tính bao gồm:

+ Age -> Age of the patient (Tuổi của bệnh nhân).

+Total_Bilirubin-> Total Billirubin in mg/dL (Tổng Billirubin mg / dL).

+Direct_Bilirubin -> Conjugated Billirubin in mg/dL (Billirubin liên hợp tính bằng mg / dL).

+Alkaline_Phosphotase -> Alcohol intake level of the patient (Mức độ uống rượu của bệnh nhân).

+Alamine_Aminotransferase ->ALT in IU/L (ALT tính bằng IU / L)+Aspartate_Aminotransferase ->AST in IU/L

+Total_Protiens ->Total Proteins g/dL(Tổng số protein g / dL)

+Albumin ->Albumin in g/dL (Albumin tính bằng g / dL)

+Albumin_and_Globulin_Ratio ->A/G ratio (tỷ lệ A/G)

+Dataset (chuẩn đoán mắc bệnh hay không mắc bệnh)

Bộ dữ liệu được chia thành hai phần: 80% được sử dụng làm dữ liệu huấn luyện cho mô hình (tập train), trong khi 20% còn lại được dùng để kiểm tra độ chính xác của mô hình (tập test).

Hình 11 Dữ liệu dự đoán khả năng mắc bệnh ung thư gan

 Khai báo thư viện Đọc file dữ liệu, phân tích dữ liệu, chuẩn hoá, chia tỉ lệ tập train-test

 Chạy mô hình học máy

 Đánh giá mô hình dựa trên kết quả dự đoán (với độ đo đơn giản Accuracy, Precision, Recall)

 Sau khi thử nghiệm với bộ cơ sở dữ liệu thì kết quả phân lớp đạt 72% Đối với Precision, Recall:

X= df[['Alkaline_Phosphotase' 'Age', ]] y= df['Dataset'] x0 = X[y== ]1 x1 = X[y== ]2 plt.plot(x0,'b^', markersize = 4, alpha = 8) plt.plot(x1,'go', markersize = 4, alpha = 8) plt.xlabel('Alkaline_Phosphotase') plt.ylabel('Age') plt.plot() plt.show()

Hình 12 Hình minh họa dự đoán khả năng mắc bệnh ung thư gan

+ Cơ sở toán học chặt chẽ, đây là thuật toán mà ta luôn luôn tìm được lời giải tốt nhất cho thuật toán đó

Sau khi hoàn thành bài học, chúng ta có thể dự đoán kết quả một cách nhanh chóng bằng cách thay giá trị vào phương trình siêu phẳng và kiểm tra xem kết quả lớn hơn hay nhỏ hơn 0.

Để SVM hoạt động hiệu quả, việc chọn lọc các thuộc tính phù hợp từ dữ liệu là rất quan trọng SVM không có khả năng tự động chọn thuộc tính, do đó người dùng cần phải thực hiện việc này bằng cách tự chọn hoặc sử dụng các thuật toán khác.

Ngày đăng: 22/01/2025, 15:14

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN