Luận văn thạc sĩ nghiên cứu về mạng neural convolutional áp dụng vào bài toán nhận dạng đối tượng trong lĩnh vực thị giác máy tính

Luận văn thạc sĩ: Ứng dụng mạng neural convolutional (CNN) cho bài toán nhận dạng đối tượng trong thị giác máy tính. Nghiên cứu chuyên sâu và kết quả thực nghiệm.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Luận Văn Thạc Sĩ

2019

86
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

MỤC LỤC

DANH MỤC HÌNH VẼ

DANH MỤC BẢNG BIỂU

DANH MỤC VIẾT TẮT

LỜI MỞ ĐẦU

1.1. Lý do chọn đề tài

1.2. Cơ sở khoa học và thực tiễn của đề tài

1.3. Mục tiêu của luận văn

1.4. Cấu trúc luận văn

1. CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NƠ RON VÀ GIỚI THIỆU VỀ MẠNG NƠ RON TÍCH CHẬP

1.1. Nơ ron nhân tạo

1.1.1. Lịch sử của nơ ron nhân tạo

1.2. Cấu tạo và quá trình xử lý của một nơ ron sinh học

2. BÀI TOÁN NHẬN DẠNG BẰNG MẠNG NƠ RON TÍCH CHẬP

2.1. Khái niệm về nhận dạng

2.1.1. Nhận dạng đối tượng

2.1.2. Nhận dạng khuôn mặt

2.1.2.1. Lịch sử và phát triển
2.1.2.2. Cách thức hoạt động

2.2. Phương pháp nhận dạng đối tượng từ ảnh chụp của camera

2.2.1. Nhận diện khuôn mặt

2.2.2. Phát hiện các điểm quan trọng trên khuôn mặt

2.2.3. Liên kết khuôn mặt

2.3. Kết quả các thuật toán sử dụng mạng nơ ron nhân tạo

2.3.1. Mô hình DeepID 2 (NIPS 2014)

2.3.2. Mô hình DeepID3 (arXiv 2015)

2.3.3. Mô hình DeepFace (Facebook, CVPR 2014)

2.3.4. Mô hình FaceNet (Google 2015)

2.3.5. Mô hình Baidu (2015)

3. SỬ DỤNG MẠNG NƠ RON TÍCH CHẬP TRONG NHẬN DẠNG ĐỐI TƯỢNG

3.1. Sơ lược về áp dụng mạng nơ ron tích chập vào các giải pháp thông minh trong thực tế

3.2. Áp dụng mạng nơ ron tích chập để xây dựng hệ thống nhận diện người vào/ra và đánh giá thực nghiệm, so sánh với phương pháp HOG

3.2.1. Giới thiệu hệ thống nhận diện và đếm lượt người vào/ra sử dụng mạng nơ ron tích chập

3.2.2. Giới thiệu kiến trúc của máy chủ xử lý nhận diện và đếm lượng người

3.2.3. Giới thiệu sơ lược về phương pháp mô tả đặc trưng HOG sẽ được dùng để so sánh

3.2.4. So sánh khả năng nhận diện của hệ thống nhận diện người vào/ra sử dụng mạng nơ ron tích chập với phương pháp HOG đã có

3.2.5. Mô tả cơ chế chạy nhận diện người trong lõi máy chủ tính toán

3.2.6. Mô tả quá trình sử dụng hệ thống ở giao diện người dùng để hiển thị kết quả

3.3. Áp dụng mạng nơ ron tích chập để xây dựng hệ thống nhận diện khuôn mặt và đánh giá thực nghiệm, so sánh với phương pháp HOG

3.3.1. Xây dựng hệ thống nhận diện khuôn mặt

3.3.2. Giới thiệu cơ chế của máy chủ xử lý nhận diện

3.3.3. Giới thiệu sơ lược về phương pháp phát hiện khuôn mặt sử dụng HOG sẽ được dùng để so sánh

3.3.4. So sánh hệ thống nhận diện khuôn mặt với phương pháp HOG đã có

3.3.5. So sánh khả năng nhận diện khuôn mặt giữa HOG và CNN

3.3.6. Kết quả hệ thống web nhận diện khuôn mặt

3.4. Kết quả đã thực hiện được của luận văn

3.5. Phương hướng phát triển luận văn

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Mạng Neural Tích Chập CNN Cho Người Mới

Mạng Neural Convolutional (CNN), hay còn gọi là mạng tích chập, là một loại mạng neural đặc biệt, được thiết kế để xử lý dữ liệu có cấu trúc lưới như hình ảnh. CNN là một thành phần quan trọng trong lĩnh vực Computer VisionDeep Learning, cho phép máy tính "nhìn" và hiểu thế giới xung quanh thông qua xử lý ảnh. Thay vì xử lý hình ảnh như một mảng các pixel đơn lẻ, CNN sử dụng các lớp tích chập để trích xuất các đặc trưng quan trọng từ hình ảnh. Quá trình này mô phỏng cách bộ não con người xử lý thông tin thị giác, từ đó giúp CNN đạt được hiệu suất vượt trội trong các nhiệm vụ như nhận dạng đối tượng (Object Detection), phân loại ảnh (Image Classification), và phân đoạn ngữ nghĩa (Semantic Segmentation). Một trong những ưu điểm lớn của CNN là khả năng tự động học các đặc trưng quan trọng từ dữ liệu, giảm thiểu sự can thiệp thủ công và cho phép mô hình thích ứng với nhiều loại hình ảnh khác nhau. Theo nghiên cứu của Đại học Quốc Gia Hà Nội, mạng tích chập có độ chính xác cao và tốc độ tính toán nhanh, giúp các giải pháp thông minh trong thực tế hiệu quả hơn. CNN không chỉ giới hạn trong xử lý ảnh, mà còn được ứng dụng trong các lĩnh vực khác như xử lý ngôn ngữ tự nhiên, phân tích âm thanh, và dự đoán chuỗi thời gian. Sự linh hoạt và hiệu quả của CNN đã khiến nó trở thành một công cụ không thể thiếu cho các nhà nghiên cứu và kỹ sư trong lĩnh vực trí tuệ nhân tạo.

1.1. Kiến Trúc Mạng CNN Các Thành Phần Cơ Bản Cần Biết

Kiến trúc của một mạng CNN thường bao gồm các lớp chính sau: lớp tích chập (Convolutional Layer), lớp gộp (Pooling Layer), và lớp kết nối đầy đủ (Fully Connected Layer). Lớp tích chập thực hiện phép tích chập giữa bộ lọc (filter) và vùng cục bộ của ảnh đầu vào để trích xuất các đặc trưng. Các bộ lọc này được học trong quá trình huấn luyện mô hình, giúp CNN tự động xác định các đặc trưng quan trọng nhất cho việc nhận dạng đối tượng. Lớp gộp giảm kích thước của các bản đồ đặc trưng (feature maps), giúp giảm số lượng tham số và tăng tính tổng quát của mô hình. Các phép gộp phổ biến bao gồm gộp max (max pooling)gộp trung bình (average pooling). Lớp kết nối đầy đủ kết nối tất cả các nơ-ron từ các lớp trước đó với các nơ-ron ở lớp hiện tại, tương tự như trong một mạng neural truyền thống. Lớp kết nối đầy đủ thường được sử dụng ở phần cuối của CNN để thực hiện phân loại. Hàm kích hoạt (activation function), chẳng hạn như ReLU (Rectified Linear Unit), được áp dụng sau mỗi lớp tích chậpkết nối đầy đủ để giới thiệu tính phi tuyến tính vào mô hình.

1.2. Hàm Kích Hoạt Trong CNN Chọn Hàm Tối Ưu Hiệu Suất

Hàm kích hoạt đóng vai trò quan trọng trong việc giới thiệu tính phi tuyến tính vào mô hình CNN. Các hàm kích hoạt phổ biến bao gồm Sigmoid, Tanh, ReLU, và ELU. SigmoidTanh có xu hướng gặp phải vấn đề vanishing gradient, làm chậm quá trình huấn luyện đối với các mạng sâu. ReLU khắc phục vấn đề này bằng cách trả về giá trị 0 cho các đầu vào âm và giữ nguyên giá trị cho các đầu vào dương, giúp CNN học nhanh hơn. Tuy nhiên, ReLU có thể gặp phải vấn đề "chết ReLU" khi một số nơ-ron không bao giờ kích hoạt. ELU là một biến thể của ReLU giúp khắc phục vấn đề này bằng cách trả về giá trị âm cho các đầu vào âm. Việc lựa chọn hàm kích hoạt phù hợp phụ thuộc vào từng bài toán cụ thể và kiến trúc mạng CNN.

II. Vấn Đề Nhận Dạng Đối Tượng Với Mạng Neural Tích Chập

Bài toán nhận dạng đối tượng (Object Detection) là một trong những bài toán quan trọng nhất trong lĩnh vực Computer Vision. Mục tiêu của bài toán là xác định vị trí và phân loại các đối tượng có trong một hình ảnh. CNN đã chứng minh được hiệu quả vượt trội trong việc giải quyết bài toán này, nhờ khả năng tự động học các đặc trưng quan trọng từ dữ liệu. Tuy nhiên, bài toán nhận dạng đối tượng cũng đặt ra nhiều thách thức, bao gồm sự biến đổi về kích thước, góc nhìn, ánh sáng, và sự che khuất của các đối tượng. Các mô hình nhận dạng đối tượng hiện đại, như YOLO (You Only Look Once), SSD (Single Shot Detector), và Faster R-CNN, sử dụng CNN làm xương sống (backbone) và kết hợp với các kỹ thuật khác để giải quyết các thách thức này. YOLO là một mô hình nhận dạng đối tượng nhanh chóng và hiệu quả, có khả năng xử lý hình ảnh theo thời gian thực. SSD là một mô hình nhận dạng đối tượng chính xác, có khả năng phát hiện các đối tượng nhỏ. Faster R-CNN là một mô hình nhận dạng đối tượng kết hợp giữa độ chính xác và tốc độ.

2.1. Thách Thức Trong Nhận Dạng Biến Đổi Che Khuất ...

Một trong những thách thức lớn nhất trong bài toán nhận dạng đối tượng là sự biến đổi về kích thước, góc nhìn, ánh sáng, và sự che khuất của các đối tượng. Các đối tượng có thể xuất hiện ở nhiều kích thước khác nhau trong hình ảnh, từ rất nhỏ đến rất lớn. Góc nhìn của các đối tượng có thể thay đổi, làm cho hình dạng của chúng khác biệt so với hình dạng chuẩn. Ánh sáng có thể ảnh hưởng đến màu sắc và độ tương phản của các đối tượng, làm cho chúng khó phân biệt hơn. Các đối tượng có thể bị che khuất bởi các đối tượng khác, làm cho một phần của chúng không nhìn thấy được. Để giải quyết các thách thức này, các mô hình nhận dạng đối tượng thường sử dụng các kỹ thuật như tăng cường dữ liệu (Data Augmentation), học chuyển giao (Transfer Learning), và các kiến trúc mạng CNN phức tạp.

2.2. Đánh Giá Hiệu Suất Mô Hình Độ Chính Xác Tốc Độ

Hiệu suất của một mô hình nhận dạng đối tượng thường được đánh giá dựa trên hai tiêu chí chính: độ chính xác (accuracy)tốc độ (speed). Độ chính xác đo lường khả năng của mô hình trong việc phân loại và định vị các đối tượng một cách chính xác. Tốc độ đo lường thời gian cần thiết để mô hình xử lý một hình ảnh. Các mô hình nhận dạng đối tượng thường được so sánh dựa trên một số chỉ số đánh giá, bao gồm mAP (mean Average Precision), FPS (Frames Per Second), và IoU (Intersection over Union). mAP là một chỉ số đánh giá tổng thể về độ chính xác, đo lường diện tích dưới đường cong Precision-Recall. FPS là một chỉ số đánh giá về tốc độ, đo lường số lượng hình ảnh mà mô hình có thể xử lý trong một giây. IoU là một chỉ số đo lường sự trùng khớp giữa hộp giới hạn dự đoán và hộp giới hạn thực tế.

III. Phương Pháp CNN Nhận Dạng Đối Tượng YOLO SSD Faster

Để giải quyết các thách thức trong bài toán nhận dạng đối tượng, nhiều phương pháp dựa trên CNN đã được phát triển. Các phương pháp này có thể được chia thành hai loại chính: mô hình hai giai đoạn (two-stage detectors)mô hình một giai đoạn (one-stage detectors). Mô hình hai giai đoạn, như Faster R-CNN, trước tiên đề xuất các vùng tiềm năng chứa đối tượng (region proposals) và sau đó phân loại các vùng này. Mô hình một giai đoạn, như YOLOSSD, thực hiện cả hai nhiệm vụ đề xuất vùng và phân loại trong một lần duy nhất. Faster R-CNN có độ chính xác cao nhưng tốc độ chậm hơn so với YOLOSSD. YOLO có tốc độ nhanh nhất nhưng độ chính xác thấp hơn so với Faster R-CNN. SSD cung cấp sự cân bằng giữa độ chính xáctốc độ. Sự lựa chọn phương pháp phù hợp phụ thuộc vào yêu cầu cụ thể của ứng dụng.

3.1. YOLO You Only Look Once Ưu Điểm Tốc Độ Xử Lý

YOLO là một mô hình nhận dạng đối tượng một giai đoạn nổi tiếng với tốc độ xử lý nhanh. YOLO chia hình ảnh thành một lưới các ô (grid cells) và dự đoán các hộp giới hạn (bounding boxes) và xác suất lớp (class probabilities) cho mỗi ô. YOLO sử dụng một mạng CNN duy nhất để thực hiện tất cả các dự đoán, giúp giảm thiểu thời gian tính toán. YOLO phù hợp cho các ứng dụng yêu cầu nhận dạng đối tượng theo thời gian thực, chẳng hạn như xe tự lái và giám sát an ninh. Tuy nhiên, YOLO có thể gặp khó khăn trong việc phát hiện các đối tượng nhỏ và các đối tượng nằm gần nhau.

3.2. SSD Single Shot Detector Cân Bằng Tốc Độ và Chính Xác

SSD là một mô hình nhận dạng đối tượng một giai đoạn khác, cung cấp sự cân bằng giữa tốc độđộ chính xác. SSD sử dụng các bản đồ đặc trưng từ nhiều lớp khác nhau của mạng CNN để phát hiện các đối tượng ở nhiều kích thước khác nhau. SSD sử dụng các hộp neo (anchor boxes) để giúp mô hình dự đoán các hộp giới hạn với các tỷ lệ khung hình khác nhau. SSD phù hợp cho các ứng dụng yêu cầu cả tốc độđộ chính xác, chẳng hạn như nhận dạng đối tượng trong video và phân tích ảnh. SSD có thể hoạt động tốt hơn YOLO trong việc phát hiện các đối tượng nhỏ.

3.3. Faster R CNN Độ Chính Xác Cao Trong Nhận Dạng

Faster R-CNN là một mô hình nhận dạng đối tượng hai giai đoạn nổi tiếng với độ chính xác cao. Faster R-CNN sử dụng một mạng đề xuất vùng (region proposal network - RPN) để đề xuất các vùng tiềm năng chứa đối tượng. Sau đó, một mạng CNN khác phân loại các vùng được đề xuất và tinh chỉnh các hộp giới hạn. Faster R-CNN có thể đạt được độ chính xác cao hơn so với YOLOSSD, nhưng tốc độ chậm hơn. Faster R-CNN phù hợp cho các ứng dụng yêu cầu độ chính xác cao hơn là tốc độ, chẳng hạn như nhận dạng đối tượng trong ảnh y tế và phân tích ảnh vệ tinh.

IV. Ứng Dụng CNN Nhận Dạng Đối Tượng Trong Thị Giác Máy

CNN đã mở ra nhiều ứng dụng thực tế trong lĩnh vực thị giác máy tính. Trong lĩnh vực nhận dạng khuôn mặt, CNN được sử dụng để xác định và xác minh danh tính của một người từ hình ảnh hoặc video. Trong lĩnh vực xe tự lái, CNN được sử dụng để phát hiện các đối tượng xung quanh xe, như người đi bộ, xe khác, và biển báo giao thông. Trong lĩnh vực y tế, CNN được sử dụng để phát hiện các bệnh lý trong ảnh y tế, như ung thư và bệnh tim mạch. Trong lĩnh vực giám sát an ninh, CNN được sử dụng để phát hiện các hành vi đáng ngờ và cảnh báo cho nhân viên an ninh. Ngoài ra, CNN còn được ứng dụng trong các lĩnh vực khác như phân tích ảnh vệ tinh, nhận dạng sản phẩm, và kiểm tra chất lượng sản phẩm.

4.1. CNN Trong Nhận Dạng Khuôn Mặt Ứng Dụng và Thách Thức

CNN đóng vai trò quan trọng trong các hệ thống nhận dạng khuôn mặt. CNN có thể học các đặc trưng phức tạp từ hình ảnh khuôn mặt, cho phép mô hình phân biệt giữa các khuôn mặt khác nhau một cách chính xác. Các ứng dụng của nhận dạng khuôn mặt bao gồm xác thực người dùng, kiểm soát truy cập, và giám sát an ninh. Tuy nhiên, nhận dạng khuôn mặt cũng đặt ra nhiều thách thức, bao gồm sự thay đổi về ánh sáng, góc nhìn, biểu cảm, và sự lão hóa của khuôn mặt. Ngoài ra, vấn đề bảo mật và quyền riêng tư cũng là một mối quan tâm lớn trong việc sử dụng nhận dạng khuôn mặt.

4.2. Xe Tự Lái và CNN Phát Hiện Vật Thể và Phân Tích Môi

CNN là một thành phần thiết yếu trong các hệ thống xe tự lái. CNN được sử dụng để phát hiện các đối tượng xung quanh xe, như người đi bộ, xe khác, và biển báo giao thông. CNN cũng được sử dụng để phân tích môi trường xung quanh xe, như đường xá, vỉa hè, và các chướng ngại vật. Thông tin này được sử dụng để đưa ra các quyết định lái xe an toàn và hiệu quả. Tuy nhiên, việc đảm bảo độ tin cậy và an toàn của các hệ thống xe tự lái vẫn là một thách thức lớn.

V. Huấn Luyện Mô Hình CNN Nhận Dạng Đối Tượng Tối Ưu

Quá trình huấn luyện mô hình CNN là một bước quan trọng để đảm bảo độ chính xáchiệu suất của mô hình. Quá trình này bao gồm việc chuẩn bị dữ liệu huấn luyện (training data), lựa chọn kiến trúc mạng (CNN architectures), lựa chọn hàm mất mát (Loss function), lựa chọn bộ tối ưu hóa (Optimizer), và tăng cường dữ liệu (Data Augmentation). Dữ liệu huấn luyện cần phải đủ lớn và đa dạng để mô hình có thể học các đặc trưng quan trọng một cách hiệu quả. Kiến trúc mạng cần phải phù hợp với bài toán cụ thể và khả năng tính toán của máy tính. Hàm mất mát đo lường sự khác biệt giữa dự đoán của mô hình và giá trị thực tế. Bộ tối ưu hóa điều chỉnh các tham số của mô hình để giảm thiểu hàm mất mát. Tăng cường dữ liệu tạo ra các biến thể của dữ liệu huấn luyện để tăng tính tổng quát của mô hình.

5.1. Tăng Cường Dữ Liệu Data Augmentation Kỹ Thuật

Tăng cường dữ liệu là một kỹ thuật quan trọng để tăng tính tổng quát của mô hình CNN. Tăng cường dữ liệu tạo ra các biến thể của dữ liệu huấn luyện bằng cách thực hiện các phép biến đổi như xoay, lật, cắt, thay đổi độ sáng, và thêm nhiễu. Tăng cường dữ liệu giúp mô hình học các đặc trưng quan trọng một cách độc lập với các biến đổi của hình ảnh. Các kỹ thuật tăng cường dữ liệu phổ biến bao gồm xoay, lật, cắt, thay đổi độ sáng, thêm nhiễu, và trộn ảnh.

5.2. Lựa Chọn Hàm Mất Mát Loss Function và Bộ Tối Ưu Hóa

Hàm mất mátbộ tối ưu hóa là hai thành phần quan trọng trong quá trình huấn luyện mô hình CNN. Hàm mất mát đo lường sự khác biệt giữa dự đoán của mô hình và giá trị thực tế. Các hàm mất mát phổ biến bao gồm cross-entropy loss, focal loss, và IoU loss. Bộ tối ưu hóa điều chỉnh các tham số của mô hình để giảm thiểu hàm mất mát. Các bộ tối ưu hóa phổ biến bao gồm SGD (Stochastic Gradient Descent), Adam, và RMSProp. Việc lựa chọn hàm mất mátbộ tối ưu hóa phù hợp phụ thuộc vào bài toán cụ thể và kiến trúc mạng CNN.

VI. Tương Lai Mạng Neural Tích Chập Nhận Dạng Đối Tượng

CNNnhận dạng đối tượng vẫn là những lĩnh vực nghiên cứu sôi động với nhiều tiềm năng phát triển trong tương lai. Các xu hướng nghiên cứu hiện tại bao gồm phát triển các kiến trúc mạng hiệu quả hơn, cải thiện khả năng nhận dạng đối tượng trong các điều kiện khó khăn, và ứng dụng CNN vào các lĩnh vực mới. Edge computing là một xu hướng quan trọng, cho phép triển khai CNN trên các thiết bị di động và nhúng, mở ra nhiều ứng dụng mới trong các lĩnh vực như xe tự lái, nhà thông minh, và Internet of Things (IoT). Ngoài ra, sự phát triển của các phương pháp học không giám sát (unsupervised learning)học bán giám sát (semi-supervised learning) có thể giúp giảm sự phụ thuộc vào dữ liệu huấn luyện có nhãn, làm cho CNN dễ dàng áp dụng hơn trong các tình huống thực tế.

6.1. Edge Computing và CNN Nhận Dạng Đối Tượng Trên Thiết Bị

Edge computing cho phép triển khai CNN trên các thiết bị di động và nhúng, mang lại nhiều lợi ích so với việc xử lý dữ liệu trên đám mây. Edge computing giảm độ trễ, tăng tính riêng tư, và giảm băng thông mạng. Edge computing mở ra nhiều ứng dụng mới cho nhận dạng đối tượng trong các lĩnh vực như xe tự lái, nhà thông minh, và Internet of Things (IoT). Tuy nhiên, việc triển khai CNN trên các thiết bị có tài nguyên hạn chế cũng đặt ra nhiều thách thức, bao gồm việc giảm kích thước mô hình và tối ưu hóa hiệu suất tính toán.

6.2. Học Không Giám Sát Unsupervised Learning Hướng Phát Triển

Học không giám sáthọc bán giám sát là các phương pháp học máy có thể giúp giảm sự phụ thuộc vào dữ liệu huấn luyện có nhãn. Học không giám sát sử dụng dữ liệu không có nhãn để học các đặc trưng quan trọng. Học bán giám sát sử dụng kết hợp dữ liệu có nhãn và dữ liệu không có nhãn để huấn luyện mô hình. Sự phát triển của các phương pháp học không giám sáthọc bán giám sát có thể giúp CNN dễ dàng áp dụng hơn trong các tình huống thực tế, nơi việc thu thập dữ liệu huấn luyện có nhãn là khó khăn hoặc tốn kém.

23/09/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1. TỔNG QUAN VỀ MẠNG NƠ RON VÀ GIỚI THIỆU VỀ MẠNG NƠ RON TÍCH CHẬP 1. Nơ ron nhân tạo 1.1 Lịch sử của nơ ron nhân tạo Vào năm 1943, nhà thần kinh học Warren McCulloch đã cùng nhà toán học Walter Pitts đã viết một cuốn sách về cách mạng thần kinh hoạt động. Và họ đã thực hiện mô phỏng một mạng thần kinh đơn giản trên một mạch điện.

[9] Vào năm 1949, Donald Hebb đã viết cuốn sách Organization of Behavior. Điểm nhấn chính là mạng thần kinh nào được sử dụng nhiều sẽ được tăng cường. Vào năm 1959, David Hubel và Torsten Wiesel đã xuất bản cuốn sách Receptive fields of single neurons in the cat’s striate cortex, miêu tả về phản ứng của các tế bào thần kinh thị giác trên loài mèo, cũng như cách loài mèo ghi nhớ và nhận diện hình dạng trên kiến trúc vỏ não của nó.1 Hình ảnh thí nghiệm của David Hubel và Torsten Wiesel trên mèo [10] Vào năm 1989, Yann LeCun đã áp dụng thuật toán học cho mạng nơ ron theo kiểu lan truyền ngược vào kiến trúc mạng nơ ron tích chập của Fukushima. Sau đó vài năm, LeCun đã công bố LeNet-5 [13].

Có thể nói, LeNet-5 là một trong những mạng nơ ron tích chập sơ khai nhất, tuy nhiên các dấu ấn của nó vẫn tồn tại tới ngày nay, có thể thấy thông qua một số thành phần thiết yếu mà các mạng nơ ron tích chập của ngày nay vẫn đang sử dụng 4 TIEU LUAN MOI download : skknchat@gmail.2 Cấu tạo và quá trình xử lý của một nơ ron sinh học Hình 1.2: Hình ảnh một nơ ron sinh học [14] Một nơ ron gồm có: thân nơ ron, tua gai thần kinh, sợi trục thần kinh, trong đó:  Thân nơ ron: là nơi xử lý các tín hiệu được đưa vào;  Tua gai thần kinh: là nơi nhận các xung điện vào trong nơ ron;  Sợi trục thần kinh: là nơi đưa tín hiệu ra ngoài sau khi được xử lý bởi nơ ron;  Khớp thần kinh: vị trí nằm giữa tua gai thần kinh và sợi trục thần kinh, đây là điểm liên kết đầu ra của nơ ron này với đầu vào của nơ ron khác.3 Cấu tạo và quá trình xử lý của một nơ ron nhân tạo Dựa vào cấu tạo của một nơ ron sinh học, các nhà khoa học nghiên cứu và lập trình đã đưa ra kiến trúc của một nơ ron nhân tạo: Hình 1.3: Công thức của một nơ ron nhân tạo [41] 5 TIEU LUAN MOI download : skknchat@gmail.com Mạng nơ ron nhân tạo có thể mô tả đơn giản lại như sau: Hình 1.4: Hình ảnh một nơ ron nhân tạo Trong đó:  Danh sách các đầu vào: Là các thuộc tính đầu vào của một nơ ron. Số lượng thuộc tính đầu vào thường nhiều hơn một, do dữ liệu thô đầu vào thường là một vector nhiều chiều, hoặc nhiều nơ ron tầng trước kết nối tới một nơ ron tầng sau.  Trọng số liên kết: Các liên kết được thể hiện độ mạnh yếu qua một giá trị được gọi là trọng số liên kết. Kết hơp với các đầu truyền, tín hiệu đến các nơ ron nhân tạo khác sẽ được tính bằng ; Hình 1.5: Hình ảnh vị trí thiên lệch được thêm vào trong thực tế 6 TIEU LUAN MOI download : skknchat@gmail.com  Hàm tổng: Tổng các tích của các đầu vào với trọng số liên kết mô phỏng các khớp kết nối.

Sau đó đi qua hàm tính tổng để tính ra giá trị trước khi đưa vào hàm truyền;  Thiên lệch (b): Độ lệch được đưa vào sau khi khi tính toán xong hàm tổng, tạo ra giá trị cuối cùng trước khi đưa vào hàm truyền. Mục đích của việc thêm vào thiên lệch nhằm dịch chuyển chức năng của hàm kích hoạt sang trái hoặc phải, giúp ích khi mạng được huấn luyện. Hình ảnh vị trí thiên lệch được thêm vào trong mạng nơ ron thực tế. Hình ảnh huấn luyện khi có và không có thiên lệch: Hình 1.6: Kết quả của hàm sigmoid với các trọng số đầu vào khác nhau nhưng không có thiên lệch Hình 1.7: Kết quả của hàm sigmoid với các trọng số thiên lệch khác nhau Hàm kích hoạt (Activation functions): Hàm này được sử dụng để tính toán giá trị của đầu ra dựa vào giá trị của hàm Tổng.

7 TIEU LUAN MOI download : skknchat@gmail. Các mô hình hàm kích hoạt của mạng nơ ron nhân tạo 1.1 Hàm Sigmod  Biểu diễn hàm:  Đạo hàm của hàm: Hàm Sigmoid được sử dụng vì ngưỡng của nó nằm trong khoảng (0, 1). Do đó, hàm này được sử dụng nhiều cho các mô hình dự đoán xác suất đầu ra, tức kết quả chỉ tồn tại trong khoảng từ 0 đến 1: khi đầu vào là số dương lớn, đầu ra của hàm sigmoid gần bằng 1. Khi nhỏ hơn 0, đầu ra gần bằng 0.

Tuy nhiên, việc tối ưu của hàm này khó khăn, nguyên nhân vì nếu giá trị đầu vào của hàm là 1 số rất lớn, thì đầu ra của hàm càng về 2 đầu xấp xỉ 1 hoặc 0, nên tốc độ hội tụ sẽ rất chậm.8: Đồ thị hàm Sigmoid 1.2 Hàm TanH  Biểu diễn hàm:  Đạo hàm của hàm: Hàm TanH được sử dụng vì đầu ra của hàm nằm trong khoảng , thích hợp với các mô hình đầu ra có ba giá trị: âm, trung tính (0) và dương. Chúng ta có thể thấy rõ hơn điều này trong hình minh họa. 8 TIEU LUAN MOI download : skknchat@gmail.9: Đồ thị hàm TanH 1. Hàm tuyến tính  Biểu diễn hàm:  Đạo hàm của hàm: Hàm tuyến tính áp dụng thao tác nhận dạng trên dữ liệu với dữ liệu đầu ra tỷ lệ thuận với dữ liệu đầu vào.10: Đồ thị hàm tuyến tính 1.4 Hàm RELU  Biểu diễn hàm:  Đạo hàm của hàm: Hàm RELU áp dụng với những trường hợp cần đầu ra nằm trong khoảng (0, +∞).

Hàm RELU có tốc độ tính toán rất nhanh, gán các giá trị âm trở thành 0 ngay lập tức, phù 9 TIEU LUAN MOI download : skknchat@gmail.com hợp cho việc huấn luyện từ dữ liệu chuẩn. Tuy nhiên, điều này khiến hàm RELU không ánh xạ các giá trị âm một cách thích hợp.11: Đồ thị hàm RELU 1.5 Hàm ELU  Biểu diễn hàm:  Đạo hàm của hàm: Hàm ELU là một biến thể của hàm RELU. Hàm thường được sử dụng khi ngưỡng đầu ra của nó nằm trong khoảng (-1, +∞). Hàm ELU khắc phục hạn chế ánh xạ các giá trị âm của hàm RELU.12: Đồ thị hàm ELU 10 TIEU LUAN MOI download : skknchat@gmail.2 Mạng nơ ron nhân tạo 1.1 Giới thiệu mạng nơ ron nhân tạo Mạng nơ ron nhân tạo (Artificial Neural Network ANN) là một chuỗi các giải thuật lập trình, mô phỏng dựa trên cách hoạt động của mạng lưới thần kinh trong não bộ các sinh vật sống.

Mạng nơ ron nhân tạo được sử dụng để tìm ra mối quan hệ của một tập dữ liệu thông qua một thiết kế kiến trúc chứa nhiều tầng ẩn (hidden layer), mỗi tầng lại chứa nhiều nơ ron. Các nơ ron được kết nối với nhau và độ mạnh yếu của các liên kết được biểu hiện qua trọng số liên kết. Lập trình thông thường có thể làm được rất nhiều phần mềm lớn, như tính toán mô phỏng các vụ nổ hạt nhân trong siêu máy tính ở các phòng thí nghiệm, hoặc tái hiện các tế bào ở cấp độ phân tử để phân tích các thử nghiệm thuốc. Một siêu máy tính có thể tính toán được nhiều tỉ phép tính trên giây, tuy nhiên lập trình thông thường lại gặp khó khăn trong việc nhận ra các mẫu đơn giản, ví dụ như nhận diện mặt người, điều mà một bộ não sinh học xử lý nhanh và chính xác hơn nhiều.

Áp dụng với các kỹ thuật học sâu, mạng nơ ron nhân tạo hiện nay đang được áp dụng để giải quyết những vấn đề mà lập trình theo logic thông thường khó có thể giải quyết được. Do đó, mạng nơ ron nhân tạo đang nhanh chóng trở nên phổ biến, và là xu thế trên nhiều lĩnh vực.2 Một số kiểu mạng nơ ron Có hai kiểu mạng nơ ron chính: mạng nơ ron truyền thằng (feedforward neural network) và mạng nơ ron hồi quy (recurrent neural network). Mạng truyền thẳng và hồi quy được minh họa như sau: Hình 1.13: Mạng nơ ron truyền thẳng 11 TIEU LUAN MOI download : skknchat@gmail.com Dễ thấy, ở mạng nơ ron truyền thẳng, các nơ ron trong tầng ẩn đều được kết nối với các nơ ron trong tầng n. Do có nhiều tầng ẩn nên chúng ta có thể thấy rằng mạng truyền thẳng kéo dài trong không gian, và là không có bất kỳ đường tuần hoàn (cyclic path) nào nằm trong mạng.

Mạng nơ ron truyền thẳng rất phổ biến hiện nay.14: Mạng nơ ron hồi quy Một loại khác là mạng nơ ron hồi quy. Không giống như mạng nơ ron truyền thẳng, mạng nơ ron hồi quy có ít nhất một đường dẫn tuần hoàn. Chúng ta có thể thấy nó ở hình minh họa phía trên. Vì có một đường dẫn tuần hoàn, nên mạng nơ ron hồi quy có thể gây ra vòng lặp vô cực.

Tuy nhiên, mạng nơ ron tuần hoàn có một ứng dụng quan trọng là chúng có thể nhận diện cho các giai đoạn thời gian khác nhau, như hình minh họa sau: Hình 1.15: Cách huấn luyện cho một mạng nơ ron hồi quy Như ví dụ trên, có một nút A kết nối với nút B và một chu kỳ đến chính nút A. Mạng nơ ron hồi quy không xử lý đường dẫn tuần hoàn và các kết nối cùng một lúc. Mạng nơ ron hồi quy giả sử rằng đầu ra của nút A trong thời gian n là đầu vào của nút B và nút A trong thời gian n + 1. Vì vậy, ngoài tính chất kéo dài trong không gian khi kết nối với các tầng nơ ron tiếp theo, mạng nơ ron hồi quy cũng nằm sâu trong thời gian.

Vì vậy, các mạng nơ ron hồi quy có thể mô hình hóa các hệ thống thay đổi theo bối cảnh. Ví dụ: mạng nơ ron hồi quy thường được sử dụng trong xử lý ngôn ngữ theo ngữ cảnh. Mạng 12 TIEU LUAN MOI download : skknchat@gmail.com nơ ron hồi quy có thể xử lý các phụ thuộc xa (long-term dependencies) theo mốc thời gian, ví dụ như mạng bộ nhớ dài-ngắn (Long Short Term Memory networks).3 Mạng nơ ron lan truyền ngược 1.1 Tổng quan về mạng nơ ron lan truyền ngược Giải thuật lan truyền ngược được mô tả ngắn gọn như sau: 1. Bước 1: Lan truyền.

Giai đoạn lan truyền có hai bước, lan truyền tiến và lan truyền ngược. Bước lan truyền tiến là nhập dữ liệu huấn luyện vào các mạng nơ ron và tính toán đầu ra. Sau đó, dựa vào kết quả đầu ra, so sánh với dữ liệu huấn luyện. Chúng ta có thể sử dụng lan truyền ngược để cập nhật ngược lại trọng số lại cho các nơron trong các tầng trước đó.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ