Main Content

darknet19

DarkNet-19 컨벌루션 신경망

R2020a 이후

  • DarkNet-19 network architecture

설명

DarkNet-19는 19개 계층으로 구성된 컨벌루션 신경망입니다. ImageNet 데이터베이스의 1백만 개가 넘는 영상에 대해 훈련된 신경망의 사전 훈련된 버전을 불러올 수 있습니다 [1]. 사전 훈련된 신경망은 영상을 키보드, 마우스, 연필, 각종 동물 등 1,000가지 사물 범주로 분류할 수 있습니다. 그 결과 이 신경망은 다양한 영상을 대표하는 다양한 특징을 학습했습니다. 신경망의 영상 입력 크기는 256×256입니다. MATLAB®의 여타 훈련된 신경망에 대한 자세한 내용은 사전 훈련된 심층 신경망 항목을 참조하십시오.

DarkNet-19 모델을 사용하여 classify로 새 영상을 분류할 수 있습니다. GoogLeNet을 사용하여 영상 분류하기 항목의 단계를 따르되 GoogLeNet을 DarkNet-19로 바꾸어서 수행하십시오.

새로운 분류 작업에서 신경망을 다시 훈련시키려면 새로운 영상을 분류하도록 딥러닝 신경망 훈련시키기 항목의 단계를 수행하고 GoogLeNet 대신 DarkNet-19를 불러오십시오.

DarkNet-19는 종종 객체 검출 문제와 YOLO 워크플로의 기반으로 사용됩니다[2]. YOLO(You Only Look Once) v2 객체 검출기를 훈련시키는 방법에 대한 예제는 YOLO v2 딥러닝을 사용한 객체 검출 항목을 참조하십시오. 이 예제에서는 특징 추출에 ResNet-50을 사용합니다. 응용 사례의 요구 사항에 따라 DarkNet-19, DarkNet-53, MobileNet-v2 또는 ResNet-18과 같은 기타 사전 훈련된 신경망도 사용할 수 있습니다.

예제

net = darknet19는 ImageNet 데이터 세트에서 훈련된 DarkNet-19 신경망을 반환합니다.

이 함수를 사용하려면 Deep Learning Toolbox™ Model for DarkNet-19 Network 지원 패키지가 필요합니다. 이 지원 패키지가 설치되어 있지 않으면 함수에서 다운로드 링크를 제공합니다.

net = darknet19('Weights','imagenet')은 ImageNet 데이터 세트에서 훈련된 DarkNet-19 신경망을 반환합니다. 이 구문은 net = darknet19와 동일합니다.

layers = darknet19('Weights','none')은 훈련되지 않은 DarkNet-19 신경망 아키텍처를 반환합니다. 훈련되지 않은 모델에는 지원 패키지가 필요하지 않습니다.

예제

모두 축소

Deep Learning Toolbox Model for DarkNet-19 Network 지원 패키지를 다운로드하고 설치합니다.

명령줄에 darknet19를 입력합니다.

darknet19

Deep Learning Toolbox Model for DarkNet-19 Network 지원 패키지가 설치되어 있지 않은 경우, 필요한 지원 패키지로 연결되는 애드온 탐색기 링크를 함수에서 제공합니다. 지원 패키지를 설치하려면 링크를 클릭한 다음 설치를 클릭하십시오. 명령줄에 darknet19를 입력하여 설치가 성공적으로 완료되었는지 확인하십시오. 필요한 지원 패키지가 설치되어 있는 경우, 함수가 SeriesNetwork 객체를 반환합니다.

darknet19
ans = 

  SeriesNetwork with properties:

         Layers: [64×1 nnet.cnn.layer.Layer]
     InputNames: {'input'}
    OutputNames: {'output'}

심층 신경망 디자이너를 사용하여 신경망을 시각화합니다.

deepNetworkDesigner(darknet19)

새로 만들기를 클릭하여 심층 신경망 디자이너에서 사전 훈련된 다른 신경망을 살펴봅니다.

Deep Network Designer start page showing available pretrained neural networks

신경망을 다운로드해야 할 경우에는 원하는 신경망에서 잠시 멈추고 설치를 클릭하여 애드온 탐색기를 엽니다.

새로운 영상 세트를 분류하도록 전이 학습을 사용하여 신경망을 다시 훈련시킬 수 있습니다.

예제 새로운 영상을 분류하도록 딥러닝 신경망 훈련시키기 항목을 엽니다. 이 원본 예제는 GoogLeNet 사전 훈련된 신경망을 사용합니다. 다른 신경망을 사용하여 전이 학습을 수행하려면 예제에서 사전 훈련된 신경망 중 원하는 신경망을 불러오고 다음 단계를 수행하십시오.

GoogLeNet 대신 DarkNet-19 신경망을 불러옵니다.

net = darknet19

예제에서 남은 단계를 수행하여 신경망을 다시 훈련시킵니다. 신경망의 마지막 학습 가능한 계층과 분류 계층을 새로운 훈련용 계층으로 바꿔야 합니다. 이 예제에서는 교체할 계층을 찾는 방법을 보여줍니다.

출력 인수

모두 축소

사전 훈련된 DarkNet-19 컨벌루션 신경망으로, SeriesNetwork 객체로 반환됩니다.

훈련되지 않은 DarkNet-19 컨벌루션 신경망 아키텍처로, Layer 배열로 반환됩니다.

참고 문헌

[1] ImageNet. http://www.image-net.org

[2] Redmon, Joseph. “Darknet: Open Source Neural Networks in C.” https://pjreddie.com/darknet.

확장 기능

버전 내역

R2020a에 개발됨