컨텐츠상세보기

임베디드보드 기반 딥러닝 응용 - NVIDIA Xavier NX/Jestson TX2를 기반으로 (커버이미지)
알라딘
임베디드보드 기반 딥러닝 응용 - NVIDIA Xavier NX/Jestson TX2를 기반으로
  • 평점평점점평가없음
  • 저자박병섭 (지은이) 
  • 출판사복두출판사 
  • 출판일2023-03-02 
보유 1, 대출 0, 예약 0, 누적대출 0, 누적예약 0

책소개

머리말
4차 산업혁명을 리드하고 있는 인공지능 기술들이 화두가 된 지 몇 년이 지나 이제는 성숙한 시장으로 진입하고 있다. 여러 산업분야에서 적용되어 제품들에 응용되고 있는 인공지능 기술을 NVIDIA 제품의 임베디드 보드에 탑재하여 자율주행 로봇이나 드론 등 기타 제품에서 사용하고 있다.

이에 본 도서에는 고성능 GPU와 인공지능 엔진이 탑재된 NVIDIA 보드에 인공지능 딥러닝 기술을 및 적용 테스트해본 관점에서 기술하고 있다. 본 도서에서는 두 종류의 NVIDIA Jetson TX2 보드와 Xavier NX 캐리어보드 하에서 테스트된 응용들을 다루고 있다. 다음은 각 장에서 학습할 내용을 개략적으로 기술한 것이다.

1장에서는 인공지능, 머신러닝, 딥러닝 기술들을 개략적으로 다루고 있다.

2장에서는 머신러닝에서 모델이나 패턴의 분류 성능 평가에 사용되는 지표들에 대해 기술하고 있다. 어느 모델이든지 알고리즘의 성능을 제대로 평가하는 방법은 현재 모델의 성능을 올바르게 평가하는 것에서부터 시작한다. 이 장에서는 정밀도, 재현율, 정확도의 분류 성능지표와 데이터셋을 다루고 있다. 데이터셋은 정밀하고 세심하게 선정되고 구축되어야 인공지능 알고리즘에 그 성능을 발휘할 수 있는 중요한 항목이다.

3장에서 다루는 데이터 라벨링 작업은 머신러닝이나 딥러닝 모델링 작업 이전에 학습 데이터에 특정한 값을 부여해주는 작업이다. 툴을 적용하여 일관된 품질을 유지하는 작업은 AI 산업의 기본이기도 하지만, 기업 AI 사업의 성공적인 발전을 이루기 위한 핵심 요소이다. 본 장에서는 Window와 리눅스 Ubuntu 환경에서 데이터 라벨링 툴인 labelImg을 설치하여 라벨링 실습을 수행해본다.

4장에서는 머신러닝, 딥러닝 및 인공지능을 위한 최고의 프로그래밍 언어로 파이썬을 포함시킨 다양한 기능을 다루고 있으며, 딥러닝을 위한 다양한 파이썬 라이브러리를 소개하고 있다.

5장에서는 아나콘다(Anaconda)를 이용한 딥러닝 개발 환경을 구축하는 과정을 설명한다. 아나콘다를 사용하면 파이썬을 이용한 빅데이터 분석이나 머신러닝을 공부하는 데 필요한 라이브러리 패키지를 쉽게 설치할 수 있어 개발환경 구축이 용이하다. 또한 주니퍼 노트북(Jupyter Notebook)을 설치하여 딥러닝 알고리즘 및 코드를 실행하는 방법을 학습한다.

6장에서는 Jetson TX2 보드 하에서의 딥러닝 개발환경 구축을 다룬다. TX2는 GPU로 유명한 NVIDIA에서 개발한 임베디드 AI 컴퓨팅 장치로, 다양한 산업용 로봇 서비스를 개발하기 위한 하드웨어 솔루션이다. 본 장에서는 TX2 기반으로 NVIDIA에서 제공하는 AI 어플리케이션 구축을 위한 포괄적인 솔루션인 Jetpack SDK를 리눅스(Ubuntu 18.04 LST) 하에서 설치 및 개발환경을 세팅하는 과정을 기술한다.

7장에서는 Jetson Xavier NX 보드 하에서의 개발환경 구축을 다룬다. NX 보드는 GPU로 유명한 NVIDIA에서 개발한 임베디드 AI 컴퓨팅 장치로, 다양한 산업용 로봇 서비스를 개발하기 위한 하드웨어 솔루션이다. 인공지능 소형 컴퓨터로서 이 위에 Linux 계열 OS(주로 Ubuntu를 사용)를 올리고 그 위에 Tensorflow, ROS 등 다양한 로봇 개발에 필요한 다양한 라이브러리나 프레임워크 등을 올려 사용할 수 있는 인공지능 임베디드 보드이다. NX 캐리어보드 기반 하에서, Jetpack SDK를 리눅스(Ubuntu 18.04 LST) 하에서 설치 및 개발환경을 세팅하는 과정을 기술한다.

8장에서는 TX2 보드에서 CNN을 이용하여 필기체 문자 분류와 동물을 분류하는 실습을 한다. 딥러닝 라이브러리로는 텐서플로우를 이용하여 진행한다.

9장에서는 Xavier NX 캐리어보드에서 CNN을 이용하여 필기체 문자 분류와 동물을 분류하는 실습을 한다. 딥러닝 라이브러리로는 텐서플로우를 이용하여 진행한다.

10장에서는 TX2 보드에서 YOLO 기반 객체 검출응용을 다룬다. YOLO는 ‘You Only Look Once’의 약어로, 실시간 객체 검출에 사용되는 알고리즘이다. 본 장에서는 YOLOv3와 YOLOv5 응용들을 가지고 실습해 본다.

11장에서는 Xavier NX 캐리어보드에서 YOLO 기반 객체 검출응용을 다룬다. YOLO는 실시간 객체 검출에 사용되는 알고리즘이다. 본 장에서는 YOLOv3와 YOLOv5 응용들을 가지고 실습해 본다.

12장에서는 머신러닝 기반의 얼굴인식 및 활용 응용들을 다룬다. 얼굴인식 기술은 많은 연구를 통해 여러 가지 모델이 제안되었는데 OpenCV의 Haar Cascade와 Dlib의 HoG(Histogram of oriented Gradient)가 대표적인 오픈소스 모델이다. 본 장에서는 Dlib와 Haar Cascade 라이브러리를 이용한 머신러닝 얼굴인식 응용들을 실습한다.

13장에서는 강화학습을 다룬다. 본 장에서는 OpenAI GYM 기반의 CartPole 예제 실습, Frozen Lake 예제실습, Q-Learning 알고리즘 등을 다룬다.

본 도서에서 다루지 못한 부분이나 미흡한 부분은 수정 및 보완하여 추후 개정판에서 더 좋은 콘텐츠로 만들 것을 독자들께 약속드린다.

끝으로 본 도서가 탄생하기까지 여러 테스트보드 및 개발환경을 제공해주신 ㈜휴인스 송태훈 대표와 이하 임직원, 그리고 본 도서를 출간하기까지 수고해주신 복두출판사 대표님과 이하 임직원 여러분께 감사의 인사를 전하고 싶다.

2023년 2월
인하원점에서
박 병 섭

목차

1장 인공지능과 딥러닝 개요

1.1 개요

1.2 CNN(합성곱 신경망 : Convolution Neural Network)

1.3 RNN(순환신경망 : Recurrent Neural Network)

1.4 YOLO



2장 분류 성능지표 및 데이터셋

2.1 분류 성능평가지표

2.2 분류 성능척도의 응용

2.3 학습세트와 테스트세트

2.4 데이터셋 학습 절차

2.5 COCO 데이터셋

2.6 MNIST 데이터셋



3장 데이터 라벨링

3.1 개요

3.2 라벨링 도구들

3.3 라벨링 포맷

3.4 Window 환경에서 labelImg 설치

3.5 Ubuntu 환경에서 labelImg 설치



4장 딥러닝 파이썬 라이브러리

4.1 개요

4.2 텐서플로우

4.3 케라스 라이브러리

4.4 텐서플로우와 케라스의 차이점

4.5 파이토치

4.6 넘파이



5장 아나콘다 개발환경 구축

5.1 아나콘다

5.2 주피터 노트북 설치

5.3 주피터 랩 설치



6장 Jetson TX2 개발환경 구축

6.1 TX2 개요

6.2 Jetpack, NVIDIA SDK Manager 개요

6.3 NVIDIA SDK Manager 설치

6.4 NVIDIA SDK Manager로 Jetson TX2에 Jetpack 설치



7장 Jetson Xavier NX 개발환경 구축

7.1 Jetson Xavier NX 개요

7.2 Jetpack, NVIDIA SDK Manager

7.3 NVIDIA SDK Manager 설치

7.4 NVIDIA SDK Manager로 Jetson Xavier NX에 Jetpack 설치



8장 TX2 보드에서 CNN 기반 객체 분류

8.1 CNN 개요

8.2 텐서플로우 설치실습

8.3 소프트맥스 함수를 이용한 필기 숫자 분류

8.4 Dogs-Cats 이미지 분류 실습



9장 NX 보드에서 CNN 기반 객체 분류

9.1 CNN 개요

9.2 텐서플로우 설치실습

9.3 소프트맥스 함수를 이용한 필기 숫자 분류

9.4 Dogs-Cats 이미지 분류 실습



10장 TX2 보드에서 YOLO 기반 객체 검출

10.1 YOLOv3 설치 및 모델 학습

10.2 YOLOv5 모델 학습



11장 NX 보드에서 YOLO 기반 객체 검출

11.1 YOLOv3 설치 및 모델 학습

11.2 YOLOv5 모델 학습



12장 머신러닝 기반의 얼굴인식 및 활용

12.1 얼굴인식 라이브러리

12.2 얼굴인식 패키지

12.3 Dlib 기반 머신러닝 실습

12.4 Haar Cascade 기반 얼굴인식 및 비식별화



13장 강화학습 알고리즘 및 응용

13.1 강화학습 개요

13.2 OpenAI GYM

13.3 Q-Learning

13.4 DQN

한줄 서평