.19 Kiến trúc OCR phổ biến

Một phần của tài liệu Số hóa phiếu xét nghiệm sử dụng kỹ thuật trí tuệ nhân tạo (luận văn thạc sĩ) (Trang 41 - 47)

Phương pháp nhận diện ký tự thường sử dụng CNN kết hợp LSTM trên có những nhược điểm như sau:

27

- Thời gian huấn luyện lâu: khi xử lý mợt câu văn bằng RNN thì mơ hình xử lý câu văn một cách tuần tự theo từng bước do đó hidden state sau phải phụ thuộc vào hidden state trước thực hiện xong. Mơ hình khơng thể thực hiện tính tốn song song, khơng tận dụng được khả năng tính tốn của GPU khiến thời gian huấn luyện lâu. - Khả năng ghi nhớ, ngữ nghĩa kém : RNN học các đặc trưng theo từng bước sau đó sẽ mã hóa câu đầu vào thành một context vector, các context vector các từ sẽ giống nhau. Nhưng trong một câu xét về mặt ngữ nghĩa có những từ có từ vai trò quan trọng có những từ ít quan trọng hơn do đó việc coi các từ giống nhau sẽ làm giảm đợ chính xác của mơ hình.

- Cơ chế attention truyền thống cập nhật lại trọng số (attention weight) của context vector nhờ đó giúp giải mã, mơ hình hóa được mối quan hệ ngữ nghĩa giữa input và output. Attention weight bản chất chính là đợ liên quan của các encoder hidden states với decoder hidden state.

Transformer giải quyết được nhược điểm của mơ hình OCR truyền thống dựa vào hai cấu trúc là multi-head attention và positional encoding. Kiến trúc transformer bao gồm hai phần encoder và decoder [21].

- Encoder: Gồm N block, mỗi block bao gồm hai sub-layer: Multi-Head Attention và Feed forward network. Sau mỗi sub-layer đó là một lớp Layer Norm có ý nghĩa tương tự như lớp Batch Norm trong CNN.

- Decoder: cũng tương tự như encoder gồm N block, mỗi block gồm 2 sub-layer. Decoder có một lớp Masked Multi-Head Attention, lớp này chính là lớp Multi-Head Attention. Multi-Head Attention có chức năng tập trung chú ý (attention) đến tồn bợ những decoder hidden state trước.

2.4.1 Kiến trúc Tranformer OCR

28

Hình 2.20 Kiến trúc Transformer [21] - Endcoder

o Input Embedding: Văn bản được biểu diễn dưới dạng vector, gọi là input embedding, đảm bảo các từ gần nghĩa có vector gần giống nhau.

Hình 2.21 Ví dụ input embedding [22]

o Positional Encoding: Word embeddings biểu diễn ngữ nghĩa của một từ, tuy nhiên cùng một từ ở vị trí khác nhau của câu lại mang ý nghĩa khác nhau. Do đó

29

Transformers có thêm mợt phần Positional Encoding để thêm thơng tin về vị trí của mợt từ trong câu.

𝑃𝐸(𝑝𝑜𝑠,2𝑖) = sin⁡(𝑝𝑜𝑠/100002𝑖/𝑑𝑚𝑜𝑑𝑒𝑙) (2 - 10) 𝑃𝐸(𝑝𝑜𝑠,2𝑖+1) = sin⁡(𝑝𝑜𝑠/100002𝑖/𝑑𝑚𝑜𝑑𝑒𝑙) (2 - 11) Trong đó: pos là vị trí của từ trong câu; PE là giá trị phần tử thứ i trong embeddings có độ dài dmodel. Sau đó cộng PE vector và Embedding vector:

Hình 2.22 Minh họa Positional Encoding [22].

o Self-Attention: Self-Attention là cơ chế giúp Transformers hiểu được sự liên quan giữa các từ trong mợt câu. Ví dụ như từ “kicked” trong câu “I kicked the ball” (tôi đã đá quả bóng). Từ “I” là chủ ngữ, “kicked” là động từ nghĩa là sút/đá sẽ luôn liên quan đến từ “ball” là vị ngữ. Từ “the” là giới từ nên khơng có sự liên kết với từ “kicked” [22].

30

Đầu vào của các Multi-head Attention (Self-Attention) là 3 vectors Querys (Q), Keys (K) và Values (V). Từ 3 vectors này, ta sẽ tính vector attention Z cho mợt từ theo công thức sau:

𝑍 = 𝑠𝑜𝑓𝑡𝑚𝑎𝑥⁡ ( 𝑄.𝐾𝑇

√𝐷𝑖𝑚𝑒𝑛𝑠𝑖𝑜𝑛⁡𝑜𝑓⁡𝑣𝑒𝑐𝑡𝑜𝑟⁡𝑄,𝐾⁡𝑜𝑟⁡𝑉) . 𝑉 (2 - 12)

o Multi-head Attention: thay vì sử dụng 1 Self-attention thì tác giả sử dụng nhiều Attention khác nhau (multi-head). Attention sẽ chú ý đến các phần khác nhau trong câu, mỗi “head” sẽ cho ra một ma trận attention riêng, tác giả kết hợp các ma trận này và nhân với ma trận trọng số WO để ra một ma trận attention duy nhất [22] .

Hình 2.24 Minh họa tính ma trận Wo [22]

o Feed Forward: Sau khi được chuẩn hóa, các vectors z được đưa qua mạng fully connected trước khi giải mã.

- Decoder:

o Masked Multi-head Attention: Decoder giải mã thông tin từ Encoder và sinh ra từng từ dựa trên từ trước đó. Decoder dịch đến từ thứ i, phần sau của câu từ sẽ bị che lại (masked) và Decoder chỉ được phép “nhìn” thấy phần nó đã dịch trước đó [22].

31

Hình 2.25 Masked Multi-head Attention [22].

o Quá trình decode: Giống với quá trình encode, Decoder giải mã từng từ. Sau khi masked input đưa qua sub-layer #1 của Decoder, nó sẽ không nhân với 3 ma trận trọng số để tạo ra Q, K, V nữa mà chỉ nhân với 1 ma trận trọng số WQ. K và V được lấy từ Encoder cùng với Q từ Masked multi-head attention đưa vào sub-layer #2 và #3 tương tự như Encoder. Cuối cùng, các vector được đẩy vào lớp Linear (là 1 mạng Fully Connected) kết hợp Softmax để cho ra xác suất của từ tiếp theo [22] (hình 2.25).

32

Hình 2.27 Quá trình decode [22].

2.5 Luận văn thạc sĩ “Đề tài Trí tuệ nhân tạo trong chuyển đổi số: ứng dụng hỗ trợ thu thập chỉ số đường huyết của thai phụ” của học viên Nguyễn Phạm Thanh Tâm.

Trong nghiên cứu , tác giả phát triển một hệ thống hỗ trợ việc thu thập thông tin sức khỏe. Hệ thống thu thập dữ liệu hình ảnh về số liệu y tế của bệnh nhân bằng ứng dụng di đợng và ứng dụng AI để số hóa thu thập dữ liệu. Nghiên cứu cũng được hiện thực với việc theo dõi thai phụ đái tháo đường thai kỳ.

Một phần của tài liệu Số hóa phiếu xét nghiệm sử dụng kỹ thuật trí tuệ nhân tạo (luận văn thạc sĩ) (Trang 41 - 47)

Tải bản đầy đủ (PDF)

(86 trang)