BigBasket SuperMart — Công nghệ AI

Feb 03 2023
Ngày nay, hầu hết các siêu thị và cửa hàng truyền thống ở Ấn Độ đều cung cấp hóa đơn thủ công tại quầy thanh toán. Điều này có hai vấn đề: Đối với khách hàng, chúng tôi đã kích hoạt trải nghiệm tự thanh toán và tự thanh toán liền mạch.

Ngày nay, hầu hết các siêu thị và cửa hàng truyền thống ở Ấn Độ đều cung cấp hóa đơn thủ công tại quầy thanh toán. Điều này có hai vấn đề:

  • Nó yêu cầu thêm nhân lực, nhãn dán và đào tạo lặp đi lặp lại cho nhóm vận hành tại cửa hàng khi họ mở rộng quy mô.
  • Ở hầu hết các cửa hàng, quầy thanh toán khác với quầy cân, điều này làm tăng thêm sự khó khăn trong hành trình mua hàng của khách hàng. Đã bao nhiêu lần chúng ta làm mất tem dán ở quầy tính tiền và chạy lại quầy cân?

Đối với khách hàng, chúng tôi đã kích hoạt trải nghiệm tự thanh toán và tự thanh toán liền mạch. Chúng tôi đã sử dụng mô hình học sâu thị giác máy tính để phát hiện các mặt hàng chưa đóng gói/đóng gói/rời trong danh mục trái cây, rau củ và FMCG tại thời điểm thanh toán.

Điều này giúp chúng tôi có trải nghiệm liền mạch khi thêm cả mặt hàng và trọng lượng vào giỏ hàng.

Siêu thị BigBasket

Sơ đồ sau đây cho thấy khách hàng sẽ sử dụng quầy tính tiền như thế nào

Quầy tự tính tiền

Video sau đây cho thấy cách thanh toán diễn ra tại quầy tự thanh toán.

Công cụ suy luận của chúng tôi là một giải pháp dựa trên đám mây được sử dụng để phát hiện hình ảnh trực tiếp nhằm xác định SKU. Nó được gọi bởi các thiết bị đầu cuối của cửa hàng gửi định dạng nén của hình ảnh trực tiếp và trả về Id SKU dưới dạng phản hồi. Id SKU này được các dịch vụ nội bộ tra cứu để tải các chi tiết SKU như tên, mô tả, giá cả, v.v.

Thông tin chi tiết

  • Các mô hình AI hiện tại hỗ trợ khoảng hơn 5000 SKU trên các mặt hàng FNV và FMCG.
  • Hơn 20 cửa hàng Big Basket trên khắp 3 thành phố đang sử dụng công nghệ kiểm tra dựa trên AI.
  • Khoảng hơn 30 nghìn lần phát hiện xảy ra mỗi ngày, tức là khoảng hơn 2 nghìn lần phát hiện mỗi giờ và trong giờ cao điểm là khoảng 3,3 nghìn lần phát hiện.
  • Tất cả các phát hiện xảy ra trong đám mây với SLA < 300 mili giây.
  • Khoảng 7 triệu hình ảnh được sử dụng để đào tạo các mô hình.

Chúng tôi đã sử dụng ba mô hình học sâu trong hệ thống của mình. Tóm tắt của từng mô hình được giải thích dưới đây

Mô hình FMCG

  • Chúng tôi đã sử dụng phân loại dựa trên hình ảnh để phát hiện sản phẩm FMCG.
  • Mạng mô hình của chúng tôi bao gồm kiến ​​trúc RESNET 152 [2] theo sau là các lớp được kết nối đầy đủ dựa trên tổng số lớp.
  • Trong số 66 triệu tham số, 23 triệu tham số được đặt làm tham số có thể huấn luyện và phần còn lại bị đóng băng. Điều này giúp chúng tôi sử dụng ít hình ảnh hơn tại thời điểm đào tạo.
  • Khung Pytorch đã được sử dụng. Các tham số ban đầu thu được bằng cách sử dụng học chuyển [3] từ mô hình imagenet. Điều này giúp chúng tôi hội tụ nhanh hơn và giảm tổng thời gian đào tạo.
  • Chúng tôi đã sử dụng nhận dạng đối tượng để phát hiện sản phẩm đóng gói FnV và FnV. Đối với nhiều SKU, chúng tôi sẽ yêu cầu số lượng sản phẩm.
  • Mạng mô hình của chúng tôi bao gồm kiến ​​trúc Yolov4 với khung darknet. Điều này đã giúp chúng tôi trong thời gian suy luận nhanh hơn.

Xem xét sự đa dạng của các sản phẩm và sự kết hợp, chúng tôi đã phải giải quyết khá nhiều thách thức để cải thiện cơ chế phát hiện của mình. Để xử lý những thách thức này, chúng tôi đã phát triển một thuật toán độc quyền được sử dụng để liên kết các mục tương tự trong mối quan hệ “cha-con”. Thuật toán, cùng với việc phân loại từng hình ảnh, sử dụng thông tin trọng lượng và văn bản trên nhãn sản phẩm để phân giải sản phẩm chính xác. Vui lòng tìm danh sách các thách thức bên dưới và trong các phần tiếp theo, chúng tôi đã giải thích chúng bằng các ví dụ và cách chúng tôi xử lý chúng bằng thiết kế của mình.

  • Sản phẩm có hầu hết các mặt rất giống nhau ngoại trừ một số dòng chữ trên sản phẩm
  • Các sản phẩm có hầu hết các bề mặt nhìn giống nhau ngoại trừ bề mặt phía trước
  • Các sản phẩm trông rất giống nhau và có một biến thể có trọng số
  • Sản phẩm trông gần như giống hệt nhau trên tất cả các bề mặt

Rất ít sản phẩm của cùng một thương hiệu nhưng hương vị khác nhau sẽ có bao bì gần giống nhau và chỉ có dòng chữ nhỏ trên hình là có sự khác biệt. Một vài ví dụ được liệt kê dưới đây

ví dụ

Trong quá trình huấn luyện

Để xử lý tình huống này, chúng tôi tạo một lớp cha mới kết hợp các hình ảnh SKU tương tự.

Trong ví dụ trên, tất cả các id SKU con được ánh xạ tới id lớp cha Nivea Men và tất cả các hình ảnh id SKU con được sử dụng để đào tạo lớp Nivea Men.

Trong quá trình suy luận

Tại thời điểm suy luận, chúng tôi sử dụng thuật toán phát hiện văn bản để ánh xạ đúng SKU con. Chúng tôi đã sử dụng Amazon Rekognition API [1] để trích xuất văn bản trên hình ảnh.

Các sản phẩm có hầu hết các bề mặt nhìn giống nhau ngoại trừ bề mặt phía trước

Một thách thức lớn trong kịch bản này là chúng ta không thể luôn mong đợi người dùng đặt một sản phẩm cụ thể lên bề mặt trước. Trong những tình huống này khi người dùng đặt sản phẩm ở mặt sau, thì chúng tôi cần gửi thông báo phản hồi cho khách hàng “Xin lỗi, vui lòng lật mặt hàng ra mặt trước!”. Một vài ví dụ được liệt kê dưới đây

ví dụ

Trong quá trình huấn luyện

Để xử lý tình huống này, chúng tôi tạo một lớp mới và huấn luyện mô hình với những vấn đề mà hình ảnh bề mặt gặp phải.

Đối với các SKU ở trên, chúng tôi đã tạo id loại vấn đề Sữa bơ — mặt sau, tất cả các hình ảnh mặt sau được sử dụng để huấn luyện mô hình

Trong quá trình suy luận

Khi mô hình của chúng tôi phát hiện ra loại vấn đề mới đó, chúng tôi sẽ gửi một thông báo phản hồi thích hợp cho khách hàng

Các sản phẩm trông rất giống nhau và có một biến thể có trọng số

Một số sản phẩm của cùng một thương hiệu và cùng chủng loại sẽ có các biến thể về số lượng khác nhau nhưng nhìn bề ngoài chúng rất giống nhau với một chút khác biệt về kích thước bao bì. Ngay cả các văn bản là tương tự ở đây. Việc xem xét sẽ có một thay đổi nhỏ về chiều cao máy ảnh trên các quầy xác định id SKU thực tế với sự thay đổi kích thước sẽ rất khó khăn. Một vài ví dụ được liệt kê dưới đây

ví dụ

Trong quá trình huấn luyện

Để xử lý tình huống này, chúng tôi tạo một lớp mới gọi là lớp cha của các SKU con đó. Ở đây, chúng tôi đào tạo tất cả các hình ảnh id SKU con thành một lớp được gọi là lớp cha.

Trong quá trình suy luận

Khi mô hình phát hiện lớp cha, chúng tôi sử dụng thông tin trọng số để ánh xạ id SKU con chính xác.

Sản phẩm trông gần như giống hệt nhau trên tất cả các bề mặt

Một số sản phẩm trông gần như giống hệt nhau trên tất cả các bề mặt và chúng có thể có trọng lượng và hình dạng tương tự, v.v. Một vài ví dụ được liệt kê dưới đây

ví dụ

Trong những trường hợp này, chúng tôi không thể xác định id SKU thực tế bằng thị giác máy tính, chúng tôi sẽ yêu cầu một thiết bị bên ngoài để thanh toán mặt hàng này.

Trong quá trình huấn luyện

Chúng tôi tạo một lớp mới với tất cả các SKU bị nhầm lẫn và đào tạo mô hình

Trong quá trình suy luận

Khi mô hình của chúng tôi phát hiện ra lớp cha mới đó, chúng tôi sẽ gửi thông báo phản hồi thích hợp.

Bảng chú giải

FMCG — Hàng tiêu dùng nhanh

FnV — Trái cây và rau củ

SKU — Đơn vị giữ hàng

SLA — Thỏa thuận cấp độ dịch vụ

Người giới thiệu

[1]https://docs.aws.amazon.com/rekognition/latest/dg/what-is.html

[2]https://pytorch.org/vision/main/models/generated/torchvision.models.resnet152.html

[3]https://en.wikipedia.org/wiki/Transfer_learning