NHIEM VU VA NOI DUNG: - Hoàn thành nội dung trong tâm trong việc nghiên cứu Hệ thống thu thập va xử lý tín hiệu điện tim ECG trên nên tang IoT; - Có các bước tim hiểu các công trình nghi
Trang 1DO THANH THÁI
XÂY DỰNG HỆ THÓNG THU THẬP VÀ XỬ LÝ TÍN HIỆU ĐIỆN TIM ECG TREN NEN TANG IoT(System for recording and processing of ECG signal based on IoT)
Nganh: Khoa Hoc May Tinh
Ma so: 60480101
LUAN VAN THAC SI
TP HO CHI MINH, tháng 6 năm 2018
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCM
Cán bộ hướng dẫn khoa học: TS Trần Minh
Thanh phan 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 vi của Hội đông cham bảo vệ luận vănthạc si)
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 Tuan Anh (Phản biện đề tai)
4 PGS.TS Tran Công Hùng (Phản biện dé tai)
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 3NHIEM VỤ LUẬN VAN THẠC SĨ
Họ tên học viên: Đỗ Thanh Thái 2 5 25s s£ + s£+x£sxxz MSHV: 1570229
Ngày, tháng, năm sinh: 16.01.1992 cv, Nơi sinh: Bình Dương
Ngành: Khoa Học Máy Tính -¿ ¿255 525+e+ezezeseseeeee Mã số : 60480101
I TEN DE TÀI: Xây dựng hệ thống thu thập va 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 [oT)
H NHIEM VU VA NOI DUNG:
- Hoàn thành nội dung trong tâm trong việc nghiên cứu Hệ thống thu thập va xử lý tín hiệu điện tim ECG trên nên tang IoT;
- Có các bước tim 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 tang đã 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
II NGÀY GIAO NHIỆM VU : 16/01/20 17 - ¿5252 E2 2ESESESEEEEEEEEEEkrkrkrkrkreree
IV NGÀY HOÀN THÀNH NHIỆM VU: 03/12/2017 (được gia han 1 học kỳ đến HK2
Trang 4đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
LOI CAM ON
Đầu tiên, tôi xin gửi lời cảm ơn đến TS Tran 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 hoc Bách Khoa đặc biệt là khoa Khoa
học và ki thuật Máy tính đã tận tình giảng day và cung cap kiến thức trong suốt thời gian hoc 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 va công việc.
‘Tran trọng cám ơn.
Tháng 06 năm 2018
Trang 5TOM TAT NOI DUNG DE TÀI
Nhằm giải quyết van đề giảm thiểu tỷ lệ đột quy của các bệnh nhân mắc các bệnh lý về tim mach,
đề 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 tam đồ
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 Dé tài thực hiện và đã đạt được một sô bước di nhất định như: tim được thông tin về bộ cơ sở dữ liệu làm kién thức nền tang cho xây dựng mô hình nghiên cứu hệ thống chan đoán bệnh tim mach, tìm hiểu va 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 chan đ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ỉ so 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 do can trở kết quả chan đoán cũng như phân tích tín hiệu điện tim, kết qua 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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
Abstract
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
MI'T-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 7LỜ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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
DANH MỤC CÁC TU/CUM TU VIET TAT
loT Internet of Things
ECG Electrocardiography /Electrocardiogram
CNN Convolution Neural Network RNN Recurrent Neural Network ANN Artificial Neural Network LSTM Long Short-Term Memory
Al 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
RGB Red Green Blue (color)
MOTT Message Queuing ‘Telemetry Transport API Application Program Interface
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 9Mục luc
1 Giới thiệu và tóm tắt nội dung đề tài 7
1.1 Giới thiệu hệ thong chăm sóc bệnh tim mach 0000000008 7
1.2 Tóm tắt nội dung dé tai 2 2.00000 000 0 2 và xxx 2 xà 7
1.3 Dong góp của dé tài HQ vn gà và v v g v v va xa 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 cv va 10
2.2 Giới thiệu nên tảng kiến trúc Internet of Things Ặ VẶ Ặ Q 008 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
32 Biểu đồ UseCases Quà g v v 2v xxx 2 v3 xxx 2v 34 3.3 Thiết kế cơ sở dữ liệu cv và và v1 2 v2 v2 38
4 Phân tích dữ liệu và chan đoán bệnh 40
41 Loc nhiễu từcảmbiến QC CO ee ee 40
4.2 Khai phá tập thường xuyén QC Q cv gà và Ta xa 41
4.3 Đề xuât mô hình dự đoán bat thường 000000000000 ee 4ï
5 Kết quả thực nghiệm 55 5.1 Két quả đo từ thiết bi 00 CO Quà v và v.v v2 5D 5.2_ Kết quả thực thi mô hình và đánh giá QC SỐ 55
6 Kết luận và hướng phát triển 60
7 Phu lục 64
7.2 Hécosddtliéu 0.000000 0000000 1n äđ c- 64
7.3 Hệ thông nhúng Ốc gà v v g v v v và vi 66 7.4 Hệ thông học mấy ng cv gà v g Vy v và vi 68
Trang 10đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
1 Giới thiệu và tóm tắt nội dung dé tài
1.1 Giới thiệu hệ thông chăm sóc bệnh tim mach
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 minh các yêu tô của bệnh tim mach, 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 mach [1].Theo sô liệu được đưa ra tại tọa đàm "Vi trái tim khỏe Việt Nam" diễn ra tại bệnh việnTìm 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.000
người, chiếm 1/4 tổng số trường hợp tử vong tại Việt Nam Theo WHO, bệnh tim mach
đ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 va đột quy nhiều hơn ca ung
thư, 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 doi 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 bam 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 mach do yếu tố lười vận động trong xã hội ngày nay, do thói quen ăn uống điển
hì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ặn
bệnh tim dang đượ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 đề xuat trong đề tài này có ý nghĩa lớn dap ứng nhu cau thực tiễn cấp bách
1.2 Tóm tắt nội dung dé tài
Nhằm giải quyết van đề giảm thiểu tỷ lệ đột quy của các bệnh nhân mắc các bệnh lý
về tim mach, đề tai đề 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 tang (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ăn
nà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, thong qua hệ thống Deep Learning sử dụng mô hình
Mang thần kinh nhân tao dạng cuộn (Convolution Neural Network - CNN) dé đưa ra dự
đoán bat thường và cảnh báo cho bệnh nhân cũng như người thân một cách kip 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 Mang than kinh nhân tạo dang hồi quy (Recurrent Neural Network - RNN) va 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 tang cho xây dựng mô hình nghiên cứu hệ thống chanđ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 chan đ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ống
cảm biên (sensing) qua tang 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 loT' 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ê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ớ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ó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ệnh
lay đ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ê Diều quan trọng nhất trong cả tiễn trình là sự cảnh báo kịp thời trong
các tình huống khẩn cấp như các cơn đau tim đột ngột, tình huống đột quy, và các biện
phá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 tam do, hệ thông vớikiên trúc Fog/Cloud Computing và một ứng dung 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:
e 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;
e Dưa ra các giải pháp có sử dụng trí tuệ nhân tao, học máy, khai phá dữ liệu nhằm
hỗ trợ bác sĩ trong việc chan đoán cho bệnh nhân va dự đoán bat thường nhằm giúp
bệnh nhân phòng tránh những cơn dau tim, và cảnh báo trong các tình hudng độtxuất;
e Két noi giữa bệnh nhân và bác sĩ/người thân thông qua Internet, giúp bác sĩ/người
thân có thể theo dõi hoạt động tim mạch của bệnh nhân
e Dé tài hướng đến xây dựng một hệ thông phục vụ bệnh tim mach 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 tang 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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
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ựng
mộ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ểu
những hệ thong đã đượ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ên
cứ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ết
quả đượ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ảo
sá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ựng
giải thuật nhằm tìm kiếm các bất thường trong chuỗi tín hiệu ECG, và chan đ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 132 Nên tang 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
Di sâu phân tích các bộ công cụ khai phá dữ liệu bệnh tim mạch, đề tai dua ra mức
độ khái quát như sau: các bộ khai phá đều xoay quanh các chủ đề liên quan dén Machine
Learning 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 mang thần kinh não người; Machine Learning mang đến khả năng huanluyện các bộ học chạy trên nền tang vi xử lý, mang dé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 minh
nhân tạo", từ đó, đưa ra khái niệm Artificial Intelligence - AI AT 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é tram 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ực
trong 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ệ thong chăm sóc sức khỏe trên nền tang IoT
Về mô hình mang than kinh nhân tao (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ố dang 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 (Nonlinear
Box-Jenkins) [13, 40] về cơ bản là sự thay đổi của các phần tử hồi quy, ấp dung 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 mang than kinh cau 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 di đến kết luận về kết qua của su kết hợp các mô hình Noron khác nhautrong khai phá di 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, va Support Vector Machinekhi phân loại được 7 loại nhịp tim khác nhau, dit liệu được lay từ Physionet (MIT-BIH
AD), cải thiện độ chính xác trong nhận dạng nhịp tim, giảm thiểu sai số (reduces false
negative) so với khi 4p dụng riêng lẻ từng mô hình
Một mô hình khác được su 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 gia đã 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 Dé 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 van cho các kết quả chênh lệch cho thay phương phap nay cần được hoànthiện hơn.
Trang 14đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
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 tac 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ên
tín hiệu điện tim (Wavelet transform and independent component analysis - ICA), việcphân tích trượt doc trên từng tin hiệu điện tim trên chuối theo thời gian, đặc tinh độ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 phan 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 nhat 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áp
phâ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ất
hiệ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 mach [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ố
eid 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ững
thông tin rat 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 mach, mở đườngcho những hướng tiếp cận mới về các van đề liên quan đến bệnh tim mạch Do vay, dambả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ác
tình huống khẩn cấp như đột quy, nhồi máu cơ tim là vô cùng quan trọng, có thể cứu
sô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ành
cho 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ờ dau [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 tang 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 mach và muốn theo dõi tình trạng
sứ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 quan
tam.
Y tưởng khoa học chính của dé tai này là nghiên cứu và dé xuất một mô hình hệ thống
chă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 trong
các tình huống nguy cấp; hệ thong 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 mach 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ệ thong này dùng nền tang có sẵn là các thiết bi di
động để tạo kết nối và trao doi thông tin giữa người dùng và hệ thống Khi phạm vi của
mạng được mở rộng, hệ thong 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 được
quả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ủa
ngườ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ười
dù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ủa
bệ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õi
sứ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 15vớ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 ngay
và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 O phạm vi thé giới, mặc dù có nhiều công trình nghiên
cứu 4p 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] Dé 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 Dé 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 van đề liên quan trong lĩnh vực y tê, các
cô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ễn
nướ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ỏe
online 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 tri, 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 dich vụ của cơ sở y té mà bệnh nhân mong đợi Dé 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 mach [39]
Hệ thong 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ẫn
chư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ể
dén các thiết bị:
e IriverOn (http://www.elkaysports.nl/) cung cấp các chỉ số nhịp tim, nhịp thd:
e Electrozyme (http://www.bioling.me/) cung cấp các chỉ sô nhịp tim;
e Iphone đưa ra ứng dụng cung cấp sô do ECG (điện tâm đồi);
e Bluestar (http://www.welldoc.eom/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 lai ở thiết bị/ứng dụng cá nhân, phạm vi hoạt động dựa trên bộ thuviệ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 Ap dụng kiến trúc IoT cho y té đang ngày một
nhâ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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
mạch, và áp dung các kiến thức học máy để cảnh báo, chan đ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 chan
đ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 hoc 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 dt
liệu về hiệu điện thê chứa nhiều thông tin về hoạt động tim mach, va á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 tang 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ạng
lướ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 thong 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ông
dây, công nghệ vi cơ điện tử (MEMS) va Internet Don 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ột
công việc nao đó chính là mạng lưới lo T.
IoT bao gồm 3 phân tang chính: hệ thông cảm bién (sensing), tang 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ác
thiế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ắng
lớn: tiết kiệm năng lượng tiêu thu, tìm kim 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 chon cap độ lưu trữ (local, globalhay broadcast trong phạm vi nhât định) Việc tối ưu hóa tại phân tang communicationkhá quan trọng, nó quyết định đến băng thông truyền tai 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 bat độ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.
Dé tài nghiên cứu di sâu phân tích một mang 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ấp
các chỉ sô sức khỏe hàng ngày hang giờ chính là động lực đưa đến nghiên cứu xây dung
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 Một căn bệnh lấy đi sinh mạng
Trang 17nhiều người trong thế giới hiện nay.
Hình 1: Internet of Things va 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ạng
lưới IoT' được thể hiện trên hình 1, có thể kể ra một số ứng dụng như sau:
e Quản lý chất thải, rác thải;
e Quan lý đô thi:
e 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;
e 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) ;
e Mua sắm thông minh, hỗ trợ ra quyết định mua sắm;
e 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ị đi động),hoặc tự động định kỳ bảo trì bảo dưỡng;
e Dong hồ do thông minh trong y tế, điện lực, nước sinh hoạt;
e Nhà thông minh.
Cụ thể trong lĩnh vực y tế, Thiết bị IoT có thể được sử dung để cho phép theo đõ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át
thông qua cấy ghép đặc biệt, chang 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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
2.3 Giới thiệu nền tảng nghiên cứu thông qua các giải thuật hoc máy và hoc
sau
2.3.1 Mang Nơ-ron nhân tạo
Mạng Nơron nhân tao (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 ANN
bao 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 Noron sẽ được hoạt hóa và tự học hoikinh 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à huan 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à su dụng những tri thức đã được học cho việc dự đoán va 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 phan: Input Layer,
Hidden Layer, và Output Layer được thể hiện trên hình 2
Input nodes layer
x1
Output nodes layer
ylx2
x3
Hình 2: Kién trúc co ban của mé6t mang Neural nhân tạo
Lớp an (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 mot ANN
có thể có nhiều lớp an, việc chon số lớp an tùy thuộc vào mô hình bài toán, cu thể là kết
quả đầu ra mong muốn trên cơ sở đầu vào là câu trúc dữ liệu
Trang 19Cá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 Noron 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ố (0;;) thông qua hàm tong (Summation
function) cho kết qua đầ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, dam bao được mục tiêu của
mô hình học.
Neural j
= WijAi
Summations
Hình 3: Qua trình xử ly thông tin cua một ANN
e Inputs data (dữ liệu vào): Moi 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
e Output (kết quả): Kết quả của một ANN là một giải pháp cho một van đề, két quanà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.
e Connection Weights (Trọng số liên kết): Giá trị các trong số liên két quyét định déntoc độ huấn luyện, độ hội tu, 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 di 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
e Summation Function (Hàm tổng): Tính tổng trọng số của tất cả các input được đưa
và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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
tính theo công thức sau, trong đó X(input), W( Weight):
Y=) XW; (1)
i=l
e Transfer Function (Ham chuyển đổi): Ham tong (Summation Function) của mộtNoron cho biết khả năng kích hoạt (Activation) của Noron đó còn gọi là kích hoạtbên trong (internal activation), Nơron được kích hoạt khi vượt qua giá tri ngưỡng
Các Nơron này có thể sinh ra một output hoặc không trong ANN (khi Nơron đượckích hoạt giá trị đầu ra của nó có thể được chuyển đến layer tiếp trong mạng Nơronhoặc không) Mối quan hệ giữa Internal Activation và kết quả (output) được thể hiệnbằng hàm chuyển đổi (Transfer Function)
Processing Outputs
element Y=1.2
inh 4: Ví dụ ham chuyén doi của một note trong mang Noron nhan tao
Hình 4 mô ta cách tính toán đầu ra (outputs) thong qua đầu vào (inputs) và cáctrọng số (w;;), 4p dụng (1) cho kết quả:
3
Y=) XW, =3x024+1x04+2x01=1.2 (2)
1=1
Việc lựa chon Transfer Function có tac động lớn đến kết qua 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
|
Yn =
Trong đó:
Trang 21Yr: Hàm chuyển đổi
Y: Hàm tổng
Giá trị trả về của Sigmoid Function thuộc khoảng [0,1] nên còn được gọi là hàm
chuẩn hóa (Normalized Function)
Quá trình huẫn luyện của một mạng Nơron nhân tạo thường theo phương pháp lantruyền ngược và được đánh giá dựa trên một hàm tính sai số, hàm tính phương sai thườngđược sử dung Các mẫu huấn luyện được đưa liên tục vào mạng, sau mỗi lần đưa vào,
hàm sai số sé tính ra độ lệch và điều chỉnh lại trong số của các kết nối để kết quả huấn
luyện được cải thiện hơn kết quả đã có
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é dan đượ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ệ thong 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 đạt
giá tri 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ó:
® Accuracy:
IP+IN LP+IN+FP+HiN
e Recall:
TP IP+FN
e False Positive:
FP PP+ TIN
VỚI:
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° Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
oe Khoa Khoa Học & Kỹ Thuật May Tinh
2.3.2 Mo hình Recurrent Neural Network
Hình 5: M6 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 mang 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 trong
chuỗ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ện
tạ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 đầu
và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 ở vai 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ối
quan 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ừ thi Neural Network sẽ unfold (dan ra) thành Neural Network có 5 layer, mỗi layertương ứng với mỗi từ Dưới day là ý nghĩa các kí hiệu toán học
e x, là input tại thời điểm thứ t Ví du, x; 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)
e s„ là hidden state (memory) tại thời điểm thứ t s, được tính dựa trên các hidden
state trước đó kết hợp với input của thời điểm hiện tại 2, = ƒ(U,, + W,,_,) Ham f là
ham nonlinearity (tanh hay ReLU) s_, la hidden state được khởi tạo là một vectorkhong.
e o, là output tại thời điểm thứ t o, là một vector chứa xác suất của toàn bộ các từtrong từ điển o, = softmazx(V,,)
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ết
quả 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 23cá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ựa
và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ệu
ECG khi dự đoán giá trị tiếp theo dựa vào các giá tri cùng lần đập tim và nằm trước đó.Nếu chúng ta dự đoán giá tri cuỗi cùng trong một mẫu do 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 phan 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 giandai, nơi các tín hiệu có quan hệ phụ thuộc lan 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 Van đề này đã được Hochreiter (1991) [German] andBengio, et al (1994)/19, 11] đưa ra như một bài toán can 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 Van
đề này phát sinh trong quá trình huan luyện Nêu trọng s6 của ma trận W nhỏ (tri riêngtrọng sO 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à vanishingsradients khi gradient signal ngày càng nhỏ/tan bién theo quá trình huấn luyện, khiến
cho 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 ma
trậ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 la exploding gradients khi gradient signal ngày càng bị phân tấn
trong 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 Van dé đặ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 tinhiệu huấn luyện càng dài thì thông tin trước đó dan dan 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ỗi
thì 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 thay hiệu ứng khi áp dụng liên tiếp ham sigmoid Dữ liệuthu được ngày càng tan biên dan cho dén lúc không còn nhận ra được nữa, làm mat vaitrò quan trong của việc sử dụng hàm sigmoid Lương tự như gradient vanishing khi tatruyền dữ liệu qua nhiều layer
Trang 24đ- Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s3» Khoa Khoa Học & Kỹ Thuật Máy Tính
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 hoc 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ễn
lạ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 van đề 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 Trong
RNN 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 ham 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
CÓ
Đ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
cI © — >> KZ
Neural Network Pointwise Vector
Layer Operation Transfer KEO NDEDEER Copy
Hình 9: Các ky 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ộng
vector Hình hộp nền vàng là các Neural Network layers được huấn luyện Dường kẻ hợp
lại nhau biểu thi cho concatenation - hợp nhất tín hiệu, và đường rẽ nhánh biểu thị cho
quá 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) được
thự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° Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
oe Khoa Khoa Học & Kỹ Thuật May Tinh
là cong (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ô ta độ 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” — qua
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à
hy, và ø„, đầu ra là một giá trị nằm trong khoảng |0, 1] cho cell state Œ;_¡ 1 tương đương
vớ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 quuế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ác
giá 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, en
được thêm vào trong cell state, được thể hiện qua hình 12
Oo Cc, = tanh(Wo-[hi-1, 4] + be)
Hình 12: Cổng quyét định thông tin cần cập nhật vao đườ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ũ, Œ¡_¡, va cell state mới Œ, LSTM sẽ dua state cũ hàm ƒ,, để quên
đi những gì trước đó Sau đó, thêm (7, Œ,), đâ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 27a mì Cr = fr *C—1 + tt * CO;
Hình 13: Cổng kết hop thông tin cần quên va thông tin cần cập nhật vao đườ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ần
dự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ẽ áp
dụ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ẽ day cell state qua ham 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:i À
đan) 0, =Ø(W, [he-1, 24] + bạ)
hy = oy * tanh (C;) hy—4 hy
4
Hình 14: Cổng quyét định giá trị đầu ra đối uới mỗi cell Nguồn: colah.github.io
2.3.4 Convolution Neural Network
Su ra đời cua CNN
Về cấu trúc, một NN sẽ nhận dau vào là một vector và biến đổi nó qua một chuỗi các
hidden layer Mỗi hidden layer gồm một tập các Nơron và mỗi Nơron sẽ có kết nối với tất
cả các Noron ở lớp trước nó Các Noron trong cùng layer hoạt động độc lập với nhau vàkhông có bất kỳ sự chia sẻ trọng số nào Lớp Nơron cuối cùng gọi là output layer và kết
quả của lớp này sẽ được dùng để phân loại dit liệu đầu vào
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 tam ả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 ƠNN, 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đà Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s1 Khoa Khoa Học & Ky Thuật Máy Tinh
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ột
phé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.
e 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 doi tượng đó
e 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
e 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 tat cả khuôn mặt trong một bức ảnh, nhận diện cam xúc
củ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 trong
bức ảnh
Hiện nay, CNN cũng được sử dung để 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ận
diệ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,rong, sâu và mỗi Noron 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 tran 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à Convolution
Layer, 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 hau 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 filter
thườ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 29sâ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ận
cụ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ữa
filter và vùng ảnh tương ứng Quá trình lan truyền của một filter sẽ tao ra một ma trận
2 chiều Bang trực giác, chúng ta thấy CNN sẽ học được trong số là các filter để nhận
biế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 layer
cao 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à
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 mang đầu ra ở lớp Convolution là: độ
sâu (depth), bước dịch chuyển (stride) và bộ đệm (zero-padding)
e Do 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ó
e Dướ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ỏ
e 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 xung
quanh 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ộ đệm
bằ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ông
khớ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 ƠNN
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° Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s3» Khoa Khoa Học & Kỹ Thuật Máy Tính
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í du 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 ƠNN Nhiệm vụ của các lớp Pooling là làm giảm dần
kí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 tran filter và bước dịch chuyển
(stride) Tuy nhiên, filter ở lớp Pooling chỉ có 2 chiều Vi dụ một filter thường dùng ở lớp
Pooling 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:
e 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
e Average Pooling: kết quả của phép toán là giá trị trung bình của các giá trị trongvung filter của lớp Pooling.
Trang 3121158 12119
8 |10 18} 12
ed |e, 21112
Lễ | ï 18} 10
WO; | OO] €&
Average Pooling Max Pooling
Hình 17: Vi du minh hoa lớp Pooling có filter 2x2 va stride bằng 2 Nguồn: embedded-vision.com
Lan truyền ngược (Backpropagation):
e Max Pooling: đối với lóp Pooling sử dung Max Pooling, trong quá trình lan truyềnngược, giá tri lỗi sẽ được gán vào vi 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ên
hoặc gan giá tri 0.
e Average Pooling: đối với lớp Pooling sử dung 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 gan cho toàn bộ vi trí trong vùng cua filter.Lớp Fully-connected (Fully-connected Layer)
lớp Fully-connected sẽ có các lớp này thường được
Tương tự như trong mạng NN thông thường, các Nơron
kết nối với tất cả các Noron ở lớp trước nó Hàm kích hoạt
tính là hàm nhân hai ma trận và cộng thêm một độ lệch bias.
6) 6)
Trang 32° Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
s3» Khoa Khoa Học & Kỹ Thuật Máy Tính
3 Kiến trúc hệ thong
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, va 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
Hình 18: So đồ thiét kế hệ thông Chăm sóc tim mach
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 nhan/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 333.1.1 7 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
lay Facebook, Google làm ví dụ Van dé lại càng quan trong hơn khi dữ liệu y tế lại càngcần tính bảo mật cao Với việc phân lớp dữ liệu có chú ý đến hiệu quả xử lý dữ liệu giữacác lớp là mục tiêu của dé tài, dé tài chia thành các tang dữ liệu ở 3 câp độ gồm người
dùng, Fog Computing, va Cloud được thể hiện trên hình 18 Việc chia thành 3 cấp độ thể
hiện qua 3 tầng dữ liệu góp phần tăng độ bảo mật dữ liệu của hệ thông, khi mỗi tầng có
thể hướng đến việc thực thi bảo mật riêng biệt Server trong hệ thống là một mạng phân
tán năm ở 2 tang Fog va Cloud
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 ở vi trí trung tam, cho phép việc phan bo xử lý dữ liệu đạt hiệu quả cao khi "huyđộng" được các tài nguyên nằm ở ria hệ thong, sau đó các bộ xử lý sẽ tiễn hành phântích và khai phá dữ liệu.
Trang 34° Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
oe Khoa Khoa Học & Kỹ Thuật May Tinh
Fog Data Services
Cloud
Hình 19: Kiến trúc Fog
Như đã đề cập, mô hình Fog Computing được đề xuất gồm 3 tầng, được thể hiện
trên hình 18
e Tang 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à day dữ liệu lên hệ
thống
e Tầng 2 (Fog): với cấu trúc Fog Computing, dữ liệu có thể được xử lý tại chính tangnà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ệu
nă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ện
quan 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ủa
bệ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.
e 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ạitang Fog sẽ được lưu trữ và xử lý bởi tầng 3
Trang 35Tầ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 vu 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 tap, lay 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 tam đồ đượ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 tat tín hiệu điệntâm đồ và có kết qua dự đoán, với kết qua bat 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 huan 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 dén Cloud về cảnh báo bat thường, Cloud sẽ tiễnhành broadcast thông tin message này tới moi 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 moi 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:
e Vị 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;
e Cảm bién AD8232 đóng vai trò cảm bién đo điện tam đồ ECG của người dùng vàeửi tín hiệu do cho bộ vi xử ly;
Trang 36Trường Đại Học Bách Khoa Tp.Hồ Chí Minh
Khoa Khoa Học & Ky Thuật Máy Tính
AD8232 | 1] E[ SL | |} PAI | PA2 | PA3 |
Hình 20: So đồ mach thiết bi do ECG Bang 1: Kết nôi các chân tín hiéu/dién áp trên các moduleHC05 STM32F407VG àD8232 STM32F407VGGND GND
Hình 20 và bang 1, module giao tiếp không dây chuẩn 2.4GHz ISM HC05 cho phép
truyền dữ liệu không dây giữa module và thiết bị có kết nôi không dây khác; module có
hai cổng giao tiếp RXD và TXD, là hai cong serial đảm nhận giao tiếp giữa module và viđiều khiến
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ềnthang 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 37việ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 lay tín hiệu và đưa ra output không đạt chat lượng NodeMCU nhận
tín hiệu từ STM32F407VG tuơng tự như HC05 thông qua các cong serial
Ngoài ra, module AD8232, có hai cong trigger LO- và LO+ dùng với chức năng nhưnhững cờ (flag) để sàng loc tín hiệu đo được, nếu một trong hai cờ cho giá tri 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ệu
analog, dit liệu cần cho input ở những tang sau
Xử lý tín hiệu tho:
Qua hình 20, có thể thấy tín hiệu từ AD8232 là tín hiệu analog - chan OUT, bộ chuyểndoi 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 4p 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 tang sau như đã dé cập ở các phan trên
3.2 Biểu đỗ Use Cases
inh 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