TỔNG QUAN VỀ ỨNG DỤNG MẠNG NEURON NHÂN TẠO
Khái quát về mạng neuron nhân tạo
Mạng neuron nhân tạo (ANN) được xây dựng dựa trên nguyên lý của các neuron sinh học, bao gồm các nút tương tự như tế bào thần kinh Đầu vào từ nhiều nút khác nhau được coi như các sợi nhánh trong tế bào thần kinh, và các nút này tạo ra đầu ra liên kết với sợi trục Trong quá trình tính toán đầu ra, thông tin đầu vào được xử lý qua các trọng số dương hoặc âm, tương tự như tín hiệu điện và phản ứng hóa học trong tế bào thần kinh thực Khi điện thế tín hiệu vào đạt ngưỡng nhất định, nó sẽ kích hoạt một xung điện dẫn đến trục dây thần kinh, mặc dù không phải tất cả các mô hình đều sử dụng phương pháp ngưỡng để mô phỏng xung này.
Trong thiết kế mạng neuron, việc xác định số lượng và loại nút đầu vào là rất quan trọng và phụ thuộc vào bản chất của vấn đề Các nút này có thể là nhị phân, biểu thị trạng thái bật hoặc tắt, hoặc có thể chấp nhận các giá trị liên tục Nút đầu vào cần phải đại diện cho tất cả thông tin liên quan đến vấn đề Quá trình xác định nút đầu vào liên quan đến việc phân tích và lựa chọn các tính năng nổi bật của vấn đề.
Các mạng neuron ban đầu chỉ có hai lớp, điều này hạn chế khả năng giải quyết các vấn đề phi tuyến Tuy nhiên, thế hệ thứ hai đã phát triển các cấu trúc mạng với ba hoặc nhiều lớp, trong đó mạng ba lớp là phổ biến nhất Cấu trúc này bao gồm lớp đầu vào, lớp ẩn và lớp đầu ra, cho phép giải quyết các vấn đề phức tạp hơn Mặc dù có nhiều cấu hình mạng khác nhau, mạng ba lớp vẫn có khả năng xử lý hiệu quả các vấn đề đa dạng nhờ vào cách kết nối các nút khác nhau.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Hình 1.1: Cấu trúc mạng neuron ba lớp
Lớp ẩn trong mạng nơ-ron nhân tạo (ANN) bao gồm các neuron nhận dữ liệu đầu vào từ lớp trước và chuyển đổi chúng để tiếp tục xử lý ở các lớp tiếp theo Một ANN có thể có nhiều lớp ẩn khác nhau.
Neuron là đơn vị cơ bản trong mạng neuron, chịu trách nhiệm xử lý thông tin Quá trình này được minh họa rõ ràng trong Hình 1.2.
Hình 1.2: Quá trình xử lý thông tin của mạng neuron
Các thành phần cơ bản của một neuron nhân tạo bao gồm:
- Tập các đầu vào: Là các tín hiệu vào (input signals) của neuron, các tín hiệu này thường được đưa vào dưới dạng một vector N chiều.
Mỗi liên kết trong mạng nơ-ron được thể hiện bằng một trọng số, gọi là trọng số liên kết (Synaptic weight) Trọng số liên kết giữa tín hiệu vào thứ j và neuron k thường được ký hiệu bằng một ký hiệu nhất định Thông thường, các trọng số này được khởi tạo ngẫu nhiên khi mạng được khởi tạo và sẽ được cập nhật liên tục trong quá trình học của mạng.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Bộ tổng (Summing function): Dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó.
- Ngưỡng (còn gọi là độ lệch - bias): Ngưỡng này thường được đưa vào như một thành phần của hàm truyền.
Hàm truyền (Transfer function) là công cụ quan trọng để giới hạn phạm vi đầu ra của mỗi neuron, nhận đầu vào từ hàm tổng và ngưỡng đã cho Thông thường, đầu ra của neuron được giới hạn trong khoảng [0,1] hoặc [-1,1] Các hàm truyền rất đa dạng, bao gồm cả hàm tuyến tính và phi tuyến, và việc lựa chọn hàm truyền phù hợp phụ thuộc vào từng bài toán cụ thể cũng như kinh nghiệm của người thiết kế mạng Một số hàm truyền phổ biến thường được sử dụng trong các mô hình mạng neuron được liệt kê trong Bảng 1.1.
Đầu ra của một neuron là tín hiệu duy nhất mà nó phát ra, với mỗi neuron chỉ có tối đa một đầu ra Về mặt toán học, cấu trúc của một neuron k được mô tả thông qua hai biểu thức liên quan.
Trong đó: , , , liên kết của neuron thứ k; tín hiệu đầu ra của neuron.
: là các tín hiệu vào; (, , , ) là các trọng số là hàm tổng; là một ngƣỡng; f là hàm truyền và là
Tương tự như neuron sinh học, neuron nhân tạo tiếp nhận tín hiệu đầu vào, xử lý chúng bằng cách áp dụng trọng số liên kết, tính tổng các tích thu được và gửi kết quả qua hàm truyền, từ đó tạo ra tín hiệu đầu ra.
Hàm tuyến tính bão hòa đối xứng
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Cách kết nối các neuron trong mạng xác định kiến trúc (topology) của mạng, có thể là kết nối đầy đủ (fully connected) khi mỗi neuron liên kết với tất cả các neuron khác, hoặc kết nối cục bộ (partially connected) chỉ giữa các neuron trong các tầng khác nhau Hai loại kiến trúc mạng chính được phân loại dựa trên cách kết nối này.
- Tự kết hợp (autoassociative): là mạng có các neuron đầu vào cũng là các neuron đầu ra Mạng Hopfield là một kiểu mạng tự kết hợp.
Hình 1.3: Mạng tự kết hợp
Heteroassociative networks feature distinct input and output neuron sets, making them unique in their architecture Examples of such networks include Perceptrons, MultiLayer Perceptrons (MLP), and Kohonen networks, each playing a significant role in various applications of artificial intelligence and machine learning.
Hình 1.4: Mạng kết hợp khác kiểu
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Ngoài ra, dựa vào sự hiện diện của các kết nối phản hồi từ các neuron đầu ra đến các neuron đầu vào, mạng được phân chia thành hai loại kiến trúc khác nhau.
Kiến trúc truyền thẳng (feedforward architecture) là loại kiến trúc mạng nơ-ron không có kết nối ngược từ các nơ-ron đầu ra về đầu vào, do đó không lưu trữ giá trị đầu ra trước đó hay trạng thái kích hoạt của nơ-ron Trong mạng nơ-ron truyền thẳng, tín hiệu di chuyển theo một chiều duy nhất từ đầu vào đến đầu ra, và đầu ra của bất kỳ tầng nào sẽ không ảnh hưởng đến chính tầng đó Mạng Perceptron là một ví dụ điển hình của kiến trúc này.
Kiến trúc phản hồi (Feedback architecture) là một kiểu kiến trúc mạng đặc trưng bởi các kết nối từ neuron đầu ra tới neuron đầu vào Trong loại mạng này, hệ thống lưu giữ các trạng thái trước đó, khiến cho trạng thái tiếp theo không chỉ phụ thuộc vào tín hiệu đầu vào mà còn vào các trạng thái trước đó của mạng Một ví dụ điển hình của kiến trúc phản hồi là mạng Hopfield.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Tổng quan về ứng dụng mạng neuron nhân tạo trong y tế
1.2.1 Các lĩnh vực y tế ứng dụng mạng neuron
Việc ứng dụng trí thông minh nhân tạo trong thiết bị khoa học đã được nghiên cứu từ lâu, đặc biệt trong y học trong thập kỷ qua Năm 1950, mô phỏng mạng neuron sinh học bằng máy tính lần đầu tiên được giới thiệu, và năm 1951, McCullogh cùng Pitts đã định nghĩa tế bào thần kinh nhân tạo đầu tiên Cùng với sự tiến bộ của công nghệ máy tính, mô hình hóa chức năng thần kinh ngày càng trở nên phức tạp, với các cụm thần kinh đơn giản được xác định Từ năm 1982 đến 1987, các mô hình toán học cho ứng dụng thực tế đã được phát triển dựa trên nghiên cứu của McLelland, Rummelhart, Hopfield và Kohonen Tại Hungary, T Roska và cộng sự đã đạt được những thành tựu nổi bật trong lĩnh vực mạng neuron nhân tạo Mạng neuron hiện đang được áp dụng trong y học ở bốn lĩnh vực chính: mô hình hóa, xử lý tín hiệu điện sinh học, chẩn đoán và tiên đoán.
Bảng 1.2: Các lĩnh vực y học ứng dụng mạng neuron nhân tạo 1.2.2 Các ứng dụng mạng neuron trong y tế
Trong thập kỷ qua, mạng neuron thần kinh đã trở thành một công nghệ quan trọng với nhiều ứng dụng, đặc biệt trong lĩnh vực y học, thay thế các phương pháp dựa trên tri thức từ những năm 1970 Công nghệ này cho phép phát triển nhanh chóng các mô hình thông qua thuật toán học tập, miễn là có đủ dữ liệu Bài viết này sẽ cung cấp cái nhìn tổng quan về các ứng dụng của mạng neuron trong y học và mô tả chi tiết trong Bảng 1.3.
GVHD: PGS.TS Huỳnh Lương Nghĩa
Phân tích điện tâm đồ
GVHD: PGS.TS Huỳnh Lương Nghĩa
Phân tích điện não đồ
GVHD: PGS.TS Huỳnh Lương Nghĩa
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 1.3: Tóm tắt các ứng dụng của mạng neuron thần kinh trong y học
Trong chương này, chúng ta đã khám phá các khái niệm và cấu trúc của mạng neuron nhân tạo, công cụ mạnh mẽ cho việc giải quyết các bài toán phi tuyến và phức tạp, đặc biệt là trong chẩn đoán y tế Mạng neuron nhân tạo cho phép phát hiện mối quan hệ giữa các quá trình một cách không tường minh, mở ra nhiều ứng dụng tiềm năng trong lĩnh vực y tế Ở chương tiếp theo, chúng ta sẽ thiết kế mạng neuron hỗ trợ chẩn đoán bệnh rối loạn nhịp tim bằng công cụ Neuron Network Toolbox trong phần mềm Matlab.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
THIẾT KẾ MẠNG NEURON HỖ TRỢ CHẨN ĐOÁN BỆNH RỐI LOẠN NHỊP TIM SỬ DỤNG CÔNG CỤ NEURON NETWORK TOOLBOX
Giới thiệu phần mềm matlab và công cụ neuron network toolbox
MATLAB, viết tắt từ "Matrix Laboratory", được phát minh bởi Cleve Moler vào cuối thập niên 1970 và ông sau đó trở thành chủ nhiệm khoa máy tính tại Đại học New Mexico Phần mềm này, do công ty MathWorks phát triển, cung cấp môi trường tính toán số và lập trình, cho phép người dùng thực hiện các phép toán với ma trận, vẽ đồ thị hàm số, thực hiện thuật toán, tạo giao diện người dùng và kết nối với các chương trình viết bằng nhiều ngôn ngữ lập trình khác Với thư viện Toolbox, MATLAB hỗ trợ mô phỏng tính toán và thực nghiệm nhiều mô hình trong thực tế và kỹ thuật.
The Development Environment is a comprehensive set of tools that facilitates the use of MATLAB functions and files It includes essential components such as the MATLAB desktop, Command Window, command history, editor, debugger, and browsers for accessing help Additionally, it features a workspace for managing variables, file management capabilities, and a search path for easy navigation of files.
- MATLAB Mathematical Function Library: tập hợp các hàm toán học nhƣ sum,sine, số học,
- MATLAB Language (scritp): ngôn ngữ lập trình bậc cao.
- Graphics: các công cụ giúp hiển thị dữ liệu dưới dạng đồ thị, ngoài ra còn cho phép xây dựng giao diện đồ họa.
- MATLAB Application Program Interface: bộ thƣ viện cho phép ta sử dụng các chức năng tính toán của MATLAB trên ngôn ngữ lập trình C hay FORTRAN.
- Là một ngôn ngữ cấp cao cho tính toán số, mô hình hóa mô phỏng và phát triển ứng dụng.
- Cung cấp môi trường tương tác thử nghiệm lặp đi lặp lại, thiết kế và giải quyết vấn đề.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Cung cấp một thư viện phong phú các hàm toán học, bao gồm đại số tuyến tính, thống kê, phân tích Fourier, lọc, tối ưu hóa và giải phương trình vi phân thường.
- Giao diện lập trình MATLAB cung cấp công cụ phát triển cải thiện chất lƣợng mã bảo trì và tối đa hóa hiệu suất.
- Cung cấp các công cụ để xây dựng các ứng dụng với giao diện đồ họa tùy chỉnh.
- Thuận tiện cho việc tích hợp các thuật toán MATLAB với các ứng dụng bên ngoài và các ngôn ngữ nhƣ C, Java, NET và Microsoft Excel.
2.1.4 Khả năng ứng dụng của Matlab
MATLAB là một bộ chương trình phần mềm lớn dành cho tính toán kỹ thuật Có thể dùng MATLAB để xử lý:
- Vẽ 2-D và 3-D và đồ họa
- Chức năng phi tuyến tính
Các ngành nghề kỹ thuật đƣợc Matlab hỗ trợ đắc lực:
- Xử lý tín hiệu và Truyền thông
- Hình ảnh và Video Processing
- Kiểm tra và đo lường
2.1.5 Giới thiệu công cụ Neuron Network Toolbox trong phần mềm Matlab
Học máy nói chung hay Deep Learning nói riêng hiện nay đang là một trong những ngành nóng nhất trong bộ môn khoa học máy tính (Computer science).
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Deep Learning Toolbox ™, trước đây được biết đến là Neuron Network Toolbox ™, cung cấp một nền tảng mạnh mẽ cho việc thiết kế và triển khai các mạng thần kinh sâu Công cụ này hỗ trợ các thuật toán, mô hình được xử lý trước và nhiều ứng dụng khác nhau Deep learning, một kỹ thuật trong máy học, cho phép hệ thống học hỏi các đặc trưng và nhiệm vụ trực tiếp từ dữ liệu, bao gồm hình ảnh, văn bản và âm thanh.
Deep Learning là một một phương pháp của học máy (Machine Learning) Khi phát triển một ứng dụng Deep Learning phải tiến hành các bước như sau [4]:
Đặt bài toán là bước quan trọng nhất trong quá trình phát triển mô hình, yêu cầu kiến thức và kinh nghiệm sâu rộng Đối với các vấn đề đơn giản, một lớp Deep Learning có thể đủ để giải quyết, nhưng những bài toán phức tạp cần nhiều lớp để xử lý hiệu quả Chúng ta sẽ thiết kế cấu trúc mạng và thông qua quá trình luyện tập, điều chỉnh các đặc tính bên trong mạng để đạt được kết quả mong muốn.
2.Thu thập dữ liệu (Data Gathering): Sau khi đã định nghĩa vấn đề xong, chúng ta sẽ bắt đầu tiến hành thu thập nguồn dữ liệu tương ứng.
Lọc dữ liệu (Data Parsing) là bước quan trọng trong quá trình chuẩn bị dữ liệu, yêu cầu cặp nhãn dữ liệu phải chính xác nhất có thể Sau khi thu thập, dữ liệu cần được lọc để loại bỏ nhiễu và đảm bảo tính sạch sẽ Dữ liệu sau khi được xử lý sẽ được chia thành ba phần: train, validation và test, với tỉ lệ thường dùng là 7-1,5-1,5 Qua bước này, chúng ta đã có một tập dữ liệu hoàn chỉnh.
Quá trình luyện mô hình là bước nhồi liên tục cặp data-label vào trong model, nhằm điều chỉnh các tính chất bên trong và hướng đầu ra đến label mong muốn Thời gian luyện có thể kéo dài từ vài tiếng đến vài tuần Để rút ngắn thời gian training, quá trình tính toán sẽ được phân luồng trên nhiều GPUs.
Sau khi hoàn tất quá trình luyện tập, bước tiếp theo là thực hiện xác thực (validation) để đánh giá lại mô hình Giai đoạn này giúp xác minh hiệu suất của mô hình và quyết định dừng luyện tập khi không còn thấy sự cải thiện.
Sau khi hoàn thành quá trình luyện tập, bước cuối cùng là kiểm tra độ chính xác của mô hình thông qua testing Đây là bước đơn giản, chỉ cần đưa dữ liệu kiểm tra vào mô hình và so sánh nhãn đầu ra với nhãn gốc của dữ liệu kiểm tra.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Sau khi hoàn tất quá trình huấn luyện, mô hình có thể được triển khai trên các thiết bị đầu cuối như board mạch, mạch nhúng, điện thoại di động và FPGA.
Xây dựng cơ sở dữ liệu đáp ứng nhu cầu thiết kế mạng neuron
2.2.1 Chọn cơ sở dữ liệu thích hợp Để đào tạo mạng neuron hỗ trợ chẩn đoán bệnh rối loạn nhịp tim, cần có dữ liệu mô tả tình trạng lâm sàng của bệnh nhân đúng cách Dữ liệu thông tin không cần thiết hoặc không chính xác của bệnh nhân không nên sử dụng đối với chẩn đoán Quá trình lựa chọn dữ liệu đặc trưng phù hợp là nhiệm vụ của bác sĩ Thông thường những dữ liệu này là thông tin cơ bản về tình trạng sức khỏe của bệnh nhân, kết quả của phân tích sinh hóa, kết quả phân tích tín hiệu điện sinh học, triệu chứng và các thông tin khác giúp xác định chẩn đoán chính xác Tất cả các những dữ liệu này của bệnh nhân đƣợc thu thập và đánh giá đại diện cho mô hình đầu vào của mạng thần kinh Khả năng khái quát hóa mỗi quan hệ giữa các triệu chứng và chẩn đoán phụ thuộc nhiều vào các mẫu đầu vào đƣợc sử dụng trong quá trình đào tạo Do đó cơ sở dữ liệu cần chứa đủ số lƣợng các mẫu đáng tin cậy mô tả chẩn đoán bệnh lý Điều này sẽ cho phép trong quá trình đào tạo của mạng thần kinh ƣớc tính sự phụ thuộc ẩn trong tập dữ liệu và sử dụng kiến thức này để khái quát hóa cho các trường hợp chẩn đoán của bệnh nhân, ngay cả đối với những trường hợp không có trong dữ liệu đào tạo Cấu trúc cơ sở dữ liệu có dạng bảng hoặc ma trận chứa thông tin về sức khỏe tình trạng bệnh nhân và kết quả chẩn đoán của họ.
Để chọn dữ liệu phù hợp, chúng ta sử dụng cơ sở dữ liệu bệnh rối loạn nhịp tim Arrhythmia_dataset, bao gồm hai ma trận ArrhythmiaInputs và ArrhythmiaTargets Dữ liệu này được lấy từ kho cơ sở dữ liệu trực tuyến của Đại học Wisconsin, được phát triển bởi các tác giả Altay Guvenir, Burak Acar và Haldun Muderrisoglu từ trường đại học Bilkent, Thổ Nhĩ Kỳ vào năm 1997.
“Tại sao bộ dữ liệu Arrhythmia_dataset lại được sử dụng?”, dưới đây là một số lý do chính:
- Đây là một bộ dữ liệu phản ánh đầy đủ nhất những yếu tố đặc trƣng – triệu chứng của bệnh.
- Hiện nay ở Việt Nam chƣa có những bộ dữ liệu phục vụ chẩn đoán nhƣ vậy
Chính vì những lý do trên bộ dữ liệu Arrhythmia_dataset sẽ đƣợc sử dụng trong đồ án này.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Cơ sở dữ liệu này chứa các bản ghi điện tâm đồ thu đƣợc từ 452 bệnh nhân và
Cơ sở dữ liệu chứa 279 thông số đặc trưng liên quan đến 16 loại bệnh lý tim mạch chẩn đoán Trước khi áp dụng cho việc luyện mạng neuron, dữ liệu này cần được xử lý sơ bộ Một số bệnh lý chỉ xuất hiện trong một vài mẫu bản ghi đã bị loại trừ, dẫn đến số lượng bệnh chẩn đoán còn lại là 10.
02 Ischemic changes (Bệnh động mạch vành)
03 Old Anterior Myocardial Infarction(Nhồi máu cơ tim cấp thành trước)
04 Old Inferior Myocardial Infarction (Nhồi máu cơ tim cấp thành dưới)
05 Sinus tachycardy (Nhịp nhanh xoang)
06 Sinus bradycardy (Nhịp chậm xoang)
07 Left bundle branch block ( Block tim nhanh trái)
08 Right bundle branch block (Block tim nhanh phải)
09 Atrial Fibrillation or Flutter (Rung nhĩ hoặc
Bảng 2.1: Các loại bệnh tim mạch được chẩn đoán
Các thuộc tính (TT) bao gồm 5 nhóm:
Nhóm 1 từ TT1 –> TT4: Các đặc trƣng chung cơ thể (Tuổi, Giới tính, Chiều cao,
Nhóm 2 từ TT5 –> TT15: Các đặc trƣng chung về hoạt động của tim ( Độ dài phức hợp QRS, Khoảng cách giữa các sóng P và Q, Khoảng cách giữa khởi điểm sóng
Q và kết thúc song T, Độ dài sóng T,…….,Nhịp đập tim )
Các nhóm còn lại đƣợc trình bày trong (Bảng 2.2) chi
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 2.2: Bảng tóm tắt các đạo trình 2.2.2 Chuẩn hóa cơ sơ dữ liệu
Trước khi sử dụng cơ sở dữ liệu để luyện mạng neuron, cần thực hiện xử lý sơ bộ và chuẩn hóa dữ liệu để các giá trị nằm trong khoảng [0,1], đồng thời loại bỏ những thuộc tính không xác định Sau khi hoàn tất quá trình này, cơ sở dữ liệu sẽ bao gồm hai ma trận: ma trận ArrhythmiaInputs với kích thước 262x433, đại diện cho 262 thuộc tính và 433 mẫu-bản ghi, và ma trận ArrhythmiaTargets với kích thước 10x433, tương ứng với 10 loại bệnh được chẩn đoán và 433 mẫu-bản ghi.
Quá trình xử lý dữ liệu bao gồm các bước sau đây:
Ma trận cơ sở dữ liệu gốc của bệnh rối loạn nhịp tim có kích thước 452x280 Để phù hợp với mô hình ma trận luyện mạng, ma trận này được chuyển đổi thành ma trận DL có kích thước 280x452, trong đó số thuộc tính được sắp xếp thành hàng và số trường hợp bệnh nhân được sắp xếp thành cột.
Một số bệnh chỉ có một vài mẫu, do đó số mẫu bệnh nhân được chẩn đoán đã giảm xuống còn 433 Kết quả là chúng ta có ma trận dữ liệu mới với kích thước B = 280x433.
Trong đó :a,b c là số các trường hợp bị loại bỏ.
Ma trận dữ liệu B bao gồm 280 hàng thuộc tính, trong đó hàng 1 đến hàng 279 đại diện cho các thuộc tính đầu vào, và hàng 280 là thuộc tính đầu ra, phản ánh bệnh lý được chẩn đoán.
- Lấy ma trận đầu vào ArrhythmiaInputs từ ma trận B là ma trận C'9x433:
Sau khi chuẩn hóa ma trận đầu vào (ArrhythmiaInputs), chúng ta chia các giá trị trong mỗi hàng của ma trận này cho giá trị lớn nhất của hàng đó Kết quả thu được là ma trận ArrhythmiaInputs mới, được ký hiệu là IP'9x433.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Những thuộc tính không xác định bị loại bỏ nên cuối cùng ma trận
ArrhythmiaInputs thu đƣợc có dạng là IP1= 262x433
- Lấy ma trận đầu ra (ArrhythmiaTargets) từ ma trận B là ma trận
- Sau đó chuẩn hóa ma trận ArrhythmiaTargetst theo mã các loại bệnh lý chẩn đoán; cuối cùng ma trận ArrhythmiaTargetst thu đƣợc có dạng là: OP1x433.
Thiết kế mạng neuron hỗ trợ chẩn đoán bệnh rối loạn nhịp tim
Dựa trên cơ sở dữ liệu đã xử lý, chúng tôi xây dựng mạng neuron nhân tạo đa lớp truyền thẳng (MLP) nhằm hỗ trợ chẩn đoán bệnh rối loạn nhịp tim Mạng MLP tổng quát bao gồm n (n≥2) tầng, trong đó có một tầng đầu ra (tầng thứ n) và (n-1) tầng ẩn.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Kiến trúc của mạng MLP tổng quát được mô tả với đầu vào là các vector trong không gian p chiều và đầu ra là các vector trong không gian q chiều Trong các bài toán phân loại hoặc chẩn đoán, p đại diện cho kích thước mẫu đầu vào, trong khi q là số lớp cần phân loại Hai yếu tố quan trọng ảnh hưởng đến đầu vào là
- Dạng hàm đích: khi hàm đích càng phức tạp thì kích thước đầu vào cần tăng.
Nhiễu xảy ra khi dữ liệu chứa thông tin sai hoặc thiếu, dẫn đến việc cần tăng kích thước đầu vào Đầu ra của các neuron ở tầng trước sẽ trở thành đầu vào cho các neuron ở tầng sau, với mỗi neuron ở tầng sau liên kết với tất cả các neuron của tầng trước.
Mạng MLP hoạt động theo quy trình sau: Tại tầng đầu vào, các neuron nhận tín hiệu, thực hiện tính tổng trọng số và áp dụng hàm truyền để tạo ra kết quả Kết quả này sau đó được chuyển tiếp đến các neuron ở tầng ẩn thứ nhất, nơi chúng tiếp tục nhận tín hiệu, xử lý và gửi kết quả tới tầng ẩn thứ hai Quá trình này tiếp diễn cho đến khi các neuron ở tầng đầu ra đưa ra kết quả cuối cùng.
Một số kết luận đã đƣợc chứng minh:
- Bất kì một hàm Boolean nào cũng có thể biểu diễn đƣợc bởi một mạng MLP 2 tầng trong đó các neuron sử dụng hàm truyền sigmoid.
Tất cả các hàm liên tục có thể được xấp xỉ chính xác bởi một mạng MLP 2 tầng, trong đó sử dụng hàm truyền sigmoid cho các neuron ở tầng ẩn và hàm truyền tuyến tính cho các neuron ở tầng ra, với sai số nhỏ tùy ý.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Mọi hàm bất kỳ đều có thể được xấp xỉ bằng một mạng MLP ba tầng, trong đó sử dụng hàm truyền sigmoid cho các neuron ở tầng ẩn và hàm truyền tuyến tính cho các neuron ở tầng đầu ra.
Một số vẫn đề lưu ý trong việc xây dựng mạng MLP:
Việc xác định số lượng neuron trong tầng ẩn của mạng MLP phụ thuộc vào bài toán cụ thể và kinh nghiệm của nhà thiết kế Số lượng nút ẩn càng nhiều, mạng càng có khả năng nắm bắt đặc tính của dữ liệu huấn luyện, nhưng thời gian học cũng sẽ tăng lên Ngược lại, nếu số nút ẩn quá ít, mạng sẽ học không chính xác Để đảm bảo tính khoa học và đơn giản trong việc xây dựng và khảo sát mạng, công cụ Neuron Network Toolbox trong phần mềm Matlab sẽ được sử dụng Do đó, phù hợp với mục đích nghiên cứu, chúng tôi chọn mạng neuron có cấu trúc như hình 2.2.
Hình 2.2: Mạng neuron chẩn đoán hai lớp MLP
Mạng neural được thiết kế với 262 tế bào neuron đầu vào, tương ứng với 262 thuộc tính khác nhau Nó bao gồm một lớp ẩn sử dụng hàm kích hoạt sigmoid và một lớp đầu ra với 10 tế bào neuron, đại diện cho 10 loại bệnh được chẩn đoán.
2.3.2 Chọn thuật toán luyện mạng
Phương pháp tối ưu phổ biến cho mạng MLP là thuật toán lan truyền ngược, giúp tối thiểu hóa sai số trung bình bình phương bằng cách điều chỉnh trọng số và hệ số bias ngược hướng với vectơ Gradient của hàm sai số Tuy nhiên, hàm sai số này thường phức tạp với nhiều cực trị cục bộ, khiến quá trình huấn luyện chỉ đạt được cực trị cục bộ mà không phải cực trị toàn cục Giá trị khởi tạo của trọng số có ảnh hưởng lớn đến kết quả cuối cùng; trọng số thường được khởi tạo bằng các số ngẫu nhiên nhỏ, trong khi việc khởi tạo đồng nhất sẽ dẫn đến hiệu suất học kém Nếu trọng số được khởi tạo với giá trị lớn, tổng tín hiệu vào sẽ có giá trị tuyệt đối ngay từ đầu.
GVHD: PGS.TS Huỳnh Lương Nghĩa, SVTH: Đinh Văn Quang Việc sử dụng hàm sigmoid trong mạng nơ-ron chỉ cho phép hai giá trị đầu ra là 0 và 1, dẫn đến nguy cơ tắc nghẽn tại các cực tiểu cục bộ hoặc vùng phẳng gần điểm xuất phát Để khắc phục điều này, các trọng số trên lớp thứ l của mạng được khởi tạo ngẫu nhiên trong khoảng [-1/n, 1/n], với n là số trọng số kết nối tới lớp l Phương pháp học lan truyền ngược sai số giúp giảm độ lệch gradient, và việc khởi tạo trọng số với giá trị nhỏ ngẫu nhiên sẽ giúp mạng hội tụ về các giá trị cực tiểu khác nhau, với khả năng cao là hội tụ về giá trị cực tiểu tổng thể nếu gặp may.
Bỏ qua sự phức tạp về mặt toán học lƣợc đồ của thuật toán đƣợc mô ta nhƣ sau :
Hình 2.3: Lược đồ thuật toán lan truyền ngược gradient liên h ợp
Lƣợc đồ hình 2.3 đƣợc diễn ta nhƣ sau:
- Khởi tạo trọng số. o Giá trị của trọng số liên kết giữa các neuron đƣợc khởi tạo ngẫu nhiên.
- Mạng truyền thẳng o Mỗi neuron trên mỗi tầng đƣợc tính tổng trọng số của các tín hiệu vào. o Sử dụng hàm activation để tính giá trị ra từ neuron.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Truyền ngƣợc của sai số. o Thông tin lỗi đƣợc tính o Ta sử dụng giá trị này để tính toán thông tin lỗi trên mỗi neuron còn lại.
Cập nhật giá trị trọng số là quá trình sử dụng thông tin lỗi từ mỗi node để tính toán và điều chỉnh lại giá trị mới cho trọng số liên kết giữa các neuron.
Về mặt toán học thuật toán lan truyền ngƣợc đƣợc mô tả nhƣ sau:
Ta sử dụng một số kí hiệu sau:
x i : Giá trị đầu vào của neuron thứ i
V ij : vector trọng số trên đường kết nối từ neuron node vào thứ i tới neuron node ẩn thứ j.
W jk : vector trọng số trên đường kết nối từ neuron node ẩn thứ j tới neuron node ra thứ k.
f: hàm truyền với: f(x) = 1 / (1 + e -x ) - Ở đây chúng ta sử dụng hàm truyền là hàm Sigmoid, giới hạn giá trị đầu ra trong khoảng [0,-1].
I Ii – Input của node Input thứ i
O Ii – Ouput của node Input thứ i
I Hp – Input của node Hidden thứ p
O Hp – Output của node Hidden thứ p
I Oq – Input của node Output thứ q
O Oq – Output của node Output thứ q
O Ok – Output của node Output thứ k
- Mạng feed-forward với n đầu vào, m nút ẩn và L đầu ra.
- Tập dữ liệu huấn luyện D = {- là vector đầu vào, - là vector đầu ra mong muốn}.
Output: Các vector trọng số sau khi đã đƣợc huấn luyện.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Hình 2.4: Lưu đồ thao tác huấn luyện sử dụng thuật toán lan truyền ngược
Bước 1: Khởi tạo trọng số ,
Bước 2: Lan truyền thẳng tính toán đầu ra thực tế
- Tại node vào thứ i (Input):
- Tại node ẩn thứ p (Hidden):
- Tại node ra thứ q (Output):
Nhƣ vậy giá trị đầu ra thực tế của mạng với bộ trọng số ngẫu nhiên ban đầu là:
Để giảm thiểu sự khác biệt giữa đầu ra mong muốn và đầu ra thực tế, cần tính toán độ sai khác và điều chỉnh trọng số mạng trong từng bước học Quá trình học sẽ dừng lại khi độ sai khác đạt đến ngưỡng giới hạn phù hợp.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Bước 3: Đánh giá lỗi học – sai số trung bình bình phương (MSE: meansquare error):
Trong đó: E là sai số trung bình bình phương, L đại diện cho đầu ra
Bước 4: Lan truyền ngược điều chỉnh trọng số
- Với mỗi nút q thuộc tầng ra, tính đạo hàm ngƣợc sai số thành phần theo công thức:
- Cập nhật các trọng số từ tầng ẩn tới tầng ra :
- Với mỗi nút p thuộc tầng ẩn, tính đạo hàm ngƣợc sai số theo công thức:
- Cập nhật các trọng số từ tầng vào tới tầng ẩn :
Lặp lại bước 2 cho đến khi đạt được điều kiện kết thúc ở bước 3 Kết quả là bộ trọng số chuẩn, giúp giá trị đầu ra thực tế gần giống với giá trị đầu ra mong muốn nhất, nhằm tối thiểu hóa sai số trung bình bình phương.
Trong chương này, chúng ta đã giới thiệu công cụ Neuron Network Toolbox trong phần mềm Matlab và khả năng ứng dụng của nó Chúng ta đã thực hiện việc chọn, xử lý và chuẩn hóa cơ sở dữ liệu để thiết kế mạng neuron Đồng thời, chúng ta cũng xây dựng mạng neuron nhân tạo đa lớp truyền thẳng (MLP) nhằm hỗ trợ chẩn đoán bệnh rối loạn nhịp tim, cũng như lựa chọn thuật toán lan truyền ngược gradient liên hợp để luyện và tối ưu hóa mạng neuron.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
LUYỆN MẠNG, THẨM ĐỊNH VÀ THỬ NGHIỆM MẠNG
Kết quả của trường hợp không gán trọng số cho các thuộc tính đầu vào
Kết quả từ quá trình luyện mạng trong trường hợp không gán trọng số cho các thuộc tính đầu vào (trường hợp 0) được trình bày chi tiết trong Hình 3.1 cùng với các bảng 3.1 và 3.2.
Hình 3.1: Kết quả xác thực tốt nhất - case 0
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.1: Bảng chỉ số tốt nhất của mô hình mạng neuron cho bệnh rối loạn
Bảng 3.2: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim - case 0
Kết quả cho trường hợp sử dụng phương pháp gán trọng số cho các thuộc tính đầu vào
3.3.1 Ý nghĩa phương pháp gán trọng số cho các thuộc tính đâu vào Ý tưởng của phương pháp gán trọng số tương ứng mức cấu trúc cơ thể xuất phát từ việc xem xét thành phần của các thuộc tính đầu vào Mạng Cụ thể các tham số/thuộc tính đầu vào này - vốn được thu nhận bằng các phương pháp đo lường y sinh khác nhau - sẽ tương ứng với 5 cấp cấu trúc của cơ thể như: cơ thể năng mô tế bào phân tử sinh học [5], nhƣ đƣợc phân loại trong bảng sau:
2 Cấp cơ quan chức năng
4 Cấp độ tế bào: các loại tế bào
5 Cấp độ phân tử sinh học
Bảng 3.3: Mức cấu trúc của cơ thể và các phương pháp chẩn đoán tương ứng
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Độ quan trọng của các tham số đầu vào trong chẩn đoán là khác nhau, với mức độ cấu trúc thấp hơn thì giá trị chẩn đoán của chúng càng trở nên có ý nghĩa hơn Điều này cho thấy trọng số của các thuộc tính này càng cao khi cấu trúc giảm.
Nghiên cứu này nhằm kiểm tra tính xác đáng và hiệu quả của phương pháp gán trọng số cho các thuộc tính đầu vào trong mạng neuron nhân tạo, từ đó cải thiện chất lượng chẩn đoán một số bệnh tim mạch Phương pháp này tập trung vào việc phù hợp với các mức cấu trúc của cơ thể, đặc biệt là cấp cơ quan chức năng, nhằm hỗ trợ chẩn đoán chính xác hơn các bệnh liên quan đến tim mạch.
Mục tiêu chính của nghiên cứu này là xác định tầm quan trọng của việc gán trọng số trong mạng nơ-ron bằng cách so sánh kết quả luyện mạng giữa hai trường hợp có và không có trọng số Để thực hiện điều này, cấu trúc của mạng được giữ nguyên, bao gồm số lớp, số tế bào thần kinh cho mỗi lớp và sai lệch, như thể hiện trong Hình 2.2.
Trong cơ sở dữ liệu ArrhythmiaInput, các thuộc tính được phân chia thành 5 nhóm tương ứng với các mức cấu trúc của cơ thể Các thuộc tính ở mức cao (1,2) giữ nguyên hoặc được gán trọng số 1, trong khi các mức thấp hơn được gán trọng số 0 để đánh giá độ quan trọng Kết quả là các ma trận ArrhythmiaInput mới (IP2, IP3, IP4, IP5, IP6, IP7, IP8) có kích thước 262x443 Việc gán trọng số được thực hiện theo quy trình cụ thể.
- Trường hợp gán trọng số bằng không đối với thuộc tính đạo trình tăng cường - Case 1:
- Trường hợp gán trọng số bằng không đối với thuộc tính đạo trình tim - Case 2
- Trường hợp gán trọng số bằng không đối với thuộc tính đạo trình cơ bản - Case 3:
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Trường hợp gán trọng số bằng không đối với thuộc tính DI của đạo trình cơ bản – case 4:
- Trường hợp gán trọng số bằng không đối với thuộc tính DII của đạo trình cơ bản – case 5:
- Trường hợp gán trọng số bằng không đối với thuộc tính DIII của đạo trình cơ bản –case 6:
- Trường hợp gán trọng số bằng không đối với thuộc tính DIII của đạo trình cơ bản và thuộc tính đạo trình tăng cường – case 7:
3.3.2 Kết quả cho trường hợp gán trọng số cho các thuộc tính đầu vào
Kết quả kiểm tra cho thấy hiệu quả của mạng neuron trong việc chẩn đoán bệnh rối loạn nhịp tim khi áp dụng phương pháp gán trọng số thuộc tính Các trường hợp được phân tích đã chứng minh khả năng chính xác và độ tin cậy của mô hình trong việc phát hiện rối loạn nhịp tim.
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính đạo trình tăng cường - case 1:
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Hình 3.2: Kết quả xác thực tốt nhất – case1
Bảng 3.4: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh
Bảng 3.5: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim – case 1
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính đạo trình tim - Case 2:
Hình 3.3: Kết quả xác thực tốt nhất – case2
Bảng 3.6: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn
Bảng 3.7: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim – case 2
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính đạo trình cơ bản - Case 3:
Hình 3.4: Kết quả xác thực tốt nhất – case 3
Bảng 3.8: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn
Bảng 3.9: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim – case 3
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DI của đạo trình cơ bản – case 4:
Hình 3.5: Kết quả xác thực tốt nhất – case 4
Bảng 3.10: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn
Bảng 3.11: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim – case 4
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DII của đạo trình cơ bản – case 5:
Hình 3.6: Kết quả xác thực tốt nhất – case 5
Bảng 3.12: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim – case 5
Bảng 3.13: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim– case 5
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DIII của đạo trình cơ bản – case 6:
Hình 3.7: Kết quả xác thực tốt nhất – case 6
Bảng 3.14: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim – case 6
Bảng 3.15: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim – case 6
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DIII của đạo trình cơ bản và thuộc tính đạo trình tăng cường – case 7:
Hình 3.8: Kết quả xác thực tốt nhất – case 7
Bảng 3.16: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn
Bảng 3.17: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim – case 7
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Dựa trên các kết quả thu được từ trường hợp gán trọng số bằng 0, có thể xác định mức độ quan trọng của các nhóm thuộc tính trong cấu trúc cấp cơ quan chức năng.
Thuộc tính đạo trình cơ bản > Thuộc tính đạo trình tăng cường> Thuộc tính đạo trình tim
Theo phương pháp gán trọng số, thuộc tính có mức độ quan trọng cao sẽ có giá trị chẩn đoán tương ứng có ý nghĩa lớn hơn, tức là trọng số của chúng cũng cao hơn Dựa vào đó, chúng ta có thể phân bố trọng số cho các nhóm theo thứ tự như sau:
- Gán trọng số 0.8; 0.4; 0.2 lần lƣợt với các thuộc tính: Đạo trình cơ bản; Đạo trình tăng cường; Đạo trình tim – case 8:
IP=[IP([1:15],:);IP([16:51],:).*0.8;IP([52:87],:).*0.4;IP([88:159],:).*0.2;IP([1 60:189],:).*0.8;IP([190:219],:).*0.4;IP([220:279],:).*0.2];
- Gán trọng số 0.9; 0.5; 0.1 lần lƣợt với các thuộc tính: Đạo trình cơ bản; Đạo trình tăng cường; Đạo trình tim – case 9
IP=[IP([1:15],:);IP([16:51],:).*0.9;IP([52:87],:).*0.5;IP([88:159],:).*0.1;IP([1 60:189],:).*0.9;IP([190:219],:).*0.5;IP([220:279],:).*0.1];
Khi thực hiện luyện tập, xác thực và thử nghiệm mạng với ma trận đầu vào được gán trọng số phân bố lần lượt, chúng tôi nhận thấy rằng kết quả thu được tương tự như trường hợp không gán trọng số (case 0).
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Hình 3.9: Kết quả xác thực tốt nhất - case 8
Bảng 3.18: Bảng chỉ số tốt nhất của mô hình mạng neuron cho bệnh rối loạn nhịp tim - case 8
Bảng 3.19: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim - case 8
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Hình 3.10: Kết quả xác thực tốt nhất - case 9
Bảng 3.20: Bảng chỉ số tốt nhất của mô hình mạng neuron cho bệnh rối loạn nhịp tim - case 9
Bảng 3.21: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim - case
Kết quả thử nghiệm mô hình mạng MLP chẩn đoán bệnh rối loạn nhịp tim đã được kiểm chứng thông qua việc áp dụng kết quả luyện mô hình từ bài báo “Application of neuron network in medical diagnostics” của tác giả S Kajan, D Việc này nhằm đảm bảo tính chính xác và hiệu quả của mô hình trong lĩnh vực y tế.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Pernecký và Goga đã áp dụng mạng neuron vào cơ sở dữ liệu về rối loạn nhịp tim, trong đó dữ liệu được chia thành hai phần: 60% cho việc đào tạo và 40% cho thử nghiệm Các bộ dữ liệu thử nghiệm được phân chia theo tỷ lệ tương đương giữa phần kiểm tra và phần xác thực.
Trong nghiên cứu này, một lớp ẩn đã được lựa chọn trong cấu trúc mạng với 25 tế bào thần kinh cố định cho tất cả các tập dữ liệu Kết quả tốt nhất cho mô hình thần kinh được thu được thông qua thuật toán lan truyền ngược.
Hình 3.11: Kết quả xác thực tốt nhất theo bài báo[3]
Bảng 3.22: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim theo bài báo[3]
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Bảng 3.23: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim theo bài báo[3]
Do sự khác biệt giữa phiên bản phần mềm luyện mạng của đồ án và bài báo, chúng tôi đã tiến hành mô phỏng lại mô hình mạng và phương pháp luyện mạng tương tự như trong bài báo trên phần mềm luyện mạng của đồ án, và đã thu được kết quả như sau:
Hình 3.12: Mạng neuron chẩn đoán hai lớp MLP mô phỏng lại bài báo[3]
Hình 3.13: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3]
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.24: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] - case 0
Bảng 3.25: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3]- case 0
Từ trên ta có bảng đánh giá mô hình MLP đã thiết kế trong đồ án và trong bài báo[3] nhƣ sau:
1 theo thiết kế của đồ án Kết quả luyện mạng của
3 theo thiết kế mô phỏng lại bài báo[3]
Bảng 3.26: Đánh giá mô hình MLP đã thiết kế trong đồ án và trong bài báo[3]
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
Từ bảng 3.26 trên ta thấy :
- Tỉ lê thành công của cả 3 trường hợp là tương đương nhau
Kết quả xác thực cho trường hợp 2 và 3 cho thấy hiệu suất tốt hơn so với trường hợp 1 Điều này xảy ra vì số lượng nút ẩn trong mạng càng nhiều thì mạng càng có khả năng nắm bắt nhiều đặc tính của dữ liệu huấn luyện, dẫn đến kết quả tốt hơn Tuy nhiên, việc tăng số nút ẩn cũng đồng nghĩa với thời gian hội tụ sẽ kéo dài hơn.
Chúng tôi đã thực hiện gán trọng số cho các thuộc tính đầu vào trong thiết kế mạng mô phỏng, theo nghiên cứu được trình bày trong bài báo [3], và đã thu được kết quả khả quan.
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính đạo trình tăng cường - case 1:
Hình 3.14: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 1
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.27: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 1
Bảng 3.28: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 1
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính đạo trình tim - Case 2:
Hình 3.15: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 2
Bảng 3.29: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 2
Bảng 3.30: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 2
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính đạo trình cơ bản - Case 3:
Hình 3.16: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3]
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.31: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 3
Bảng 3.32: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 3
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DI của đạo trình cơ bản – case 4:
Hình 3.17: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 4
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.33: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 4
Bảng 3.34: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] –
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DII của đạo trình cơ bản – case 5:
Hình 3.18: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 5
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.35: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 5
Bảng 3.36: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] –
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DIII của đạo trình cơ bản – case 6:
Hình 3.19: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 6
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.37: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 6
Bảng 3.38: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 6
- Kết quả trường hợp gán trọng số bằng không đối với thuộc tính DIII của đạo trình cơ bản và thuộc tính đạo trình tăng cường – case 7:
Hình 3.20: Kết quả xác thực tốt nhất luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 7
GVHD: PGS.TS Huỳnh Lương Nghĩa
Bảng 3.39: Bảng chỉ số tốt nhất của mô hình mạng neuron phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 7
Bảng 3.40: Tỷ lệ thành công của mô hình phân loại bệnh rối loạn nhịp tim luyện mạng theo thiết kế mô phỏng lại bài báo[3] – case 7
ĐÁNH GIÁ VÀ KẾT LUẬN
Kết quả kiểm tra cho thấy mạng neuron MLP được thiết kế trong đồ án có khả năng chẩn đoán bệnh rối loạn nhịp tim hiệu quả Mô hình mạng này đã thể hiện sự chính xác cao trong việc phân loại và nhận diện các loại rối loạn nhịp tim, chứng minh tiềm năng ứng dụng của nó trong lĩnh vực y tế.
MLP thiết kế của bài báo[3] trong chương III được tổng hợp trong Bảng 4.1 và Bảng
Case Gán trọng số cho thuộc number tính
1 Gán trọng số đạo trình tăng cường bằng 0
2 Gán trọng số đạo trình tim bằng 0
3 Gán trọng số đạo trình cơ bản bằng 0
4 Gán trọng số thuộc tính DI đạo trình cơ bản bằng 0
5 Gán trọng số thuộc tính
DII đạo trình cơ bản bằng 0
6 Gán trọng số thuộc tính
DIII đạo trình cơ bản bằng 0
7 Gán trọng số thuộc tính
DIII đạo trình cơ bản và đạo trình tăng cường bằng 0
8 Gán trọng số 0.8; 0.4; 0.2 lần lƣợt với các thuộc tính
GVHD: PGS.TS Huỳnh Lương Nghĩa đạo trình: Đạo trình cơ bản; Đạo trình tăng cường; Đạo trình tim.
9 Gán trọng số 0.9; 0.5; 0.1 lần lƣợt với các thuộc tính đạo trình: Đạo trình cơ bản; Đạo trình tăng cường; Đạo trình tim.
Bảng 4.1 trình bày kết quả kiểm tra đánh giá hiệu quả của mạng neuron trong việc hỗ trợ chẩn đoán bệnh rối loạn nhịp tim, được xây dựng theo mô hình mạng MLP trong đồ án.
Case Gán trọng số cho thuộc tính number
Kết quả luyện mạng của bài báo [3]
1 Gán trọng số đạo trình tăng cường bằng 0
2 Gán trọng số đạo trình tim bằng 0
3 Gán trọng số đạo trình cơ bản bằng 0
4 Gán trọng số thuộc tính DI đạo trình cơ bản bằng 0
5 Gán trọng số thuộc tính DII đạo trình cơ bản bằng 0
6 Gán trọng số thuộc tính
DIII đạo trình cơ bản bằng0
GVHD: PGS.TS Huỳnh Lương Nghĩa
7 Gán trọng số thuộc tính DIII đạo trình cơ bản và đạo trình tăng cường bằng 0
8 Gán trọng số 0.8; 0.2; 0.4 lần lƣợt với các thuộc tính đạo trình: Đạo trình cơ bản; Đạo trình tăng cường; Đạo trình tim.
9 Gán trọng số 0.9; 0.1; 0.5 lần lƣợt với các thuộc tính đạo trình: Đạo trình cơ bản; Đạo trình tăng cường; Đạo trình tim.
Bảng 4.2 tổng hợp kết quả kiểm tra đánh giá hiệu quả của mạng neuron hỗ trợ chẩn đoán bệnh rối loạn nhịp tim, được luyện theo mô hình mạng MLP thiết kế trong bài báo [3].
Kết quả đào tạo mạng neuron chẩn đoán bệnh rối loạn nhịp tim từ bảng 4.1 và bảng 4.2 cho thấy sự khác biệt rõ rệt giữa hai trường hợp không gán và gán số cho các thuộc tính đầu vào bằng 0.
Kết quả từ các trường hợp 1, 2, 5 và 6 cho thấy hiệu quả tốt hơn so với trường hợp 0, cho thấy rằng đạo trình tăng cường, đạo trình tim, và thuộc tính DII đạo trình cơ bản là không cần thiết Để tiết kiệm thời gian tính toán, có thể loại bỏ một trong các thuộc tính này tùy thuộc vào yêu cầu về độ xác thực và thời gian hội tụ Cụ thể, để đạt được độ xác thực tốt nhất, nên giữ lại thuộc tính đạo trình tim, trong khi để tối ưu hóa thời gian hội tụ và vẫn đảm bảo độ xác thực tốt, nên loại bỏ thuộc tính đạo trình tăng cường.
Trường hợp 3 chỉ ra rằng tỉ lệ sai số cao và tỉ lệ thành công thấp, do đó việc loại bỏ thuộc tính đạo trình cơ bản là không hợp lý Điều này khẳng định rằng đạo trình cơ bản là thuộc tính quan trọng nhất trong quá trình huấn luyện mạng neuron để chẩn đoán bệnh rối loạn nhịp tim.
Dựa vào kết quả từ các trường hợp 4, 5, 6, chúng ta nhận thấy rằng DI là dạng thuộc tính quan trọng nhất, tiếp theo là DII Để tiết kiệm thời gian và đạt được kết quả tốt hơn, có thể xem xét việc loại bỏ dạng thuộc tính DIII.
Kết quả luyện mạng trong trường hợp 7 cho thấy thiết kế mô phỏng lại mạng theo bài báo [3] đạt hiệu quả cao, trong khi thiết kế của đồ án lại không khả quan Nguyên nhân có thể là do dữ liệu đầu vào chứa nhiều thuộc tính không có ý nghĩa, được gán trọng số bằng 0, dẫn đến thiếu kết nối giữa các thuộc tính.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang cho rằng số lượng neuron trong lớp ẩn của thiết kế mạng luân văn là không đủ, dẫn đến kết quả luyện mạng không chính xác.
Trường hợp 8 và 9 của cả hai mô hình luyện mạng cho thấy sự hội tụ về giá trị cực tiểu tổng thể giống như trường hợp 0 Điều này chỉ ra rằng mức độ quan trọng theo cấu trúc cơ thể cụ thể tương đồng ở cấp cơ quan chức năng của các nhóm thuộc tính đạo trình, chỉ khác biệt ở mức độ liên kết giữa các thuộc tính Thêm vào đó, bài viết cũng cung cấp một phương pháp để xác định cực tiểu tổng thể.
Kết quả từ các trường hợp mô phỏng theo phương pháp của bài báo [3] cho thấy hiệu quả vượt trội so với kết quả của mạng thiết kế trong đồ án Điều này được chứng minh dựa trên lý thuyết về mạng nơ-ron, trong đó số lượng nơ-ron trong lớp ẩn của mô hình mạng thiết kế ít hơn, dẫn đến chu kỳ hội tụ nhanh hơn nhưng cũng làm giảm độ chính xác.
Nhìn chung c ả 2 thiết kế đều có ƣu điểm riêng về độ chính xác và thời gian hội tụ , kết quả gần như là đương đương với nhau.
Mô hình MLP đã thiế t kế trong đồ án là phù hợp cho sử dụng trong chẩn đoán bênh rối loại nhịp tim.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang
KẾT LUẬN CHUNG VÀ ĐỀ XUẤT HƯỚNG NGHIÊN CỨU
Bằng cách sử dụng công cụ Neuron Network Toolbox trong phần mềm Matlab, tôi đã thiết kế mô hình mạng neuron lan truyền ngược (MLP) để hỗ trợ chẩn đoán bệnh rối loạn nhịp tim Mô hình này sẽ giúp bác sĩ trong việc thăm khám và đề xuất phác đồ điều trị phù hợp cho từng bệnh nhân Việc áp dụng các mô hình mạng neuron đã cho thấy tỷ lệ thành công cao trong chẩn đoán.
Từ trên ta có phương hướng hoàn thiện mạng neuron hỗ trợ chẩn đoán là:
Nghiên cứu nhằm xây dựng bộ dữ liệu bệnh rối loạn nhịp tim cho người Việt Nam, từ đó thiết kế mạng neuron phù hợp để hỗ trợ chẩn đoán bệnh Mục tiêu là nâng cao độ chính xác và hiệu quả trong việc chẩn đoán cho người dân Việt Nam.
Kết quả nghiên cứu cho thấy có thể áp dụng cho việc chẩn đoán các bệnh lý dựa trên các triệu chứng và thuộc tính đặc trưng khác nhau, được thu nhận ở nhiều mức cấu trúc cơ thể khác nhau.
GVHD: PGS.TS Huỳnh Lương Nghĩa SVTH: Đinh Văn Quang