Mạng nơ-ron nhân tạo (Neural Networ k NN)

Một phần của tài liệu Chuẩn đoán một số bệnh phổi sử dụng xử lý ảnh và học sâu (Trang 26 - 30)

6. Điểm:

3.1.1.4.Mạng nơ-ron nhân tạo (Neural Networ k NN)

3.1.1.4.1. Mạng nơ-ron thần kinh

Một đứa trẻ có thể nhận diện được màu sắc hay người thân đó là do hệ thần kinh của con người có cấu tạo để thực hiện được các chức năng đó. Những việc tưởng như bình thường, đơn giản như vậy lại là một điều cực kỳ khó để thực hiện bằng máy tính. Vậy sự khác biệt nằm ở đâu? Câu trả lời nằm ở bộ não của con người có cấu tạo với một lượng rất lớn các nơ-ron thần kinh liên kết lại với nhau. Hiểu được điều này, con người đã mô phỏng lại hệ thống nơ-ron chằn chịt của bộ não và áp dụng vào máy tính để máy tính cũng có khả năng nhận biết, học hỏi tương tự con người.

22

Nơ-ron là đơn vị cơ bản cấu tạo hệ thống thần kinh và là một phần quan trọng nhất của não. Não chúng ta gồm khoảng 10 triệu nơ-ron và mỗi nơ-ron liên kết với 10.000 nơ-ron khác.

Ở mỗi nơ-ron có phần thân (soma) chứa nhân, các tín hiệu đầu vào qua sợi nhánh (dendrites) và các tín hiệu đầu ra qua sợi trục (axon) kết nối với các nơ-ron khác. Hiểu đơn giản mỗi nơ-ron nhận dữ liệu đầu vào qua sợi nhánh và truyền dữ liệu đầu ra qua sợi trục, đến các sợi nhánh của các nơ-ron khác.

Mỗi nơ-ron nhận xung điện từ các nơ-ron khác qua sợi nhánh. Nếu các xung điện này đủ lớn để kích hoạt nơ-ron, thì tín hiệu này đi qua sợi trục đến các sợi nhánh của các nơ-ron khác.

Tuy nhiên NN chỉ là lấy cảm hứng từ não bộ và cách nó hoạt động, chứ không phải bắt chước toàn bộ các chức năng của nó. Việc chính của chúng ta là dùng mô hình đấy đi giải quyết các bài toán chúng ta cần.

3.1.1.4.2. Mô hình mạng nơ-ron nhân tạo

a. Hồi quy logistic (Logistic regression)

Hồi quy logistic là một mô hình mạng rơ-ron đơn giản nhất (Hồi quy logistic không thuộc nội dung bàn luận trong để tài này nên nội dung này sẽ không được trình bày chi tiết):

Mô hình của hồi quy logistic 𝑦̂ = 𝜎(𝑤0+ 𝑤1𝑥1+ 𝑤2𝑥2) được thực hiện qua 2 bước:

Bước 1: tính tổng tuyến tính: 𝑧 = 1𝑤0+ 𝑤1𝑥1+ 𝑤2𝑥2

Bước 2: áp dụng hàm kích hoạt sigmoid: 𝑦̂ = 𝜎(𝑧)

23

Hệ số 𝑤0 chính là tham số 𝑏𝑖𝑎𝑠 được nhắc đến trong các phần trước. Việc thêm tham số 𝑤0 hay 𝑏𝑖𝑎𝑠 là rất quan trọng vì nó là yếu tố kiến cho nơ-ron được kích hoạt hay không. Về mặt toán học, không thể bỏ qua tham số tự do, phương trình 𝑤1𝑥 + 𝑤2𝑦 = 0 sẽ luôn đi qua góc tọa độ và nó không tổng quát hóa được phương trình đường thằng nên không tìm được phương trình như mong muốn.

b. Mô hình tổng quát

Hình 3.13 Mô hình tổng quát của mạng nơ-ron

Mô hình mạng rơ-ron được quy ước bao gồm các tầng (layer) như sau: - Tầng đầu tiên được gọi là tầng đầu vào (input layer).

- Tầng cuối cùng được gọi là tầng đầu ra (output layer).

- Các tầng nằm giữa tầng đầu vào và tầng đầu ra được gọi là các tầng ẩn (hidden layers).

Mỗi mô hình mạng rơ-ron luôn có 1 tầng đầu vào, 1 tầng đầu ra, có thể có hoặc không các tầng ẩn. Tổng số tầng trong mô hình mạng rơ-ron được tính bằng số tầng – 1 (không tính tầng đầu vào). Các hình tròn được gọi là các nút (node).

Ví dụ, trong hình trên có 1 tầng đầu vào, 1 tầng đầu ra và 2 tầng ẩn; số lượng tầng của mạng rơ-ron trên là 3 tầng (không tính tầng đầu vào). Mỗi node trong tầng ẩn và tầng đầu ra có các đặc điểm:

- Liên kết với tất cả các nút của tầng trước đó với các trọng số 𝑤 riêng. - Mỗi nút có một hệ số bias 𝑏 riêng

24

- Giá trị đầu ra của mỗi nút được tính qua 2 bước: tính tổng tuyến tính và áp dụng hàm kích hoạt để đưa ra kết quả cuối cùng.

c. Quy ước về mặt ký hiệu - Số nút trong tầng ẩn thử 𝑘 là 𝑙(𝑘).

- Ma trận 𝑊(𝑘) có kích thước 𝑙(𝑘−1) × 𝑙(𝑘) là ma trận trọng số giữa tầng 𝑘 − 1 và tầng 𝑘, trong đó 𝑤𝑖𝑗(𝑘) là trọng số kết nối từ nút thứ 𝑖 của tầng 𝑘 − 1 đến nút thứ 𝑗 của tầng 𝑘.

- Ma trận 𝐵(𝑘) có kích thước 𝑙(𝑘)× 1, chứa các hệ số 𝑏𝑖𝑎𝑠 của các nút trong tầng 𝑘, trong đó 𝑏𝑗(𝑘) là 𝑏𝑖𝑎𝑠 của nút thứ 𝑗 trong tầng 𝑘.

- Với nút thứ 𝑗 trong tầng 𝑘 có 𝑏𝑖𝑎𝑠 là 𝑏𝑗(𝑘), ta thực hiện 2 bước:

+ Tính tổng tuyến tính: 𝑧𝑗(𝑘) = (∑𝑙𝑖=1(𝑘−1)𝑎𝑖(𝑘−1)𝑤𝑖𝑗(𝑘)) + 𝑏𝑗(𝑘) (Tổng tất cả các đầu ra của tầng phía trước nhân với trọng số tương ứng rồi cộng với 𝑏𝑖𝑎𝑠)

+ Áp dụng hàm kích hoạt: 𝑎𝑗(𝑘) = 𝐴(𝑧𝑗(𝑘)) (adsbygoogle = window.adsbygoogle || []).push({});

- Ma trận 𝑍(𝑘) có kích thước 𝑙(𝑘)× 1, chứa các giá trị của các nút trong tầng 𝑘 sau khi tính tổng tuyến tính.

- Ma trận 𝐴(𝑘) có kích thước 𝑙(𝑘)× 1, chứa các giá trị của các nút trong tầng 𝑘 sau khi áp dụng hàm kích hoạt.

Ví dụ:

25

- Mô hình mạng rơ-ron trên gồm có 3 tầng: + Tầng đầu vào có 2 nút (𝑙(0) = 2).

+ Tầng ẩn thứ nhất và thứ hai đều có 3 nút (𝑙(1) = 𝑙(2) = 3). + Tầng đầu ra có 2 nút (𝑙(3) = 2).

- Do mỗi nút trong tầng ẩn và tầng đầu ra đều có 𝑏𝑖𝑎𝑠 nên trong tầng đầu vào và hai tầng ẩn cần thêm một nút 1 (như hình) để tính 𝑏𝑖𝑎𝑠 (lưu ý: không tính nút này vào tổng số nút của tầng có).

- Tại nút thứ 2 của tầng 1, ta có:

+ Tổng tuyến tính: 𝑧2(1) = 1 × 𝑏2(1)+ 𝑥1𝑤12(1)+ 𝑥2𝑤22(1)

+ Áp dụng hàm kích hoạt: 𝑎2(1) = 𝐴(𝑧2(1)) Hay tương tự, tại nút thứ 3 của tầng 2:

+ Tổng tuyến tính: 𝑧3(2) = 1 × 𝑏3(2)+ 𝑎1𝑤13(2) + 𝑎2𝑤23(2)+ 𝑎3𝑤33(2) + Áp dụng hàm kích hoạt: 𝑎3(2) = 𝐴(𝑧3(2))

Một phần của tài liệu Chuẩn đoán một số bệnh phổi sử dụng xử lý ảnh và học sâu (Trang 26 - 30)