Gặp gỡ YOLO26: AI tầm nhìn thế hệ tiếp theo.
Ultralytics
Hướng dẫn

EfficientNet là gì? Tổng quan nhanh

Tìm hiểu kiến trúc EfficientNet & sự kỳ diệu của compound scaling! Khám phá EfficientNet B0-B7 để đạt hiệu suất phân loại hình ảnh và segmentation hàng đầu.

ABAbirami Vina
6 min read
Tổng quan về kiến trúc EfficientNet

Vào năm 2019, các nhà nghiên cứu tại Google AI đã giới thiệu EfficientNet, một model computer vision tiên tiến được xây dựng để nhận diện vật thể và các mẫu hình trong hình ảnh. Model này chủ yếu được thiết kế cho tác vụ phân loại hình ảnh, bao gồm việc gán một hình ảnh vào một trong nhiều danh mục được xác định trước. Tuy nhiên, ngày nay, EfficientNet còn đóng vai trò là backbone cho các tác vụ phức tạp hơn như object detection, phân đoạn và transfer learning.

Trước khi có EfficientNet, các model machine learning và vision AI thường cố gắng cải thiện độ chính xác bằng cách thêm nhiều lớp hơn hoặc tăng kích thước của các lớp đó. Các lớp chính là những bước trong một model neural network (một loại model deep learning lấy cảm hứng từ não người) giúp xử lý dữ liệu để học các mẫu hình và cải thiện độ chính xác.

Những thay đổi này đã tạo ra một sự đánh đổi, làm cho các model AI truyền thống trở nên cồng kềnh và chậm chạp hơn, trong khi độ chính xác tăng thêm thường không đáng kể so với mức tăng đáng kể về công suất tính toán cần thiết.

EfficientNet đã thực hiện một cách tiếp cận khác. Nó tăng đồng thời độ sâu (số lượng lớp), độ rộng (số lượng đơn vị trong mỗi lớp) và độ phân giải hình ảnh (mức độ chi tiết của hình ảnh đầu vào) một cách cân bằng. Phương pháp này, được gọi là compound scaling, giúp tận dụng hiệu quả mọi công suất xử lý sẵn có. Kết quả cuối cùng là một model nhỏ gọn và nhanh hơn, có thể hoạt động hiệu quả hơn so với các model cũ hơn như ResNet hoặc DenseNet.

Ngày nay, các model computer vision mới hơn như Ultralytics YOLO11 mang lại độ chính xác, tốc độ và hiệu quả cao hơn. Dù vậy, EfficientNet vẫn là một cột mốc quan trọng đã ảnh hưởng đến thiết kế của nhiều kiến trúc tiên tiến.

Trong bài viết này, chúng ta sẽ tìm hiểu về EfficientNet trong vòng năm phút, bao gồm cách thức hoạt động, điều gì làm cho nó trở nên độc đáo và tại sao nó vẫn quan trọng trong lĩnh vực computer vision. Hãy cùng bắt đầu!

Link to this sectionEfficientNet là gì?#

Trước khi EfficientNet được thiết kế, hầu hết các model nhận diện hình ảnh cải thiện độ chính xác bằng cách điều chỉnh các lớp hoặc tăng kích thước hình ảnh đầu vào để nắm bắt nhiều chi tiết hơn. Mặc dù các chiến lược này cải thiện kết quả, chúng cũng làm cho các model trở nên nặng nề và đòi hỏi khắt khe hơn. Điều này có nghĩa là chúng cần nhiều bộ nhớ hơn và phần cứng mạnh hơn.

Thay vì thay đổi từng lớp riêng lẻ, EfficientNet thực hiện scale độ sâu, độ rộng và độ phân giải hình ảnh cùng nhau bằng cách sử dụng phương pháp gọi là compound scaling. Cách tiếp cận này cho phép model phát triển hiệu quả mà không làm quá tải bất kỳ khía cạnh đơn lẻ nào.

Kiến trúc EfficientNet xử lý hình ảnh thông qua một loạt các khối, mỗi khối được xây dựng từ các module nhỏ hơn. Số lượng module trong mỗi khối phụ thuộc vào kích thước của model.

Các thành phần cấu tạo của EfficientNet

Hình 1. Các khối xây dựng của EfficientNet. (Nguồn)

Các phiên bản nhỏ hơn sử dụng ít module hơn, trong khi các phiên bản lớn hơn lặp lại các module thường xuyên hơn. Thiết kế linh hoạt này cho phép EfficientNet mang lại độ chính xác và hiệu quả cao trên phạm vi ứng dụng rộng lớn, từ thiết bị di động đến các hệ thống quy mô lớn.

Link to this sectionCách thức hoạt động của compound scaling#

Phương pháp compound scaling mở rộng độ sâu, độ rộng và độ phân giải hình ảnh của một model nhưng vẫn giữ chúng ở trạng thái cân bằng. Điều này giúp tận dụng công suất tính toán một cách hiệu quả. Chuỗi bắt đầu với một model cơ sở nhỏ hơn gọi là EfficientNet-B0, đóng vai trò là nền tảng cho tất cả các phiên bản khác.

Từ B0, các model được scale lên các biến thể lớn hơn có tên từ EfficientNet-B1 đến EfficientNet-B7. Với mỗi bước, mạng lưới nhận thêm các lớp, tăng số lượng kênh (các đơn vị được sử dụng để xử lý) và xử lý các hình ảnh đầu vào có độ phân giải cao hơn. Mức độ tăng trưởng ở mỗi bước được xác định bởi một tham số gọi là compound coefficient, đảm bảo rằng độ sâu, độ rộng và độ phân giải tăng theo các tỷ lệ cố định thay vì một cách độc lập.

Compound scaling tăng chiều rộng, độ sâu và độ phân giải hình ảnh của model

Hình 2. Compound scaling tăng độ rộng, độ sâu và độ phân giải hình ảnh của model. (Nguồn)

Link to this sectionKiến trúc EfficientNet#

Tiếp theo, hãy cùng xem xét kiến trúc của EfficientNet.

Nó được xây dựng dựa trên MobileNetV2, một model computer vision gọn nhẹ được tối ưu hóa cho các thiết bị di động và nhúng. Cốt lõi của nó là khối Mobile Inverted Bottleneck Convolution (MBConv), một lớp đặc biệt giúp xử lý dữ liệu hình ảnh giống như tích chập chuẩn nhưng với ít tính toán hơn. Khối này làm cho model vừa nhanh vừa tiết kiệm bộ nhớ hơn.

Bên trong mỗi khối MBConv là một module squeeze-and-excitation (SE). Module này điều chỉnh cường độ của các kênh khác nhau trong mạng. Nó tăng cường độ của các kênh cần thiết và giảm cường độ của các kênh khác. Module này giúp mạng tập trung vào các tính năng quan trọng nhất trong hình ảnh, trong khi bỏ qua phần còn lại. Model EfficientNet cũng sử dụng hàm kích hoạt Swish (một hàm toán học giúp mạng học các mẫu hình), giúp nó phát hiện các mẫu hình trong hình ảnh tốt hơn so với các phương pháp cũ.

Ngoài ra, nó còn sử dụng DropConnect, trong đó một số kết nối bên trong mạng bị ngắt ngẫu nhiên trong quá trình huấn luyện. Phương pháp chính quy hóa ngẫu nhiên này (một kỹ thuật tạo ngẫu nhiên để ngăn model ghi nhớ dữ liệu huấn luyện thay vì khái quát hóa) giúp giảm overfitting bằng cách buộc mạng học các biểu diễn tính năng mạnh mẽ hơn (các mẫu hình mạnh mẽ, tổng quát hơn trong dữ liệu) giúp truyền đạt tốt hơn đến các dữ liệu chưa từng thấy.

Kiến trúc của EfficientNet-B0

Hình 3. Kiến trúc của EfficientNet-B0 (Nguồn)

Link to this sectionTổng quan ngắn gọn về các biến thể model của EfficientNet#

Bây giờ chúng ta đã hiểu rõ hơn về cách hoạt động của các model EfficientNet, hãy cùng thảo luận về các biến thể model khác nhau.

Các model EfficientNet scale từ B0 đến B7, với B0 là cơ sở giúp cân bằng tốc độ và độ chính xác. Mỗi phiên bản đều tăng độ sâu, độ rộng và độ phân giải hình ảnh, giúp cải thiện độ chính xác. Tuy nhiên, chúng cũng đòi hỏi nhiều công suất tính toán hơn, từ các bản B1 và B2 cho đến các bản hiệu suất cao B6 và B7.

Trong khi các model EfficientNet-B3 và EfficientNet-B4 đạt được sự cân bằng cho các hình ảnh lớn hơn, B5 thường được chọn cho các bộ dữ liệu phức tạp đòi hỏi độ chính xác cao. Ngoài các model này, model mới nhất, EfficientNet V2, có thể cải thiện tốc độ huấn luyện, xử lý các bộ dữ liệu nhỏ tốt hơn và được tối ưu hóa cho phần cứng hiện đại.

Link to this sectionCác ứng dụng của EfficientNet#

EfficientNet có thể tạo ra các kết quả chính xác trong khi sử dụng ít bộ nhớ và công suất xử lý hơn so với nhiều model khác. Điều này làm cho nó hữu ích trong nhiều lĩnh vực, từ nghiên cứu khoa học đến các sản phẩm mà mọi người sử dụng hàng ngày.

Link to this sectionPhân tích hình ảnh y tế#

Hình ảnh y tế, chẳng hạn như hình ảnh quét CT phổi, thường chứa các chi tiết tinh vi rất quan trọng cho việc chẩn đoán chính xác. Các model AI có thể hỗ trợ phân tích các hình ảnh này để khám phá các mẫu hình mà con người có thể khó phát hiện. Một phiên bản tùy biến của EfficientNet cho mục đích này là MONAI (Medical Open Network for AI) EfficientNet, được thiết kế đặc biệt cho phân tích hình ảnh y tế.

Dựa trên kiến trúc của EfficientNet, các nhà nghiên cứu cũng đã phát triển Lung-EffNet, một model phân loại ảnh quét CT phổi để phát hiện khối u. Nó có thể phân loại khối u là lành tính, ác tính hoặc bình thường, đạt được độ chính xác được báo cáo là hơn 99% trong các thiết lập thử nghiệm.

Phân loại hình ảnh khối u sử dụng Lung-EffNet

Hình 4. Phân loại hình ảnh khối u sử dụng Lung-EffNet. (Nguồn)

Link to this sectionObject detection theo thời gian thực#

Object detection là quá trình tìm kiếm vật thể trong hình ảnh và xác định vị trí của chúng. Đây là một phần quan trọng của các ứng dụng như hệ thống an ninh, xe tự lái và máy bay không người lái.

EfficientNet trở nên quan trọng trong lĩnh vực này vì nó cung cấp một cách rất hiệu quả để trích xuất các tính năng từ hình ảnh. Phương pháp scale độ sâu, độ rộng và độ phân giải của nó cho thấy các model có thể đạt độ chính xác cao mà không cần quá nặng nề hay chậm chạp. Đây là lý do tại sao nhiều hệ thống phát hiện, như EfficientDet, sử dụng EfficientNet làm backbone của chúng.

Các model mới hơn, như Ultralytics YOLO11, chia sẻ chung mục tiêu là kết hợp tốc độ với độ chính xác. Xu hướng hướng tới các model hiệu quả này đã chịu ảnh hưởng mạnh mẽ bởi các ý tưởng từ các kiến trúc như EfficientNet.

Link to this sectionƯu và nhược điểm của EfficientNet#

Dưới đây là một số lợi ích của việc sử dụng EfficientNet trong các dự án computer vision:

  • Độ chính xác cao với ít tham số hơn: EfficientNet có thể mang lại độ chính xác tương đương hoặc tốt hơn so với các model cũ như ResNet hoặc DenseNet. Tuy nhiên, nó sử dụng ít tham số hơn, giúp việc huấn luyện nhanh hơn và triển khai dễ dàng hơn.
  • Họ model có khả năng scale: Từ B0 đến B7, bạn có thể chọn phiên bản phù hợp với yêu cầu về phần cứng và độ chính xác của mình mà không cần thay đổi mạng cơ sở.
  • Tốt cho transfer learning: EfficientNet có thể mang lại hiệu suất model đáng tin cậy cho transfer learning, là quá trình huấn luyện lại một model đã được huấn luyện sẵn cho một tác vụ tùy chỉnh. Nó có thể hoạt động như một backbone cho nhiều tác vụ computer vision. Nó cũng đã cho thấy kết quả mạnh mẽ khi được fine-tune. Ví dụ, nó đã đạt được độ chính xác hàng đầu trên CIFAR-100, một bộ dữ liệu phân loại hình ảnh được sử dụng rộng rãi, với số lượng tham số ít hơn đáng kể so với các model trước đó.

Mặc dù có nhiều lợi ích liên quan đến việc sử dụng EfficientNet, dưới đây là một số hạn chế của EfficientNet cần lưu ý:

  • Yêu cầu nhiều bộ nhớ hơn: Các phiên bản như EfficientNet-B6 và EfficientNet-B7 yêu cầu rất nhiều bộ nhớ GPU.
  • Cấu hình scaling được điều chỉnh cho ImageNet: Các thiết lập scaling được thiết kế cho bộ dữ liệu ImageNet, vì vậy hiệu suất có thể giảm trên các bộ dữ liệu rất khác biệt nếu không được fine-tune. Điều này đặc biệt đúng với các bộ dữ liệu nhỏ, vì kiến trúc và cách scaling của EfficientNet được thiết kế cho một bộ dữ liệu lớn và đa dạng như ImageNet, cung cấp đủ dữ liệu để biện minh cho độ sâu và độ rộng của nó.
  • Chậm hơn trên một số phần cứng: EfficientNet sử dụng các lớp gọi là MBConv được thiết kế để đạt hiệu quả trên phần cứng hiện đại. Trên các GPU hoặc CPU cũ hơn, các lớp này có thể chạy chậm hơn.

Link to this sectionCác điểm chính cần lưu ý#

EfficientNet đã thay đổi cách các model computer vision phát triển bằng cách giữ cân bằng giữa độ sâu, độ rộng và độ phân giải hình ảnh. Nó vẫn là một model quan trọng và cũng đã ảnh hưởng đến các kiến trúc mới hơn. Đặc biệt, nó giữ một vị trí ý nghĩa trong lịch sử của computer vision.

Hãy tham gia cộng đồng của chúng tôi và GitHub repository để khám phá thêm về AI. Kiểm tra các trang giải pháp của chúng tôi để đọc về AI trong y tếcomputer vision trong ô tô. Khám phá các tùy chọn cấp phép của chúng tôi và bắt đầu xây dựng với computer vision ngay hôm nay!

Explore solutions

Real-time AI that works with your team

AI trong ngành Robot

Tăng cường sức mạnh cho các cỗ máy thông minh hơn với các model Ultralytics YOLO. AI thị giác trong lĩnh vực robot thúc đẩy khả năng điều hướng tự hành, nhận thức, theo dõi đối tượng và điều khiển thời gian thực.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong Logistics

Tối ưu hóa logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra hàng hóa, phân loại, theo dõi phương tiện và giám sát an toàn kho bãi trong thời gian thực.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Bán lẻ

Tái định hình bán lẻ với các model Ultralytics YOLO. Vision AI thúc đẩy theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng đợi và thông tin chi tiết thông minh hơn về khách hàng.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong chăm sóc sức khỏe

Xây dựng các giải pháp y tế với các model Ultralytics YOLO. AI thị giác trong y tế hỗ trợ chẩn đoán hình ảnh y khoa nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong sản xuất

Tối ưu hóa sản xuất với các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.

Tìm hiểu thêm
Real-time AI that works with your operation

AI trong Ô tô

Áp dụng thị giác máy tính trong ô tô với các model Ultralytics YOLO. AI thị giác nâng cao an toàn đường bộ, hỗ trợ người lái và tự động hóa phương tiện cho những con đường thông minh hơn.

Tìm hiểu thêm
Real-time AI tailored to your operation

AI trong Nông nghiệp

Mang AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Tăng cường giám sát mùa màng, theo dõi vật nuôi và canh tác chính xác để đạt năng suất cao hơn, thông minh hơn.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Robot

Tăng cường sức mạnh cho các cỗ máy thông minh hơn với các model Ultralytics YOLO. AI thị giác trong lĩnh vực robot thúc đẩy khả năng điều hướng tự hành, nhận thức, theo dõi đối tượng và điều khiển thời gian thực.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong Logistics

Tối ưu hóa logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra hàng hóa, phân loại, theo dõi phương tiện và giám sát an toàn kho bãi trong thời gian thực.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Bán lẻ

Tái định hình bán lẻ với các model Ultralytics YOLO. Vision AI thúc đẩy theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng đợi và thông tin chi tiết thông minh hơn về khách hàng.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong chăm sóc sức khỏe

Xây dựng các giải pháp y tế với các model Ultralytics YOLO. AI thị giác trong y tế hỗ trợ chẩn đoán hình ảnh y khoa nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong sản xuất

Tối ưu hóa sản xuất với các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.

Tìm hiểu thêm
Real-time AI that works with your operation

AI trong Ô tô

Áp dụng thị giác máy tính trong ô tô với các model Ultralytics YOLO. AI thị giác nâng cao an toàn đường bộ, hỗ trợ người lái và tự động hóa phương tiện cho những con đường thông minh hơn.

Tìm hiểu thêm
Real-time AI tailored to your operation

AI trong Nông nghiệp

Mang AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Tăng cường giám sát mùa màng, theo dõi vật nuôi và canh tác chính xác để đạt năng suất cao hơn, thông minh hơn.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Robot

Tăng cường sức mạnh cho các cỗ máy thông minh hơn với các model Ultralytics YOLO. AI thị giác trong lĩnh vực robot thúc đẩy khả năng điều hướng tự hành, nhận thức, theo dõi đối tượng và điều khiển thời gian thực.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong Logistics

Tối ưu hóa logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra hàng hóa, phân loại, theo dõi phương tiện và giám sát an toàn kho bãi trong thời gian thực.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Bán lẻ

Tái định hình bán lẻ với các model Ultralytics YOLO. Vision AI thúc đẩy theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng đợi và thông tin chi tiết thông minh hơn về khách hàng.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong chăm sóc sức khỏe

Xây dựng các giải pháp y tế với các model Ultralytics YOLO. AI thị giác trong y tế hỗ trợ chẩn đoán hình ảnh y khoa nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.

Tìm hiểu thêm
Real-time AI that works with your team

AI trong sản xuất

Tối ưu hóa sản xuất với các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.

Tìm hiểu thêm
Real-time AI that works with your operation

AI trong Ô tô

Áp dụng thị giác máy tính trong ô tô với các model Ultralytics YOLO. AI thị giác nâng cao an toàn đường bộ, hỗ trợ người lái và tự động hóa phương tiện cho những con đường thông minh hơn.

Tìm hiểu thêm
Real-time AI tailored to your operation

AI trong Nông nghiệp

Mang AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Tăng cường giám sát mùa màng, theo dõi vật nuôi và canh tác chính xác để đạt năng suất cao hơn, thông minh hơn.

Tìm hiểu thêm

Hãy cùng nhau xây dựng tương lai của AI!

Bắt đầu hành trình của bạn với tương lai của machine learning