Tin tức Vũ trụ TV

SLIDE là thuật toán đầu tiên để đào tạo mạng lưới thần kinh sâu nhanh hơn trên CPU so với GPU

Ngày:
Th3 06, 2020
Tóm lược:

Các nhà khoa học máy tính đã vượt qua một trở ngại lớn trong ngành công nghiệp trí tuệ nhân tạo đang phát triển.

Share:
CÂU CHUYỆN ĐẦY ĐỦ

Các nhà khoa học máy tính của Đại học Rice đã vượt qua một trở ngại lớn trong ngành công nghiệp trí tuệ nhân tạo đang phát triển bằng cách cho thấy có thể tăng tốc công nghệ học sâu mà không cần phần cứng tăng tốc chuyên dụng như các đơn vị xử lý đồ họa (GPU).

Các nhà khoa học máy tính từ Rice được hỗ trợ bởi các cộng tác viên của Intel sẽ trình bày kết quả của họ ngày hôm nay tại Trung tâm Hội nghị Austin như một phần của hội nghị hệ thống máy học MLSys.

Nhiều công ty đang đầu tư mạnh vào GPU và phần cứng chuyên dụng khác để triển khai học tập sâu, một dạng trí tuệ nhân tạo mạnh mẽ đứng sau các trợ lý kỹ thuật số như Alexa và Siri, nhận dạng khuôn mặt, hệ thống khuyến nghị sản phẩm và các công nghệ khác. Ví dụ, Nvidia, nhà sản xuất GPU Tesla V100 Tensor Core tiêu chuẩn vàng của ngành công nghiệp gần đây đã báo cáo tăng 41% doanh thu quý IV so với năm trước.

Anshumali Shrivastava của Đại học Rice đã lãnh đạo một nhóm trình diễn cách triển khai công nghệ học sâu mà không cần phần cứng tăng tốc chuyên dụng như các đơn vị xử lý đồ họa. (Ảnh của Jeff Fitlow / Đại học Rice)
Anshumali Shrivastava của Đại học Rice đã lãnh đạo một nhóm trình diễn cách triển khai công nghệ học sâu mà không cần phần cứng tăng tốc chuyên dụng như các đơn vị xử lý đồ họa. (Ảnh của Jeff Fitlow / Đại học Rice)

Các nhà nghiên cứu của Rice đã tạo ra một giải pháp thay thế tiết kiệm chi phí cho GPU, một thuật toán gọi là “công cụ học sâu sâu tuyến tính” (SLIDE) sử dụng các đơn vị xử lý trung tâm mục đích chung (CPU) mà không cần phần cứng tăng tốc chuyên dụng.

“Các thử nghiệm của chúng tôi cho thấy SLIDE là triển khai thuật toán thông minh đầu tiên về học sâu trên CPU có thể vượt trội hơn khả năng tăng tốc phần cứng GPU trên các bộ dữ liệu đề xuất quy mô công nghiệp với các kiến ​​trúc được kết nối đầy đủ”, Anshumali Shrivastava, giáo sư trợ lý tại Trường Kỹ thuật Brown của Rice, đã phát minh ra SLIDE với các sinh viên tốt nghiệp Beidi Chen và Tharun Medini.

SLIDE không cần GPU vì nó cần một cách tiếp cận cơ bản khác nhau để học sâu. Kỹ thuật đào tạo “truyền bá ngược” tiêu chuẩn cho các mạng nơ ron sâu đòi hỏi nhân ma trận, một khối lượng công việc lý tưởng cho GPU. Với SLIDE, Shrivastava, Chen và Medini đã biến việc đào tạo mạng lưới thần kinh thành một vấn đề tìm kiếm thay vào đó có thể được giải quyết bằng các bảng băm.

Điều này hoàn toàn làm giảm chi phí tính toán cho SLIDE so với đào tạo lan truyền ngược. Ví dụ, một nền tảng GPU hàng đầu như Amazon, Google và các nền tảng khác cung cấp cho các dịch vụ học sâu dựa trên đám mây có tám chiếc Tesla V100 và có giá khoảng 100.000 đô la.

“Chúng tôi có một cái trong phòng thí nghiệm và trong trường hợp thử nghiệm của chúng tôi, chúng tôi đã lấy một khối lượng công việc hoàn hảo cho V100, một trong số đó có hơn 100 triệu thông số trong các mạng lớn, được kết nối đầy đủ phù hợp với bộ nhớ GPU,” Shrivastava nói. “Chúng tôi đã đào tạo nó với gói (phần mềm) tốt nhất hiện có, TensorFlow của Google và mất 3 tiếng rưỡi để đào tạo.

“Sau đó, chúng tôi đã chỉ ra rằng thuật toán mới của chúng tôi có thể thực hiện việc đào tạo trong một giờ, không phải trên GPU mà trên CPU lớp Xeon 44 lõi”.

Beidi Chen và Tharun Medini, sinh viên tốt nghiệp ngành khoa học máy tính tại Đại học Rice, đã giúp phát triển SLIDE, một thuật toán để đào tạo mạng lưới thần kinh sâu mà không cần các đơn vị xử lý đồ họa. (Ảnh của Jeff Fitlow / Đại học Rice)
Beidi Chen và Tharun Medini, sinh viên tốt nghiệp ngành khoa học máy tính tại Đại học Rice, đã giúp phát triển SLIDE, một thuật toán để đào tạo mạng lưới thần kinh sâu mà không cần các đơn vị xử lý đồ họa. (Ảnh của Jeff Fitlow / Đại học Rice)

Các mạng học sâu được lấy cảm hứng từ sinh học, và tính năng trung tâm của chúng, các nơ-ron nhân tạo, là những đoạn mã máy tính nhỏ có thể học để thực hiện một nhiệm vụ cụ thể. Một mạng lưới học tập sâu có thể chứa hàng triệu hoặc thậm chí hàng tỷ tế bào thần kinh nhân tạo và làm việc cùng nhau, chúng có thể học cách đưa ra quyết định chuyên môn ở cấp độ con người chỉ bằng cách nghiên cứu một lượng lớn dữ liệu. Ví dụ, nếu một mạng lưới thần kinh sâu được đào tạo để xác định các đối tượng trong ảnh, nó sẽ sử dụng các nơ-ron khác nhau để nhận ra một bức ảnh của một con mèo hơn là nhận ra một chiếc xe buýt của trường.

Bạn không cần phải đào tạo tất cả các tế bào thần kinh trên mọi trường hợp. Nhóm của Medini nghĩ ‘Nếu chúng ta chỉ muốn chọn các nơ-ron có liên quan, thì đó là vấn đề tìm kiếm.’ Vì vậy về mặt thuật toán, ý tưởng là sử dụng các hàm băm nhạy cảm cục bộ để thoát khỏi phép nhân ma trận.

Băm là một phương pháp lập chỉ mục dữ liệu được phát minh cho tìm kiếm trên internet vào những năm 1990. Nó sử dụng các phương pháp số để mã hóa một lượng lớn thông tin như toàn bộ trang web hoặc chương của một cuốn sách, như một chuỗi các chữ số được gọi là hàm băm. Bảng băm là danh sách các giá trị băm có thể được tìm kiếm rất nhanh.

“Sẽ không có ý nghĩa gì khi thực hiện thuật toán của chúng tôi trên TensorFlow hoặc PyTorch vì điều đầu tiên họ muốn làm là chuyển đổi bất cứ điều gì bạn đang làm thành vấn đề nhân ma trận”, Chen nói. “Đó chính xác là những gì chúng tôi muốn thoát khỏi. Vì vậy, chúng tôi đã viết mã C ++ của riêng mình từ đầu.”

Shrivastava cho biết lợi thế lớn nhất của SLIDE so với lan truyền ngược là nó là dữ liệu song song.

“Theo dữ liệu song song, ý tôi là nếu tôi có hai trường hợp dữ liệu mà tôi muốn huấn luyện, giả sử một là hình ảnh của một con mèo và cái kia của xe buýt, chúng có thể sẽ kích hoạt các nơ-ron khác nhau và SLIDE có thể cập nhật hoặc huấn luyện trên hai cái này một cách độc lập, “ông nói. “Đây là cách sử dụng song song tốt hơn cho CPU.

Điểm nổi bật so với GPU là SLIDE cần một bộ nhớ lớn. Có một hệ thống phân cấp bộ đệm trong bộ nhớ chính và nếu chúng ta không cẩn thận với nó, chúng ta có thể gặp phải một vấn đề gọi là đập bộ đệm, nơi chúng ta nhận được rất nhiều lỗi bộ nhớ cache.

Nhà phát minh chính của SLIDE Anshumali Shrivastava là trợ lý giáo sư khoa học máy tính tại Trường Kỹ thuật Brown của Đại học Rice. (Ảnh của Jeff Fitlow / Đại học Rice)
Nhà phát minh chính của SLIDE Anshumali Shrivastava là trợ lý giáo sư khoa học máy tính tại Trường Kỹ thuật Brown của Đại học Rice. (Ảnh của Jeff Fitlow / Đại học Rice)

Shrivastava cho biết các thử nghiệm đầu tiên của nhóm anh với SLIDE đã tạo ra sự phá hủy bộ nhớ cache đáng kể nhưng thời gian đào tạo của họ vẫn tương đương hoặc nhanh hơn thời gian đào tạo GPU. Vì vậy, anh, Chen và Medini đã công bố kết quả ban đầu trên arXiv vào tháng 3 năm 2019 và tải mã của họ lên GitHub. Vài tuần sau, họ được Intel liên lạc.

Các cộng tác viên của Shrivastava từ Intel đã nhận ra vấn đề bộ nhớ đệm. Họ nói với nhóm của Shrivastava rằng họ có thể làm việc với nhóm để khiến nó đào tạo nhanh hơn nữa và họ đã đúng. Kết quả của nhóm Shrivastava đã cải thiện khoảng 50% với sự giúp đỡ của họ.

Shrivastava cho biết SLIDE chưa tiến gần đến tiềm năng của nó.

“Chúng tôi chỉ bị trầy xước bề mặt”, ông nói. “Có rất nhiều thứ chúng ta vẫn có thể làm để tối ưu hóa. Ví dụ, chúng tôi chưa sử dụng vector hóa hoặc máy gia tốc tích hợp trong CPU như Intel Deep Learning Boost. Có rất nhiều thủ thuật khác mà chúng tôi vẫn có thể sử dụng để thực hiện điều này ngay cả nhanh hơn. “

Ông nói SLIDE rất quan trọng vì nó cho thấy có nhiều cách khác để thực hiện học tập sâu.

Toàn bộ thông điệp là Chúng ta đừng bị tắc nghẽn bởi ma trận nhân và bộ nhớ GPU. SLIDE có thể là phương pháp tiếp cận thuật toán đầu tiên để đánh bại GPU nhưng chúng ta hy vọng nó không phải là phương pháp cuối cùng. Lĩnh vực này cần những ý tưởng mới và đó là một phần lớn trong những gì MLSys hướng tới.


Nguồn truyện:

Tài liệu được cung cấp bởi Đại học Rice . Lưu ý: Nội dung có thể được chỉnh sửa cho kiểu dáng và độ dài.


Bài viết liên quan

Bài viết khác