Data science

Bên trong các kỹ thuật tối ưu hóa của eBay để mở rộng quy mô AI

Việc sử dụng phần mềm phù hợp là rất quan trọng khi phát triển các mô hình học máy, chẳng hạn như hệ thống khuyến nghị hoặc phân loại. Nhưng tại eBay, việc tối ưu hóa phần mềm để chạy trên một phần cứng cụ thể bằng cách sử dụng các kỹ thuật chắt lọc và lượng tử hóa là hoàn toàn cần thiết để đảm bảo khả năng mở rộng. Trưởng bộ phận học máy của eBay và NLP Selcuk Kopru đã mô tả cách công ty tối ưu hóa các mô hình học máy của mình để hỗ trợ thị trường dựa trên AI của mình trong một bài thuyết trình được thực hiện vào đầu ngày hôm nay tại Hội nghị thượng đỉnh phần cứng AI, một sự kiện kết hợp diễn ra hầu như và tại Lịch sử máy tính Bảo tàng ở Mountain View, California trong tuần này. “ Kopru nói, “bạn phải thực hiện rất nhiều tối ưu hóa sau khi đào tạo mô hình và đặc biệt cho phần cứng mục tiêu.” eBay chắc chắn không còn xa lạ với quy mô. Với 1,5 tỷ danh sách đang hoạt động từ hơn 19 triệu người bán đang hoạt động đang cố gắng tiếp cận 159 triệu người mua đang hoạt động, gã khổng lồ thương mại điện tử có phạm vi tiếp cận toàn cầu mà chỉ một số ít công ty phù hợp. Máy học và các kỹ thuật AI khác, chẳng hạn như xử lý ngôn ngữ tự nhiên (NLP), đóng vai trò lớn trong việc mở rộng hoạt động của eBay để tiếp cận lượng khán giả lớn của nó. Ví dụ, mô tả danh sách sản phẩm được tạo tự động rất quan trọng để hiển thị thông tin trên màn hình nhỏ của điện thoại thông minh, Kopru nói. eBay đào tạo phiên bản mô hình biến áp BERT của mình bằng cách sử dụng hệ thống GPU 64 (hình ảnh eBay lịch sự) “Mô tả mục đầy đủ quá lớn để hiển thị trên màn hình điện thoại di động và việc tạo tóm tắt mô tả là điều cần thiết trong trải nghiệm này, ”anh nói. “Tính năng trích xuất từ ​​các bài đánh giá sản phẩm, lọc các bài đánh giá sản phẩm, ước tính vận chuyển và giao hàng, thanh toán và phát hiện gian lận trong giao tiếp giữa các thành viên – tất cả chúng đều được hưởng lợi từ AI.” eBay sử dụng một loạt các kỹ thuật AI và ML để thu thập thông tin chi tiết từ danh sách và dữ liệu khác mà nó sở hữu. Điều đó bao gồm các mô hình biến áp dựa trên mạng nơ-ron, như BERT, GPT-2 và GPT-3, để suy ra thông tin từ văn bản, cũng như K-Nearest Neighbors (KNN), một thuật toán học máy được giám sát, để phân loại hình ảnh. Để hiểu và tóm tắt văn bản, eBay sử dụng phiên bản tùy chỉnh của mô hình biến áp BERT lớn, được gọi là eBERT. Như Kopru đã giải thích, công ty bắt đầu bằng cách phát triển một chức năng tương tự thể hiện tiêu đề của các mục sản phẩm dưới dạng vectơ trong một không gian chia sẻ. Trong bài thuyết trình của anh ấy tại Hội nghị thượng đỉnh phần cứng AI, không gian nhập sản phẩm được giới hạn ở hai chiều. Ông nói: “Tất nhiên, các ứng dụng thực có thể tăng lên đến hàng trăm kích thước. Việc tìm kiếm sự giống nhau giữa các tiêu đề mặt hàng giúp đối sánh danh sách với các sản phẩm trong danh mục và cũng có thể được sử dụng để tìm các sản phẩm trùng lặp. “Có một danh mục rõ ràng là rất quan trọng trong bất kỳ trải nghiệm thương mại điện tử nào,” Kopru nói. eBay đào tạo eBERT trên một cụm bao gồm 64 Nvidia V 100 GPU. Theo Kopru, phải mất hai tuần để hoàn thành một đợt đào tạo cho mô hình eBERT. Bởi vì đào tạo eBERT là một nhiệm vụ tốn kém, công ty rất nỗ lực để đảm bảo các nhà nghiên cứu và kỹ sư của eBay có thể truy cập mô hình được đào tạo một cách rất hiệu quả, chỉ với một vài dòng mã Python. eBay sử dụng thiết lập NUMA để tăng tốc độ suy luận thần kinh cho mô hình eBERT của nó (hình ảnh eBay lịch sự) Nhưng do kích thước của nó, eBert không phù hợp để sử dụng trực tuyến cho mục đích truyền thông. “Bạn không thể chỉ đưa nó vào sản xuất,” Kopru nói. “Do đó, chúng tôi sử dụng các kỹ thuật như chưng cất và lượng tử hóa mô hình để cải thiện thông lượng của các mô hình.” Chưng cất là một cách để nén một mô hình bằng cách sử dụng một mô hình “học sinh” nhỏ hơn để phù hợp với một mô hình “giáo viên” lớn đã được đào tạo trước. Nó bao gồm các kỹ thuật cụ thể nhằm giảm thiểu sự mất độ chính xác. Trong khi đó, lượng tử hóa là một phương pháp được sử dụng để thực hiện một số hoạt động của mô hình trên các tenxơ với số nguyên chứ không phải giá trị dấu phẩy động. Kopru cho biết: Đánh đổi độ chính xác từ việc sử dụng phương pháp chưng cất và lượng tử hóa rất đáng giá. “Chúng tôi có thể đào tạo các mô hình nhanh hơn gấp 3 lần và có thể đạt được thông lượng gấp 3 lần bằng cách bỏ 3% độ chính xác,” ông nói. “Sự đánh đổi này là một điều tốt dựa trên kết quả mà chúng tôi đang nhận được. Chúng tôi sẵn sàng tiếp tục làm điều đó ”. Mặc dù eBay thực hiện tất cả quá trình đào tạo học sâu hoàn toàn dựa trên GPU, nhưng để suy luận, nó sử dụng một phương pháp kết hợp bao gồm cả CPU. Đối với các tác vụ suy luận, eBay sử dụng công nghệ Deep Learning Boost (DL Boost) của Intel, thực hiện Hướng dẫn mạng nơ-ron Vector (VNNI) trên AVX của Intel – 512 tập hướng dẫn. Nó cũng sử dụng lượng tử hóa số nguyên 8-bit, Kopru nói. Hệ thống được triển khai và mở rộng theo chiều ngang trên một cụm Kubernetes được cấu hình bằng NUMA, ông nói. Ông nói: “Việc triển khai tùy chỉnh của chúng tôi đã tăng gấp đôi thông lượng với một nửa độ trễ so với việc triển khai không theo VNNI. eBay sử dụng một số kỹ thuật tương tự để tối ưu hóa thiết lập kNN, được sử dụng để phân loại hình ảnh. Công ty đã ghép nối hệ thống phân loại hình ảnh kNN của mình với thư viện Thế giới nhỏ có thể điều hướng phân cấp (HNSW) để tối ưu hóa tìm kiếm trong không gian kNN. Đối với suy luận, nó cũng mang lại lượng tử hóa số nguyên 8 chữ số và thư viện DL Boost của Intel. Selcuk Kopru là người đứng đầu bộ phận học máy và NLP tại eBay Việc sử dụng HNSW cho phép tìm kiếm kNN hoạt động ở mức cao và duy trì độ trễ thấp và thông lượng cao trên một danh mục chứa một tỷ mục, mỗi mục có tới 768 kích thước, theo Kopru. “So với việc triển khai hiện tại, chúng tôi đã quan sát thấy tốc độ tăng gấp 2,5 lần về độ trễ, từ 17 mili giây đến 7 mili giây, ”anh nói. Kopru đã để lại cho khán giả một vài suy nghĩ về cách họ có thể áp dụng những điều học được của anh ấy vào các vấn đề cụ thể của họ. Đối với những người mới bắt đầu, sự tương đồng là một công cụ mạnh mẽ có thể được sử dụng để giải quyết nhiều vấn đề về AI trong thương mại điện tử và trong các lĩnh vực khác, Kopru nói. “Thông điệp thứ hai của tôi là về độ trễ và thông lượng,” anh nói. “Nhiều tối ưu hóa cần phải được thực hiện, hầu như ở mọi bước của vòng đời máy học. Cho dù đó là trong đào tạo hay hội thảo, chúng tôi phải đảm bảo rằng chúng tôi đang sử dụng các phương pháp tối ưu hóa phù hợp, chẳng hạn như chưng cất và lượng tử hóa trên các nền tảng đó ”. Cuối cùng, Kopru khuyến khích các học viên xem xét sử dụng phương pháp kết hợp cho truyền thông để đạt được mục tiêu sử dụng và tiết kiệm chi phí. eBay cũng theo dõi cẩn thận các TPU cho mục đích đo điểm chuẩn. “Đây là những kỹ thuật nổi tiếng và tôi thực sự gợi ý rằng mọi người đang sử dụng những kỹ thuật đó,” anh nói. Các mục liên quan: Tối ưu hóa AI và Hiệu suất học sâu Ba thủ thuật để khuếch đại dữ liệu nhỏ cho học sâu Một mô hình để quy tắc tất cả: Mạng biến áp Usher trong AI 2.0, Forrester nói

Back to top button