Mạng nơ-ron tích chập

Một phần của tài liệu (LUẬN văn THẠC sĩ) hệ thống điểm danh tự động học sinh trung học phổ thông qua camera trong lớp học (Trang 26 - 29)

Mạng nơ-ron tích chập là một kiến trúc dựa trên các phép toán tích chập giữa các lớp. Tích chập được sử dụng đầu tiên trong xử lý tín hiệu số [13]. Nhờ vào nguyên lý biến đổi thông tin, các nhà khoa học đã áp dụng kĩ thuật này vào xử lý ảnh và video số [14]. Giả sử với một ảnh được biểu thị dưới dạng ma trận là dữ liệu ban đầu cho CNN thì các nơ-ron ở tầng chập thứ nhất sẽ được tạo thành nhờ các phép chập trên ma trận đó. Kết quả thu được sẽ được đi qua các hàm kích hoạt. Tầng chập thứ hai sẽ được tạo thành bằng phép chập dựa trên kết quả bên trên và cứ thế tiếp diễn.

Như vậy ta có thể hiểu ban đầu CNN sẽ phân tích ảnh ra trên nhiều khu vực và sau đó sẽ kết hợp lại. Do kích thước cửa sổ chập ở mỗi tầng có thể khác nên trong quá trình huấn luyện CNN sẽ tự động học các đặc trưng của các dữ liệu. Việc sử dụng nhiều tầng tức thực hiện phép chập nhiều lần sẽ cho ta biết cụ thể hơn về các tính chất có trong ảnh nên CNN tỏ ra hiệu quả trong việc nhận dạng ảnh. Tuy nhiên vì sử dụng các phép tính chập cộng với việc cần một lượng dữ liệu đầu vào phải nhiều nên chi phí tính toán của CNN sẽ rất lớn dẫn

tới thời gian huấn luyện sẽ khá lâu. Ngoài ra CNN chỉ hoạt động dựa trên dữ liệu đã được phân loại trước.

CNN gồm nhiều tầng, mỗi tầng sẽ bao gồm các lớp: lớp tích chập, lớp hàm kích hoạt, lớp Pooling hay còn gọi là lớp subsampling, lớp kết nối đầy đủ. Trong các tầng của CNN, người thiết kế có thể sử dụng đủ 3 lớp hay không tùy thuộc vào dữ liệu và mục tiêu.

Trong mô hình CNN, các lớp được liên kết với nhau thông qua cơ chế tích chập, hình 2.5. Lớp tiếp theo là kết quả của tích chập của lớp trước đó, nhờ vậy mà ta có được các kết nối cục bộ. Nghĩa là mỗi nơ-ron ở lớp tiếp theo được sinh ra từ các bộ lọc áp đặt lên một vùng ảnh cục bộ của nơ-ron ở lớp trước đó.

Hình 2.5. Mô hình CNN 2.2.1. Tích chập

Khi có một hình ảnh mới, CNN không biết chính xác nơi chứa các đặc trưng này sẽ khớp hay không nên nó sẽ thử chúng khắp mọi nơi, ở mọi vị trí có thể. Khi tính toán sự khớp của một đặc trưng trên toàn bộ ảnh và làm thành một bộ lọc. Phần toán ta sử dụng để làm điều này được gọi là tích chập, hình 2.6.

Lớp này chính là nơi thể hiện tư tưởng ban đầu của mạng nơ-ron tích chập. Thay vì kết nối toàn bộ điểm ảnh, lớp này sẽ sử dụng một bộ các bộ lọc có kích thước nhỏ so với ảnh (thường là 3×3 hoặc 5×5) áp vào một vùng trong ảnh và tiến hành tính tích chập giữa bộ lọc và giá trị điểm ảnh trong vùng cục bộ đó.

Bộ lọc sẽ lần lượt được dịch chuyển theo một giá trị bước trượt duyệt dọc theo ảnh và quét toàn bộ ảnh.

Hình 2.6. Phương pháp tích chập

Để tính toán sự khớp của một đặc trưng đối với một mảnh của hình ảnh, ta chỉ cần nhân mỗi điểm ảnh trong phần đặc trưng với giá trị của điểm ảnh tương ứng trong mảnh hình ảnh. Sau đó cộng tổng lại và chia cho số lượng điểm ảnh trong đặc trưng.

Như vậy, với một ảnh 32×32 và một bộ lọc 3×3, ta sẽ có kết quả là một ảnh mới có kích thước 32×32 (với điều kiện đã thêm padding vào ảnh gốc để tính tích chập cho các trường hợp bộ lọc quét ra các biên cạnh) là kết quả tích chập của bộ lọc và ảnh. Với bao nhiêu bộ lọc trong lớp này thì ta sẽ có bấy nhiêu ảnh tương ứng mà lớp này trả ra và được truyền vào lớp tiếp theo. Các trọng số của bộ lọc ban đầu sẽ được khởi tạo ngẫu nhiên và sẽ được học dần trong quá trình huấn luyện mô hình.

2.2.2. Lớp hàm kích hoạt

Lớp hàm kích hoạt (Rectified Linear Unit - ReLU) thường được cài đặt ngay sau lớp tích chập. Lớp này sử dụng hàm kích hoạt f(x) = max(0,x) và có nhiệm vụ chuyển toàn bộ giá trị âm trong kết quả lấy từ lớp tích chập thành giá trị 0. Ý nghĩa của cách cài đặt này chính là làm tăng các thuộc tính phi tuyến cho mô hình. Tương tự như trong mạng truyền thẳng, việc xây dựng dựa trên

các phép biến đổi tuyến tính sẽ khiến việc xây dựng đa tầng đa lớp trở nên vô nghĩa. Có rất nhiều cách để khiến mô hình trở nên phi tuyến như sử dụng các hàm kích hoạt sigmoid, tanh như đã trình bày trong phần 2.1.1 ở trên, nhưng hàm f(x) = max(0,x) dễ cài đặt, tính toán nhanh mà vẫn hiệu quả.

Một phần của tài liệu (LUẬN văn THẠC sĩ) hệ thống điểm danh tự động học sinh trung học phổ thông qua camera trong lớp học (Trang 26 - 29)