산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial Internet of Things >> 임베디드

임베디드 애플리케이션을 위한 AI 최적화

이전 블로그에서 저는 AI 기반 인터페이스에 대한 수요가 어떻게 거의 불가피하게 되었는지에 대해 이야기했습니다. 그리고 face-id와 같은 AI 기반 인터페이스를 추가하여 머신에 대한 액세스 권한을 부여하는 것은 처음에는 엄청난 도약처럼 보일 수 있지만 그렇지 않습니다. 당신이 생각하는만큼 어려웠습니다. 사용 가능한 AI 플랫폼이 풍부하고 교육 옵션이 많으며 심지어 face-id 예제와 같은 오픈 소스 애플리케이션도 있습니다. PC에서 실행할 수 있는 프로토타입을 사용하여 매우 빠르게 시작하고 테스트할 수 있습니다.


(출처:CEVA)

제약조건

훈련된 네트워크를 임베디드 앱으로 옮기는 것은 또 다른 큰 장애물처럼 보일 수 있습니다. PC 또는 클라우드로 훈련된 네트워크는 메모리 사용량이나 전력을 많이 최적화하지 않습니다. 네트워크 계산을 위해 부동 소수점 또는 이중 단어를 사용할 수 있으며 이미지에 대한 슬라이딩 윈도우를 처리할 때 오프칩 메모리 액세스에 크게 의존합니다. 전원에 연결된 고성능 PC에서 실행되는 프로토타입에는 문제가 되지 않지만 성능 저하 없이 최종 애플리케이션에서 훨씬 더 절약해야 합니다.

최적화의 필수 요소

최적화의 한 가지 핵심 단계는 양자화라고 합니다. 부동 소수점에서 고정 소수점으로 가중치를 전환하고 고정 소수점 크기를 줄이는 것(예:32비트 부동 소수점에서 8비트 정수로)은 가중치의 크기뿐만 아니라 중간 계산 값에도 영향을 미칩니다. 이것만으로도 대부분의 경우 인식 품질에 눈에 띄는 영향을 미치지 않고 메모리 공간을 크게 줄일 수 있습니다.

두 번째 조작은 정확도에 미치는 영향을 최소화하면서 가중치의 희소성을 활용하는 것입니다. 이 연습은 0에 가까운 가중치를 활용하고 정확도 영향을 면밀히 추적하면서 0으로 반올림합니다. 가중치는 부분합을 곱하는 데 사용되며 요인 중 하나가 0일 때 무의미한 운동이므로 연산을 수행할 필요가 없습니다.

실제 구현에서 이미지는 점진적으로 처리되므로 계산 창이 이미지를 가로질러 이동할 때 가중치를 업데이트해야 합니다. 그것은 많은 업데이트와 많은 트래픽을 유발할 수 있습니다. 많은 비율의 가중치를 0으로 설정함으로써 가중치 어레이를 압축할 수 있으므로 온칩 SRAM에 어레이의 전체 또는 대부분을 저장하여 요청 시 압축을 푸는 것이 가능합니다. 그러면 주 메모리로 이동할 필요가 최소화되므로 성능이 향상되고 전력이 감소합니다. 또한 가중치를 로드할 때 부수적으로 온칩 트래픽을 줄입니다. 트래픽 경합이 적을수록 처리량이 높아집니다.

한 가지 요인을 더 고려해야 합니다. 대부분의 복잡한 애플리케이션과 마찬가지로 신경망은 정교한 라이브러리에 의존합니다. 마이크로컨트롤러 환경에서 사용하도록 설계된 라이브러리와 선택한 플랫폼에 대한 컴파일러를 사용해야 합니다. TensorFlow Lite와 같은 오픈 소스 라이브러리가 좋은 출발점이 될 수 있지만 마이크로 컨트롤러를 최대한 활용하려면 전용 맞춤형 솔루션이 필요합니다.

물론, 해야 할 일을 안다는 것이 쉽지는 않습니다. 이제 이러한 작업을 간소화하고 하드웨어에 최적화된 라이브러리를 제공할 플랫폼을 찾아야 합니다.

사용하기 쉬운 흐름으로 만들려면 어떻게 해야 하나요?

원하는 것은 특정 플랫폼(예:TensorFlow)에서 훈련한 네트워크를 가져와 내장형 솔루션에 직접 컴파일할 수 있는 흐름입니다. 물론 다른 평면에서 다른 수준의 양자화를 설정할 수 있는 옵션을 추가로 수동 최적화할 수도 있습니다. 무게 임계값과 온칩 메모리 크기를 비교하는 실험을 할 수도 있습니다. 그리고 하드웨어에 최적화된 라이브러리와 라이브러리에 최적화된 하드웨어를 원합니다.

CEVA의 CDNN과 같은 입증된 AI 플랫폼은 이러한 유형의 흐름을 제공하도록 설계되었습니다. CDNN은 양자화 및 런타임 작업 생성을 위한 오프라인 프로세서 도구 세트와 CEVA DSP 및 고객 하드웨어 가속기를 위한 맞춤형 런타임 라이브러리를 제공합니다. CEVA의 솔루션은 TensorFlow Lite, ONNX, Caffe 등을 포함하여 널리 사용되는 모든 AI 모델 형식을 지원합니다.


관련 콘텐츠:

더 많은 Embedded를 보려면 Embedded의 주간 이메일 뉴스레터를 구독하세요.


임베디드

  1. VersaLogic, 임베디드 애플리케이션용 서버급 컴퓨터 출시
  2. Infineon, 자동차 애플리케이션용 TLE985x 임베디드 전원 시리즈 출시
  3. Sundance:정밀 로봇 공학 애플리케이션을 위한 VCS-1 임베디드 프로세서 모듈
  4. E-Mobility 애플리케이션을 위한 PPA
  5. 워터젯 최적화를 위한 4가지 팁
  6. 공압 액추에이터에 이상적인 애플리케이션
  7. 마이닝 애플리케이션을 위한 4가지 유형의 도구
  8. 캘리퍼 브레이크의 일반적인 응용 분야
  9. 청동 합금의 군사적 응용
  10. Aluminum Bronze C63200용 애플리케이션