Convolutional Neural Network là gì? Những điều bạn cần biết về CNN

Thứ năm, 24/11/2022-09:11
Convolutional Neural Network là một kiến ​​trúc mạng dành cho học sâu, học trực tiếp từ dữ liệu, giúp loại bỏ nhu cầu trích xuất tính năng thủ công. Ngoài hình ảnh, CNN khá hiệu quả trong việc phân loại dữ liệu phi hình ảnh như âm thanh, chuỗi thời gian và dữ liệu tín hiệu. Các ứng dụng yêu cầu nhận dạng đối tượng và thị giác máy tính phụ thuộc rất nhiều vào CNN.

Convolutional Neural Network là gì?

Mạng nơ-ron, mạng thần kinh (Neural Network) là một tập con của học máy (Machine Learning) và là trung tâm của các thuật toán học sâu (Deep Learning). Neural Network bao gồm các lớp nút (node), một lớp đầu vào, một hoặc nhiều lớp ẩn và một lớp đầu ra. Mỗi nút kết nối với nút khác có trọng số và ngưỡng liên quan. Nếu đầu ra của bất kỳ nút riêng lẻ nào cao hơn giá trị ngưỡng chỉ định, nút đó sẽ được kích hoạt, gửi dữ liệu đến lớp tiếp theo của mạng.

Có nhiều loại mạng nơ-ron khác nhau và chúng được sử dụng trong các trường hợp và loại dữ liệu khác nhau. Ví dụ: mạng nơ-ron hồi quy (Recurrent Neural Network) thường được sử dụng để xử lý ngôn ngữ tự nhiên (NLP) và nhận dạng giọng nói; trong khi mạng nơ-ron tích chập (Convolutional Neural Network ) đa phần được sử dụng cho các nhiệm vụ phân loại và thị giác máy tính (Computer Vision).

Mạng thần kinh tích chập, tiếng Anh là Convolutional Neural Network, viết tắt là CNN. 

Trong học sâu, Convolutional Neural Network là một lớp của mạng thần kinh sâu (Deep Neural Network). Ứng dụng phổ biến nhất của CNN là phân tích hình ảnh trực quan.Trước CNN, các phương pháp trích xuất tính năng để xác định các đối tượng trong ảnh diễn ra một cách thủ công, tốn thời gian.

Tuy nhiên, các mạng thần kinh tích chập hiện cung cấp khả năng mở rộng với các tác vụ nhận dạng đối tượng và phân loại hình ảnh. Chúng tận dụng các nguyên tắc đại số tuyến tính - phép nhân ma trận - để xác định các mẫu trong một hình ảnh. Điền này có nghĩa là Convolutional Neural Network có thể đòi hỏi tính toán và yêu cầu các đơn vị xử lý đồ họa (GPU) để huấn luyện các mô hình. 


Mạng thần kinh tích chập là gì?
Mạng thần kinh tích chập là gì?

CNN hoạt động như thế nào?

Mạng thần kinh tích chập được phân biệt với các mạng thần kinh khác nhờ hiệu suất vượt trội của chúng. Convolutional Neural Network có thể xử lý đầu vào là tín hiệu hình ảnh, lời nói và âm thanh, với ba lớp chính:

  • Lớp tích chập (Convolutional layer)
  • Lớp tổng hợp (Pooling layer)
  • Lớp kết nối đầy đủ (Fully-connected (FC) layer)

Lớp tích chập là lớp đầu tiên của mạng tích chập. Theo sau lớp tích chập có thể là các lớp tích chập bổ sung hoặc các lớp tổng hợp. Như dù như thế nào thì lớp FC vẫn là lớp cuối cùng. Các lớp sẽ có độ phức tạp tăng dần và có nhiệm vụ xác định các phần lớn hơn của hình ảnh. Các lớp trước tập trung vào các tính năng đơn giản, chẳng hạn như màu sắc và các cạnh. Khi dữ liệu hình ảnh tiến triển qua các lớp, CNN bắt đầu nhận ra các yếu tố hoặc hình dạng lớn hơn của đối tượng cho đến khi cuối cùng nó xác định được đối tượng.

Lớp tích chập

Lớp tích chập là khối xây dựng cốt lõi của Convolutional Neural Network và là nơi diễn ra phần lớn tính toán. Để hoạt động, lớp này yêu cầu thành phần dữ liệu đầu vào, bộ lọc và bản đồ tính năng. 

Quá trình tích chập liên quan đến bộ phát hiện tính năng, còn gọi là hạt nhân (kernel) hoặc bộ lọc, di chuyển qua các trường tiếp nhận của hình ảnh, kiểm tra xem một tính năng có trong hình ảnh hay không.

Qua nhiều lần lặp lại, bộ phát hiện tính năng quét qua toàn bộ hình ảnh. Sau mỗi lần lặp lại, một tích vô hướng được tính toán giữa các pixel đầu vào và bộ lọc. Đầu ra cuối cùng từ chuỗi các dấu chấm được gọi là bản đồ tính năng. Cuối cùng, hình ảnh được chuyển đổi thành các giá trị số trong lớp này, cho phép CNN giải thích hình ảnh và trích xuất các mẫu có liên quan từ nó.

Lớp tổng hợp

Pooling layer tiến hành giảm kích thước, giảm số lượng tham số trong đầu vào. Có hai loại tổng hợp chính:

  • Tổng hợp tối đa: Khi bộ lọc di chuyển qua đầu vào, nó sẽ chọn pixel có giá trị lớn nhất để gửi đến mảng đầu ra.
  • Tổng hợp trung bình: Khi bộ lọc di chuyển qua đầu vào, nó sẽ tính toán giá trị trung bình trong trường tiếp nhận để gửi đến mảng đầu ra.

Mặc dù rất nhiều thông tin bị mất trong lớp tổng hợp nhưng nó cũng mang lại một số lợi ích cho CNN. Chúng giúp giảm độ phức tạp, nâng cao hiệu quả và hạn chế rủi ro trang bị thừa. 

Lớp kết nối đầy đủ

Lớp này thực hiện nhiệm vụ phân loại dựa trên các tính năng được trích xuất thông qua các lớp trước đó và các bộ lọc khác nhau của chúng. Trong khi các lớp tích chập và tổng hợp có xu hướng sử dụng các hàm ReLu, thì các lớp FC thường tận dụng chức năng kích hoạt softmax để phân loại đầu vào một cách thích hợp, tạo ra xác suất từ ​​0 đến 1.


 
 

Các loại mạng thần kinh tích chập

Kunihiko Fukushima và Yann LeCun đã đặt nền móng nghiên cứu cho mạng thần kinh tích chập vào năm 1980 và năm 1989. Nổi tiếng hơn, Yann LeCun đã áp dụng thành công kỹ thuật lan truyền ngược để huấn luyện các mạng nơ-ron xác định và nhận dạng các mẫu trong một loạt mã zip viết tay. Và đỉnh cao nghiên cứu là “LeNet-5” trong những năm 1990. Kể từ đó, một số kiến ​​trúc CNN biến thể đã xuất hiện cùng với việc các bộ dữ liệu mới, chẳng hạn như MNIST và CIFAR-10. Tuy nhiên, LeNet-5 vẫn được gọi là kiến ​​trúc CNN cổ điển. Một số kiến ​​trúc Convolutional Neural Network khác bao gồm:

  • AlexNet
  • VGGNet
  • GoogLeNet
  • ResNet
  • ZFNet

Convolutional Neural Network và Neural Network: sự khác biệt là gì?

Sự khác biệt giữa Mạng thần kinh tích chập và mạng thần kinh thông thường

Vấn đề lớn nhất với các mạng thần kinh thông thường (Neural Network - NN) là thiếu khả năng mở rộng. Đối với những hình ảnh nhỏ hơn với ít kênh màu hơn, NN thông thường có thể tạo ra kết quả khả quan. Nhưng khi kích thước và độ phức tạp của hình ảnh tăng lên, nhu cầu về sức mạnh tính toán và tài nguyên cũng tăng lên, điều này đòi hỏi phải có một NN lớn hơn và đắt tiền hơn.

Hơn nữa, vấn đề overfitting (hiện tượng mô hình tìm được quá khớp với dữ liệu đào tạo) cũng phát sinh theo thời gian. Sau đó, nó học được tiếng ồn trong dữ liệu, điều này ảnh hưởng đến hiệu suất của nó trên các tập dữ liệu thử nghiệm. Cuối cùng, NN không xác định được các tính năng hoặc mẫu trong tập dữ liệu và chính đối tượng đó.

Ngược lại, CNN sử dụng chia sẻ tham số. Trong mỗi lớp của CNN, mỗi nút kết nối với nút khác. Một CNN cũng có trọng số liên quan; khi bộ lọc của các lớp di chuyển trên hình ảnh, các trọng số vẫn cố định - được gọi là chia sẻ tham số. Điều này làm cho toàn bộ hệ thống CNN ít tính toán chuyên sâu hơn so với hệ thống NN.

Lợi ích của việc sử dụng CNN để học sâu

Học sâu là một tập hợp con của học máy sử dụng mạng thần kinh có ít nhất ba lớp. So với mạng chỉ có một lớp, mạng có nhiều lớp có thể mang lại kết quả chính xác hơn. Cả RNN (Mạng thần kinh hồi quy) và CNN đều được sử dụng trong deep learning, tùy thuộc vào từng ứng dụng.

Đối với các ứng dụng nhận dạng hình ảnh, phân loại hình ảnh và thị giác máy tính (CV) , CNN đặc biệt hữu ích vì chúng cung cấp kết quả có tính chính xác cao, nhất là khi có nhiều dữ liệu. CNN cũng học các tính năng của đối tượng trong các lần lặp lại liên tiếp khi dữ liệu đối tượng di chuyển qua nhiều lớp của CNN. Việc học trực tiếp (và sâu) này giúp loại bỏ nhu cầu trích xuất tính năng thủ công (kỹ thuật tính năng).

CNN có thể được đào tạo cho các nhiệm vụ nhận dạng mới và được xây dựng trên các mạng có sẵn. Những lợi thế này mở ra những cơ hội mới để sử dụng CNN cho các ứng dụng trong thế giới thực mà không làm tăng độ phức tạp hoặc chi phí tính toán.

Như đã đề cập, CNN hiệu quả hơn về mặt tính toán so với NN thông thường vì chúng sử dụng chia sẻ tham số. Các mô hình rất dễ triển khai và có thể chạy trên mọi thiết bị, ngay cả điện thoại thông minh.


Mạng thần kinh tích chập đã đạt được những thành tựu đáng kinh ngạc trên nhiều lĩnh vực khác nhau
Mạng thần kinh tích chập đã đạt được những thành tựu đáng kinh ngạc trên nhiều lĩnh vực khác nhau

CNN và thị giác máy tính

Convolutional Neural Network cung cấp năng lượng cho các tác vụ nhận dạng hình ảnh và thị giác máy tính. Thị giác máy tính là một lĩnh vực trí tuệ nhân tạo (AI) cho phép máy tính và hệ thống lấy thông tin có ý nghĩa từ hình ảnh kỹ thuật số, video và các đầu vào hình ảnh khác, và dựa trên những đầu vào đó, nó có thể thực hiện hành động. Khả năng cung cấp các đề xuất này phân biệt nó với các tác vụ nhận dạng hình ảnh. 

Các ứng dụng phổ biến nhất của thị giác máy tính và CNN được sử dụng trong các lĩnh vực như sau:

  • Marketing: Các nền tảng truyền thông xã hội cung cấp gợi ý về những người có thể có mặt trong bức ảnh đã được đăng tải, giúp việc gắn thẻ bạn bè trở nên dễ dàng hơn. 
  • Chăm sóc sức khỏe: CNN có thể kiểm tra hàng nghìn báo cáo trực quan để phát hiện bất kỳ tình trạng bất thường nào ở bệnh nhân, chẳng hạn như sự hiện diện của các tế bào ung thư ác tính.
  • Bán lẻ: Tìm kiếm trực quan đã được tích hợp vào một số nền tảng thương mại điện tử, cho phép các thương hiệu đề xuất các sản phẩm thời trang có khả năng thu hút khách hàng.  
  • Ô tô: Mặc dù thời đại của ô tô không người lái vẫn chưa thực sự xuất hiện, nhưng công nghệ cơ bản đã bắt đầu thâm nhập vào ô tô, cải thiện sự an toàn của người lái và hành khách thông qua các tính năng như phát hiện làn đường.
  • Xử lý âm thanh cho trợ lý ảo: CNN trong trợ lý ảo tìm hiểu và phát hiện các từ khóa do người dùng nói, đồng thời xử lý thông tin đầu vào để phản hồi người dùng.

Kết luận

Convolutional Neural Network (CNN) đã đạt được những thành tựu đáng kinh ngạc trên nhiều lĩnh vực khác nhau, bao gồm cả nghiên cứu y học với sự quan tâm ngày càng tăng trong X quang. Mặc dù học sâu đã trở thành một phương pháp thống trị trong nhiều nhiệm vụ phức tạp như phân loại hình ảnh và phát hiện đối tượng, nhưng công nghệ này không phải là thuốc chữa bách bệnh. Làm quen với các khái niệm và ưu điểm chính của mạng thần kinh tích chập cũng như những hạn chế của học sâu là điều cần thiết để tận dụng nghiên cứu X quang với mục tiêu cải thiện hiệu suất của bác sĩ và chăm sóc bệnh nhân.

Theo: Reatimes.vn
Copy link
Chia sẻ:

Cùng chủ đề

Việc mất 10 tiếng để làm được AI hoàn thành trong 10 giây: Các sinh viên tài chính ngân hàng chuẩn bị mất việc?

Bitcoin trở thành tài sản có giá trị lớn thứ 8 toàn cầu

Mặt trái của AI: Tiêu thụ điện năng ở mức khổng lồ

Kỷ nguyên công nghệ gia tăng áp lực cạnh tranh giữa các doanh nghiệp bất động sản

Hé lộ 3 kênh podcast ‘giải ngố đầu tư’ dành cho người mới bắt đầu

Top 5 bóng hồng quyền lực trong làng công nghệ thế giới

5 tiêu chí tham gia cơ chế thử nghiệm cho vay ngang hàng - P2P Lending

Gen Z “sống chất” với phong cách tài chính 4.0: Luôn biết cách “tích tiểu thành đại”, “xung phong” lan tỏa tài chính số

Tin mới cập nhật

Blockchain, trí tuệ nhận tạo sẽ giúp định hình tương lai theo cách "không thể tưởng tượng nổi"

4 giờ trước

Cổ đông lo giá cổ phiếu giảm khi nhiều ngân hàng chia cổ tức

13 giờ trước

Trung tâm thương mại TP.HCM "đắt" khách thuê

13 giờ trước

Hà Nội có mức sống đắt đỏ nhất Việt Nam: Gia đình 4 người chi 30 triệu/tháng vẫn thấy thiếu

13 giờ trước

Bí quyết tạo prompt nhằm tận dụng sức mạnh của chatbot AI

13 giờ trước