Tìm hiểu kiến trúc EfficientNet và sự kỳ diệu của việc mở rộng quy mô tổng hợp! Khám phá EfficientNet B0-B7 để phân loại và phân đoạn hình ảnh hiệu quả hàng đầu.

Tìm hiểu kiến trúc EfficientNet và sự kỳ diệu của việc mở rộng quy mô tổng hợp! Khám phá EfficientNet B0-B7 để phân loại và phân đoạn hình ảnh hiệu quả hàng đầu.
Năm 2019, các nhà nghiên cứu tại Google AI đã giới thiệu EfficientNet, một mô hình computer vision hiện đại được xây dựng để nhận dạng các đối tượng và mẫu trong hình ảnh. Nó được thiết kế chủ yếu để phân loại hình ảnh, bao gồm việc gán một hình ảnh vào một trong số các danh mục được xác định trước. Tuy nhiên, ngày nay, EfficientNet cũng đóng vai trò là xương sống cho các tác vụ phức tạp hơn như phát hiện đối tượng, phân đoạn và transfer learning.
Trước EfficientNet, các mô hình Vision AI và machine learning như vậy đã 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 là các bước trong mô hình mạng nơ-ron (một loại mô hình deep learning lấy cảm hứng từ bộ não con người) xử lý dữ liệu để học các mẫu và cải thiện độ chính xác.
Những thay đổi này tạo ra sự đánh đổi, làm cho các mô hình AI truyền thống lớn hơn và chậm hơn, trong khi độ chính xác tăng thêm thường là tối thiểu so với mức tăng đáng kể về sức mạnh 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 chiều sâu (số lớp), chiều rộng (số đơ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) cùng nhau một cách cân bằng. Phương pháp này, được gọi là mở rộng hỗn hợp (compound scaling), sử dụng một cách đáng tin cậy tất cả sức mạnh xử lý có sẵn. Kết quả cuối cùng là một mô hình nhỏ hơn và nhanh hơn có thể hoạt động tốt hơn các mô hình cũ hơn như ResNet hoặc DenseNet.
Ngày nay, các mô hình thị giác máy tính mới hơn như Ultralytics YOLO11 mang lại độ chính xác, tốc độ và hiệu quả cao hơn. Mặc 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ẽ phân tích EfficientNet trong năm phút, bao gồm cách nó 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 thị giác máy tính. Hãy bắt đầu!
Trước khi EfficientNet được thiết kế, hầu hết các mô hình nhận dạng hình ảnh đều 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 để thu thập 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ả, nhưng chúng cũng làm cho các mô hình nặng hơ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 tốt hơn.
Thay vì thay đổi các lớp riêng lẻ, EfficientNet mở rộng chiều sâu, chiều rộng và độ phân giải hình ảnh cùng nhau bằng một phương pháp gọi là mở rộng hợp chất. Cách tiếp cận này cho phép mô hình 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 mô-đun nhỏ hơn. Số lượng mô-đun trong mỗi khối phụ thuộc vào kích thước mô hình.
Các phiên bản nhỏ hơn sử dụng ít mô-đun hơn, trong khi các phiên bản lớn hơn lặp lại các mô-đun 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 nhiều ứng dụng, từ thiết bị di động đến hệ thống quy mô lớn.
Phương pháp mở rộng hỗn hợp mở rộng độ sâu, chiều rộng và độ phân giải hình ảnh của mô hình nhưng vẫn giữ chúng ở trạng thái cân bằng. Điều này giúp có thể sử dụng hiệu quả sức mạnh tính toán. Chuỗi bắt đầu với một mô hình cơ sở nhỏ hơn có tên 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 mô hình mở rộng thành các biến thể lớn hơn có tên là EfficientNet-B1 đến EfficientNet-B7. Với mỗi bước, mạng lưới có 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ý 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à hệ số hợp chất, đảm bảo rằng độ sâu, chiều rộng và độ phân giải tăng theo tỷ lệ cố định thay vì độc lập.
Tiếp theo, hãy xem xét kiến trúc của EfficientNet.
Nó được xây dựng dựa trên MobileNetV2, một mô hình 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 xử lý dữ liệu hình ảnh giống như một phép convolution tiêu chuẩn nhưng với ít phép tính hơn. Khối này làm cho mô hình vừa nhanh vừa tiết kiệm bộ nhớ hơn.
Bên trong mỗi khối MBConv là một mô-đun squeeze-and-excitation (SE). Mô-đun 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 thiết yếu và giảm cường độ của các kênh khác. Mô-đun này giúp mạng tập trung vào các đặc điểm quan trọng nhất trong ảnh, đồng thời bỏ qua những đặc điểm còn lại. Mô hình 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), giúp nó phát hiện các mẫu trong ảnh tốt hơn so với các phương pháp cũ.
Ngoài ra, nó sử dụng DropConnect, trong đó một số kết nối bên trong mạng bị tắt ngẫu nhiên trong quá trình huấn luyện. Phương pháp điều chuẩn ngẫu nhiên này (một kỹ thuật ngẫu nhiên hóa để ngăn mô hình ghi nhớ dữ liệu huấn luyện thay vì khái quát hóa) làm giảm tình trạng overfitting bằng cách buộc mạng phải học các biểu diễn đặc trưng mạnh mẽ hơn (các mẫu mạnh hơn, tổng quát hơn trong dữ liệu) để chuyển đổi tốt hơn sang dữ liệu chưa thấy.
Bây giờ chúng ta đã hiểu rõ hơn về cách các mô hình EfficientNet hoạt động, hãy cùng thảo luận về các biến thể mô hình khác nhau.
Các mô hình EfficientNet mở rộng từ B0 đến B7, bắt đầu với B0 làm đường cơ sở cân bằng giữa tốc độ và độ chính xác. Mỗi phiên bản tăng chiều sâu, chiều rộng và độ phân giải hình ảnh, cải thiện độ chính xác. Tuy nhiên, chúng cũng đòi hỏi nhiều sức mạnh tính toán hơn, từ B1 và B2 đến B6 và B7 hiệu suất cao.
Trong khi các mô hình EfficientNet-B3 và EfficientNet-B4 đạt được sự cân bằng cho các hình ảnh lớn hơn, thì B5 thường được chọn cho các bộ dữ liệu phức tạp đòi hỏi độ chính xác. Vượt xa các mô hình này, mô hình 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.
EfficientNet có thể tạo ra kết quả chính xác trong khi sử dụng ít bộ nhớ và sức mạnh xử lý hơn nhiều mô hình 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.
Hình ảnh y tế, chẳng hạn như ảnh chụp CT phổi, thường chứa các chi tiết nhỏ rất quan trọng để chẩn đoán chính xác. Các mô hình AI có thể hỗ trợ phân tích những hình ảnh này để khám phá các mẫu mà con người khó có thể phát hiện ra. Một sự điều chỉnh của EfficientNet cho mục đích này là MONAI (Mạng mở y tế cho AI) EfficientNet, được thiết kế đặc biệt để 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 mô hình phân loại ảnh chụp CT phổi để phát hiện khối u. Nó có thể phân loại các khối u là lành tính, ác tính hoặc bình thường, đạt độ chính xác được báo cáo là trên 99% trong các thiết lập thử nghiệm.
Phát hiện đối tượng là quá trình tìm kiếm các đối tượng trong một 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 đặc trưng từ hình ảnh. Phương pháp mở rộng chiều sâu, chiều rộng và độ phân giải của nó cho thấy các mô hình có thể chính xác mà không quá nặng hoặc chậm. Đây là lý do tại sao nhiều hệ thống phát hiện, như EfficientDet, sử dụng EfficientNet làm xương sống của chúng.
Các mô hình mới hơn, chẳng hạn như Ultralytics YOLO11, có chung mục tiêu kết hợp tốc độ với độ chính xác. Xu hướng hướng tới các mô hình hiệu quả này chịu ảnh hưởng mạnh mẽ từ các ý tưởng từ các kiến trúc như EfficientNet.
Dưới đây là một số lợi ích của việc sử dụng EfficientNet trong các dự án thị giác máy tính:
Mặc dù có nhiều lợi ích liên quan đến việc sử dụng EfficientNet, nhưng đây là một số hạn chế của EfficientNet cần lưu ý:
EfficientNet đã thay đổi cách các mô hình thị giác máy tính phát triển bằng cách giữ cho chiều sâu, chiều rộng và độ phân giải hình ảnh cân bằng. Nó vẫn là một mô hình 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í có ý nghĩa trong lịch sử của thị giác máy tính.
Tham gia cộng đồng và kho lưu trữ GitHub của chúng tôi để khám phá thêm về AI. Xem các trang giải pháp của chúng tôi để đọc về AI trong lĩnh vực chăm sóc sức khỏe và thị giác máy tính trong ngành công nghiệp ô 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 thị giác máy tính ngay hôm nay!