AI: bạn có thể xuống thấp đến mức nào?

Cập nhật: ngày 10 tháng 2023 năm XNUMX

 

AI: bạn có thể xuống thấp đến mức nào?

AI: bạn có thể xuống thấp đến mức nào?

Các thị trường phải tuân theo các mốt nhất thời và lĩnh vực kiểm soát nhúng còn lâu mới miễn nhiễm với chúng. Trong những năm 1990, logic mờ dường như là con đường tiến lên phía trước và các nhà cung cấp vi điều khiển (MCU) tranh nhau đưa hỗ trợ vào các dịch vụ của họ chỉ để thấy nó bùng phát.

 

Học máy nhúng (ML) đang chứng kiến ​​sự điên cuồng ăn lớn hơn nhiều khi những người chơi MCU đã có tên tuổi và các công ty khởi nghiệp tăng tốc AI cố gắng thể hiện cam kết của họ với ý tưởng, chủ yếu nằm dưới biểu ngữ của TinyML.

Daniel Situnayake, kỹ sư sáng lập TinyML tại công ty phần mềm công cụ Edge Impulse và là đồng tác giả của một cuốn sách nổi tiếng về công nghệ, cho biết tình hình ngày nay rất khác so với những năm 1990.

“Điều thú vị về ML nhúng là học máy và học sâu không phải là công nghệ mới, chưa được chứng minh - trên thực tế, chúng đã được triển khai thành công trên các máy tính cấp máy chủ trong một thời gian tương đối dài và là trung tâm của rất nhiều thành công các sản phẩm. Embedded ML là về việc áp dụng một bộ công nghệ đã được chứng minh vào một bối cảnh mới sẽ cho phép nhiều ứng dụng mới mà trước đây không thể thực hiện được ”.

ABI Research dự đoán thị trường MCU công suất thấp hỗ trợ AI và máy gia tốc cho thị trường TinyML sẽ tăng từ doanh thu hàng năm dưới 30 triệu đô la trong năm nay lên hơn 2 tỷ đô la vào đầu thập kỷ tới.

Bất chấp tốc độ tăng trưởng nhanh chóng, nhà phân tích Lian Jye Su của ABI kỳ vọng sự cạnh tranh sẽ trở nên gay gắt hơn khi các công ty lớn như Bosch tham gia vào thị trường. Hiện tại, một số công ty khởi nghiệp như Eta Compute đã chuyển từ silicon sang các công cụ phần mềm.

“Chúng tôi thấy có một số hợp nhất. Đồng thời, sự phân mảnh lớn trong thị trường IoT có nghĩa là một số lượng đáng kể các nhà cung cấp sẽ tồn tại, giống như thị trường chipset MCU hoặc IoT nói chung, ”ông nói, chỉ ra một số lượng lớn các nhà cung cấp tập trung vào các thị trường dọc cụ thể.

TinyML phải đối mặt với những hạn chế nghiêm trọng. Pete Warden, trưởng nhóm kỹ thuật của TensorFlow Micro framework tại gã khổng lồ công cụ tìm kiếm và là đồng tác giả của Situnayake về “TinyML: Machine Learning với TensorFlow Lite trên Arduino và Bộ vi điều khiển công suất cực thấp”, cho biết tại Hội nghị bộ xử lý mùa thu của Linley Group rằng Mục đích là sử dụng các mô hình học sâu và “chạy chúng trên các thiết bị có RAM chỉ 20KB. Chúng tôi muốn xây dựng các mô hình sử dụng công nghệ tiên tiến này công nghệ và nghiền nát chúng để chạy trên các bộ xử lý có công suất rất thấp.

“Vì là phần mềm mã nguồn mở, chúng tôi không chỉ được tương tác với các nhóm sản phẩm bên trong Google mà còn nhận được rất nhiều yêu cầu từ các nhóm sản phẩm trên toàn thế giới, những người đang cố gắng tạo ra các sản phẩm thú vị. Và chúng ta thường phải nói: không, điều đó là chưa thể. Tổng hợp chúng tôi nhận thấy rất nhiều yêu cầu chưa được đáp ứng, ”Warden nói.

Vấn đề cốt lõi là các mô hình học sâu được chuyển từ môi trường máy chủ yêu cầu hàng triệu hoặc thậm chí hàng tỷ chức năng nhân-cộng (MAC) được thực hiện trong một khoảng thời gian ngắn ngay cả đối với các mô hình tương đối đơn giản. Linley Gwennap, chủ tịch Linley Group, cho biết các ứng dụng âm thanh tương đối đơn giản, chẳng hạn như chọn các từ trong giọng nói có thể kích hoạt nhận dạng giọng nói, gọi được khoảng 2 triệu MAC mỗi giây. Video cần nhiều hơn nữa.

Các nhà cung cấp Silicon đã có thể tăng số lượng MAC bằng cách tận dụng yêu cầu tương đối thấp về độ chính xác trong các phép tính cá nhân khi thực hiện truyền thông. Trong khi việc đào tạo trên máy chủ thường yêu cầu số học dấu phẩy động chính xác đơn hoặc kép, các phép tính số nguyên byte (int8) dường như là đủ cho hầu hết các ứng dụng.

Có những dấu hiệu cho thấy rằng đối với các lớp được chọn trong một mô hình, ngay cả các MAC int8 cũng không cần thiết. Các phép tính nhị phân hoặc bậc ba có thể được thực hiện bằng cách sử dụng ít hơn một vài cổng, mỗi phép tính không ảnh hưởng đến độ chính xác tổng thể trong nhiều trường hợp. Situnayake cho biết tiềm năng tăng hiệu suất là rất lớn nhưng thiếu sự kết hợp giữa phần cứng và phần mềm hỗ trợ cần thiết để khai thác chúng một cách đầy đủ.

Mặc dù công cụ cho khung TensorFlow Lite thường hỗ trợ trọng số int8, nhưng hỗ trợ cho các độ phân giải thấp hơn vẫn chưa được phổ biến rộng rãi. “Điều này đang thay đổi nhanh chóng,” Situnayake lưu ý, chỉ vào các máy gia tốc như Syntiant's hỗ trợ các trọng số nhị phân, 2bit và 4bit cũng như Plumerai làm việc để đào tạo trực tiếp các mạng thần kinh hai mặt.

Ông cho biết thêm: “Mặc dù những công nghệ này vẫn đang ở giai đoạn tiên tiến và chưa trở thành xu hướng chủ đạo cho các nhà phát triển ML nhúng, nhưng sẽ không lâu nữa chúng sẽ là một phần của bộ công cụ tiêu chuẩn.

Giảm gánh nặng số học

Có các tùy chọn khác cho công việc TinyML để giảm bớt gánh nặng về số học. Phát biểu tại hội nghị TinyML Châu Á vào cuối năm ngoái, Jan Jongboom, đồng sáng lập và CTO của Edge Impulse cho biết điểm thu hút chính của ML là khả năng tìm kiếm mối tương quan trong dữ liệu mà các thuật toán thông thường không chọn được. Vấn đề nằm ở số lượng tuyệt đối của các tham số mà hầu hết các mô hình thông thường phải xử lý để tìm ra các mối tương quan đó nếu đầu vào là các mẫu thô.

Jongboom nói: “Bạn muốn giúp thuật toán học máy của mình một tay để làm cho cuộc sống của nó dễ dàng hơn,” Jongboom nói. Kỹ thuật hữu ích nhất cho các tín hiệu thời gian thực điển hình là sử dụng tính năng trích xuất: chuyển đổi dữ liệu thành các biểu diễn để có thể xây dựng mạng nơ-ron với các thứ tự tham số ít hơn.

Lấy lời nói làm ví dụ, sự chuyển đổi sang không gian mel-cepstrum làm giảm số lượng lớn các tham số có thể mã hóa những thay đổi trong âm thanh một cách hiệu quả.

Trong dữ liệu cảm biến khác, chẳng hạn như nguồn cấp dữ liệu từ một gia tốc kế được sử dụng để phát hiện rung động trong máy móc đang quay, các dạng biểu diễn tần số thời gian chung khác sẽ thường hoạt động.

Cách tiếp cận này được sử dụng bởi John Edwards, nhà tư vấn và kỹ sư DSP tại Sigma Numerix và là giảng viên thỉnh giảng tại Đại học Oxford, trong một dự án phân tích rung động.

Trong trường hợp này, một phép biến đổi Fourier ngắn có sự cân bằng tốt nhất cùng với các phép biến đổi bù cho các động cơ có tốc độ thay đổi. Việc trích xuất tính năng đã giảm kích thước của mô hình xuống chỉ còn hai lớp có thể dễ dàng được xử lý trên NXP LPC55C69, kết hợp các lõi Arm Cortex-M33 với bộ gia tốc DSP.

Jongboom nói rằng mặc dù có thể bị hấp dẫn để đi xuống con đường học sâu, nhưng các thuật toán học máy khác có thể mang lại kết quả. “Mô hình phát hiện bất thường tốt nhất của chúng tôi không phải là mạng nơ-ron: phân cụm k-mean cơ bản của nó.”

Trong trường hợp học sâu là một yêu cầu, sự thưa thớt sẽ giúp giảm chi phí mô hình hơn nữa. Điều này có thể ở dạng cắt bớt, trong đó các trọng số có ít ảnh hưởng đến đầu ra của mô hình chỉ đơn giản là loại bỏ khỏi đường ống. Một lựa chọn khác là tập trung nỗ lực vào các phần của luồng dữ liệu thể hiện những thay đổi theo thời gian. Ví dụ: trong video giám sát, điều này có thể có nghĩa là việc sử dụng xử lý hình ảnh để phát hiện các đối tượng chuyển động và tách chúng khỏi nền trước khi đưa các pixel đã xử lý vào mô hình.

Đó là một kinh nghiệm học hỏi cho Jongboom và những người khác. Khi mô tả sự tiến bộ của mình qua các giai đoạn của TinyML, vào mùa hè năm 2017, anh ấy nghĩ rằng toàn bộ khái niệm là không thể. Vào mùa hè năm 2020, sau khi cùng nhau xem xét các cách để tối ưu hóa thiết kế ứng dụng và mô hình, thái độ của anh ấy đã thay đổi để tin rằng phân loại hình ảnh theo thời gian thực trên phần cứng tiêu thụ điện năng thấp là khả thi. Khi các máy gia tốc công suất thấp hỗ trợ độ chính xác thấp và thưa thớt xuất hiện hiệu quả hơn, thì phạm vi của các kiểu máy có thể chạy ở công suất vi mô sẽ mở rộng.

Kết quả, Situnayake tuyên bố, có khả năng là “ML cuối cùng sẽ đại diện cho một phần lớn hơn bất kỳ loại khối lượng công việc nào khác. Những lợi thế của ML trên thiết bị sẽ thúc đẩy ngành công nghiệp hướng tới việc tạo và triển khai các chip năng lượng thấp nhanh hơn, có khả năng hơn, sẽ đại diện cho phần lớn tất cả các máy tính nhúng trên thế giới ”. Mặc dù sẽ có rất nhiều thiết bị không chạy những khối lượng công việc này, nhu cầu về tốc độ vì kích thước mô hình chắc chắn sẽ tăng lên sẽ tập trung sự chú ý vào nhu cầu của nó và bắt đầu chi phối sự phát triển của kiến ​​trúc phần mềm và phần cứng, miễn là các ứng dụng tiếp tục hoạt động.