Tóm tắt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Lời cảm ơn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
Lời cam đoan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Mục lục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
Danh mục thuật ngữ viết tắt và giải nghĩa . . . . . . . . . . . . . . . . . . . . . . ix
Danh sách hình vẽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Danh sách bảng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Mở đầu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
1 Khái quát bài toán phân tích chuỗi thời gian lâm sàng . . . . . . . . . . . . 1
1.1 Giới thiệu về phân tích chuỗi thời gian lâm sàng . . . . . . . . . . . . . . 1
1.1.1 Giới thiệu về chuỗi thời gian . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Giới thiệu về bài toán phân tích chuỗi thời gian lâm sàng . . . . . 2
1.2 Các phương pháp phân tích chuỗi thời gian lâm sàng . . . . . . . . . . . . 3
1.2.1 Hệ thống chấm điểm trong ICU . . . . . . . . . . . . . . . . . . . 3
1.2.2 Điểm chuẩn của các mô hình học sâu trên bộ dữ liệu chăm sóc
sức khỏe lớn MIMIC-III . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Khó khăn và thách thức trong phân tích chuỗi thời gian lâm sàng . . . . . 10
1.4 Giới thiệu về ba mục tiêu dự báo: Nhiễm trùng huyết, Nhồi máu cơ tim,
và nồng độ Vancomycin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1 Nhiễm trùng huyết . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.2 Nhồi máu cơ tim . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.3 Vancomycin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Phát biểu bài toán của luận văn . . . . . . . . . . . . . . . . . . . . . . . . 12
72 trang |
Chia sẻ: honganh20 | Ngày: 15/03/2022 | Lượt xem: 359 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Các mô hình học sâu tiên tiến và ứng dụng trong phân tích chuỗi thời gian lâm sàng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ỏi ý nghĩa cốt lõi của mất bù, và nhiệm vụ trở
nên tương tự như dự đoán tử vong. Mặt khác, họ tin rằng đây là nhiệm vụ gần nhất
để dự đoán mất bù mà người ta có thể có được các nhãn chính xác từ cơ sở dữ liệu
MIMIC-III. Mỗi trường hợp này nhiệm vụ là một ví dụ phân loại nhị phân. Tương
tự như dự đoán tử vong trong bệnh viện, độ đo chính là AUC-ROC.
• Dự đoán thời gian lưu trú: dự đoán thời gian còn lại dành cho ICU vào mỗi giờ
ở lại. Dự đoán chính xác thời gian lưu trú còn lại rất quan trọng để lên lịch và quản
lý tài nguyên bệnh viện.Tác giả coi nhiệm vụ này như là một phân loại đa nhãn với
10 lớp/nhóm (một cho ICU ngắn hơn một ngày, 7 ngày của tuần đầu tiên, ở lại trên
một tuần nhưng ít hơn hai tuần và cho ở lại hơn hai tuần). Độ đo chính cho nhiệm
vụ này là điểm số kappa có trọng số tuyến tính Cohen.
• Phân loại kiểu hình phân loại trong số 25 điều kiện chăm sóc cấp tính có trong
một kiểu bệnh nhân lưu hồ sơ ICU nhất định. Vấn đề này là một vấn đề phân loại
đa nhãn với AUC-ROC trung bình vĩ mô là độ đo chính
9
1.3 Khó khăn và thách thức trong phân tích chuỗi thời
gian lâm sàng
Dữ liệu EHR đang ngày càng được sử dụng rộng rãi tại các trung tâm chăm sóc sức khỏe
trên toàn thế giới. Cùng với sự bùng nổ về dữ liệu là rất nhiều vấn đề còn tồn tại trong
dữ liệu này. Có thể kể đến các yếu tố sau đây:
• Tính đầy đủ: Các thông tin về bệnh nhân không phải lúc nào cũng được trình bày
hoàn toàn trong cơ sở dữ liệu EHR. Ngay cả với một giao diện người dùng chuẩn
thu thập dữ liệu bệnh nhân một cách có hệ thống, EHR vẫn không có đầy đủ thông
tin của người bệnh. Có nhiều lý do cho việc này, ví dụ: (1) thiếu ghi chép tỉ mỉ
thông tin bệnh nhân trong EHRs; (2) bác sĩ không thể xác định các điều kiện cụ
thể như tác dụng phụ của thuốc; (3) khi có nhiều bác sĩ cùng tham gia điều trị cho
một bệnh nhân và gặp nhiều vấn đề trong việc trao đổi thông tin và cập nhật chúng
kịp thời; và (4) khó khăn trong việc tích hợp các hệ thống EHR khác nhau được sử
dụng bởi các bệnh viện khác nhau, kết quả là dữ liệu của bệnh nhân có thể bị mất
khi bệnh nhân chuyển bệnh viện.
• Tính chính xác: Thông tin được cập nhật trong EHR cần phải có tính chính xác
cao. Thực tế, thông tin quan trọng thường tồn tại trong hình dạng của thông tin
không đủ cụ thể. Ví dụ, hồ sơ bệnh nhân có thể chứa chẩn đoán một rối loạn da nói
chung trong khi tình trạng cơ bản thực sự là do thuốc rối loạn da. Theo Ủy ban Y
tế Quốc gia Thụy Điển, trong một đánh giá của 4200 hồ sơ sức khỏe, khoảng 20%
các mã được gán trong EHRs đã được tìm thấy có lỗi lớn.
• Độ phức tạp: Điều này chủ yếu đề cập đến độ phức tạp của dữ liệu trong EHRs.
Các loại dữ liệu không đồng nhất vẫn còn tồn tại rất nhiều trong EHRs làm nổi bật
những khó khăn trong việc phân tích chúng. Những khó khăn không chỉ xuất hiện
trong việc kết hợp các loại dữ liệu không đồng nhất mà còn xuất hiện trong việc
phân tích chúng một cách riêng biệt. Để xử lý các ghi chú lâm sàng trong văn bản,
phương pháp phổ biến và được sử dụng nhiều đó là xử lý ngôn ngữ tự nhiên. Tuy
nhiên,việc này trở lên phức tạp bởi chất lượng văn bản thấp chứa số lượng lớn chữ
viết tắt trong y tế, lỗi đánh máy và câu không đầy đủ.
Các sự kiện lâm sàng được báo cáo trong EHRs, bao gồm chẩn đoán, thuốc và xét
nghiệm, thường là mang tính tạm thời. Thường có nhiều hơn một loại sự kiện lâm
sàng được báo cáo trong mỗi hồ sơ bệnh nhân, và mỗi sự kiện lâm sàng được báo
10
cáo nhiều lần về tần suất bệnh nhân đến bệnh viện. Khoảng cách thời gian giữa
hai lần đến bệnh viện của mỗi bệnh nhân thường khác nhau. Do đó, mỗi hồ sơ
bệnh nhân bao gồm nhiều chuỗi thời gian với độ dài khác nhau và khoảng thời gian
không đều, làm cho nó đặc biệt khó nắm bắt thông tin thời gian. Khi chuẩn bị dữ
liệu EHR để phân tích, một số thách thức kỹ thuật khác cũng thường gặp phải, bao
gồm cả chiều cao do số lượng lớn lâm sàng độc đáo. sự kiện; độ thưa thớt cao do
mỗi biến lâm sàng chỉ được chia sẻ bởi một nhóm nhỏ bệnh nhân; dữ liệu bị sai
lệch do rất ít hồ sơ sức khỏe chứa kết quả mục tiêu quan tâm so với những người
không.
1.4 Giới thiệu về bamục tiêu dự báo: Nhiễm trùng huyết,
Nhồi máu cơ tim, và nồng độ Vancomycin
Ba mục tiêu này đã được chọn để làm nổi bật ba kết quả y tế khác nhau được thúc đẩy
bởi các phát hiện trong phòng thí nghiệm, các dấu hiệu quan trọng và thuốc tương ứng.
Vì các mục tiêu này được đo và tính toán hàng ngày, một bệnh nhân có thể có các giá trị
mục tiêu khác nhau vào các ngày khác nhau tùy thuộc vào từng sự kiện mỗi ngày.
1.4.1 Nhiễm trùng huyết
Nhiễm trùng huyết là một trong những nguyên nhân hàng đầu gây tử vong ở bệnh nhân
của đơn vị chăm sóc chuyên sâu. Bệnh này là một trong những nguyên nhân hàng đầu
gây bệnh và cái chết trong ICU, đồng thời sự xuất hiện của nó vẫn tăng lên hàng năm.
Nhiễm trùng huyết gây ra bởi một phản ứng quá mức của cơ thể với nhiễm trùng và có thể
dẫn đến tổn thương mô, suy nội tạng và dẫn đến tử vong. Nhiễm trùng huyết có thể được
điều trị và phục hồi hoàn toàn. Dự đoán khởi phát nhiễm trùng huyết sớm và chính xác
có thể cho phép điều trị tích cực trong khi duy trì quản lý kháng khuẩn. Tuy nhiên, điều
này đòi hỏi phải dùng thuốc kịp thời. Một bệnh nhân xác suất sống sót giảm 7,6% cho
mỗi giờ điều trị bị hoãn [2]. Xem xét vai trò của nhiễm trùng trong nhiễm trùng huyết,
các xét nghiệm thường được thực hiện để xác nhận và xác định chúng. Xét nghiệm cấy
máu(blood culture test) xác định vi khuẩn hoặc nấm gây ra nhiễm trùng. Các xét nghiệm
như vậy được thực hiện khi có nghi ngờ nhiễm trùng huyết. Thực tế, các phương pháp
dự đoán hiện tại cho hiệu suất thấp và thường đòi hỏi thời gian để thu được kết quả xét
nghiệm trong phòng thí nghiệm.
11
1.4.2 Nhồi máu cơ tim
Nhồi máu cơ tim là một bệnh tim mạch do thiếu máu cơ tim cung cấp hoặc thậm chí hoại
tử cơ tim do tắc động mạch vành. Ở giai đoạn đầu của bệnh này, bệnh nhân bị nhồi máu
cơ tim thường có triệu chứng chẳng hạn như đau ngực và tức ngực, nhưng một số bệnh
nhân vẫn không có triệu chứng rõ ràng gây khó khăn trong việc điều trị kịp thời, do đó
đe dọa tính mạng. Do đó, làm thế nào để đạt được sớm chẩn đoán nhồi máu cơ tim có
giá trị lâm sàng quan trọng, và đã trở thành một chủ đề nghiên cứu về nhiều học giả.
1.4.3 Vancomycin
Nồng độ của Vancomycin trong huyết thanh cần nằm trong một phạm vi nhất định đối
với bệnh nhân tại ICU của bệnh viện. Vancomycin được sử dụng rộng rãi cho các trường
hợp nhiễm Staphylococcus aureus (MRSA) kháng methicillin và do đó được đánh giá
cao trong nghiên cứu. Đây là một bệnh nhiễm trùng do vi khuẩn. Khi nồng độ của thuốc
quá cao sẽ gây hại cho bệnh nhân, nhưng khi quá thấp thì không hiệu quả.
1.5 Phát biểu bài toán của luận văn
Đầu vào Dự đoán sự kiện lâm sàng cho mỗi bệnh nhân thường sử dụng một chuỗi các
giá trị về xét nghiệm, nhân khẩu học, thuốc . . . với các bước thời gian lịch sử là dữ liệu
đầu vào được biểu thị bằng một vector như sau:
XT =
[
xT−n xT−(n−1) . . . xT−2 xT−1
]
(1.1)
Giả sử ICU bao gồm các P bệnh nhân và chúng ta cần dự đoán sự kiện xảy ra tương
ứng tại thời điểm T sử dụng n khung thời gian lịch sử (các bước), đầu vào có thể là đặc
trưng như một ma trận như sau:
XPT =
x1
x2
...
xP
=
x1T−n x
1
T−n+1 . . . x
1
T−2 x
1
T−1
x2T−n x
2
T−n+1 . . . x
2
T−2 x
2
T−1
...
... . . .
...
xPT−n x
P
T−n+1 . . . x
P
T−2 x
P
T−1
(1.2)
Với mỗi
XPT =
[
xT−n xT−(n−1) . . . xT−2 xT−1
]
(1.3)
là một vector với m giá trị về kết quả xét nghiệm hay liều lượng thuốc, thông tin bệnh
nhân . . . . (đặc trưng được trích xuất tương ứng với từng sự kiện).
12
Đầu ra:
Đầu ra sẽ là dự báo liên quan đến sự kiện lâm sàng tương ứng tại bước thời gian
T + 1 là xˆT+1 = yT
Kết luận chương 1
Trong chương ngày, luận văn giới thiệu sơ lược về chuỗi thời gian và bài toán phân tích
chuỗi thời gian lâm sàng. Bên cạnh đó, luận văn giới thiệu về các phương pháp tiếp cận
phổ biến trong phân tích và dự đoán chuỗi thời gian lâm sàng và các nghiên cứu liên
quan.
Luận văn đồng thời phân tích các khó khăn và thách thức của bài toán và phát biểu
bài toán sẽ triển khai trong luận văn này.
Trong chương tiếp theo, luận văn sẽ trình bày về mô hình BiLSTM và các mô hình
học sâu cơ sở khác sử dụng trong luận văn.
13
Chương 2
Mô hình bộ nhớ dài ngắn hạn
hai chiều BiLSTM
2.1 Mạng nơ-ron nhân tạo
Mạng nơ-ron nhân tạo (Artificial Intelligent - ANN) lấy cảm hứng từ sinh học được thiết
kế để mô phỏng theo cách mà bộ não con người xử lý thông tin. ANN thu thập kiến thức
của nó bằng cách phát hiện các mẫu và mối quan hệ trong dữ liệu và được huấn luyện
thông qua kinh nghiệm.
Hình 2.1: Mạng nơ-ron nhân tạo.
Một mạng nơ-ron nhân tạo được xây dựng từ những thành phần cơ bản là những
nơ-ron nhân tạo chứa lớp đầu vào (input layer), một hoặc nhiều lớp ẩn (hidden layers)
và một lớp đầu ra (output layer). Các đầu vào tiếp nhận kích thích từ đầu ra của những
14
nơ-ron khác hoặc từ môi trường. Mỗi nơ-ron vào có một bộ trọng số (weights) nhằm
khuếch đại tín hiệu kích thích sau đó tất cả sẽ được cộng lại. Tín hiệu sau đó sẽ được tiếp
tục biến đổi nhờ một hàm phi tuyến, thường gọi là hàm kích hoạt (activate function). Và
cuối cùng tín hiệu sẽ được đưa đến đầu ra của nơ-ron để lại trở thành đầu vào của các
nơ-ron khác hoặc trở thành tín hiệu ra của toàn bộ mạng. Khi kết hợp các nơ-ron lại với
nhau ta có một mạng nơ-ron nhân tạo. Tuỳ theo cách thức liên kết giữa các nơ-ron mà
ta có các loại mạng khác nhau như: mạng nơ-ron truyền thẳng, mạng nơ-ron hồi quy,...
Hình 2.1 minh họa một mạng nơ-ron nhân tạo cơ bản.
Trong ANN, rất nhiều tham số (trọng số và độ lệch) cần được điều chỉnh. Thay đổi
giá trị của các tham số này có thể dẫn đến một lượng lớn đầu ra khác nhau. Không chỉ
có vậy, chúng ta cũng có thể tùy chỉnh số lớp và số nơ-ron cho mỗi lớp lớp. ANN cung
cấp khả năng giải quyết vô số bài toán với mức độ phức tạp cao.
Vì vậy, một khi chúng ta có cấu trúc của mạng lưới thần kinh (số lượng nơ-ron, số
lượng lớp,..) chúng ta cần một thuật toán điều chỉnh tập hợp các trọng số để giải quyết bài
toán mà chúng ta đang cố gắng thể hiện. Thuật toán lan truyền ngược (BackPropagation)
thực hiện được điều này. Nếu khởi tạo ngẫu nhiên tất cả các tham số và tính toán đầu ra
của ANN, sẽ thấy rằng kết quả sẽ khác nhiều so với đầu ra mong muốn. Vì vậy, chúng ta
có thể tính toán sự khác biệt giữa đầu ra thực tế của ANN và đầu ra mong muốn (được
gọi là lỗi) và thông qua Gradient Descent, chúng ta có thể giảm thiểu lỗi này. Sử dụng
một quy trình lặp để giảm thiểu giá trị lỗi tối ưu cho các trọng số và độ lệch.
2.2 Mạng truyền thẳng
Cấu trúc mạng nơ-ron truyền thẳng được mô tả trong Hình 2.2, ví dụ về một cấu trúc
cho mạng nơ ron hai lớp. Các biến đầu vào, biến ẩn và các biến đầu ra được biểu diễn
bằng các nút và các tham số trọng số được biểu diễn bởi các liên kết giữa các nút, trong
đó các tham số bias được biểu thị bằng các liên kết đến từ đầu vào bổ sung và các biến
ẩn x0 và z0. Mũi tên biểu thị hướng của luồng thông tin qua mạng trong quá trình truyền.
Các nơ-ron dựa trên sự kết hợp tuyến tính của các hàm cơ sở phi tuyến cố định
φj(x) có công thức như sau:
y(x,w) = f(
M∑
j=1
wjφj(x)) (2.1)
Trong đó, f(.) là một hàm kích hoạt phi tuyến. Hàm phij(x) phụ thuộc vào các
tham số: trọng số (weight) và bias. Các tham số này có thể điều chỉnh trong quá trình
15
Hình 2.2: Cấu trúc mạng nơ-ron truyền thẳng
huấn luyện. Có nhiều cách để xây dựng các hàm cơ sở phi tuyến. Mạng nơ-ron sử dụng
các hàm cơ sở theo dạng tương tự như Công thức2.1, sao cho mỗi hàm cơ sở tự nó là
hàm phi tuyến của tổ hợp tuyến tính của các đầu vào, trong đó các hệ số trong tổ hợp
tuyến tính là các tham số thích nghi. Định nghĩa này dẫn đến mô hình mạng thần kinh cơ
bản. Đầu tiên chúng ta xây dựng tổ hợp tuyến tínhM của các biến đầu vào x1, . . . , xD) ở
dạng:
aj =
D∑
i=1
w
(1)
ji xi + w
(1)
j0 (2.2)
với j = 1, . . . ,M . Trong đó, chỉ số trên là các tham số tương ứng nằm trong lớp đầu tiên
của mạng,w(1)ji là trọng số và các tham số w
(1)
j0 là độ lệch. Số lượng aj được gọi là giá
trị kích hoạt. Mỗi giá trị kích hoạt này sau đó được chuyển đổi bằng hàm kích hoạt phi
tuyến khác nhau h(∆):
zj = h(aj) (2.3)
zj tương ứng với các đầu ra của các hàm cơ sở trong Công thức 2.1.Các hàm phi
tuyến h(∆) thường được chọn là các hàm sigmoid hoặc tanh. Theo Công thức 2.1, các
giá trị này lại được kết hợp tuyến tính để kích hoạt đơn vị đầu ra:
ak =
M∑
j=1
w
(2)
kj xi + w
(2)
k0 (2.4)
với k = 1, . . . , K là số lượng đầu ra. Sự chuyển đổi này tương ứng đến lớp thứ hai của
mạng,w(2)j0 là độ lệch. Cuối cùng, đơn vị đầu ra kích hoạt được chuyển đổi bằng cách sử
16
dụng hàm kích hoạt thích hợp σ để cung cấp một bộ đầu ra mạng yk. Chúng ta có thể kết
hợp các giai đoạn vừa được giải thích để cung cấp chức năng mạng tổng thể như sau:
y(x,w) = σ(
M∑
j=1
w
(2)
kj h(
D∑
i=1
w
(1)
ji xi + w
(1)
j0 ) + w
(2)
k0 ) (2.5)
Kiến trúc mạng được hiển thị trong Hình2.2 có thể dễ dàng khái quát bằng cách
xem xét các lớp tế bào thần kinh bổ sung. Vấn đề chính là làm thế nào để tìm giá trị tham
số phù hợp cho một tập hợp các dữ liệu huấn luyện.
2.3 Học với mạng nơ-ron
2.3.1 Hàm lỗi và cực tiểu hóa Gradient Descent
Cũng tương tự như các bài toán học máy khác thì quá trình học vẫn là tìm lấy một hàm
lỗi để đánh giá và tìm cách tối ưu hàm lỗi đó để được kết quả hợp lý nhất có thể. Một
cách tiếp cận đơn giản cho vấn đề xác định các tham số mạng là để giảm thiểu tổng bình
phương hàm lỗi. Cho một tập huấn luyện bao gồm một tập các vectơ đầu vào xn, cho
n = 1, . . . , N , cùng với một tập các vectơ đích tương ứng tn, cực tiểu hóa hàm lỗi:
E(w) =
1
2
N∑
n=1
||tn − yn(xn, w)||2 (2.6)
Để tìm ra một giá trị nhỏ nhất hợp lý, cần phải chạy thuật toán gradient descent
nhiều lần, mỗi lần sử dụng một vector trọng số được chọn ngẫu nhiên khác nhau.
2.3.2 Lan truyền ngược
Với mỗi điểm dữ liệu trong tập huấn luyện,tổng của hàm lỗi
E(w) =
N∑
n=1
En(w) (2.7)
Với một đầu vào xn cụ thể, hàm lỗi của tập huấn luyện là:
En =
1
2
K∑
k=1
(tk − yk)2 (2.8)
trong đó yk là đầu ra của nơ-ron k, và tk tương ứng là mục tiêu. Đạo hàm của hàm lỗi
tương tứng với yk là:
∂En
∂yk
= yk − tk (2.9)
17
Chúng ta có đầu ra của ANN có thể được tính bởi công thức sau:
∂En
∂w
(1)
ji
=
K∑
k=1
[(yk − tk).yk(1− yk).w(2)kj ].zj(1− zj).xi (2.10)
2.3.3 Hàm kích hoạt
Mỗi nơ-ron có tín hiệu đầu vào và tín hiệu đầu ra. Đầu ra của một lớp được sử dụng như
đầu vào cho lớp tiếp theo. Do đó, mỗi nơ-ron phải kết hợp tín hiệu đầu vào tín hiệu đầu
ra. Điều này được thực hiện bằng cách tính tổng trọng số của các giá trị đầu vào cộng
với độ lệch và áp dụng hàm kích hoạt φ. Điều này được đưa ra theo công thức dưới đây:
Yk = φ(
∑
i
= (wik ∗ xi) + bk) (2.11)
Trong Công thức 2.11, Yk và bk tương ứng là tín hiệu đầu ra và độ lệch của nơ-ron
k,wik là trọng số của kết nối giữa đầu vào i và nơ-ron k, xi là giá trị của đầu vào i.
Hàm kích hoạt đơn giản nhất là hàm tuyến tính: φ(x) = x. Điều này có nghĩa là
không có hàm kích hoạt nào được sử dụng. Một phương trình tuyến tính dễ giải, nhưng
nó rất hạn chế trong sự phức tạp. Các hàm kích hoạt khác phổ biến hơn được trình bày
trong Bảng 2.1 và Hình 4.9 bên dưới.
Bảng 2.1: Một số hàm kích hoạt
Tên hàm Công thức Giá trị
Linear x (−∞,∞)
Hyperbolic tangent (tanh) tanh(x) = e
2x−1
e2x+1 (−1, 1)
Logistic sigmoid σ(x) = 11+e−x (0, 1)
Rectified linear unit (ReLU) max(0, x) [0,∞)
2.4 Bộ nhớ dài ngắn hạn
2.4.1 Mạng nơ-ron hồi quy
Mạng nơ-ron hồi quy (Recurrent Neural Network - RNN) là một mạng nơ-ron thần kinh
chứa các vòng lặp bên trong cho phép thông tin có thể lưu lại được. Một mạng nơ-ron
hồi quy có thể được coi là nhiều bản sao chép của cùng một mạng, trong đó mỗi đầu ra
của mạng này là đầu vào của một mạng sao chép khác. Chuỗi lặp lại các mạng này chính
18
Hình 2.3: Các hàm kích hoạt khác nhau trong mạng nơ-ron nhân tạo
là phân giải của mạng nơ-ron hồi quy, các vòng lặp khiến chúng tạo thành một chuỗi
danh sách các mạng sao chép nhau.
Các kiến trúc của RNN, cũng là cấu trúc cơ bản của LSTM, được trình bày trong
Hình 2.4.
Tại lớp ẩn của RNN, nó nhận vector đầu vào XPT sinh ra vector đầu ra Y
T . Cấu trúc
mở ra của RNN (Hình 2.4) biểu diễn quá trình tính toán tại mỗi thời điểm lặp t, lớp ẩn
duy trì trạng thái ẩn (hidden state) ht và cập nhập dựa trên lớp đầu vào xt và trạng thái
ẩn ht−1 trước đó sử dụng công thức dưới đây:
ht = σh(Wxhxt +Whhht−1 + bh) (2.12)
Trong đó, Wxh là ma trận trọng số từ lớp đầu vào đến lớp ẩn, Whh là ma trận trọng số
giữa hai trạng thái ẩn liên tiếp ht−1 và ht, bh là vector bias của lớp ẩn và σh là hàm kích
hoạt để sinh ra trạng thái ẩn. Đầu ra của mạng nơ-ron có thể được biểu diễn như sau:
yt = σ(Whyht + by) (2.13)
Trong đó,Why là ma trận trọng số từ lớp ẩn đến lớp đầu ra, by là vector bias của lớp đầu
ra và σy là hàm kích hoạt của lớp đầu ra.Áp dụng Biểu thức 2.12 và Biểu thức 2.13, các
tham số của RNN được huấn luyện và cập nhật lặp đi lặp lại thông qua phương pháp lan
19
truyền ngược (Back-Probagation). Tại mỗi bước thời gian t, lớp ẩn sẽ sinh ra một giá trị
yt, và đầu ra cuối cùng yT là giá trị dự đoán mong muốn tại bước thời gian tiếp theo. Nói
cách khác, xˆT+1 = yT
Mặc dù RNN thể hiện khả năng vượt trội của mô hình với chuỗi thời gian phi tuyến,
tuy nhiên, RNN thông thường gặp phải vấn đề bùng nổ và biến mất đạo hàm trong quá
trình lan truyền ngược. Do đó, nó không có khả năng học từ các chuỗi thời gian có độ
trễ lớn [12], hay các chuỗi thời gian có phụ thuộc dài [3]
𝐡𝑡
𝐱𝑡 𝐱0 𝐱1 𝐱2 𝐱𝑛
𝐡0 𝐡1 𝐡2 𝐡𝑛
𝐀 𝐀 𝐀 𝐀 𝐀 Unfold
Hình 2.4: Mạng nơ-ron hồi quy.
2.4.2 Mạng bộ nhớ dài ngắn hạn
Để xử lý các vấn đề đã nói ở trên của RNN, một số kiến trúc phức tạp như LSTM [15] và
kiến trúc GRU [10] được đề xuất. Nhiều nghiên cứu đã chứng minh rằng mạng LSTM
hoạt động tốt trên các bài toán theo trình tự với các phụ thuộc dài hạn.
Thành phần khác nhau duy nhất giữa LSTM và RNN là lớp ẩn [12]. Các lớp ẩn của
LSTM còn được gọi là ô hoặc đơn vị (cell). Hình 2.5 minh họa kiến trúc của một đơn vị
bộ nhớ dài ngắn hạn. Giống như RNN, tại mỗi lần lặp t, một đơn vị LSTM có lớp đầu
vào xt và lớp đầu ra ht. Mỗi đơn vị nhận trạng thái đầu vào c˜t, trạng thái đầu ra ct và
trạng thái đầu ra của đơn vị trước đó ct−1 trong quá trình huấn luyện và cập nhật tham
số.
Với cấu trúc cổng, LSTM có thể giải quyết được các phụ thuộc dài hạn để cho phép
các thông tin hữu ích đi qua cổng. Có ba cổng trong một đơn vị LSTM là cổng đầu vào
(input gate) it, cổng quên (forget gate) ft và cổng đầu ra (output gate) ot tại mỗi bước
thời gian t. Đặc biệt, cổng quên giúp LSTM trở thành một mô hình hiệu quả và có thể
mở rộng cho một số vấn đề học tập liên quan đến dữ liệu tuần tự [13]. Tại mỗi thời điểm
t, LSTM tính toán trạng thái ẩn như sau:
20
σ σ tanh
tanh
σ
𝐜𝑡−1
𝐡𝑡−1
𝐜𝑡
𝐡𝑡
𝐡𝑡
𝐱𝑡
𝑓𝑡 𝑖𝑡 𝑜𝑡
𝐜𝑡
Hình 2.5: Kiến trúc của một đơn vị bộ nhớ dài ngắn hạn LSTM.
it = σ
(
xtW
i + ht−1Ui + bi
)
(2.14)
ft = σ
(
xtW
f + ht−1Uf + bf
)
(2.15)
c˜t = tanh (xtW
c + ht−1Uc + bc) (2.16)
ct = it c˜t + ft ct−1 (2.17)
ot = σ (xtW
o + ht−1Uo + bo) (2.18)
ht = ot tanh (ct) (2.19)
Trong đó, Wi, Ui, Wf , Uf , Wc, Uc, Wo, and Uo là các tham số huấn luyện mô
hình; bi, bf , bc, và bo là các giá trị bias; σ kí hiệu hàm sigmoid, và kí hiệu phép nhân
ma trận.
Đầu ra cuối cùng của một lớp LSTM là một vector với tất cả các đẩu ra được biểu
diễn bởi YT = [hT−n, . . . , ht−1]. Chỉ có phần từ cuối cùng trong vector đầu ra là hT−1 là
giá trị cần dự đoán. Do đó, giá trị dự đoán (xˆ) cho bước lặp thời gian tiếp theo T là hT−1.
Nói cách khác (xˆ)T = hT−1.
2.4.3 Bộ nhớ dài ngắn hạn hai chiều
Ý tưởng của BiLSTM xuất phát tự mạng nơ ron hồi quy hai chiều [27], nó xử lý chuỗi
dữ liệu với hai chiều xuôi và ngược với hai lớp ẩn riêng biệt. BiLSTM kết nối hai lớp ẩn
tới cùng một lớp đầu ra. Kiến trúc mở ra của BiLSTM bao gồm một lớp LSTM truyền
thẳng và một lớp LSTM truyền ngược được biểu diễn trong Hình 2.6.
21
Hình 2.6: Kiến trúc mở ra của BiLSTM với ba bước thời gian liên tiếp.
Chuỗi đầu ra của lớp truyền thẳng
−→
h lần lượt được tính toán sử dụng chuỗi đầu
vào từ thời điểm T − n tới thời điểm T − 1. Cả hai đầu ra của lớp truyền thẳng và truyền
ngược được tính toán bằng cách suwr dụng biểu thức cập nhật của một đơn vị LSTM cơ
bản đã trình bày tại Mục 2.4.2. BiLSTM sinh ra một vector đầu ra YT , trong đó, mỗi
thành phần được tính toán bằng biểu thức sau:
yt = σ(
−→
ht ,
←−
ht) (2.20)
Trong đó, hàm σ được sử dụng để kết hợp hai chuỗi đầu ra. Nó có thể là một
hàm nối, một hàm tổng, hàm trung bình hoặc một hàm nhân. Tương tự như một lớp
LSTM, đầu ra cuối cùng của một lớp BiLSTM có thẻ được biểu diễn bởi vector YT =
[yT−n, . . . , yT−1. Giá trị cuối cùng yT−1 là giá trị dự đoán cho bước lặp thời gian tiếp
theo.
2.5 Cơ chế chú ý
Trong những năm gần đây, cơ chế chú ý (Attention Mechanism) nhận được nhiều sự quan
tâm và gây được sự chú ý lớn trong cộng đồng học sâu. Cơ chế này hiện được sử dụng
trong một s ốbài toán chẳng hạn như chú thích hình ảnh, tóm tắt văn bản,.. Các cơ chế
chú ý trong mạng lưới thần kinh tương đối dựa trên cơ chế chú ý thị giác của con người.
Sự chú ý thị giác của con người được nghiên cứu kỹ dẫn đến các mô hình khác nhau, tất
cả chúng về cơ bản có thể tập trung vào vùng có ’độ phân giải cao’ của hình ảnh trong
khi hình ảnh xung quanh được cảm nhận ở ’độ phân giải thấp’ và tiêu cự theo thời gian
được điều chỉnh.
22
Cơ chế chú ý ban đầu được phát triển bằng cách sử dụng các mô hình Seq2Seq liên
quan đến dịch máy thần kinh. Trước Cơ chế chú ý, dịch thuật dựa trên việc đọc toàn bộ
câu trước khi cô đọng tất cả thông tin vào một vectơ dài cố định. Kết quả là, một câu có
hàng trăm từ được đại diện bởi một số từ chắc chắn sẽ dẫn đến việc mất thông tin hoặc
dịch không đủ. Vấn đề này được giải quyết một phần bởi cơ chế chú ý. Trình dịch máy
có thể nhận biết tất cả thông tin có trong câu gốc và sau đó tạo từ thích hợp theo từ hiện
tại mà nó hoạt động và với ngữ cảnh. Nó thậm chí có thể cho phép người dịch ’phóng to
hoặc thu nhỏ’ (tập trung vào các tính năng cục bộ hoặc toàn cục).
Cơ chế chú ý tuy nhiên không bí ẩn hoặc phức tạp. Nó chỉ đơn giản là một vectơ
được xây dựng bởi các tham số và toán học tinh vi, thường là đầu ra của lớp dày đặc sử
dụng hàm softmax. Nó cũng có thể được đặt ở bất cứ đâu phù hợp và có khả năng mà
kết quả có thể được nâng cao.
Tương tự như kiến trúc Encoder-Decoder cơ bản đó là đặt một vectơ ngữ cảnh vào
khoảng trống của bộ Encoder-Decoder. Để xây dựng một vector ngữ cảnh là khá đơn
giản. Trước hết, để so sánh trạng thái mục tiêu và trạng thái nguồn, chúng tôi lặp qua tất
cả các trạng thái của bộ mã hóa và tạo điểm số cho từng trạng thái trong bộ mã hóa. Sau
đó, hàm softmax có thể được sử dụng để bình thường hóa tất cả các điểm số, dẫn đến
phân phối xác suất dựa trên các trạng thái mục tiêu.
αts =
exp
(
score(ht, h¯s)
)∑S
s′=1 exp
(
score(ht, h¯s′)
) [Attention weight] (2.21)
ct =
∑
s
αtsh¯s [Context vector] (2.22)
at = f(ct,ht) = tanh ([ct;ht]W
c) [Attention vector] (2.23)
2.6 Cơ chế che dấu
Trong thực tế, dữ liệu y tế điện tử thường bị thiếu một lượng thông tin đáng kế mà nếu
không được xử lý có thể làm giảm tính hợp lệ của các kết luận được đưa ra. Để giải quyết
vấn đề dữ liệu bị thiếu trong dữ liệu y tế điện tử rất phức tạp bởi thực tế là đôi khi rất
khó phân biệt giữa dữ liệu bị thiếu và giá trị âm. Ví dụ, một bệnh nhân không có tiền sử
suy tim có thể thực sự không mắc bệnh hoặc bác sĩ lâm sàng có thể đơn giản là không
ghi nhận tình trạng này.
Đối với vấn đề dự đoán dựa trên mạng LSTM, nếu dữ liệu chuỗi thời gian đầu vào
chứa giá trị thiếu hay giá trị null, mô hình LSTM sẽ thất bại do giá trị null không thể
23
được tính trong quá trình huấn luyện mô hình. Nếu các giá trị bị thiếu được đặt thành 0
hoặc một số giá trị khác được xác định trước, kết quả huấn luyện và kiểm thử mô hình
sẽ bị sai lệch cao.
Hình 2.7: Cơ chế che dấu cho chuỗi thời gian mất mát dữ liệu.
Hình 2.7 mình họa chi tiết cơ chế che dấu. Với một lớp LSTM, giá trị che dấu ω
được xác định trước thường là 0 hoặc Null và tất cả các giá trị thiếu trong chuỗi dữ liệu
thời gian được đặt là ω. Cho một chuỗi thời gian XT , nếu xt là giá trị bị thiếu, quá trình
huấn luyện tại bước thời gian t sẽ được bỏ qua. Do đó, giá trị tính toán được của ô trạng
thái tại bước thời gian t−1 sẽ được truyền trực tiếp tới bước thời gian t+1. Trong trường
hợp này, đầu ra của bước bước thời gian t bằng với ω có thể trở thành đầu vào cho lớp
tiếp theo. Tương tự, chúng ta có thể giải quyết vấn đề các giá trị thiếu liên tiếp sử dụng
cơ chế che dấu này.
24
Kết luận Chương 2
Trong chương này, luận văn đã giới thiệu về mô hình BiLSTM. Đồng thời, luận văn trình
bày các kiến thức nền tảng về trí tuệ nhân tạo, các mô hình học sâu cơ sở như mạng
nơ-ron hồi quy, bộ nhờ dài n
Các file đính kèm theo tài liệu này:
- cac_mo_hinh_hoc_sau_tien_tien_va_ung_dung_trong_phan_tich_ch.pdf