Deep Learning Toolbox

딥러닝 네트워크 생성, 분석 및 학습

 

Deep Learning Toolbox™(이전 명칭 Neural Network Toolbox™)는 알고리즘, 사전 훈련된 모델 및 앱을 사용해 딥 뉴럴 네트워크를 설계 및 구현하는 프레임워크를 제공합니다. 컨벌루션 뉴럴 네트워크(ConvNet, CNN) 및 장기 단기 메모리(LSTM) 네트워크를 사용하여 이미지, 시계열 및 텍스트 데이터에 대한 분류 및 회귀를 수행할 수 있습니다. 사용자 지정 훈련 루프, 공유 가중치 및 자동 미분을 사용하여 생성적 적대 신경망(GAN)과 샴 네트워크와 같은 고급 네트워크 아키텍처를 빌드할 수 있습니다. 앱과 플롯을 사용해 활성화를 시각화하고, 네트워크 아키텍처를 편집 및 분석하고, 훈련 진행 상황을 모니터링할 수 있습니다.

ONNX 형식을 통해 TensorFlow™ 및 PyTorch와 모델을 교환하고, TensorFlow-Keras 및 Caffe에서 모델을 가져올 수 있습니다. 이 툴박스는DarkNet-53, ResNet-50, NASNet, SqueezeNet 및 기타 많은 사전 훈련된 모델로 전이 학습을 지원합니다.

Parallel Computing Toolbox™를 사용하여 단일 또는 다중 GPU 워크스테이션에서 훈련의 속도를 높이거나 MATLAB Parallel ServerTM을 사용하여 NVIDIA® GPU Cloud 및 Amazon EC2® GPU 인스턴스를 포함하는 클러스터와 클라우드로 확장할 수 있습니다.

시작하기:

네트워크 및 아키텍처

딥러닝 네트워크를 이미지, 시계열 및 텍스트 데이터에 대한 분류, 회귀 및 특징 학습에 대해 학습시키려면 Deep Learning Toolbox를 사용합니다.

컨벌루션 뉴럴 네트워크

물체, 얼굴 및 장소 인식을 위해 이미지 내의 패턴 학습. 특징 추출 및 이미지 인식을 수행하기 위해 컨벌루션 뉴럴 네트워크(CNN) 구성 및 학습.

장기 단기 메모리 네트워크

신호, 오디오, 텍스트 및 다른 시계열 데이터를 포함한 시퀀스 데이터에서 장기 종속성 학습. 분류 및 회귀를 수행하기 위해 장기 단기 메모리(LSTM) 네트워크 구성 및 학습. 

LSTM을 사용한 작업.

네트워크 아키텍처

딥러닝 네트워크를 구축하기 위해 유향 비순환 그래프(DAG) 및 순환 아키텍처와 같은 다양한 네트워크 구조 사용. 사용자 지정 훈련 루프, 공유 가중치 및 자동 미분을 사용하여 생성적 적대 신경망(GAN)과 샴 네트워크와 같은 고급 네트워크 아키텍처 빌드.

다양한 네트워크 아키텍처를 사용한 작업.

네트워크 설계 및 분석

대화형 앱을 사용한 딥러닝 네트워크 생성, 편집, 시각화 및 분석. 

딥러닝 네트워크 설계

Deep Network Designer 앱을 사용하여 처음부터 딥 네트워크 생성. 사전 학습된 모델 가져오기, 네트워크 구조 시각화, 레이어 편집 및 파라미터 조정. 

딥러닝 네트워크 분석

학습 전 오류, 경고 및 레이어 호환성 문제를 감지 및 디버그하기 위한 네트워크 아키텍처 분석. 네트워크 토폴로지 시각화 및 학습 가능한 파라미터와 활성화와 같은 세부 정보 보기.

딥러닝 네트워크 아키텍처 분석.

Manage Deep Learning Experiments

Manage multiple deep learning experiments with the Experiment Manager app. Keep track of training parameters, analyze results, and compare code from different experiments. Use visualization tools such as training plots and confusion matrices, sort and filter experiment results, and define custom metrics to evaluate trained models.

Design and run experiments to train and compare deep learning networks.

전이 학습 및 사전 훈련된 모델

추론을 위해 MATLAB 안으로 사전 학습 모델 가져오기. 

전이 학습

사전 훈련된 네트워크에 액세스하여 새로운 작업을 학습하기 위한 시작점으로 사용하고, 학습한 특징을 더 적은 훈련 이미지를 사용하여 새로운 작업으로 빠르게 전이.

사전 훈련된 모델

단 한 줄의 코드를 사용하여 조사로부터 최신 사전 훈련된 네트워크에 액세스. Inception-v3, SqueezeNet, NASNet, GoogLeNet을 포함한 사전 훈련된 모델 가져오기.

딥 뉴럴 네트워크 모델 분석.

시각화 및 디버그

딥러닝 네트워크의 훈련 진행 상황 및 학습된 특징의 활성화 시각화.

학습 진행

다양한 메트릭의 플롯을 사용하여 모든 반복에 대해 학습 진행 보기. 훈련 메트릭에 대해 검증 메트릭을 플로팅하여 네트워크 과적합 여부를 시각적으로 확인.

모델의 학습 진행 모니터링.

네트워크 활성화

계층에 맞는 활성화 추출, 학습 특징 시각화 및 활성화를 사용한 머신 러닝 분류기 학습. Grad-CAM 접근 방법을 사용하여 딥러닝 네트워크가 분류 결정을 내리는 이유 이해.

활성화 시각화.

프레임워크 상호 운용성

MATLAB에서 딥러닝 프레임워크와 상호 운용.

ONNX 변환기

다른 딥러닝 프레임워크와의 상호 운용성을 위해 MATLAB® 내에서 ONNX 모델 가져오기 및 내보내기. ONNX로 프레임워크 한 곳에서 모델을 학습한 후 추론을 위해 다른 곳으로 전이할 수 있습니다. GPU Coder™를 사용하여 최적화된 CUDA 코드를 생성하고 MATLAB Coder™를 사용하여 임포터 모델을 위한 C++ 코드 생성.

딥러닝 프레임워크와의 상호 운용.

TensorFlow-Keras 임포터

추론 및 전이 학습을 위해 TensorFlow-Keras에서 MATLAB으로 모델 가져오기. GPU Coder를 사용하여 최적화된 CUDA 코드를 생성하고 MATLAB Coder를 사용하여 임포터 모델을 위한 C++ 코드 생성.

Caffe 임포터

추론 및 전이 학습을 위해 Caffe Model Zoo에서 MATLAB으로 모델 가져오기.

Caffe Model Zoo에서 MATLAB 안으로 모델 가져오기.

훈련 가속

GPU, 클라우드 및 분산 컴퓨팅을 사용한 딥러닝 학습 가속. 

GPU 가속

고성능 NVIDIA ® GPU를 사용하여 딥러닝 훈련 및 추론 가속. 단일 워크스테이션 GPU에서 훈련을 수행하거나 데이터 센터 또는 클라우드에서 DGX 시스템을 사용해 다중 GPU로 확장. Parallel Computing Toolbox계산 용량이 3.0 이상인 대부분의 CUDA® 사용 가능 NVIDIA GPU와 함께 MATLAB을 사용할 수 있습니다.

GPU를 사용한 가속.

클라우드 가속

클라우드 인스턴스를 사용한 딥러닝 훈련 시간 단축. 최고의 결과를 위한 고성능 GPU 인스턴스 사용.

Parallel Computing Toolbox 및 MATLAB Parallel Server로 클라우드에서 훈련 가속.

분산 컴퓨팅

MATLAB Parallel Server를 사용하여 네트워크의 다중 서버상의 다중 프로세서에서 딥러닝 훈련 실행.

병렬 및 클라우드에서 딥러닝 확장.

코드 생성 및 배포

임베디드 시스템에 학습 네트워크 배포 또는 광범위한 시스템 구축 환경과 통합.

코드 생성

GPU Coder 를 사용하여 MATLAB 코드로부터 딥러닝, 임베디드 비전 및 자율 시스템을 위한 최적화된 CUDA 코드 생성. MATLAB Coder 를 사용하여 Intel® Xeon® 및 ARM® Cortex®-A 프로세서로 딥러닝 네트워크를 배포하기 위한 C++ 코드 생성.

독립형 응용 프로그램 배포

MATLAB Compiler™MATLAB Compiler SDK™를 사용하여 학습된 네트워크를 딥러닝 모델이 있는 MATLAB 프로그램에서 C++ 공유 라이브러리, Microsoft® .NET 어셈블리, Java® 클래스 및 Python® 패키지로 배포.

MATLAB Compiler를 사용한 독립형 MATLAB 프로그램 공유.

얕은 뉴럴 네트워크

다양한 지도 및 비지도 얕은 뉴럴 네트워크 아키텍처를 지닌 뉴럴 네트워크 사용.

지도 네트워크

동적 시스템 모델링 및 제어, 잡음 데이터 분류 및 미래 사건 예측을 위해 지도 얕은 뉴럴 네트워크 학습. 

얕은 뉴럴 네트워크.

비지도 네트워크

얕은 네트워크를 새로운 입력에 지속적으로 조절하여 데이터 내에서 관계 탐색 및 분류 계획 자동 지정. 자기 조직화, 비지도 네트워크, 경쟁 계층 및 자기 조직화 지도 사용.

자기 조직화 지도.

누적형 자동 인코더

자동 인코더를 사용하여 데이터 세트에서 저차원 특징을 추출하여 비지도 특징 변화 수행. 다중 인코더 학습 및 누적을 통해 지도 학습에도 누적형 자동 인코더를 사용할 수 있습니다.

누적형 자동 인코더.

최신 기능

Experiment Manager 앱

여러 건의 딥러닝 실험 관리, 학습 파라미터 추적, 결과와 코드 분석 및 비교

Deep Network Designer 앱

이미지 분류를 위해 대화형 방식으로 네트워크 학습시키기, 학습을 위한 MATLAB 코드 생성, 사전 학습된 모델에 액세스

사용자 지정 학습 루프

다중 입력, 다중 출력 또는 3차원 CNN 계층을 갖는 네트워크 학습시키기

딥러닝 예제

주의를 사용하여 이미지 캡션 네트워크 학습시키기, 데이터 레이블과 특성을 사용하여 조건부 GAN 학습시키기

사전 학습된 네트워크

DarkNet-19 및 DarkNet-53을 사용하여 전이 학습 수행

ONNX 지원

ONNX 모델 변환기를 사용하여 다중 입력 또는 다중 출력을 갖는 네트워크 가져오기

학습 유연성

사용자 지정 학습 루프를 위한 사용자 지정 계층 후진 함수 지정

이러한 기능 및 해당 함수에 대한 세부 정보는 릴리스 정보를 참조하십시오.

MATLAB for Deep Learning

With just a few lines of MATLAB code, you can apply deep learning techniques to your work whether you’re designing algorithms, preparing and labeling data, or generating code and deploying to embedded systems.