재미있는 수학

Menu

matlab cnn 예제

MATLAB® 간단한 웹캠 및 심층 신경망을 사용하여 주변의 물체를 식별하는 방법에 대한 간단한 데모를 시청하십시오. 이 데모에서는 백만 개 이상의 이미지에 대해 학습된 사전 학습된 심층 컨볼루션 신경망(CNN 또는 ConvNet)인 AlexNet을 사용합니다. 이 예제에는 카메라 설정 및 개체 인식 수행의 두 부분으로 구성됩니다. 첫 번째 부분은 웹캠 명령을 사용하여 카메라에서 이미지를 획득하는 방법을 보여줍니다. MATLAB은 drawnow 명령을 사용하여 카메라로 촬영한 이미지를 지속적으로 업데이트하고 표시할 수 있습니다. 두 번째 부분에서는 AlexNet이라는 미리 훈련된 심층 신경망을 다운로드하고 MATLAB을 사용하여 카메라 이미지를 지속적으로 처리하는 방법을 설명합니다. AlexNet은 이미지를 입력으로 가져와 이미지의 개체에 대한 레이블을 제공합니다. 주변의 객체를 실험하여 AlexNet이 얼마나 정확한지 확인할 수 있습니다. 오늘날 MATLAB을 사용하면 매우 쉽게 작업을 수행할 수 있지만, 불과 몇 년 전만 해도 공상 과학 소설로 간주되었을 것입니다. 컴퓨팅 기능 3.0 이상의 CUDA 지원 엔비디아™ GPU를 사용하면 이 예제를 실행하는 것이 좋습니다.

GPU를 사용하려면 병렬 컴퓨팅 도구 상자™. 예를 들어, 딥 러닝 애플리케이션은 CNN을 사용하여 수천 건의 병리학 보고서를 검사하여 암세포를 시각적으로 감지합니다. 또한 CNN은 자율 주행 자동차가 물체를 감지하고 도로 표지판과 보행자의 차이를 구별하는 방법을 학습할 수 있도록 합니다. 기본에 익숙하고 MATLAB® 딥 러닝을 적용 할 준비가 되셨습니까? 이 전자 책의 실습 예제를 시작하십시오. 이미지 분류를 위한 신경망 교육에 대한 세 가지 방법을 알아봅니다. 각 CNN에는 서로 다른 입력 크기 요구 사항이 있습니다. 이 예제에서 사용된 것은 224by-224-3인 이미지 입력이 필요합니다. 마지막 계층은 분류 계층이며 해당 특성은 분류 작업에 따라 다릅니다. 이 예제에서는 로드된 CNN 모델이 1000방향 분류 문제를 해결하기 위해 학습되었습니다. 따라서 분류 계층에는 ImageNet 데이터 집합의 1000개 클래스가 있습니다. 컨볼루션 레이어 컨볼루션 레이어에서 첫 번째 인수는 filterSize이며, 이는 이미지를 따라 스캔하는 동안 학습 함수가 사용하는 필터의 높이와 너비입니다. 이 예제에서 숫자 3은 필터 크기가 3by-3임을 나타냅니다.

필터의 높이와 너비에 대해 다른 크기를 지정할 수 있습니다. 두 번째 인수는 입력의 동일한 영역에 연결하는 뉴런의 수인 필터 의 수, numFilters입니다. 이 매개변수는 피처 맵의 수를 결정합니다. `패딩` 이름-값 쌍을 사용하여 입력 피처 맵에 패딩을 추가합니다. 기본 보폭이 1인 컨볼루션 레이어의 경우 `동일` 패딩은 공간 출력 크기가 입력 크기와 동일하도록 합니다. convolution2dLayer의 이름-값 쌍 인수를 사용하여 이 레이어의 보폭 및 학습 속도를 정의할 수도 있습니다. 결과가 전송 학습을 초과할 수 있는 경우도 있지만(아래 참조) 이 방법은 새로운 네트워크에서 기능의 변형을 이해하기 위해 개체의 많은 예제가 필요하기 때문에 교육을 위해 더 많은 이미지가 필요한 경향이 있습니다. 교육 시간이 길어지는 경우가 많으며 네트워크 계층의 조합이 너무 많아 처음부터 네트워크를 구성하는 것이 어려울 수 있습니다. 일반적으로 네트워크를 구성하고 계층을 구성할 때 다른 네트워크 구성을 참조하여 연구원이 성공한 것으로 입증된 것을 활용하는 데 도움이 됩니다.

No categories

Comments

Sorry, comments are closed for this item.