Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.

Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart

Phân loại hình ảnh là kỹ thuật máy học (ML) dựa trên thị giác máy tính cho phép bạn phân loại hình ảnh. Một số ví dụ nổi tiếng về phân loại hình ảnh bao gồm phân loại các chữ số viết tay, phân loại hình ảnh y tế và nhận dạng khuôn mặt. Phân loại hình ảnh là một kỹ thuật hữu ích với một số ứng dụng kinh doanh, nhưng việc xây dựng một mô hình phân loại hình ảnh tốt không phải là chuyện nhỏ.

Một số cân nhắc có thể đóng một vai trò khi đánh giá một mô hình ML. Ngoài độ chính xác của mô hình, các số liệu quan trọng tiềm năng khác là thời gian đào tạo mô hình và thời gian suy luận. Do tính chất lặp đi lặp lại của quá trình phát triển mô hình ML, thời gian đào tạo nhanh hơn cho phép các nhà khoa học dữ liệu nhanh chóng kiểm tra các giả thuyết khác nhau. Suy luận nhanh hơn có thể rất quan trọng trong các ứng dụng thời gian thực.

Khởi động Amazon SageMaker cung cấp khả năng tinh chỉnh bằng một cú nhấp chuột và triển khai nhiều mô hình được đào tạo trước trên các tác vụ ML phổ biến, cũng như lựa chọn các giải pháp đầu cuối giải quyết các vấn đề kinh doanh phổ biến. Các tính năng này loại bỏ những công việc nặng nhọc từ mỗi bước của quy trình ML, giúp dễ dàng hơn trong việc phát triển các mô hình chất lượng cao và giảm thời gian triển khai. API JumpStart cho phép bạn triển khai theo chương trình và tinh chỉnh nhiều lựa chọn mô hình đào tạo trước được JumpStart hỗ trợ trên bộ dữ liệu của riêng bạn.

Bạn có thể dần dần đào tạo và điều chỉnh các mô hình ML được cung cấp trong JumpStart trước khi triển khai. Tại thời điểm viết bài này, 87 mô hình phân loại hình ảnh dựa trên học sâu có sẵn trong JumpStart.

Nhưng mô hình nào sẽ cho bạn kết quả tốt nhất? Trong bài đăng này, chúng tôi trình bày một phương pháp để dễ dàng chạy nhiều mô hình và so sánh kết quả đầu ra của chúng trên ba khía cạnh quan tâm: độ chính xác của mô hình, thời gian đào tạo và thời gian suy luận.

Tổng quan về giải pháp

JumpStart cho phép bạn đào tạo, điều chỉnh và triển khai các mô hình từ bảng điều khiển JumpStart bằng giao diện người dùng hoặc API của nó. Trong bài đăng này, chúng tôi sử dụng lộ trình API và trình bày một sổ ghi chép với nhiều tập lệnh trợ giúp khác nhau. Bạn có thể chạy sổ ghi chép này và nhận kết quả để dễ dàng so sánh các mô hình này với nhau, sau đó chọn một mô hình phù hợp nhất với nhu cầu kinh doanh của bạn về độ chính xác của mô hình, thời gian đào tạo và thời gian suy luận.

Sản phẩm tập dữ liệu công khai được sử dụng trong bài đăng này bao gồm gần 55,000 hình ảnh về lá cây khỏe mạnh và bị bệnh được thu thập trong các điều kiện được kiểm soát, với các nhãn phân loại từ 0–38. Tập dữ liệu này được chia thành tập dữ liệu đào tạo và xác thực, với khoảng 44,000 hình ảnh đang được đào tạo và 11,000 hình ảnh đang được xác thực. Sau đây là một vài hình ảnh mẫu.

Đối với bài tập này, chúng tôi đã chọn các mô hình từ hai khung—PyTorch và TensorFlow—do JumpStart cung cấp. 15 thuật toán mô hình sau bao gồm nhiều loại kiến ​​trúc mạng thần kinh phổ biến từ các khung này:

  • pytorch-ic-alexnet-FT
  • pytorch-ic-densenet121-FT
  • pytorch-ic-densenet201-FT
  • pytorch-ic-googlenet-FT
  • pytorch-ic-mobilenet-v2-FT
  • pytorch-ic-resnet152-FT
  • pytorch-ic-resnet34-FT
  • tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT
  • tensorflow-ic-imagenet-inception-resnet-v2-classification 4-FT
  • tensorflow-ic-imagenet-inception-v3-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-075-224-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT
  • tensorflow-ic-imagenet-resnet-v2-152-classification-4-FT
  • tensorflow-ic-tf2-preview-mobilenet-v2-classification-4-FT

Chúng tôi sử dụng mô hình tensorflow-ic-imagenet-inception-v3-classification-4-FT làm cơ sở để so sánh kết quả từ các mô hình khác. Mô hình cơ sở này đã được chọn tùy ý.

Mã được sử dụng để chạy so sánh này có sẵn trên AWS Mẫu GitHub repo.

Kết quả

Trong phần này, chúng tôi trình bày kết quả từ 15 lần chạy này. Đối với tất cả các lần chạy này, siêu tham số được sử dụng là epoch = 5, tốc độ học tập = 0.001, kích thước lô = 16.

Độ chính xác của mô hình, thời gian đào tạo và thời gian suy luận từ mô hình tensorflow-ic-imagenet-inception-v3-classification-4-FT được lấy làm cơ sở và kết quả từ tất cả các mô hình khác được trình bày tương ứng với mô hình cơ sở này. Mục đích của chúng tôi ở đây không phải là chỉ ra mô hình nào là tốt nhất mà là chỉ ra cách, thông qua JumpStart API, bạn có thể so sánh kết quả từ các mô hình khác nhau và sau đó chọn một mô hình phù hợp nhất với trường hợp sử dụng của mình.

Ảnh chụp màn hình sau đây làm nổi bật mô hình cơ sở để so sánh tất cả các mô hình khác.

Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.

Biểu đồ sau đây cho thấy chế độ xem chi tiết về độ chính xác tương đối so với thời gian đào tạo tương đối. Các mô hình PyTorch được mã hóa màu bằng màu đỏ và các mô hình TensorFlow có màu xanh lam.

Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.

Các mô hình được đánh dấu bằng hình elip màu xanh lá cây trong biểu đồ trước dường như có sự kết hợp tốt giữa độ chính xác tương đối và thời gian đào tạo tương đối thấp. Bảng sau đây cung cấp thêm chi tiết về ba mô hình này.

Tên Model Độ chính xác tương đối Thời gian đào tạo tương đối
tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT 1.01 0.74
tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT 1.02 0.74
tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT 1.04 1.16

Biểu đồ sau đây so sánh độ chính xác tương đối với thời gian suy luận tương đối. Các mô hình PyTorch được mã hóa màu bằng màu đỏ và các mô hình TensorFlow có màu xanh lam.

Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.

Bảng sau đây cung cấp thông tin chi tiết về ba mô hình trong hình elip màu xanh lục.

Tên Model Độ chính xác tương đối Thời gian suy luận tương đối
tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT 1.01 0.94
tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT 1.02 0.90
tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT 1.04 1.43

Hai biểu đồ chứng minh rõ ràng rằng một số thuật toán mô hình nhất định hoạt động tốt hơn các thuật toán khác trên ba chiều đã được chọn. Tính linh hoạt được cung cấp thông qua bài tập này có thể giúp bạn chọn thuật toán phù hợp và bằng cách sử dụng sổ ghi chép được cung cấp, bạn có thể dễ dàng chạy loại thử nghiệm này trên bất kỳ mô hình nào trong số 87 mô hình có sẵn.

Kết luận

Trong bài đăng này, chúng tôi đã trình bày cách sử dụng JumpStart để xây dựng các mô hình phân loại hình ảnh hiệu suất cao trên nhiều khía cạnh quan tâm, chẳng hạn như độ chính xác của mô hình, thời gian đào tạo và độ trễ suy luận. Chúng tôi cũng cung cấp mã để chạy bài tập này trên tập dữ liệu của riêng bạn; bạn có thể chọn bất kỳ mẫu nào quan tâm từ 87 mẫu hiện có sẵn để phân loại hình ảnh trong trung tâm mẫu JumpStart. Chúng tôi khuyến khích bạn thử ngay hôm nay.

Để biết thêm chi tiết về JumpStart, hãy tham khảo Khởi động SageMaker.


Về các tác giả

Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Tiến sĩ Raju Penmatcha là Chuyên gia kiến ​​trúc giải pháp AI/ML trong Nền tảng AI tại AWS. Ông nhận bằng Tiến sĩ tại Đại học Stanford. Anh ấy làm việc chặt chẽ với bộ dịch vụ mã thấp/không mã trong SageMaker, giúp khách hàng dễ dàng xây dựng và triển khai các mô hình và giải pháp máy học. Khi không giúp đỡ khách hàng, anh ấy thích đi du lịch đến những địa điểm mới.

Xây dựng các mô hình phân loại hình ảnh hiệu suất cao bằng cách sử dụng Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Tiến sĩ Ashish Khetan là Nhà khoa học ứng dụng cấp cao với các thuật toán tích hợp Amazon SageMaker và giúp phát triển các thuật toán máy học. Ông lấy bằng Tiến sĩ tại Đại học Illinois Urbana-Champaign. Ông là một nhà nghiên cứu tích cực về học máy và suy luận thống kê, đồng thời đã xuất bản nhiều bài báo tại các hội nghị NeurIPS, ICML, ICLR, JMLR, ACL và EMNLP.

Dấu thời gian:

Thêm từ Học máy AWS