chương 1. Giới thiệu về CNNs 2.Mạng nơ ron Mạng nơ-ron nhân tạo - Artificial Neural Network [8] (ANN) được lấy cảm hứng từ quá trình xử lý thông tin và các nút giao tiếp phân tán trong các hệ thống sinh học. ANN có nhiều điểm khác biệt so với não sinh hoc. Cu thé, mạng lưới thần kinh có xu hướng tinh và tượng trưng, trong khi bộ não sinh học của hầu hết các sinh vật sống là động.
Mạng nơ-ron là các thuật toán, tính toán từ đầu vào x (ví dụ: hình ảnh), đầu ra y. Như thể hiện trong hình 2.1, đầu ra này thường là một tập hợp các xác suất: ví dụ đầu ra đầu tiên là xác suât mà hình ảnh có chứa một con mèo (con sô nay cảng gân 100%, điêu đó Lê Trường Long - B17DCAT115 13 Chương 2: Phân loại ảnh x-quang bằng mạng nơ ron tích chập CNNs có nghĩa là thuật toán chắc chắn chính nó), thứ hai là xác suất mà hình ảnh có chứa một con chó, v. Dé đơn giản hóa, xét trong vi dụ cụ thê hai lớp: mèo và chó. Về mặt toán học [12], một thuật toán như vậy xác định một hàm f.
Chương trình máy tính tính toán chức năng này rất đơn giản: nó được tạo thành từ một chuỗi gồm nhiều giai đoạn và mỗi giai đoạn thực hiện các phép tính cơ bản (cộng, nhân và tối đa). Trong khi đó, các chương trình máy tính được tìm thấy trong hệ điều hành của máy tính phức tạp hơn nhiều. Nhưng điều tạo ra sự khác biệt lớn giữa thuật toán “cổ điển” va mạng nơ-ron là thuật toán nơ-ron phụ thuộc vào các tham số, là trọng số của các nơ-ron. Trước khi sử dụng mạng nơron, các trọng số này phải được sửa đổi dé thuật toán có thê giải quyết tốt nhất tác vụ được yêu cầu.
Điều này được thực hiện băng cách sử dụng các phương pháp toán học và thuật toán sẽ được giải thích trong các phần sau. Quá trình này được gọi là “đào tạo” một mạng nơ-ron, và quá trình này đòi hỏi nhiều thời gian, máy móc tính toán và năng lượng. Các nơ-ron tính tông trọng sô của các tín hiệu đâu vào và so sánh kêt quả với giá trị ngưỡng,Ø. Nêu dau vào mạng nhỏ hơn ngưỡng, dau ra nơ-ron là -1.
Nhưng nêu đâu vào lớn hơn hoặc bằng ngưỡng, nơ-ron sẽ được kích hoạt va đầu ra của nó đạt giá trị +1. Nói cách khác, noron sử dụng chức năng truyền hoặc hàm kích hoạt [9]: Y= tự X<0 (2.1) X = 3ï-iXiW 1,X20 Trong đó X là dau vào có trọng sô cua noron, x; là gia tri cua dau vao 1, wi là trọng sô của đâu vao i, n là sô đâu vào của noron và Y là đâu ra của nơron. Loại hàm kích hoạt này được gọi là hàm ký hiệu (sign function). Do đó, đầu ra thực tế của nơ-ron có chức năng kích hoạt dấu hiệu có thê được biểu diễn dưới dạng [9]: Y = sign[3?—oX¡W;¡ — 9] (2.2) Các hàm kích hoạt bước và dấu hiệu, còn được gọi là hàm giới hạn cứng, thường được sử dụng trong các nơ-ron ra quyét định cho các nhiệm vụ phân loại và nhận dạng mâu.
Lê Trường Long - B17DCAT115 14 Chương 2: Phân loại ảnh x-quang bằng mạng nơ ron tích chập CNNs 2.Mạng nơ-ron tích chập - CNNs Nền tảng của mạng nơ-ron tích hợp bắt đầu từ phát hiện của Hubel và Wiesel vào năm 1959. Năm 1980, Kunihiko Fukushima đề xuất Neocognitron, là một Mạng thần kinh tự tổ chức, chứa nhiều lớp, có khả năng nhận dang các mẫu hình ảnh phân cấp thông qua học tập và kiến trúc này đã trở thành mô hình lý thuyết đầu tiên của CNN. Năm 1989, LeCun đã thực hiện một cải tiến lớn đối với kiến trúc của Neocognitron bang cach phat triển một khuôn khô hiện đại của CNNs, được gọi là LeNet-5. LeNet-5 đã được đào tạo băng cách sử dụng thuật toán lan truyền ngược lỗi và nó có thể nhận ra các mẫu trực quan trực tiếp từ các hình ảnh đầu vào thô mà không cần sử dụng bất kỳ cơ chế kỹ thuật tính năng riêng biệt nào [4].
Sau khi phát hiện ra LeNet-5, vì một số hạn chế như thiếu dữ liệu đào tạo lớn, thiếu đổi mới trong thuật toán và khả năng tính toán không đầy đủ, CNNs đã không thực hiện tốt các bài toán phức tạp khác nhau. Nhưng ngày nay, trong kỷ nguyên Dữ liệu lớn, chúng ta có các bộ dt liệu được gắn nhãn lớn, các thuật toán sáng tạo hơn và đặc biệt là các máy GPU mạnh mẽ. CNNs có một lớp đầu vào, lớp đầu ra và các lớp ân. Các lớp an thường bao gồm các convolutional layer (lớp tích chập), ReLU layer (lớp ReLU), pooling layer (lớp gộp) và Fully connected layer (lớp kết nối đầy đủ).
CLonvalyutier Trong lớp tích chập, các tế bào thần kinh chỉ nhận đầu vào từ một vùng con của lớp trước đó. Trong lớp được kết nối đầy đủ, mỗi nơron nhận đầu vào từ mọi phần tử của lớp trước đó. CNNs hoạt động bằng cách trích xuất các tính năng, đặc trưng từ hình ảnh. Điều này giúp loại bỏ nhu cầu khai thác tính năng thủ công.
Các tính năng không được huấn luyện. Lê Trường Long - B17DCAT115 15 Chương 2: Phân loại ảnh x-quang bằng mạng nơ ron tích chập CNNs Chúng được học trong khi mạng huấn luyện về một tập hợp các hình ảnh. Điều này làm cho các mô hình học sâu cực kỳ chính xác cho các tác vụ thị giác máy tính. CNNs học cách phát hiện đặc tính thông qua hàng chục hoặc hàng trăm lớp ẩn.
Mỗi lớp làm tăng độ phức tạp của các đặc tính đã học. Kiến trúc của mạng CNNs 2. Lớp tính chập - Convolutional layer Convolutional layer [18] (lớp tích chập) là thành phần cốt lõi của bất kỳ cấu trúc CNNs nào. Mục đích chính của lớp tích chập là trích xuất các đặc trưng từ hình anh đầu vào.
Do đó lớp tích chập luôn là lớp dau tiên trong CNNs. Nó chứa một tập hợp các hạt nhân tích chập(convolution kernel) (còn được gọi là bộ lọc), được đối chiếu với hình ảnh đầu vào (số liệu N chiều) dé tạo ra một bản đồ đặc trưng (feature map) đầu ra. Hình 2-3 biểu diễn ba bước đầu của cách hoạt động lớp tích chập, trong đó hạt nhân 2 x 2 (được hiển thị bang màu xanh lam nhạt) được nhân với cùng một vung có kích thước (hiển thị bang màu vàng) trong hình anh đầu vào 4 x 4 và các giá trị kết quả được tong hợp dé có được mục nhập tương ứng (được hién thị bằng màu xanh lam đậm) trong bản đô tính năng đâu ra ở mỗi bước tích chập. : nh TE fea 0 & -1 2 mil 1 : 2 [ofa] Zs mm o| © aya} ~ +444 — Hình 2-3 Ba bước dau cách hoạt động của lớp tích chập [4] Sau khi thực hiện phép tính tích chập hoàn chỉnh, bản đồ đặc trưng đầu ra cuối cùng được hiền thị trong hình 2-4: Lê Trường Long - B17DCAT115 16 Chương 2: Phân loại ảnh x-quang bằng mạng nơ ron tích chập CNNs Hình 2-4 Bản đồ đặc trưng sau thực hiện phép tính tích chập hoàn chỉnh [4] Quá trình trượt các bộ lọc thường có các giá trị được quy định bao gồm: - Padding: quy định bộ đệm của bộ lọc hay chính là phần mau xám được thêm vào ảnh nói cách khác là các giá trị 0 được thêm vảo lớp input - Stride: kích thước bước đã thực hiện trượt theo vi trí ngang hoặc dọc.
Ví dụ: stride of one có nghĩa là bạn đang di chuyền bộ lọc của mình qua một pixel tại một thời điểm. Quy ước là stride of two. Công thức dé tìm kích thước bản đồ đặc trưng đầu ra như sau [4]: h’ = => + 1Ì s w' = => + 1| s (2.3) Trong đó h’ biểu thị chiều cao của bản đồ đạc trưng, w’ biểu thị chiều rộng của bản đồ, h biểu thị chiều cao của hình ảnh đầu vào, w biểu thị chiều rộng của hình ảnh đầu vào, f là kích thước bộ lọc, p biểu thị phần đệm của phép toán tích chập và s biểu thị bước nhảy của phép toán tích chập. Lớp gộp - Pooling layer Pooling layer [18] - lớp tong hợp/gộp được sử dung dé lay mẫu con ban đồ đặc trưng, tức là nó lấy bản đồ đặc trưng có kích thước lớn và thu nhỏ chúng thành bản đồ đối tượng có kích thước thấp hơn.
Trong khi thu nhỏ các bản đồ đặc trưng, nó luôn bảo toàn các đối tượng đặc tính (hoặc thông tin) nồi trội nhất trong mỗi bước gộp. Hoạt động gộp được thực hiện băng cách chỉ định kích thước vùng được gộp và bước của hoạt động, tương tự như hoạt động lớp tích chập. Có nhiều loại kỹ thuật gộp khác nhau được sử dụng trong các lớp gộp khác nhau như max pooling, min pooling, average pooling, gated pooling, tree pooling,. Max Pooling là kỹ thuật phổ biến nhất.
Max pooling là việc lay giá trị lớn nhất tại mỗi điểm trong hình ảnh. Điều này giúp loại bỏ 75% thông tin không phải là tính năng. Bằng cách lẫy giá tri tối da của pixel, bạn Lê Trường Long - B17DCAT115 17 Chương 2: Phân loại ảnh x-quang bằng mạng nơ ron tích chập CNNs đang tính đến sự biến dạng. Nếu tính năng xoay một chút sang trái hoặc phải hoặc bất cứ điều gi, thì tính năng gdp sẽ giống nhau.
Ta đang giảm kích thước và thông số. Điều đó có nghĩa là mô hình sẽ không phải xử lý quá nhiều thông tin đó. Công thức đề tìm kích thước bản đồ đặc trưng đầu ra sau khi gộp như sau [4]: wef] welts an Trong đó h’ biêu thi chiêu cao của ban đô đạc trưng, w’ biêu thị chiêu rộng của ban đồ, h biêu thị chiêu cao của hình ảnh đâu vào, w biêu thị chiêu rộng của hình ảnh đâu vảo, f là kích thước bộ lọc và s biểu thị bước nhảy của phép toán tích chập. Lớp ReLU - ReLU layer Trong CNNs, Rectified Linear Units [13] - các đơn vi tuyén tính được chỉnh lưu (viết tắt là ReLU) là một lớp áp dụng hàm kích được sử dụng phổ biến nhất trong CNNs.
Nó được sử dụng để chuyên đổi tất cả các giá trị đầu vào thành số đương. Ưu điểm của ReLU là nó yêu cầu tải tính toán rất nhỏ so với các loại khác. Công thức toán học của ReLU là [13]: f(u) = max (0, u) (2.5) Hình 2-5 Biểu đô biểu diễn hàm f(u) = max (0, u) [13] Ta áp dụng một hàm kích hoạt trên bản đồ đặc trưng đề tăng tính phi tuyến tính trong mạng. Điều này là do bản thân hình ảnh có độ phi tuyến tính cao.
Nó loại bỏ các giá trị âm khỏi bản đồ đặc trưng băng cách đặt chúng thành 0.