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

Xây dựng hệ thống thu thập và xử lý tín hiệu điện tim ECG trên nền tảng iot

74 31 0

Đ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 đề Xây dựng hệ thống thu thập và xử lý tín hiệu điện tim ECG trên nền tảng IoT
Tác giả Đỗ Thanh Thái
Người hướng dẫn TS. Trần Minh Quang
Trường học Trường Đại Học Bách Khoa - ĐHQG Tp. HCM
Chuyên ngành Khoa Học Máy Tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2018
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 74
Dung lượng 2,58 MB

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

Nội dung

NHIỆM VỤ VÀ NỘI DUNG: - Hoàn thành nội dung trọng tâm trong việc nghiên cứu Hệ thống thu thập và xử lý tín hiệu điện tim ECG trên nền tảng IoT; - Có các bước tìm hiểu các công trình ng

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

-

ĐỖ THANH THÁI

XÂY DỰNG HỆ THỐNG THU THẬP VÀ XỬ LÝ TÍN HIỆU ĐIỆN TIM ECG TRÊN NỀN TẢNG IoT

(System for recording and processing of ECG signal based on IoT)

Ngành: Khoa Học Máy Tính

Mã số: 60480101

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 6 năm 2018

Trang 2

TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCM

Cán bộ hướng dẫn khoa học: TS Trần Minh Quang

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1: TS Trương Tuấn Anh

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2: PGS.TS Trần Công Hùng

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG

Tp HCM ngày 18 tháng 7 năm 2018

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)

1 PGS.TS Phạm Trần Vũ (Chủ tịch hội đồng)

2 TS Lê Hồng Trang (Thư ký hội đồng)

3 TS Trương Tuấn Anh (Phản biện đề tài)

4 PGS.TS Trần Công Hùng (Phản biện đề tài)

5 TS Trần Tuấn Anh (Ủy viên hội đồng)

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)

CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA KH&KTMT

Trang 3

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên: Đỗ Thanh Thái MSHV: 1570229 Ngày, tháng, năm sinh: 16.01.1992 Nơi sinh: Bình Dương Ngành: Khoa Học Máy Tính Mã số : 60480101

I TÊN ĐỀ TÀI: Xây dựng hệ thống thu thập và xử lý tín hiệu điện tim ECG trên nền tảng IoT (System for recording and processing of ECG signal based on IoT)

II NHIỆM VỤ VÀ NỘI DUNG:

- Hoàn thành nội dung trọng tâm trong việc nghiên cứu Hệ thống thu thập và xử lý tín hiệu điện tim ECG trên nền tảng IoT;

- Có các bước tìm hiểu các công trình nghiên cứu và hệ thống đã có;

- Đề xuất hệ thống theo định hướng của đề tài trên nền tảng đã nghiên cứu;

- Có hiện thực hóa và đánh giá kết quả nghiên cứu;

- Đạt được 1 bài báo khoa học

III NGÀY GIAO NHIỆM VỤ : 16/01/2017

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 03/12/2017 (được gia hạn 1 học kỳ đến HK2

Trang 4

LỜI CẢM ƠN

Đầu tiên, tôi xin gửi lời cảm ơn đến TS Trần Minh Quang, giảng viên hướng dẫn luận văn và là người

đã gắn bó, theo dõi, đốc thúc và hỗ trợ tôi trong suốt quá trình thực hiện luận văn Tôi cũng gửi lời cảm

ơn tới PGS.TS Trần Công Hùng, TS Trương Tuấn Anh đã có những góp ý phản biện, nhận xét giúp định hướng tốt hơn cho đề tài.

Ngoài ra, tôi cũng gửi lời tri ân những giảng viên trường đại học Bách Khoa đặc biệt là khoa Khoa học và Kĩ thuật Máy tính đã tận tình giảng dạy và cung cấp kiến thức trong suốt thời gian học tập và nghiên cứu tại trường Kiến thức quý giá mà các Thầy Cô mang lại sẽ là hành trang vô giá trên con đường sự nghiệp của tôi sau này.

Cuối cùng, tôi cũng cám ơn gia đình, bạn bè, những người luôn bên cạnh và đồng hành cùng tôi trong cuộc sống và công việc.

Trân trọng cám ơn.

Tháng 06 năm 2018

Trang 5

TÓM TẮT NỘI DUNG ĐỀ TÀI

Nhằm giải quyết vấn đề giảm thiểu tỷ lệ đột quỵ của các bệnh nhân mắc các bệnh lý về tim mạch,

đề tài đề xuất một hệ thống trong đó có sự kết hợp giữa các thành phần trong kiến trúc Kết nối vạn vật (Internet of Things) Mục tiêu của hệ thống nhằm cung cấp tính năng giúp giám sát tín hiệu điện tâm đồ của bệnh nhân theo thời gian thực, thông qua hệ thống Deep Learning sử dụng mô hình Mạng thần kinh nhân tạo dạng cuộn (Convolution Neural Network - CNN) để đưa ra dự đoán bất thường và cảnh báo cho bệnh nhân cũng như người thân một cách kịp thời Kết quả đạt được sau đề tài này là một hệ thống giả lập sự hoạt động của kiến trúc đã đề ra Đề tài thực hiện và đã đạt được một số bước đi nhất định như: tìm được thông tin về bộ cơ sở dữ liệu làm kiến thức nền tảng cho xây dựng mô hình nghiên cứu hệ thống chẩn đoán bệnh tim mạch, tìm hiểu và lấy tín hiệu ECG làm trọng tâm nghiên cứu, đề xuất được các giải thuật trong chẩn đoán bệnh tim mạch thông qua tín hiệu ECG, được trình bày trong bài báo nghiên cứu, tìm hiểu và đề xuất mô hình xử lý dữ liệu từ hệ thống cảm biến (sensing) qua tầng giao tiếp (communication) và lưu trữ, phân tích (store & analysis) Đồng thời với quá trình đó là quá trình tìm hiểu sâu về nền tảng IoT, trong đó các nghiên cứu liên quan đến IoT trong y tế là các công việc chính trong chuỗi tiến trình phân tích hệ thống Việc phát triển các hệ thống trực tuyến chăm sóc sức khỏe, nơi con người cung cấp các chỉ số sức khỏe hàng ngày hàng giờ chính là động lực đưa đến nghiên cứu xây dựng một hệ thống trực tuyến chăm sóc sức khỏe phục vụ cho ngành y tế, với mục tiêu cụ thể hơn nữa, đề tài hướng đến việc xây dựng hệ thống trực tuyến chăm sóc sức khỏe phục vụ cho các cá nhân,

tổ chức quan tâm đến bệnh tim mạch Trong quá trình nghiên cứu, đề tài gặp một số khó khăn, thách thức như: nhiễu từ tín hiệu đo cản trở kết quả chẩn đoán cũng như phân tích tín hiệu điện tim, kết quả nghiên cứu cần sự chung tay của đông đảo bệnh nhân, cũng như đội ngũ các chuyên gia y tế, nhằm kiểm chứng đồng thời cho những lời khuyên giúp hoàn thiện hệ thống.

Trang 6

IoT technology has been recently adopted in the healthcare system to collect Electrocardiogram (ECG) signals for heart disease diagnosis and prediction First, we have used a Finite Impulse Response (FIR) algorithm to filter and transform the signals into digital format Then, the digital data is proceeded using a revised Convolution Neural Network (CNN) algorithm Finally, we extract some key features from the data

to perform diagnosis and prediction based on a feature dataset We have used an ECG dataset from BIH (PhisioNet) to build a knowledge-base diagnosis features We have implemented a proof-of-concept system that collects and processes real ECG signals to perform heart disease diagnosis and prediction based on the built knowledge-base Electrocardiogram (ECG) signals are the data measured from patients’ heartbeats by electronic devices Generated by cells in the heart, ECG signals reflect all activities in these cells Therefore, ECG signals are the most valuable data used in the heart disease diagnosis Nowadays, ECG signals can be measured automatically by sensors instead of the conventional discrete measurement The data collected by the sensors can be transmitted to a cloud-based system to perform preliminary automatic diagnosis based on a knowledge-base without medical experts A knowledge-base is initially built using a large sample dataset, and then can frequently be updated by specialists to improve the accuracy of the prediction The overall aim of our work is to develop such an eco-expert system using Internet of Things (IoT) technology As data can be collected in real-time and transmitted to the cloud for analysis, the proposed expert system will help patients to detect their possible heart diseases before seeing their doctors This system can also support the physicians to perform treatment for their patients for a minimum period However, there are several significant research challenges in building such expert systems First, noises always appear in the ECG signals, making the data imprecisely or even unreadable Second, building a knowledge-base to be used in heart disease diagnosis and prediction is not a trivial task Finally, ECG signals must be extracted with some key features to match with the knowledge-base for accuracy prediction.

Trang 7

MIT-LỜI CAM ĐOAN

Tôi xin cam đoan, ngoài các kết quả tham khảo từ các công trình khác như trích dẫntrong luận văn, các nội dung trình bày trong luận văn do chính tôi thực hiện và chưa

có phần nội dung nào của luận văn này được công bố như một luận văn khác bên ngoàitrường

Tháng 06 năm 2018

Trang 8

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

IoT Internet of Things ECG Electrocardiography/Electrocardiogram CNN Convolution Neural Network

RNN Recurrent Neural Network ANN Artificial Neural Network LSTM Long Short-Term Memory

AI Artificial Intelligence

NN Neural Networks NFIR Nonlinear Finite Impulse Response NAR Nonlinear Autoregressive Neural Network NARMAX Nonlinear Autoregressive Exogenous NOE Node Neural Network

NBJ Nonlinear Box-Jenkins MLP Multilayer Perceptron RBF Radial Basis Function ANFIS Adaptive Neural Fuzzy Inference System MIT-BIH Name of database type which belongs to Physionet SVM Support Vector Machine

HOS Higher Order Statistics ICA Independent Component Analysis MEMS Microelectromechanical Systems WBAN Wireless Body Area Network

ADC Analog Digital Converter FIR Finite Impulse Response SAX Symbolic Aggregate Approximation MAD Median Absolute Deviation

TCP Transmission Control Protocol JSON JavaScript Object Notation BSON Binary JavaScript Object Notation ARM Advanced RISC Machine

Trang 9

Mục lục

1 Giới thiệu và tóm tắt nội dung đề tài 7

1.1 Giới thiệu hệ thống chăm sóc bệnh tim mạch 7

1.2 Tóm tắt nội dung đề tài 7

1.3 Đóng góp của đề tài 8

2 Nền tảng nghiên cứu và các công trình liên quan 10 2.1 Giới thiệu các công trình liên quan 10

2.2 Giới thiệu nền tảng kiến trúc Internet of Things 13

2.3 Giới thiệu nền tảng nghiên cứu thông qua các giải thuật học máy và học sâu 15

3 Kiến trúc hệ thống 29 3.1 Sơ đồ thiết kế 29

3.2 Biểu đồ Use Cases 34

3.3 Thiết kế cơ sở dữ liệu 38

4 Phân tích dữ liệu và chẩn đoán bệnh 40 4.1 Lọc nhiễu từ cảm biến 40

4.2 Khai phá tập thường xuyên 41

4.3 Đề xuất mô hình dự đoán bất thường 47

5 Kết quả thực nghiệm 55 5.1 Kết quả đo từ thiết bị 55

5.2 Kết quả thực thi mô hình và đánh giá 55

6 Kết luận và hướng phát triển 60 7 Phụ lục 64 7.1 Hệ thống máy chủ 64

7.2 Hệ cơ sở dữ liệu 64

7.3 Hệ thống nhúng 66

7.4 Hệ thống học máy 68

Trang 10

1 Giới thiệu và tóm tắt nội dung đề tài

1.1 Giới thiệu hệ thống chăm sóc bệnh tim mạch

Mỗi năm chỉ tính riêng tại Việt Nam đã có khoảng 200.000 người chết vì bệnh timmạch, không chỉ cướp đi sinh mạng của nhiều người dân, điều đáng báo động là có đến20% dân số Việt Nam mang trong mình các yếu tố của bệnh tim mạch, bao gồm các bệnhnhân tim mạch, người mới khởi phát bệnh, người có nguy cơ cao bị bệnh Trên toàn thếgiới, con số là 17,2 triệu người tử vong mỗi năm do các bệnh liên quan đến tim mạch [1].Theo số liệu được đưa ra tại tọa đàm "Vì trái tim khỏe Việt Nam" diễn ra tại bệnh việnTim Hà Nội vào sáng 25/03/2015, tại Việt Nam, cứ 3 người trưởng thành có 1 người cónguy cơ mắc bệnh tim mạch Mỗi năm, các bệnh lý về tim mạch cướp đi khoảng 200.000người, chiếm 1/4 tổng số trường hợp tử vong tại Việt Nam Theo WHO, bệnh tim mạchđang là nguyên nhân tử vong hàng đầu ở người trên toàn thế giới và chiếm nhiều nhất ởcác nước đang phát triển Mỗi năm, người chết do bệnh tim và đột quỵ nhiều hơn cả ungthư, lao, sốt rét và HIV cộng lại [1]

Cụ thể các vấn đề cốt lõi liên quan đến bệnh tim mạch gồm có: bệnh động mạch ngoại

vi, các chức năng tim bị biến đổi và suy tim, rối loạn nhịp tim, tăng huyết áp, bệnh lýtim mạch liên quan đến thai nhi và bà mẹ mang thai, bệnh tim với phụ nữ, trẻ em sơ sinh

do các yếu tố khiến trẻ bị bệnh bẩm sinh, bệnh động mạch vành, bệnh hở van tim.Phòng chống và chữa trị bệnh tim mạch, nhất là trong bối cảnh các bệnh liên quanđến tim mạch do yếu tố lười vận động trong xã hội ngày nay, do thói quen ăn uống điểnhình như các loại thức ăn nhanh, thức ăn quá nhiều dầu mỡ, và thức ăn có đường cũng

là những vấn đề khiến cho việc nghiên cứu đưa ra các giải pháp theo dõi và ngăn chặnbệnh tim đang được đẩy mạnh Việc nghiên cứu và ứng dụng thành công các giải phápđược đề xuất trong đề tài này có ý nghĩa lớn đáp ứng nhu cầu thực tiễn cấp bách

1.2 Tóm tắt nội dung đề tài

Nhằm giải quyết vấn đề giảm thiểu tỷ lệ đột quỵ của các bệnh nhân mắc các bệnh lý

về tim mạch, đề tài đề xuất một hệ thống trong đó có sự kết hợp giữa kiến trúc Kết nốivạn vật (Internet of Things), Điện toán đám mây nhiều tầng (Fog/Cloud Computing),các thiết bị nhúng, cảm biến và hệ thống Học sâu (Deep Learning) trong đề tài luận vănnày

Mục tiêu của hệ thống nhằm cung cấp tính năng giúp giám sát tín hiệu điện tâm đồcủa bệnh nhân theo thời gian thực, thông qua hệ thống Deep Learning sử dụng mô hìnhMạng thần kinh nhân tạo dạng cuộn (Convolution Neural Network - CNN) để đưa ra dựđoán bất thường và cảnh báo cho bệnh nhân cũng như người thân một cách kịp thời.Kết quả đạt được sau đề tài này là một hệ thống giả lập sự hoạt động của kiến trúc

đã đề ra Trong quá trình phân tích có so sánh giữa giải thuật CNN với 2 giải thuật khácgồm Mạng thần kinh nhân tạo dạng hồi quy (Recurrent Neural Network - RNN) và Bộnhớ kết hợp (Long Short-Term Memory - LSTM) về độ chính xác, sự phù hợp đối với hệthống Internet of Things và tín hiệu đầu vào

Trang 11

Đề tài thực hiện và đã đạt được một số bước đi nhất định như: tìm được thông tin về

bộ cơ sở dữ liệu làm kiến thức nền tảng cho xây dựng mô hình nghiên cứu hệ thống chẩnđoán bệnh tim mạch, tìm hiểu và lấy tín hiệu ECG làm trọng tâm nghiên cứu, đề xuấtđược các giải thuật trong chẩn đoán bệnh tim mạch thông qua tín hiệu ECG, được trìnhbày trong bài báo nghiên cứu, tìm hiểu và đề xuất mô hình xử lý dữ liệu từ hệ thốngcảm biến (sensing) qua tầng giao tiếp (communication) và lưu trữ, phân tích (store &analysis)

Đồng thời với quá trình đó là quá trình tìm hiểu sâu về nền tảng IoT, trong đó cácnghiên cứu liên quan đến IoT trong y tế là các công việc chính trong chuỗi tiến trìnhphân tích hệ thống Việc phát triển các hệ thống trực tuyến chăm sóc sức khỏe, nơi conngười cung cấp các chỉ số sức khỏe hàng ngày hàng giờ chính là động lực đưa đến nghiêncứu xây dựng một hệ thống trực tuyến chăm sóc sức khỏe phục vụ cho ngành y tế, vớimục tiêu cụ thể hơn nữa, đề tài hướng đến việc xây dựng hệ thống trực tuyến chăm sócsức khỏe phục vụ cho các cá nhân, tổ chức quan tâm đến bệnh tim mạch Một căn bệnhlấy đi sinh mạng nhiều người trên thế giới hiện nay

Bằng việc khai phá dữ liệu điện tim, sau khi đã có được các thông tin rút trích, tínhiệu qua bộ phân loại bệnh nhằm có các cảnh báo tương ứng đến bệnh nhân, gia đình,chuyên gia y tế Điều quan trọng nhất trong cả tiến trình là sự cảnh báo kịp thời trongcác tình huống khẩn cấp như các cơn đau tim đột ngột, tình huống đột quỵ, và các biệnpháp dài hạn như dự báo bệnh tim trong tương lai thông qua tín hiệu điện tim Đó là cácvấn đề mà đề tài sẽ tập trung nghiên cứu

1.3 Đóng góp của đề tài

Đề tài đề xuất kiến trúc hệ thống IoT bao gồm thiết bị đo điện tâm đồ, hệ thống vớikiến trúc Fog/Cloud Computing và một ứng dụng trí tuệ nhân tạo Hệ thống là sự kếthợp giữa kiến trúc Internet of Things và nhu cầu chăm sóc sức khỏe tim mạch nhằm mụcđích giúp đỡ bệnh nhân theo dõi tình hình sức khỏe kịp thời, kết nối nhanh chóng với bác

sĩ và sử dụng trí tuệ nhân tạo để dự đoán các bất thường trong tín hiệu điện tim.Các tính năng chính của hệ thống hướng đến xây dựng bao gồm:

• Cung cấp cho người dùng một thiết bị có thể theo dõi tín hiệu điện tim theo thờigian thực và được kết nối với hệ thống thông qua Internet;

• Đưa ra các giải pháp có sử dụng trí tuệ nhân tạo, học máy, khai phá dữ liệu nhằm

hỗ trợ bác sĩ trong việc chẩn đoán cho bệnh nhân và dự đoán bất thường nhằm giúpbệnh nhân phòng tránh những cơn đau tim, và cảnh báo trong các tình huống độtxuất;

• Kết nối giữa bệnh nhân và bác sĩ/người thân thông qua Internet, giúp bác sĩ/ngườithân có thể theo dõi hoạt động tim mạch của bệnh nhân

• Đề tài hướng đến xây dựng một hệ thống phục vụ bệnh tim mạch Theo đó hệ thốngnày sẽ đóng vai trò là kênh thông tin cho bệnh nhân, bác sĩ, và cộng đồng Dựa trênnền tảng này, một bộ công cụ tự động chăm sóc sức khỏe cho bệnh nhân với các kiến

Trang 12

Về đóng góp khoa học, đề tài đã đạt được các nền tảng cơ bản trong việc xây dựngmột hệ thống hỗ trợ bệnh tim mạch Qua việc thiết kế hệ thống, đề tài đã đi sâu tìm hiểunhững hệ thống đã được nghiên cứu, từ đó có được cái nhìn ban đầu trong việc lựa chọncấu trúc hệ thống Qua các so sánh với những công trình nghiên cứu trước đó, và các đềxuất về mặt kiến trúc hệ thống sẽ góp phần xây dựng nền tảng cho các công trình nghiêncứu sau này Đề tài có thể được sử dụng như một tài liệu tham khảo, dựa trên các kếtquả được trình bày trong đề tài, các công trình sau sẽ rút ngắn thời gian trong việc khảosát, cũng như có thể sử dụng kết quả này để phát triển các bước tiếp theo.

Về đóng góp thực tiễn, đề tài cũng đã xây dựng hệ thống thực nghiệm thông qua việclựa chọn các thiết bị đo đạc tín hiệu ECG từ người dùng, tiến hành lọc nhiễu, xây dựnggiải thuật nhằm tìm kiếm các bất thường trong chuỗi tín hiệu ECG, và chẩn đoán bệnhdựa trên các bộ dữ liệu nền cũng như dữ liệu đo đạc Đề tài góp phần thể hiện các kếtquả trực quan mà hệ thống có thể mang lại, từ đó, chứng minh được mức độ khả quantrong việc đầu tư nghiên cứu và triển khai sử dụng hệ thống trong thực tế

Trang 13

2 Nền tảng nghiên cứu và các công trình liên quan

2.1 Giới thiệu các công trình liên quan

Đi sâu phân tích các bộ công cụ khai phá dữ liệu bệnh tim mạch, đề tài đưa ra mức

độ khái quát như sau: các bộ khai phá đều xoay quanh các chủ đề liên quan đến MachineLearning mà cụ thể là Neural Networks, Neural Networks là nền tảng phát triển các bộhọc phỏng theo mạng thần kinh não người; Machine Learning mang đến khả năng huấnluyện các bộ học chạy trên nền tảng vi xử lý, mang đến khả năng tự cải thiện chính các

bộ học mà không cần sự can thiệp của con người trong quá trình vận hành của chúng Sựkết hợp của hai nhóm này tạo nên một hệ thống có khả năng thể hiện "trí thông minhnhân tạo", từ đó, đưa ra khái niệm Artificial Intelligence - AI AI dùng trong y tế sẽ gópphần giải quyết hầu hết mọi khó khăn hiện nay; như các trường hợp người dân thiếu kiếnthức y tế trầm trọng ở những vùng sâu vùng xa, đi khám bệnh tại các bệnh viện tuyếntrên phải chờ đợi từ ngày này qua ngày khác, sự thắc mắc bệnh lý của người bệnh nhưngkhông biết nhờ tư vấn bởi ai trước khi đi tới bệnh viện thăm khám, tình trạng tiêu cựctrong y tế Và một trong những sản phẩm của AI mà đề tài đang theo đuổi đó là một

hệ thống chăm sóc sức khỏe trên nền tảng IoT

Về mô hình mạng thần kinh nhân tạo (Neural Networks - NN), NN được sử dụng dướinhiều giải thuật tích hợp khác nhau, dựa trên mỗi nghiên cứu khác nhau của các nhànghiên cứu, có thể kể ra một số dạng hồi quy như NFIR (Nonlinear Finite Impulse Re-sponse) [35], NAR (Nonlinear Autoregressive Neural Network) [16], NARMAX (NonlinearAutoregressive Exogenous) [36, 23], NOE (Node Neural Network) [12], NBJ (NonlinearBox-Jenkins) [13, 40] về cơ bản là sự thay đổi của các phần tử hồi quy, áp dụng trongcác tín hiệu khai phá khác nhau tùy theo đặc điểm của từng loại dữ liệu Ngoài ra, còn

có các mạng thần kinh cấu trúc khác nhau như MLP (Multilayer Perceptron) [37, 32],RBF (Radial Basis Function) [33, 15], Adaptive Neural Fuzzy Inference System (ANFIS)[25, 21] Nhằm đi đến kết luận về kết quả của sự kết hợp các mô hình Nơron khác nhautrong khai phá dữ liệu tim mạch [30], các tác giả đã chỉ ra sự cải thiện rõ rệt trong kếthợp các mô hình Hybrid Neural Network, Neuro-Fuzzy TSK, và Support Vector Machinekhi phân loại được 7 loại nhịp tim khác nhau, dữ liệu được lấy từ Physionet (MIT-BIHAD), cải thiện độ chính xác trong nhận dạng nhịp tim, giảm thiểu sai số (reduces falsenegative) so với khi áp dụng riêng lẻ từng mô hình

Một mô hình khác được sử dụng rộng rãi trong khai phá dữ liệu điện tim là mô hìnhMáy vectơ hỗ trợ (Support Vector Machine - SVM), SVM được sử dụng như hệ chuyêngia trong phân loại tín hiệu điện tim [31], các tác giả đã sử dụng 2 phương pháp chínhtrong phân loại gồm Thống kê số liệu bậc cao (Higher Order Statistics - HOS), và Phươngpháp phân tích đặc tính Hermite (Hermite Characterization of QRS - HCQ), kết hợp vớinền tảng SVM cho 2 bộ phân loại Nơron, 2 bộ này lại kết hợp cho kết quả cuối cùng là

hệ chuyên gia phân tích và phân loại tín hiệu điện tim Để có thể đưa ra các trọng sốtối ưu (w) trong hệ, các tác giả đã sử dụng phương pháp bình phương tối thiểu, kết quảphân tích cho 13 tín hiệu điện tim khác nhau cho kết quả khả quan, tuy nhiên, ở các lầnchạy khác nhau vẫn cho các kết quả chênh lệch cho thấy phương pháp này cần được hoànthiện hơn

Trang 14

tính động theo thời gian, và kết hợp với phân tích hình thái học của chu kỳ tín hiệu điệntim theo thời gian [43], phương pháp chính trong nghiên cứu này là các tác giả đã sửdụng mô hình sự biến đổi dạng sóng và độc lập phân tích các thành phần cấu thành nêntín hiệu điện tim (Wavelet transform and independent component analysis - ICA), việcphân tích trượt dọc trên từng tín hiệu điện tim trên chuỗi theo thời gian, đặc tính độngđược khai phá thông qua 2 đỉnh sóng R-R (chu kỳ RR), các đặc tính trên được kết nối

và kết hợp với SVM cho kết quả phân loại được 16 loại tín hiệu khác nhau

Bên cạnh những mô hình chính đã được trình bày, một phương pháp được sử dụngtrong phân tích chuỗi tín hiệu theo thời gian, đó là sử dụng tập thường xuyên [38], phươngpháp này cho phép đưa ra các mẫu thường xuất hiện nhất trong chuỗi tín hiệu thời gian,đặc biệt có ý nghĩa lớn trong thực tiễn khi chiều dài chuỗi có độ lớn, mà các phương phápphân tích khác không hiệu quả, khi có các mẫu, việc kiểm tra các mẫu "ngoại lệ" xuấthiện được thuận lợi, trong một nghiên cứu khác, phương pháp này còn giúp cho dự đoáncác trường hợp tử vong do các triệu chứng liên quan đến tim mạch [27]

Hiện nay, thông tin về tình trạng của những người sử dụng như: số lượng người bịbệnh, loại bệnh, tình trạng bệnh nặng hay nhẹ, công việc mà họ đang làm mỗi ngày, sốgiờ giành cho nghỉ ngơi và tập thể dục, vận động, thói quen ăn uống của họ là nhữngthông tin rất quan trọng trong quá trình thu thập dữ liệu nhằm đưa ra các cảnh báo cũngnhư rút trích các thông tin phục vụ cho quá trình nghiên cứu bệnh tim mạch, mở đườngcho những hướng tiếp cận mới về các vấn đề liên quan đến bệnh tim mạch Do vậy, đảmbảo kết nối người bệnh với mạng lưới theo dõi nhằm khắc phục nhanh nhất trong cáctình huống khẩn cấp như đột quỵ, nhồi máu cơ tim là vô cùng quan trọng, có thể cứusống đến hơn 90% bệnh nhân trong các giờ “vàng”, giờ vàng là khoảng thời gian giànhcho cấp cứu với hy vọng không để lại di chứng như liệt nửa người, đời sống thực vật tính

từ lúc bắt đầu khởi phát bệnh cho đến một khoảng thời gian cố định, theo nghiên cứu là

4 giờ đầu [8] Do vậy, câu hỏi nghiên cứu được đặt ra là làm sao có thể xây dựng một hệthống giành cho cộng đồng bệnh tim mạch, với nền tảng là sự kết nối hệ thống được xâydựng với người bệnh, người quan tâm đến bệnh tim mạch và muốn theo dõi tình trạngsức khỏe, các chuyên gia y tế, các nhà khoa học, nhà nghiên cứu, các tổ chức có mối quantâm

Ý tưởng khoa học chính của đề tài này là nghiên cứu và đề xuất một mô hình hệ thốngchăm sóc sức khỏe, trong đó, người bệnh kết nối và nhận các cảnh báo tự động, cảnh báo

có thể từ hệ thống gửi đến chính bản thân hoặc cảnh báo đến người nhà bệnh nhân trongcác tình huống nguy cấp; hệ thống này cũng là nơi các chuyên gia đóng góp xây dựng hệthống thông qua các bộ tri thức được kiểm duyệt kỹ lưỡng; nơi những người quan tâmđến bệnh tim mạch tìm kiếm, đặt câu hỏi và nhận được các lời khuyên chính xác từ cácchuyên gia một cách nhanh chóng Hệ thống này dùng nền tảng có sẵn là các thiết bị diđộng để tạo kết nối và trao đổi thông tin giữa người dùng và hệ thống Khi phạm vi củamạng được mở rộng, hệ thống sẽ được xây dựng hướng đến sử dụng nền tảng các bộ tựhọc và tự huấn luyện có sự kiểm duyệt chéo của các chuyên gia y tế, truy cập này đượcquản lý phân tầng dữ liệu, có phân biệt dữ liệu chia sẻ với dữ liệu cá nhân bảo mật củangười dùng Ưu điểm của hệ thống là việc sử dụng các thiết bị di động sẵn có của ngườidùng, nhận được sự quan tâm của cả bệnh nhân và người nhà bệnh nhân vì tính chất củabệnh cần sự can thiệp nhanh nhất có thể để cứu sống bệnh nhân trong các tình trạngbệnh nguy cấp, trong các bệnh lý đặc thù có thể sử dụng thêm thiết bị ngoại vi theo dõisức khỏe chuyên dụng nhỏ gọn phục vụ cung cấp dữ liệu cho hệ thống thông qua kết nối

Trang 15

với các thiết bị số cá nhân Do đó, mô hình hệ thống đề xuất có thể được triển khai ngayvào thực tế.

Qua tìm hiểu nghiên cứu đề tài, ở Việt Nam chưa có giải pháp nào tương tự được công

bố và đưa vào sử dụng rộng rãi Ở phạm vi thế giới, mặc dù có nhiều công trình nghiêncứu áp dụng các công nghệ theo dõi sức khỏe, tuy nhiên, chỉ dừng lại ở việc cá nhân hoặcmột nhóm nhỏ theo dõi sức khỏe thông qua việc sử dụng các thiết bị chuyên dụng nhưđồng hồ, vòng đeo tay, có cả các thiết bị số cá nhân nhưng để có một hệ thống chuyên vềbệnh tim mạch, tích hợp hệ thống theo dõi, cảnh báo tự động với cơ sở tri thức cập nhậtđộng và kiểm duyệt chéo là chưa có [5] Đề tài này thể hiện rõ tính mới trong việc tìm

ra mô hình phù hợp cho việc áp dụng công nghệ kết nối vạn vật phục vụ trong lĩnh vực

y tế, chăm sóc sức khỏe Đề tài này không chỉ mang lại tính hữu ích về mặt xã hội màthông qua đó còn cho phép nghiên cứu những vấn đề liên quan trong lĩnh vực y tế, cáccông nghệ phòng, chống và điều trị bệnh tim mạch có thể ứng dụng được vào thực tiễnnước ta

Hiện tại, số lượng các website tích hợp bộ công cụ trò chuyện trực tuyến (chatbox)không ngừng tăng, bộ công cụ này tự động hiển thị khi người dùng truy cập vào websitecủa các tổ chức/cá nhân; dễ thấy nhất là các website của các phòng khám y tế tư nhân,bệnh viện tư nhân Bộ công cụ cho phép người dùng trò chuyện trực tiếp với hệ thốngmáy chủ hoặc nhân viên y tế, bác sĩ nhằm đặt lịch khám trước hoặc tư vấn sức khỏeonline Website điển hình: https://vicare.vn/

Do đó, mức độ chỉ dừng lại ở bộ công cụ trò chuyện trực tuyến và đặt chỗ trước, chưa

có các hệ thống chia sẻ dữ liệu về các triệu chứng, cách thức điều trị, thông tin về phòngkhám hoặc bệnh viện gần nhất phù hợp với tình trạng bệnh cũng như yêu cầu về chấtlượng dịch vụ của cơ sở y tế mà bệnh nhân mong đợi Đề tài này nghiên cứu và xây dựngmột hệ thống nhằm khuyến khích cộng đồng chia sẻ những thông tin nêu trên, phục vụquá trình phòng và điều trị bệnh tốt hơn, tập trung vào bệnh tim mạch [39]

Hệ thống dành riêng cho y tế nói chung và bệnh tim mạch nói riêng trên thế giới vẫnchưa được phát triển thực sự chuyên sâu Hiện tại, phát triển mạnh nhất là các dòng thiết

bị cá nhân (điện thoại thông minh, đồng hồ đeo tay, miếng cảm biến dán ), có thể kểđến các thiết bị:

• IriverOn (http://www.elkaysports.nl/) cung cấp các chỉ số nhịp tim, nhịp thở;

• Electrozyme (http://www.biolinq.me/) cung cấp các chỉ số nhịp tim;

• Iphone đưa ra ứng dụng cung cấp số đo ECG (điện tâm đồ);

• Bluestar (http://www.welldoc.com/product/bluestar) là một ứng dụng di động đưa

ra các chỉ dẫn dựa trên đơn thuốc

Mức độ chỉ dừng lại ở thiết bị/ứng dụng cá nhân, phạm vi hoạt động dựa trên bộ thưviện hạn hẹp mang tính khuôn mẫu của nhà cung cấp

Hiện nay, các công trình nghiên cứu áp dụng kiến trúc IoT cho y tế đang ngày mộtnhân rộng Cụ thể, một vài nhóm nghiên cứu và công ty đã khai thác dữ liệu y tế (nhịp

Trang 16

mạch, và áp dụng các kiến thức học máy để cảnh báo, chẩn đoán tự động cho dạng bệnhnhân này, cụ thể là một hệ thống nơi mọi người có thể tham gia vào một cộng đồng vàđóng góp xây dựng hệ thống hàng ngày hàng giờ theo thời gian thực, đồng thời việc chẩnđoán bệnh cũng như đưa ra các cảnh báo hoàn toàn tự động và nhanh chóng.

Có thể kể ra một số nghiên cứu liên quan đến tìm hiểu và sử dụng kiến thức học máynhằm khai phá dữ liệu vào các dạng dữ liệu phổ biến [22] Trong nghiên cứu này đề tàitập trung các kiến thức đã có trước đó để sử dụng cho dữ liệu điện tâm đồ, một loại dữliệu về hiệu điện thế chứa nhiều thông tin về hoạt động tim mạch, và áp dụng vào hệthống chăm sóc sức khỏe [24]

2.2 Giới thiệu nền tảng kiến trúc Internet of Things

Internet of Things là mạng lưới thiết bị kết nối Internet viết tắt là IoT, trong mạnglưới đó mỗi thực thể tham gia được cung cấp một định danh riêng và tất cả đều có khảnăng truyền tải thông tin, trao đổi thông tin, dữ liệu qua một mạng duy nhất mà khôngcần đến sự can thiệp từ bên ngoài IoT đã phát triển từ sự kết hợp của công nghệ khôngdây, công nghệ vi cơ điện tử (MEMS) và Internet Đơn giản hơn, một tập hợp các thiết

bị có khả năng kết nối với nhau, với Internet và với thế giới bên ngoài để thực hiện mộtcông việc nào đó chính là mạng lưới IoT

IoT bao gồm 3 phân tầng chính: hệ thống cảm biến (sensing), tầng giao tiếp nication), tầng lưu trữ và phân tích dữ liệu (store & analysis)

(commu-Hệ thống cảm biến (sensing): bao gồm các thiết bị thu thập dữ liệu, có thể là cácthiết bị cá nhân như điện thoại thông minh, thiết bị đeo tay thông minh gọi chung làWBAN (Wireless Body Area Network) Các nghiên cứu vào WBAN khá phổ biến và sôinổi trong những năm gần đây (sau năm 2010), các nghiên cứu tập trung vào các mảnglớn: tiết kiệm năng lượng tiêu thụ, tìm kiếm các giải pháp năng lượng thay thế như nănglượng mặt trời tự sạc, hoặc tập trung tối ưu hóa thiết kế vi mạch nhằm tăng hiệu năngnhưng giảm năng lượng tiêu thụ

Tầng giao tiếp (communication): tập trung vào việc xử lý dữ liệu có được từsensing, các nghiên cứu tập trung vào tối ưu hóa việc lựa chọn cấp độ lưu trữ (local, globalhay broadcast trong phạm vi nhất định) Việc tối ưu hóa tại phân tầng communicationkhá quan trọng, nó quyết định đến băng thông truyền tải dữ liệu, kích thước các bộ lưutrữ, điều này có ý nghĩa rất quan trọng trong thế giới dữ liệu lớn không ngừng mở rộngnhư hiện nay

Tầng lưu trữ và phân tích dữ liệu (store & analysis): khi dữ liệu được lưu trữ,công việc cần giải quyết nhằm khai thác có hiệu quả, biến những dữ liệu bất động thànhnhững thông tin hữu ích phục vụ cho mọi mặt của thời đại dữ liệu lớn

Đề tài nghiên cứu đi sâu phân tích một mảng trong mạng lưới IoT, đó là sức khỏe,việc phát triển của các hệ thống trực tuyến chăm sóc sức khỏe, nơi con người cung cấpcác chỉ số sức khỏe hàng ngày hàng giờ chính là động lực đưa đến nghiên cứu xây dựngmột hệ thống trực tuyến chăm sóc sức khỏe phục vụ cho ngành y tế, với mục tiêu cụ thểhơn nữa, đề tài hướng đến việc xây dựng hệ thống trực tuyến chăm sóc sức khỏe phục vụcho các cá nhân, tổ chức quan tâm đến bệnh tim mạch Một căn bệnh lấy đi sinh mạng

Trang 17

nhiều người trong thế giới hiện nay.

Hình 1: Internet of Things và sự phát triển của các ngành năm 2018 Nguồn: iot.do

IoT có ứng dụng rộng và bao trùm toàn bộ các hoạt động của đời sống; các mối liênkết giữa các lĩnh vực được ứng dụng trong đời sống cũng như sản xuất thông qua mạnglưới IoT được thể hiện trên hình 1, có thể kể ra một số ứng dụng như sau:

• Quản lý chất thải, rác thải;

• Quản lý đô thị;

• Quản lý môi trường, chất lượng các chỉ số vật lý, hóa học, sinh học của môi trườngxung quanh;

• Phản hồi trong các tình huống khẩn cấp như: cháy nổ, thiên tai (động đất, núi lửa) ;

• Mua sắm thông minh, hỗ trợ ra quyết định mua sắm;

• Quản lý các thiết bị cá nhân như bảo vệ tài sản (ôtô, nhà cửa, thiết bị di động),hoặc tự động định kỳ bảo trì bảo dưỡng;

• Đồng hồ đo thông minh trong y tế, điện lực, nước sinh hoạt;

• Nhà thông minh

Cụ thể trong lĩnh vực y tế, Thiết bị IoT có thể được sử dụng để cho phép theo dõisức khỏe từ xa và hệ thống thông báo khẩn cấp Các thiết bị theo dõi sức khỏe có thểbao gồm các thiết bị đo huyết áp và nhịp tim với mức độ tiên tiến có khả năng giám sátthông qua cấy ghép đặc biệt, chẳng hạn như máy điều hòa nhịp tim hoặc trợ thính tiêntiến Cảm biến đặc biệt cũng có thể được trang bị trong không gian sống để theo dõi sứckhỏe của người già, gồm cả các thiết bị mang trên người và chụp phổ quang học trang bịxung quanh môi trường sống của người dùng

Trang 18

2.3 Giới thiệu nền tảng nghiên cứu thông qua các giải thuật học máy và họcsâu

2.3.1 Mạng Nơ-ron nhân tạo

Mạng Nơron nhân tạo (Artificial Neural Network - ANN) là mô hình xử lý thông tinđược cấu trúc hóa dựa trên nguyên lý hoạt động của hệ thống thần kinh sinh vật ANNbao gồm số lượng lớn các Nơron có liên kết với nhau để xử lý thông tin ANN giống như

bộ não sinh vật, qua quá trình trải nghiệm, các Nơron sẽ được hoạt hóa và tự học hỏikinh nghiệm thông qua việc cập nhật những chỉ số trong từng Nơron (quá trình này gọi

là huấn luyện) Qua quá trình huấn luyện, các Nơron có khả năng lưu giữ những kinhnghiệm tri thức và sử dụng những tri thức đã được học cho việc dự đoán và xử lý các dữliệu mới, chưa có trong bộ tri thức

Cấu trúc chung của một mạng Nơron nhân tạo (ANN) gồm 3 thành phần: Input Layer,Hidden Layer, và Output Layer được thể hiện trên hình 2

Neural

Output nodes layer

y1

y2

Hidden nodes layer

Input nodes layer

x1

x2

x3

Links Links

Hình 2: Kiến trúc cơ bản của một mạng Neural nhân tạo

Lớp ẩn (Hidden Layer) gồm các Nơron nhận dữ liệu input từ các Nơron ở lớp vào(Input Layer) và chuyển đổi các input này cho các lớp xử lý tiếp theo Trong một ANN

có thể có nhiều lớp ẩn, việc chọn số lớp ẩn tùy thuộc vào mô hình bài toán, cụ thể là kếtquả đầu ra mong muốn trên cơ sở đầu vào là cấu trúc dữ liệu

Trang 19

Các Processing Elements (PE) của ANN chính là các Nơron, mỗi Nơron nhận các dữliệu vào (Inputs) và xử lý chúng, cho ra một kết quả (Output) duy nhất Kết quả xử lýcủa một Nơron có thể làm Input cho các Nơron khác, hình 3 mô tả quá trình tính toáncác thông số đầu vào (inputs), và các trọng số (wij) thông qua hàm tổng (Summationfunction) cho kết quả đầu ra (outputs) Việc này cho phép điều chỉnh thích nghi tùy thuộcvào mô hình học khác nhau sẽ có mức độ học sâu khác nhau, đảm bảo được mục tiêu của

Hình 3: Quá trình xử lý thông tin của một ANN

• Inputs data (dữ liệu vào): Mỗi Input tương ứng với 1 thuộc tính (attribute) của dữliệu (patterns), tùy thuộc vào các tiêu chí được đánh giá thông qua các trọng số mà

số lượng các attribute được chọn làm input sẽ khác nhau

• Output (kết quả): Kết quả của một ANN là một giải pháp cho một vấn đề, kết quảnày có được từ phép toán giữa các input và các trọng số, hiện thực qua các ProcessingElements

• Connection Weights (Trọng số liên kết): Giá trị các trọng số liên kết quyết định đếntốc độ huấn luyện, độ hội tụ, kết quả huấn luyện có đạt được hay không, do đó,đây là thành phần rất quan trọng của một ANN, nó thể hiện mức độ quan trọng(độ mạnh) của dữ liệu đầu vào đối với quá trình xử lý thông tin (quá trình chuyểnđổi dữ liệu từ Layer này sang Layer khác) Quá trình học (Learning Processing) củaANN thực ra là quá trình điều chỉnh các trọng số (Weights) của các input data để

có được kết quả mong muốn

• Summation Function (Hàm tổng): Tính tổng trọng số của tất cả các input được đưavào mỗi Nơron (phần tử xử lý PE) Hàm tổng của một Nơron đối với n input được

Trang 20

tính theo công thức sau, trong đó X(input), W(Weight):

Hình 4: Ví dụ hàm chuyển đổi của một note trong mạng Nơron nhân tạo

Hình 4 mô tả cách tính toán đầu ra (outputs) thông qua đầu vào (inputs) và cáctrọng số (wij), áp dụng (1) cho kết quả:

Việc lựa chọn Transfer Function có tác động lớn đến kết quả của ANN, tùy vào từng

mô hình huấn luyện để lựa chọn hàm chuyển thích hợp Hàm chuyển đổi phi tuyếnđược sử dụng phổ biến trong ANN là hàm sigmoid (Logical Activation) function

YT = 1

Trong đó:

Trang 21

Khi mô hình huấn luyện được thiết kế phù hợp với dữ liệu, các trọng số sẽ dần đượchội tụ về chính xác hơn và làm giảm giá trị trả về của hàm sai số, khi giá trị này đếnngưỡng phù hợp với mục tiêu huấn luyện, hệ thống sẽ dừng việc huấn luyện và đưa ra môhình mạng đạt được trong lần huấn luyện tốt nhất, số lần huấn luyện có thể được giớihạn với các mục đích khác nhau như tránh việc chạy không có điểm dừng khi không đạtgiá trị hội tụ mong muốn hoặc nhằm đánh giá nhanh kết quả của mô hình.

Để có thể đánh giá độ chính xác của một mạng huấn luyện, một phần (thường là 20%

dữ liệu) được giữ lại và dùng cho mục đích đánh giá mạng đã được huấn luyện Các giátrị thường được tính để đánh giá gồm có:

TP: True Positive - kết quả dương được đoán đúng;

TN: True Negative - kết quả âm được đoán đúng;

FP: False Positive - kết quả dương bị đoán sai;

FN: False Negative - kết quả âm bị đoán sai

Trang 22

2.3.2 Mô hình Recurrent Neural Network

Hình 5: Mô hình Recurrent Neural Network Nguồn: wildml.com

Mục tiêu thiết kế của RNNs đó là thiết kế một mạng Neural Network có khả năng xử

lý được thông tin dạng chuỗi (sequential information), ví dụ một chuỗi tín hiệu ECG làmột chuỗi liên tiếp các số thực theo thời gian

Recurrent mang ý nghĩa thực hiện lặp lại cùng một tác vụ cho mỗi thành phần trongchuỗi thể hiện qua hình 5 Trong đó, kết quả đầu ra tại thời điểm hiện tại phụ thuộc vàokết quả tính toán của các thành phần ở những thời điểm trước đó

Có thể nói RNN là mô hình có trí nhớ (memory) và mang hệ quả khi kết quả ở hiệntại ảnh hưởng đến kết quả trong tương lai, và có khả năng nhớ được thông tin đã tínhtoán trước đó Không như các mô hình Neural Network truyền thống đó là thông tin đầuvào (input) mang tính độc lập với thông tin đầu ra (output) Về lý thuyết, RNNs có thểnhớ được thông tin của chuỗi có chiều dài bất kì, nhưng trong thực tế mô hình này chỉnhớ được thông tin ở vài bước trước đó

Qua sơ đồ biểu diễn RNN, có thể thấy rằng mô hình này có khả năng biểu diễn mốiquan hệ phụ thuộc giữa các thành phần trong chuỗi Ví dụ, nếu chuỗi đầu vào là một câu

có 5 từ thì Neural Network sẽ unfold (dàn ra) thành Neural Network có 5 layer, mỗi layertương ứng với mỗi từ Dưới đây là ý nghĩa các kí hiệu toán học

• xt là input tại thời điểm thứ t Ví dụ, x1 là one-hot vector của từ thứ hai trong câu(vị trí các từ được đánh số bắt đầu từ 0)

• st là hidden state (memory) tại thời điểm thứ t st được tính dựa trên các hiddenstate trước đó kết hợp với input của thời điểm hiện tạixt= f (Ust+ Wst−1) Hàm f làhàm nonlinearity (tanh hay ReLU).s−1 là hidden state được khởi tạo là một vectorkhông

• ot là output tại thời điểm thứ t ot là một vector chứa xác suất của toàn bộ các từtrong từ điển ot= sof tmax(Vst)

Nếu như Neural Network truyền thống, tại mỗi layer phải sử dụng một parameter khácthì RNNs chỉ sử dụng một bộ parameters (U, V, W) cho toàn bộ các bước

Trong thực tế, điểm yếu của RNN chính là mô hình này chỉ có bộ nhớ ngắn hạn, kếtquả của một note trong mạng chỉ ảnh hưởng bởi giá trị đầu vào trước đó 1 đến 3 bước,

Trang 23

các bước xa hơn chỉ ảnh hưởng nhỏ đến kết quả đầu ra Nhưng đôi khi, ta chỉ cần dựavào một số thông tin gần nhất để thực hiện tác vụ hiện tại Có thể thấy trong tín hiệuECG khi dự đoán giá trị tiếp theo dựa vào các giá trị cùng lần đập tim và nằm trước đó.Nếu chúng ta dự đoán giá trị cuối cùng trong một mẫu đo ECG dài 10 phút, thì chúng

ta không cần truy tìm quá nhiều giá trị trước đó, ta có thể đoán ngay giá trị tiếp theo

sẽ thuộc sóng P, QRS hay T dựa vào phần trước đó Trong trường hợp này, khoảng cáchtới thông tin liên quan được rút ngắn lại, điều này góp phần làm giảm bộ nhớ tính toán,giúp giải thuật chạy và cho kết quả nhanh hơn, phù hợp với mô hình bài toán

Về mặt lý thuyết, RNN hoàn toàn có khả năng xử lý chuỗi tín hiệu theo thời giandài, nơi các tín hiệu có quan hệ phụ thuộc lẫn nhau “long-term dependencies”, nghĩa làthông tin hiện tại có được là nhờ vào chuỗi thông tin trước đó Nhưng trong thực tế, RNNdường như không có khả năng này Vấn đề này đã được Hochreiter (1991) [German] andBengio, et al (1994)[19, 11] đưa ra như một bài toán cần giải quyết cho mô hình RNN.Vào những năm 1990, RNN phải đối diện với hai thách thức lớn đó là Vanishing vàExploding Gradients, các thách thức này ảnh hưởng lớn đến hiệu suất của mô hình Vấn

đề này phát sinh trong quá trình huấn luyện Nếu trọng số của ma trận W nhỏ (trị riêngtrọng số của ma trận nhỏ hơn 1), điều này sẽ dẫn đến trường hợp được gọi là vanishinggradients khi gradient signal ngày càng nhỏ/tan biến theo quá trình huấn luyện, khiếncho quá trình tối tiểu hoá hàm chi phí hội tụ chậm hoặc dừng hẳn Nếu trọng số của matrận W lớn (trị riêng trọng số của ma trận lớn hơn 1), ngược lại, điều này sẽ dẫn đếntrường hợp được gọi là exploding gradients khi gradient signal ngày càng bị phân tántrong quá trình huấn luyện, khi đó quá trình tối thiểu hoá hàm chi phí không hội tụ.Recurrent networks tìm kiếm và hình thành mối liên kết giữa final output và các inputevent thông qua nhiều bước trước khi kết thúc quá trình huấn luyện Vấn đề đặt ra làcác thông tin input trước đó cần đặt trọng số tương ứng là bao nhiêu Do vậy, đối với tínhiệu huấn luyện càng dài thì thông tin trước đó dần dần càng bị nhiễu hoặc bị che lấp.Khi thực hiện quá nhiều phép toán nhân ma trận liên tục xuyên suốt chiều dài của chuỗithì hiệu ứng vanishing/exploding sẽ xuất hiện, được thể hiện qua hình 6

Qua hình minh hoạ 6 cho thấy hiệu ứng khi áp dụng liên tiếp hàm sigmoid Dữ liệuthu được ngày càng tan biến dần cho đến lúc không còn nhận ra được nữa, làm mất vaitrò quan trọng của việc sử dụng hàm sigmoid Tương tự như gradient vanishing khi tatruyền dữ liệu qua nhiều layer

Trang 24

Hình 6: Vấn đề Vanishing/Exploding Gradient của RNN Nguồn: hirotaka-hachiya.hatenablog.com

2.3.3 Long Short-Term Memory Network

Long Short-Term Memory networks – LSTM, là trường hợp đặc biệt của RNN, có khảnăng học và duy trì được sự liên kết hệ quả trong chuỗi tín hiệu "long-term dependency"

Mô hình này được giới thiệu bởi Hochreiter và Schmidhuber (1997)[20], và được cải tiếnlại Sau đó, mô hình này dần trở nên phổ biến nhờ vào các công trình nghiên cứu sau đó

Mô hình này có khả năng tương thích với nhiều bài toán nên được sử dụng rộng rãi ở cácngành liên quan

Chính những vấn đề liên quan đến "long-term dependency", nên LSTM được thiết kếnhằm loại bỏ chúng Trước khi đi vào phân tích LSTM, ta quan sát lại mô hình RNNtrên hình 7, các layer đều mắc nối tiếp với nhau thành các module Neural Network TrongRNN chuẩn, repeating module này có cấu trúc rất đơn giản chỉ gồm một single tanh layer

Hình 7: Cấu trúc hàm chuyển đổi trong một note của RNN Nguồn: colah.github.io

Trang 25

Hình 8: Cấu trúc hàm chuyển đổi trong một note của LSTM Nguồn: colah.github.io

Điểm khác biệt của LSTM với RNN chuẩn nằm ở các repeating module, về mặt cấutrúc có thể thấy hoàn toàn khác Thay vì chỉ có một layer neural network, bên trongrepeating module có tới bốn layer, tương tác với nhau theo một cấu trúc cụ thể, được thểhiện qua hình 8

Các ký hiệu sử dụng được thể hiện trên hình 9

Hình 9: Các ký hiệu trong LSTM Nguồn: colah.github.io

Trên hình 9, hình tròn nền hồng biểu diễn pointwise operations, ví dụ phép cộngvector Hình hộp nền vàng là các Neural Network layers được huấn luyện Đường kẻ hợplại nhau biểu thị cho concatenation - hợp nhất tín hiệu, và đường rẽ nhánh biểu thị choquá trình sao chép tín hiệu thành các nhánh

Cấu trúc quan trọng của LSTM là cell state (tế bào trạng thái), đường kẻ ngang chạydọc trên khối repeating module Cell state giống như băng chuyền Nó ghé qua toàn bộcác mắt xích, chỉ một vài tương tác nhỏ ở dạng tuyến tính (minor linear interaction) đượcthực hiện Điều này giúp cho thông tin ít bị thay đổi xuyên suốt quá trình lan truyền,được thể hiện qua hình 10

Hình 10: Đường C lưu trạng thái Nguồn: colah.github.io

Trang 26

là cổng (gate) Các cổng này có dạng các tuỳ chọn để định nghĩa thông tin băng qua.Chúng được tạo bởi sigmoid neural net layer và một pointwise multiplication operation.Giá trị đầu ra của sigmoid layer outputs nằm trong đoạn [0 – 1], mô tả độ lớn thôngtin được phép truyền qua tại mỗi component Nếu giá trị thu được là zero điều này cónghĩa là “không cho bất kỳ tín hiệu nào đi qua”, ngược lại, nếu thu được giá trị là "một"

có nghĩa là “cho phép mọi tín hiệu đi qua” Một LSTM có ba cổng như vậy để bảo vệ vàđiều khiển cell state

Đầu tiên, mô hình LSTM quyết định thông tin nào cần loại bỏ khỏi cell state Tiếntrình này được thực hiện thông qua một sigmoid layer gọi là “forget gate layer” – quátrình này là quan trọng để đưa hiệu quả xử lý ở các bước sau được tốt hơn Đầu vào là

ht−1vàxt, đầu ra là một giá trị nằm trong khoảng[0, 1]cho cell stateCt−1 1 tương đươngvới “giữ lại thông tin”, 0 tương đương với “loại bỏ thông tin”, được thể hiện qua hình 11

Hình 11: Cổng quyết định thông tin cần phải quên Nguồn: colah.github.io

Tiếp theo, LSTM cần quyết định thông tin nào cần được lưu lại tại cell state Trong

đó, có hai phần, một là single sigmoid layer được gọi là “input gate layer” quyết định cácgiá trị sẽ được cập nhật Tiếp theo, một tanh layer tạo ra một vector ứng viên mới, C˜t.được thêm vào trong cell state, được thể hiện qua hình 12

Hình 12: Cổng quyết định thông tin cần cập nhật vào đường C chính Nguồn: colah.github.io

Tiếp theo, LSTM sẽ kết hợp hai thành phần này lại để cập nhật vào cell state Lúc cậpnhật vào cell state cũ, Ct−1, và cell state mới Ct LSTM sẽ đưa state cũ hàm ft, để quên

đi những gì trước đó Sau đó, thêm(it∗ Ct), đây là giá trị ứng viên mới, co giãn (scale)

số lượng giá trị mà hệ thống muốn cập nhật cho mỗi state, được thể hiện qua hình 13

Trang 27

Hình 13: Cổng kết hợp thông tin cần quên và thông tin cần cập nhật vào đường C chính Nguồn: colah.github.io

Ở bước cuối cùng, LSTM cần quyết định xem thông tin output là gì Output này cầndựa trên cell state của hệ thống, nhưng sẽ được lọc bớt thông tin Đầu tiên, LSTM sẽ ápdụng single sigmoid layer để quyết định xem phần nào của cell state hệ thống dự định sẽoutput Sau đó, hệ thống sẽ đẩy cell state qua hàm tanh (đẩy giá trị vào khoảng -1 và 1)

và nhân với một output sigmoid gate, để giữ lại những phần ta muốn output ra ngoài,được thể hiện qua hình 14

Hình 14: Cổng quyết định giá trị đầu ra đối với mỗi cell Nguồn: colah.github.io

2.3.4 Convolution Neural Network

Trong thực tế, các NNs thông thường hoạt động không hiệu quả đối với dữ liệu hìnhảnh Với một tấm ảnh màu có độ phân giải 100x100, số pixel sẽ là 10.000 và 1 pixel có 3giá trị màu (RGB) sẽ làm cho một Nơron ở hidden layer đầu tiên có đến 30.000 kết nốiđến lớp đầu vào (tương ứng với 30.000 trọng số) Và nếu số lượng Nơron ở hidden layerđầu tiên tăng lên thì số kết nối cũng sẽ tăng lên rất nhanh Số lượng quá lớn các trọng

số như vậy là không cần thiết và có thể dẫn đến overfitting một cách nhanh chóng CNN

ra đời để giải quyết các nhược điểm đó

Trong mô hình CNN, kết nối giữa các Nơron được lấy ý tưởng dựa trên hệ thống thị

Trang 28

của các Nơron khác nhau có thể có một phần chồng lên nhau Phản ứng của mỗi Nơronđối với các kích thích trong receptive field của nó được thể hiện trong CNN bằng mộtphép tích chập CNN có những ứng dụng rộng rãi trong phân loại và nhận diện hình ảnh.

• Phân loại ảnh (Image Classification): với một bức ảnh đầu vào, CNN sẽ giúp máytính nhận diện các đối tượng có trong ảnh và gán nhãn cho các đối tượng đó

• Nhận dạng chữ viết tay (Handwriting Classification): CNN sẽ hỗ trợ máy tính nhậndiện các chuỗi ký tự viết tay từ các tài liệu giấy, ảnh, màn hình cảm ứng hoặc cácthiết bị khác

• Nhận diện khuôn mặt (Face Recognition): có nhiều bài toán liên quan đến nhận diệnkhuôn mặt như: nhận diện tất cả khuôn mặt trong một bức ảnh, nhận diện cảm xúccủa khuôn mặt, nhận diện các đặc tính của khuôn mặt để đưa ra tên của người trongbức ảnh

Hiện nay, CNN cũng được sử dụng để giải quyết các bài toán liên quan đến lĩnh vực

Xử lý ngôn ngữ tự nhiên (Natural Language Processing) như phân tích cảm xúc, nhậndiện spam và có thể được sử dụng trong vấn đề nhận diện giọng nói

Kiến trúc CNN cơ bản

Không giống với NN cơ bản, mỗi lớp của CNN sắp xếp các Nơron thành 3 chiều: cao,rộng, sâu và mỗi Nơron trong một layer chỉ kết nối tới một vùng của layer trước nó chứkhông kết nối tới toàn bộ Mỗi layer của CNN nhận đầu vào là một ma trận 3 chiều,biến đổi nó qua một hàm khả vi và kết quả đầu ra của mạng trong bài toán phân loại làđiểm số của mỗi lớp phân loại Có 3 loại layer chính để tạo nên một CNN là ConvolutionLayer, Pooling Layer và Fully-connected Layer

Lớp Convolution (Convolution Layer)

Lớp Convolution là lớp đặc trưng và quan trọng nhất của CNN thực hiện hầu hết cáccông việc tính toán, phép toán thực hiện ở lớp này là phép tích chập (convolution).Phép tích chập công thức tích chập giữa ma trận ảnh f và filter k (còn gọi làkernel, mask, convolution matrix) có kích thước mxn, thể hiện qua công thức

Lớp Convolution ở lớp Convolution, các trọng số để học là các filter Các filterthường có kích thước nhỏ (chiều rộng và chiều cao) nhưng có chiều sâu bằng với chiều

Trang 29

sâu của ma trận ảnh đầu vào, kích thước của filter thường được gọi là trường tiếp nhậncục bộ (receptive field) Ví dụ một filter điển hình có kích thước 5x5x3 (receptive field

là 5, chiều sâu là 3 bằng với 3 kênh màu của ảnh đầu vào) Trong quá trình lan truyền,

ta dịch chuyển filter theo chiều rộng, chiều cao của ảnh và thực hiện phép tích chập giữafilter và vùng ảnh tương ứng Quá trình lan truyền của một filter sẽ tạo ra một ma trận

2 chiều Bằng trực giác, chúng ta thấy CNN sẽ học được trọng số là các filter để nhậnbiết các đặc trưng của ảnh như một vết màu hay hình ảnh khái quát của một đối tượng

ở layer đầu tiên, và có thể là cả một tổ ong hay các vật có hình dạng bánh xe ở các layercao hơn của mạng Lớp Convolution sẽ gồm một tập các filter như vậy, mỗi filter tạo ramột ma trận 2 chiều nên kết quả của lớp Convolution là một ma trận 3 chiều Hình 15 là

ví dụ trực quan một lớp convolution

Hình 15: Lớp Convolution Nguồn: cs231n.github.io/convolutional-networks

Có 3 tham số giúp điều chỉnh kích thước của mảng đầu ra ở lớp Convolution là: độsâu (depth), bước dịch chuyển (stride) và bộ đệm (zero-padding)

• Độ sâu (Depth): là số filter ta sử dụng trong một lớp Convolution, các filter này cógiá trị khác nhau nhưng có cùng kết nối tới lớp trước nó

• Bước dịch chuyển (Stride): là số lượng pixel filter dịch chuyển mỗi lần trên ma trậnảnh Nếu tham số này càng lớn, kích thước của ma trận kết quả sẽ càng nhỏ

• Bộ đệm (Zero-padding): là độ dày của phần đệm vào ma trận ảnh đầu vào Tham sốnày sẽ làm tăng kích thước của ma trận ảnh bằng cách thêm các giá trị 0 vào xungquanh ma trận ảnh Tham số này có thể giúp ma trận ảnh đầu vào và ma trận đầu

ra có cùng kích thước

Các tham số trong lớp Convolution có sự ràng buộc nhất định Ví dụ, nếu ma trận đầuvào 1 chiều có kích thước bằng 10, trường tiếp nhận cục bộ có kích thước bằng 3, bộ đệmbằng 0 thì bước dịch chuyển không thể bằng 2 vì bước dịch chuyển cuối cùng sẽ khôngkhớp với kích thước ảnh đầu vào Vì vậy, tính toán kích thước của ảnh và các tham sốcủa lớp Convolution là một vấn đề quan trọng khi thiết kế mạng CNN

Hình 16 mô tả hoạt động của lớp convolution với ảnh đầu vào có kích thước 5x5x3

Trang 30

bằng 2, bộ đệm bằng 1, filter có kích thước 3x3x3, bias của filter thứ nhất là 1 và củafilter thứ hai là 0 Ma trận kết quả ở lớp này sẽ có kích thước 3x3x2.

Hình 16: Ví dụ thực tế lớp Convolution Nguồn: deeplearning4j.org/convolutionalnetwork

Lớp Pooling (Pooling layer)

Lớp Pooling (một số tài liệu còn gọi là lớp Subsampling) thường được chèn vào giữacác lớp Convolution trong mạng CNN Nhiệm vụ của các lớp Pooling là làm giảm dầnkích thước của ma trận đầu vào để giảm số lượng các tham số và tính toán của CNN, từ

đó giúp kiểm soát tình trạng overfitting Lớp Pooling thực hiện độc lập trên mỗi ma trận

2 chiều được tạo ra từ một filter của lớp Convolution Vì vậy, kích thước (chiều rộng vàchiều cao) ma trận đầu vào của lớp Pooling sẽ được giảm xuống còn chiều sâu thì khôngđổi

Giống như lớp Convolution, lớp Pooling cũng có một ma trận filter và bước dịch chuyển(stride) Tuy nhiên, filter ở lớp Pooling chỉ có 2 chiều Ví dụ một filter thường dùng ở lớpPooling có kích thước là 2x2 và bước dịch chuyển bằng 2, được thể hiện qua hình 17.Phép toán lớp Pooling có 2 phép toán thường được dùng ở lớp Pooling:

• Max Pooling: kết quả của phép toán là giá trị lớn nhất trong vùng filter của lớpPooling

• Average Pooling: kết quả của phép toán là giá trị trung bình của các giá trị trongvùng filter của lớp Pooling

Trang 31

Hình 17: Ví dụ minh họa lớp Pooling có filter 2x2 và stride bằng 2 Nguồn: embedded-vision.com

Lan truyền ngược (Backpropagation):

• Max Pooling: đối với lớp Pooling sử dụng Max Pooling, trong quá trình lan truyềnngược, giá trị lỗi sẽ được gán vào vị trí có giá trị lớn nhất trong vùng filter của lớpPooling Vì vậy trong quá trình lan truyền, ta phải lưu lại vị trí của giá trị lớn nhất

ở mỗi bước dịch chuyển của filter Đối với các giá trị còn lại, ta có thể giữ nguyênhoặc gán giá trị 0

• Average Pooling: đối với lớp Pooling sử dụng Average Pooling, trong quá trình lantruyền ngược, giá trị lỗi sẽ được nhân với (N ∗ N ) − 1 với N ∗ N là kích thước củafilter Sau đó giá trị mới này sẽ được gán cho toàn bộ vị trí trong vùng của filter.Lớp Fully-connected (Fully-connected Layer)

Tương tự như trong mạng NN thông thường, các Nơron ở lớp Fully-connected sẽ cókết nối với tất cả các Nơron ở lớp trước nó Hàm kích hoạt ở các lớp này thường đượctính là hàm nhân hai ma trận và cộng thêm một độ lệch bias

Trang 32

3 Kiến trúc hệ thống

Kiến trúc hệ thống được trình bày qua các phần: Sơ đồ thiết kế thể hiện khung củatoàn bộ hệ thống; trong đó, khối thiết bị nhúng thể hiện các cảm biến lấy dữ liệu từ ngườidùng, các vi điều khiển xử lý tín hiệu thô, các module truyền nhận; và khối server thựchiện chức năng xử lý tín hiệu phức tạp và lưu trữ dữ liệu Biểu đồ Use cases thể hiệncác mối quan hệ trong hệ thống giữa bệnh nhân, và các chuyên gia y tế Thiết kế cơ sở

dữ liệu thể hiện các mối quan hệ về mặt dữ liệu trong hệ thống

3.1 Sơ đồ thiết kế

FogCloud

Subscribe Publish

Hình 18: Sơ đồ thiết kế hệ thống Chăm sóc tim mạch

Sơ đồ thiết kế thể hiện khung của toàn bộ hệ thống; bao gồm: khối thiết bị nhúng tươngtác trực tiếp với bệnh nhân/chuyên gia y tế thể hiện qua 2 khối Patient và Physician trênhình 18, và chi tiết liên kết bên trong khối được thể hiện qua bản vẽ thiết kế trên hình 20.Trên sơ đồ thiết kế còn có khối Fog và Cloud sẽ được mô tả chi tiết qua mục khối server

Trang 33

3.1.1 Khối Server

Hiện nay với việc phát triển mã nguồn mở, các công cụ Web Service cho phép nghiêncứu phát triển các nền tảng hỗ trợ chăm sóc y tế cũng như các ứng dụng khác, nơi mọingười có tương tác với nhau như một cộng đồng trở nên dễ dàng, có thể thấy hai đặcđiểm dưới đây mang đến những thuận lợi cho việc phát triển hệ thống chăm sóc sức khỏe

Fog Computing có vai trò giảm thiểu tính toán cho Cloud và giảm độ trễ của dữliệu, dữ liệu được truyền nhanh chóng, làm cho hệ thống tiến gần với đáp ứng các đặctính thời gian thực

Fog Computing với cấu trúc dữ liệu nằm ở trung tâm hệ thống, các Data centernằm ở vị trí trung tâm, cho phép việc phân bố xử lý dữ liệu đạt hiệu quả cao khi "huyđộng" được các tài nguyên nằm ở rìa hệ thống, sau đó các bộ xử lý sẽ tiến hành phântích và khai phá dữ liệu

Trang 34

Fog Data Services

• Tầng 1 (Sensor Devices, Pre-Processor): bao gồm các thiết bị giám sát, cảm biến và

bộ tiền xử lý Nơi thu thập tín hiệu điện tâm đồ từ bệnh nhân và đẩy dữ liệu lên hệthống

• Tầng 2 (Fog): với cấu trúc Fog Computing, dữ liệu có thể được xử lý tại chính tầngnày khi cấu trúc không quá phức tạp, nhằm giảm sức tải cho tầng 3 và phân bố hiệunăng xử lý dữ liệu trên các tầng, giúp giảm độ trễ của hệ thống Hình 19 thể hiệnquan hệ giữa các thiết bị cá nhân có kết nối đến Fog

Dữ liệu thô thông thường bao gồm cả các tín hiệu nhiễu, nhiễu hệ thống và nhiễu

đo đạc, do đó việc lọc nhiễu tiến hành cả ở tầng 1 và tầng 2 với các giải thuật có độphức tạp phù hợp với cấu trúc tại các tầng

Tại tầng 2, có thể dùng cache để lưu giữ và thực thi các dự đoán bất thường củabệnh nhân, dữ liệu được lọc nhiễu sau đó qua mô hình dự đoán bất thường tín hiệuđiện tâm đồ và gửi trả kết quả về cho bệnh nhân, bác sĩ và người thân của bệnhnhân

• Tầng 3 (Cloud): dữ liệu của bệnh nhân sau khi được lọc nhiễu và chưa thể xử lý tạitầng Fog sẽ được lưu trữ và xử lý bởi tầng 3

Trang 35

Tầng 3 cho phép thực thi các mô hình dự báo phức tạp, việc hiện thực tại tầng 3phục vụ cho việc cập nhật bệnh nhân mới, với cơ sở dữ liệu điện tim được huấn luyện

và lưu trữ mới; một số dữ liệu mang tính đặc thù phức tạp, lấy ví dụ thực tế từ đềtài khi số lần lặp epoch lớn hoặc số lớp ẩn lớn của mô hình mạng Neural Networklớn, mới có thể cho kết quả phân tích, sẽ được xử lý tại tầng 3

Việc thực thi tại tầng 3 cũng tương tự như tầng 1 và 2, khi kết quả phân tích cóđược sẽ gửi về cho bệnh nhân, bác sĩ và người thân của bệnh nhân

Kết nối giữa các tầng trong kiến trúc Fog:

- Kết nối của mỗi node Fog:

1 Tín hiệu điện tâm đồ được các bộ tiền xử lý, vi điều khiển hoặc thiết bị di động ngườidùng, publish liên tục lên bộ vận chuyển hàng đợi gói tin từ xa (Message QueuingTelemetry Transport - MQTT Broker) của Fog gần nhất, có thể xem mỗi node Fog

là một hệ thống, hệ thống tiến hành subcribe và nhận các tín hiệu từ Broker xử lý.Đồng thời mỗi bệnh nhân và các bác sĩ, người thân của bệnh nhân cũng sẽ nhậnđược các cảnh báo bất thường từ các node Fog sau khi đã subcribe

2 Các node Fog có chứa danh sách các subcriber, sau khi xử lý hoàn tất tín hiệu điệntâm đồ và có kết quả dự đoán, với kết quả bất thường thì node sẽ publish các messageđến bệnh nhân, bác sĩ và người thân, đồng thời gửi một message lên Cloud với mụcđích thông báo cho những người thân, bác sĩ khác có liên kết tới bệnh nhân nàynhưng kết nối với các node Fog khác trong hệ thống

- Kết nối của Cloud:

1 Cloud chứa API nhận các yêu cầu tạo mới hoặc cập nhật mô hình dữ liệu của mộtbệnh nhân, mô hình được cập nhật bằng cách huấn luyện dữ liệu mới thông qua dữliệu đã được cung cấp lên hệ thống tại tầng Cloud

2 Khi message từ một node Fog gửi đến Cloud về cảnh báo bất thường, Cloud sẽ tiếnhành broadcast thông tin message này tới mọi node Fog trong hệ thống nhằm thôngbáo cho người thân, bác sĩ có liên quan về tình trạng của bệnh nhân bằng cáchsubcribe mọi Broker từ mọi node Fog trong hệ thống

3.1.2 Khối thiết bị nhúng

Đóng vai trò quan trọng trong việc thực thi mô hình nghiên cứu, hình 20 mô tả các thiết

bị có trong hệ thống, gồm 3 thiết bị chính yếu:

• Vi xử lý ARM STM32S407VG hoặc các loại vi điều khiển; đóng vai trò thu thập, xử

lý tín hiệu thô và tạo gói tin gửi cho server;

• Cảm biến AD8232 đóng vai trò cảm biến đo điện tâm đồ ECG của người dùng vàgửi tín hiệu đo cho bộ vi xử lý;

Trang 36

• Thiết bị di động đóng vai trò giao diện, cung cấp thông tin cho bệnh nhân/chuyêngia qua việc truy cập và nhận cảnh báo từ hệ thống Ngoài ra thiết bị di động còn

có thể đóng vai trò như cảm biến và vi điều khiển gộp lại

Bản vẽ thiết kế:

Mini USB

Hình 20: Sơ đồ mạch thiết bị đo ECG

Bảng 1: Kết nối các chân tín hiệu/điện áp trên các module

Ngoài việc dùng HC05 có thể sử dụng NodeMCU, cho phép dữ liệu truyền trực tiếp lêncác Fog node mà không cần thông qua các thiết bị di động Điểm mạnh của việc truyềnthẳng dữ liệu lên các Fog node thông qua NodeMCU là tiết kiệm phần cứng, tuy nhiên,

Trang 37

việc này khiến quá trình lấy tín hiệu và gửi tín hiệu không được đồng thời, có thể dẫnđến gián đoạn việc lấy tín hiệu và đưa ra output không đạt chất lượng NodeMCU nhậntín hiệu từ STM32F407VG tuơng tự như HC05 thông qua các cổng serial.

Ngoài ra, module AD8232, có hai cổng trigger LO- và LO+ dùng với chức năng nhưnhững cờ (flag) để sàng lọc tín hiệu đo được, nếu một trong hai cờ cho giá trị 1 tươngđương với nhiễu xuất hiện trong tín hiệu và sẽ bỏ qua OUT là cổng đầu ra tín hiệuanalog, dữ liệu cần cho input ở những tầng sau

Xử lý tín hiệu thô:

Qua hình 20, có thể thấy tín hiệu từ AD8232 là tín hiệu analog - chân OUT, bộ chuyểnđổi ADC của STM32F407VG cho phép thiết lập các resolution phù hợp với mục đích sửdụng, ngưỡng điện áp ngang bằng (5v) hoặc thấp hơn (3.3v) sẽ được chọn để tiến hànhchuyển đổi sang tín hiệu số

Dữ liệu sau đó sẽ được đưa qua các tầng sau như đã đề cập ở các phần trên

3.2 Biểu đồ Use Cases

S

Log out

Log in

ECG online measurement

Register

Initial ECG measurement

Hình 21: Thiết kế Use Cases cho hệ thống

Biểu đồ Use cases thể hiện các mối quan hệ trong hệ thống giữa bệnh nhân, và các

Ngày đăng: 21/04/2021, 11:04

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[11] Yoshua Bengio, Patrice Simard, and Paolo Frasconi. Learning long-term dependencies with gradient descent is difficult. IEEE transactions on neural networks, 5(2):157–166, 1994 Sách, tạp chí
Tiêu đề: Learning long-term dependencies with gradient descent is difficult
Tác giả: Yoshua Bengio, Patrice Simard, Paolo Frasconi
Nhà XB: IEEE transactions on neural networks
Năm: 1994
[13] Naveed Ishtiaq Chaudhary and Muhammad Asif Zahoor Raja. Design of frac- tional adaptive strategy for input nonlinear box–jenkins systems. Signal Processing, 116:141–151, 2015 Sách, tạp chí
Tiêu đề: Design of fractional adaptive strategy for input nonlinear box–jenkins systems
Tác giả: Naveed Ishtiaq Chaudhary, Muhammad Asif Zahoor Raja
Nhà XB: Signal Processing
Năm: 2015
[14] Min Chen, Yujun Ma, Jeungeun Song, Chin-Feng Lai, and Bin Hu. Smart clothing:Connecting human with clouds and big data for sustainable health monitoring. Mobile Networks and Applications, 21(5):825–845, 2016 Sách, tạp chí
Tiêu đề: Smart clothing:Connecting human with clouds and big data for sustainable health monitoring
Tác giả: Min Chen, Yujun Ma, Jeungeun Song, Chin-Feng Lai, Bin Hu
Nhà XB: Mobile Networks and Applications
Năm: 2016
[16] TWS Chow and C-T Leung. Nonlinear autoregressive integrated neural network model for short-term load forecasting. IEE Proceedings-Generation, Transmission and Distribution, 143(5):500–506, 1996 Sách, tạp chí
Tiêu đề: Nonlinear autoregressive integrated neural network model for short-term load forecasting
Tác giả: TWS Chow, C-T Leung
Nhà XB: IEE Proceedings-Generation, Transmission and Distribution
Năm: 1996
[18] Moeen Hassanalieragh, Alex Page, Tolga Soyata, Gaurav Sharma, Mehmet Aktas, Gonzalo Mateos, Burak Kantarci, and Silvana Andreescu. Health monitoring and management using internet-of-things (iot) sensing with cloud-based processing: Op- portunities and challenges. In Services Computing (SCC), 2015 IEEE International Conference on, pages 285–292. IEEE, 2015 Sách, tạp chí
Tiêu đề: Health monitoring and management using internet-of-things (iot) sensing with cloud-based processing: Opportunities and challenges
Tác giả: Moeen Hassanalieragh, Alex Page, Tolga Soyata, Gaurav Sharma, Mehmet Aktas, Gonzalo Mateos, Burak Kantarci, Silvana Andreescu
Nhà XB: IEEE
Năm: 2015
[19] Sepp Hochreiter. Untersuchungen zu dynamischen neuronalen Netzen. PhD thesis, diploma thesis, institut f¨ ur informatik, lehrstuhl prof. brauer, technische universit¨ at m¨ unchen, 1991 Sách, tạp chí
Tiêu đề: Untersuchungen zu dynamischen neuronalen Netzen
Tác giả: Sepp Hochreiter
Nhà XB: institut für informatik, lehrstuhl prof. brauer, technische universität münchen
Năm: 1991
[22] Eamonn Keogh, Jessica Lin, and Ada Fu. Hot sax: Efficiently finding the most unusual time series subsequence. In Data mining, fifth IEEE international conference on, pages 8–pp. Ieee, 2005 Sách, tạp chí
Tiêu đề: Hot sax: Efficiently finding the most unusual time series subsequence
Tác giả: Eamonn Keogh, Jessica Lin, Ada Fu
Nhà XB: Ieee
Năm: 2005
[23] Guoqi Li, Changyun Wen, Wei Xing Zheng, and Yan Chen. Identification of a class of nonlinear autoregressive models with exogenous inputs based on kernel machines.IEEE Transactions on Signal Processing, 59(5):2146–2159, 2011 Sách, tạp chí
Tiêu đề: Identification of a class of nonlinear autoregressive models with exogenous inputs based on kernel machines
Tác giả: Guoqi Li, Changyun Wen, Wei Xing Zheng, Yan Chen
Nhà XB: IEEE Transactions on Signal Processing
Năm: 2011
[24] Edhelmira Lima-Medina, Orlando Loques, and Cláudio Mesquita. "Minha Saúde" a Healthcare Social Network for Patients with Cardiovascular Diseases. Serious Games and Applications for Health (SeGAH), 2014 IEEE 3rd International Conference, May, 14-16, 2014 Sách, tạp chí
Tiêu đề: Minha Saúde
[25] Chin-Teng Lin and CS George Lee. Neural fuzzy systems. PTR Prentice Hall, 1996 Sách, tạp chí
Tiêu đề: Neural fuzzy systems
Tác giả: Chin-Teng Lin, CS George Lee
Nhà XB: PTR Prentice Hall
Năm: 1996
[26] Pankaj Malhotra, Lovekesh Vig, Gautam Shroff, and Puneet Agarwal. Long short term memory networks for anomaly detection in time series. In Proceedings, page 89.Presses universitaires de Louvain, 2015 Sách, tạp chí
Tiêu đề: Long short term memory networks for anomaly detection in time series
Tác giả: Pankaj Malhotra, Lovekesh Vig, Gautam Shroff, Puneet Agarwal
Nhà XB: Presses universitaires de Louvain
Năm: 2015
[27] Sean McMillan, Chih-Chun Chia, Alexander Van Esbroeck, Ilan Rubinfeld, and Zee- shan Syed. Icu mortality prediction using time series motifs. In Computing in Car- diology (CinC), 2012, pages 265–268. IEEE, 2012 Sách, tạp chí
Tiêu đề: Icu mortality prediction using time series motifs
Tác giả: Sean McMillan, Chih-Chun Chia, Alexander Van Esbroeck, Ilan Rubinfeld, Zee-shan Syed
Nhà XB: IEEE
Năm: 2012
[28] Ryszard S Michalski, Jaime G Carbonell, and Tom M Mitchell. Machine learning:An artificial intelligence approach. Springer Science & Business Media, 2013 Sách, tạp chí
Tiêu đề: Machine learning:An artificial intelligence approach
Tác giả: Ryszard S Michalski, Jaime G Carbonell, Tom M Mitchell
Nhà XB: Springer Science & Business Media
Năm: 2013
[29] Igarashi MO. Utilizaácóo de filtros para remoácóo de interferờncia de sinais de eletro- cardiograma. São Paulo: Escola de Engenharia, 51(7):0–0, 2007 Sách, tạp chí
Tiêu đề: Utilizaácóo de filtros para remoácóo de interferờncia de sinais de eletro- cardiograma
Tác giả: Igarashi MO
Nhà XB: Escola de Engenharia
Năm: 2007
[31] Stanislaw Osowski, Linh Tran Hoai, and Tomasz Markiewicz. Support vector machine-based expert system for reliable heartbeat recognition. IEEE transactions on biomedical engineering, 51(4):582–589, 2004 Sách, tạp chí
Tiêu đề: Support vector machine-based expert system for reliable heartbeat recognition
Tác giả: Stanislaw Osowski, Linh Tran Hoai, Tomasz Markiewicz
Nhà XB: IEEE transactions on biomedical engineering
Năm: 2004
[34] Pranav Patel, Eamonn Keogh, Jessica Lin, and Stefano Lonardi. Mining motifs in massive time series databases. In Data Mining, 2002. ICDM 2003. Proceedings. 2002 IEEE International Conference on, pages 370–377. IEEE, 2002 Sách, tạp chí
Tiêu đề: Mining motifs in massive time series databases
Tác giả: Pranav Patel, Eamonn Keogh, Jessica Lin, Stefano Lonardi
Nhà XB: IEEE
Năm: 2002
[36] Hong Thom Pham, Bo-Suk Yang, et al. A hybrid of nonlinear autoregressive model with exogenous input and autoregressive moving average model for long-term machine state forecasting. Expert Systems with Applications, 37(4):3310–3317, 2010 Sách, tạp chí
Tiêu đề: A hybrid of nonlinear autoregressive model with exogenous input and autoregressive moving average model for long-term machine state forecasting
Tác giả: Hong Thom Pham, Bo-Suk Yang, et al
Nhà XB: Expert Systems with Applications
Năm: 2010
[38] Zeeshan Syed, Collin Stultz, Manolis Kellis, Piotr Indyk, and John Guttag. Motif discovery in physiological datasets: a methodology for inferring predictive elements.ACM Transactions on Knowledge Discovery from Data (TKDD), 4(1):2, 2010 Sách, tạp chí
Tiêu đề: Motif discovery in physiological datasets: a methodology for inferring predictive elements
Tác giả: Zeeshan Syed, Collin Stultz, Manolis Kellis, Piotr Indyk, John Guttag
Nhà XB: ACM Transactions on Knowledge Discovery from Data (TKDD)
Năm: 2010
[39] Xuning Tang and Christopher C. Yang. Identifying Influential Users in an On- line Health-care Social Network. ISI 2010 (2010 IEEE International Conference), Vancouver, BC, Canada, May, 23-26, 2010 Sách, tạp chí
Tiêu đề: Identifying Influential Users in an On- line Health-care Social Network
Tác giả: Xuning Tang, Christopher C. Yang
Nhà XB: 2010 IEEE International Conference
Năm: 2010
[40] Zaiyong Tang, Chrys de Almeida, and Paul A Fishwick. Time series forecasting using neural networks vs. box-jenkins methodology. Simulation, 57(5):303–310, 1991 Sách, tạp chí
Tiêu đề: Time series forecasting using neural networks vs. box-jenkins methodology
Tác giả: Zaiyong Tang, Chrys de Almeida, Paul A Fishwick
Nhà XB: Simulation
Năm: 1991

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w