책 소개
요약
제품 관리자와 기술 리더를 비롯한 엔지니어링 전문가에게 엣지 AI로 실제 산업, 상업, 과학 문제를 해결하기 위한 엔드투엔드 프레임워크를 제공하는 책이다. 데이터 수집부터 모델 최적화, 튜닝, 테스트에 이르는 프로세스의 모든 단계를 살펴보면서 엣지 AI와 임베디드 ML 제품을 설계하고 지원하는 방법을 배울 수 있다. 엣지 AI는 시스템 엔지니어를 위한 표준 도구가 될 것이다.
추천의 글
“2022년에 깃허브의 CEO인 토마스 돔케(Thomas Dohmke)는 “클라우드로의 전환이 매우 빠른 속도로 일어날 것이라고 생각한다. 불과 몇 년 안에 로컬 컴퓨터에 더 이상 코드가 없을 것이라고 예상한다.”라고 말했다. 엣지 ML(Machine Learning)이라는 신흥 분야에 있는 나를 포함한 여러 사람은 토마스가 완전히 틀렸다고 생각하는데, 이 책은 그 이유를 잘 설명하고 있다.
고품질 음성 인식, 산불 예방, 스마트 홈 제어 같은 여러 실용적인 애플리케이션이 출현하기 시작했다. 이러한 애플리케이션은 이제 로컬 장치가 고급 머신러닝 알고리듬을 실행할 수 있기 때문에 가능해졌다. 제니와 댄은 엣지 애플리케이션에 지능을 추가하는 것이 중요한 문제를 해결하는 데 있어 필요한 이유를 설명할 뿐만 아니라, 이런 종류의 애플리케이션을 설계, 구현, 테스트하는 데 필요한 단계를 독자에게 자세하게 소개하는 멋진 책을 만들었다.
엣지에서의 머신러닝 프로젝트를 처음 보기 시작하면 꽤 위협적으로 느껴질 수 있다. 이 분야는 많은 전문 용어를 포함하고 빠르게 변화하고 있으며, 전통적으로 잘 통합되지 않은 임베디드 시스템과 인공지능 같은 영역의 지식이 필요하기 때문이다. 하지만 저자는 애플리케이션을 효과적으로 시작하기 위해 알아야 할 모든 것에 대해 부드럽지만 철저하게 소개했다. 또한 실제 세계의 예를 강조하고 복잡한 주제를 설명하기 위해 수학이나 코드 대신 평이한 영어를 사용하여 광범위한 독자가 접근할 수 있도록 노력했다. 따라서 이 책은 엔지니어뿐만 아니라 제품 관리자, 경영진, 디자이너에게 쉽게 추천할 수 있다.
저자는 경험을 통해 힘들게 얻은 많은 지식을 가져와 이런 종류의 애플리케이션에서 작업하는 모든 팀이 유리한 출발을 할 수 있는 교훈으로 요약하려고 애썼다.
또한 엣지 ML 애플리케이션을 만드는 방법에 대한 실질적인 문제를 넘어서 탐구하고, 작업에 해를 끼치지 않는 방법을 이해하는 데 도움을 주고자 노력했다. AI에 대한 윤리적 우려는 엄청나 보일 수 있지만 저자는 이를 프로젝트 계획과 테스트 프로세스의 일부로서 간단하게 적용할 수 있는 질문으로 세분화하려고 애썼다. 이는 프로젝트의 모든 이해관계자가 협력하는 데 도움이 될 것이며, 컴퓨터가 우리 삶에 대해 더 많은 의사결정 권한을 부여하는 것과 관련된 많은 잠재적 위험을 피할 수 있기를 바란다.
나는 처음에는 신생 기업에서, 그다음에는 구글에서 기술 책임자로, 그리고 지금은 다른 신생 기업의 창립자로 10년 넘게 엣지 ML 애플리케이션 작업을 해왔다. 코더, 디자이너, 관리자 또는 단순히 우리 세계에서 떠오르고 있는 이 새로운 기술에 관심이 있는 사람으로서 이 분야에 조금이라도 관심이 있다면 이 책을 충분히 추천하고 싶다. 이 책을 읽으면 흥미로운 아이디어를 많이 얻을 수 있고, 차세대 스마트 장치를 만드는 데 도움이 될 것이라고 장담한다.”
“새롭고 빠르게 성장하는 엣지 AI 분야를 실용적이고 따라하기 쉬운 방법으로 소개하는 책이다. 또한 전문 용어를 설명하고, 엣지 AI 애플리케이션을 만들 때 직면할 수 있는 실제 문제를 강조한다. 개념에서 배포까지의 필수 가이드를 제공하기 때문에 현장에서 시작하기 전에 반드시 읽어야 할 책이다.”
이해하기 쉽도록 도와주는 글쓰기 스타일을 정말 좋아한다. 이 책이 그런 참고서로 사용되는 것을 상상할 수 있으며, 몇 번이고 다시 볼 책이라고 생각한다. 확실히 그렇게 될 것이다!”
“엣지 AI라는 신흥 분야에 대한 접근성이 뛰어난 책이다! 핵심 개념에서 최신 하드웨어와 소프트웨어 도구에 이르기까지 매우 광범위한 주제를 다루고 실행 가능한 조언으로 가득 차 있으며, 처음부터 끝까지 이해하게 도와주는 몇 가지 예제가 포함되어 있다. 이 흥미진진한 새로운 분야에 참여하는 사람은 누구나 이 책이 제공하는 깊은 통찰과 명료한 사고에 도움을 받을 것이다.”
“이 책은 더 스마트한 장치를 만들기 위한 안내서다. 최신 AI 기술과 임베디드 시스템을 결합하는 방법을 훌륭하게 소개하고 있다.”
이 책에서 다루는 내용
◆ 엣지 디바이스용 AI와 ML에 대한 전문성 개발하기
◆ 엣지 AI로 가장 잘 해결할 수 있는 프로젝트 이해하기
◆ 엣지 AI 앱을 위한 주요 디자인 패턴 살펴보기
◆ AI 시스템 개발을 위한 반복적인 워크플로 알아보기
◆ 실제 문제를 해결할 수 있는 기술을 갖춘 팀 구성하기
◆ 책임감 있는 AI 프로세스를 따라 효과적인 제품 만들기
이 책의 대상 독자
◆ 마이크로컨트롤러나 DSP(Digital Signal Processor) 같은 리소스가 제한된 장치나 임베디드 리눅스 컴퓨터 같은 범용 장치에 대한 임베디드 개발 고급 개념을 알고 있는 개발자
◆ 엣지 AI 기술을 통해 성공적인 엣지 AI 제품을 만들고자 하는 과학자, 제품 관리자, 의사결정권자
◆ 엔지니어링 분야의 실용적인 로드맵을 높은 수준에서 다루길 바라는 엔지니어
이 책의 구성
이 책의 처음 몇 개 장에서는 핵심 개념을 소개하고 논의하여 형세를 이해하는 데 도움을 준다. 다음 몇 개 장은 애플리케이션을 설계하고 구현하는 데 도움이 되는 실제 프로세스를 안내한다.
11장에서 시작하는 이 책의 두 번째 부분에서는 과학, 산업, 소비자 프로젝트에서 실제 문제를 해결하기 위한 지식을 차근차근 설명, 적용하는 방법을 보여준다.
이 책을 다 읽고 나면 엣지 AI라는 렌즈를 통해 세상을 보는 데 자신감을 갖게 될 것이며, 효과적인 솔루션을 구축하는 데 사용할 수 있는 견고한 도구들을 얻게 될 것이다.
목차
목차
- 제1장 엣지 AI에 대한 간략한 소개
- 핵심 용어 정의
- 임베디드
- 엣지(와 사물 인터넷)
- 인공지능
- 머신러닝
- 엣지 AI
- 임베디드 머신러닝과 TinyML
- 디지털 신호 처리
- 엣지 AI가 필요한 이유는 무엇인가?
- 엣지 AI의 이점을 이해하려면 BLERP만 있으면 된다
- 좋은 일을 위한 엣지 AI
- 엣지 AI와 일반 AI의 주요 차이점
- 요약
- 핵심 용어 정의
- 제2장 현실 세계에서의 엣지 AI
- 엣지 AI의 일반적인 사용 사례
- 그린필드와 브라운필드 프로젝트
- 실제 제품
- 애플리케이션 유형
- 사물 추적
- 시스템 이해와 제어
- 사람과 생물에 대한 이해
- 신호 변환
- 책임감 있게 애플리케이션 만들기
- 책임감 있는 설계와 AI 윤리
- 블랙박스와 편향성
- 도움이 아니라 해를 끼치는 기술
- 요약
- 엣지 AI의 일반적인 사용 사례
- 제3장 엣지 AI의 하드웨어
- 센서, 신호, 데이터 소스
- 센서와 신호의 종류
- 음향과 진동
- 시각과 장면
- 동작과 위치
- 힘과 촉각
- 광학, 전자기, 방사선
- 환경, 생물학, 화학
- 기타 신호
- 엣지 AI용 프로세서
- 엣지 AI 하드웨어 아키텍처
- 마이크로컨트롤러와 디지털 신호 프로세서
- 시스템 온 칩
- 딥러닝 가속기
- FPGA와 ASIC
- 엣지 서버
- 다중 장치 아키텍처
- 장치와 워크로드
- 요약
- 센서, 신호, 데이터 소스
- 제4장 엣지 AI용 알고리듬
- 피처 엔지니어링
- 데이터 스트림 작업
- 디지털 신호 처리 알고리듬
- 피처와 센서 결합하기
- 인공지능 알고리듬
- 기능별 알고리듬 유형
- 구현별 알고리듬 유형
- 엣지 장치를 위한 최적화
- 온디바이스 학습
- 요약
- 피처 엔지니어링
- 제5장 도구와 전문지식
- 엣지 AI를 위한 팀 구축
- 도메인 전문지식
- 다양성
- 이해관계자
- 역할과 책임
- 엣지 AI 채용
- 엣지 AI 기술 배우기
- 비장의 무기
- 소프트웨어 공학
- 데이터 작업
- 알고리듬 개발
- 장치에서 알고리듬 실행하기
- 임베디드 소프트웨어 공학과 전자공학
- 엣지 AI를 위한 엔드투엔드 플랫폼
- 요약
- 엣지 AI를 위한 팀 구축
- 제6장 문제를 이해하고 표현하기
- 엣지 AI 워크플로
- 엣지 AI 워크플로의 책임감 있는 AI
- 엣지 AI가 필요할까?
- 엣지 AI 워크플로
- 문제 설명하기
- 엣지에 배치해야 하는가?
- 머신러닝이 필요할까?
- 실전 연습
- 실현 가능성 결정하기
- 도덕적 타당성
- 사업 타당성
- 데이터 세트 타당성
- 기술 타당성
- 최종 결정 내리기
- 엣지 AI 프로젝트 계획하기
- 요약
- 데이터 세트는 어떻게 생겼나?
- 이상적인 데이터 세트
- 데이터 세트와 도메인 전문지식
- 데이터, 윤리, 책임감 있는 AI
- 모르는 것을 최소화하기
- 도메인 전문성 확보하기
- 데이터 중심 머신러닝
- 데이터 요구사항 추정하기
- 데이터 요구사항 추정을 위한 실용적인 워크플로
- 데이터 활용하기
- 엣지에서 데이터를 캡처할 때의 고유한 과제
- 데이터를 저장하고 가져오기
- 데이터 저장소로 데이터 가져오기
- 메타데이터 수집하기
- 데이터 품질 보장하기
- 대표 데이터 세트 확보하기
- 샘플링을 통한 데이터 검토
- 레이블 노이즈
- 일반적인 데이터 오류
- 드리프트와 시프트
- 고르지 않은 오류 분포
- 데이터 준비
- 레이블링
- 포맷 지정
- 데이터 클리닝
- 피처 엔지니어링
- 데이터 분할
- 데이터 증강
- 데이터 파이프라인
- 시간에 따른 데이터 세트 구축
- 요약
- 제품과 경험 설계
- 설계 원칙
- 솔루션 범위 설정
- 설계 목표 설정
- 아키텍처 설계
- 하드웨어, 소프트웨어, 서비스
- 기본 애플리케이션 아키텍처
- 복잡한 애플리케이션 아키텍처와 설계 패턴
- 설계 패턴으로 작업하기
- 설계 선택에 대한 설명
- 설계 결과물
- 요약
- 엣지 AI 개발을 위한 반복적 워크플로
- 탐색
- 목표 설정
- 부트스트랩
- 테스트와 반복
- 배치
- 지원
- 요약
- 엣지 AI 시스템 평가하기
- 시스템 평가 방법
- 유용한 지표
- 평가 기법
- 평가와 책임감 있는 AI
- 엣지 AI 애플리케이션 배치하기
- 배치 전 작업
- 배치 중 작업
- 배치 후 작업
- 엣지 AI 애플리케이션 지원
- 배치 후 모니터링
- 라이브 애플리케이션 개선하기
- 윤리와 장기 지원
- 다음 단계
- 문제 탐색
- 솔루션 탐색
- 목표 설정
- 솔루션 설계
- 어떤 솔루션이 이미 존재하는가?
- 솔루션 설계 접근 방식
- 설계 고려사항
- 환경 영향
- 부트스트래핑
- 머신러닝 클래스 정의
- 데이터 세트 수집
- 엣지 임펄스
- 하드웨어와 센서 선택
- 데이터 수집
- iNaturalist
- 데이터 세트의 한계
- 데이터 세트 라이선스와 법적 의무
- 데이터 세트 클리닝
- 엣지 임펄스에 데이터 업로드
- DSP와 머신러닝 워크플로
- 디지털 신호 처리 블록
- 머신러닝 블록
- 모델 테스트
- 라이브 분류
- 모델 테스트
- 로컬에서 모델 테스트하기
- 배치
- 라이브러리 생성
- 휴대폰과 컴퓨터
- 사전 빌드된 바이너리 플래싱하기
- 임펄스 러너
- 깃허브 소스 코드
- 반복과 피드백 루프
- 공익을 위한 AI
- 관련 연구
- 데이터 세트
- 연구
- 문제 탐색
- 솔루션 탐색
- 목표 설정
- 솔루션 설계
- 어떤 솔루션이 이미 존재할까?
- 솔루션 설계 접근 방식
- 설계 고려사항
- 환경과 사회적 영향
- 부트스트랩
- 머신러닝 클래스 정의
- 데이터 세트 수집
- 엣지 임펄스
- 하드웨어와 센서 선택
- 데이터 수집
- 데이터 수집 펌웨어
- 엣지 임펄스에 데이터 업로드
- 데이터 세트 클리닝
- 데이터 세트 라이선스와 법적 의무
- DSP와 머신러닝 워크플로
- 디지털 신호 처리 블록
- 머신러닝 블록
- 모델 테스트
- 실시간 분류
- 모델 테스트
- 배치
- 사전 빌드된 바이너리 플래싱
- 깃허브 소스 코드
- 반복과 피드백 루프
- 관련 연구
- 연구
- 뉴스와 기타 기사
- 문제 탐색
- 목표 설정
- 솔루션 설계
- 어떤 솔루션이 이미 존재하는가?
- 솔루션 설계 접근법
- 설계 고려사항
- 환경과 사회적 영향
- 부트스트랩
- 머신러닝 클래스 정의
- 데이터 세트 수집
- 엣지 임펄스
- 하드웨어와 센서 선택
- 데이터 수집
- 데이터 수집 펌웨어
- 데이터 세트 클리닝
- 데이터 세트 라이선스와 법적 의무
- DSP와 머신러닝 워크플로
- 디지털 신호 처리 블록
- 머신러닝 블록
- 모델 테스트
- 실시간 분류
- 모델 테스트
- 배포
- 사전 빌드된 바이너리 플래싱
- 깃허브 소스 코드
- 반복과 피드백 루프
- 관련 연구
- 연구
- 뉴스와 기타 기사