주요 콘텐츠

신경망 패턴 인식 앱을 사용한 패턴 인식

이 예제에서는 신경망 패턴 인식 앱을 사용하여 얕은 신경망을 훈련시켜 패턴을 분류하는 방법을 보여줍니다.

nprtool을 사용하여 신경망 패턴 인식 앱을 엽니다.

nprtool

데이터 선택하기

신경망 패턴 인식 앱에는 신경망 훈련을 시작하는 데 사용할 수 있는 예제 데이터가 있습니다.

유리 분류 예제 데이터를 가져오려면 가져오기 > 유리 데이터 세트 가져오기를 선택하십시오. 이 데이터 세트를 사용하여 유리를 창 또는 창이 아닌 것으로 분류하도록 신경망을 훈련시킬 수 있습니다. 분류에는 유리의 화학적 속성을 사용합니다. 파일이나 작업 공간에서 사용자 소유의 데이터를 가져올 경우, 예측 변수와 응답 변수를 지정하고 관측값이 행에 있는지 아니면 열에 있는지를 지정해야 합니다.

가져온 데이터에 관한 정보는 모델 요약에 표시됩니다. 이 데이터 세트는 214개의 관측값을 포함하며 각 관측값에는 9개의 특징이 있습니다. 각 관측값은 창 클래스와 창이 아닌 클래스 둘 중 하나로 분류됩니다.

데이터를 훈련 세트, 검증 세트, 테스트 세트로 분할합니다. 디폴트 설정을 유지합니다. 데이터는 다음과 같이 분할됩니다.

  • 훈련에 70%.

  • 신경망이 일반화되고 있음을 검증하고 과적합 전에 훈련을 중지하는 데 15%.

  • 신경망 일반화를 독립적으로 테스트하는 데 15%.

데이터 분할에 대한 자세한 내용은 최적의 신경망 훈련을 위해 데이터 분할하기 항목을 참조하십시오.

신경망 만들기

신경망은 은닉 계층에 시그모이드 전달 함수가 있고 출력 계층에 소프트맥스 전달 함수가 있는 2계층 피드포워드 신경망입니다. 은닉 계층의 크기는 은닉 뉴런의 개수에 대응합니다. 디폴트 계층 크기는 10입니다. 신경망 창에서 신경망 아키텍처를 확인할 수 있습니다. 출력 뉴런의 개수는 2로 설정되며 응답 변수 데이터에서 지정하는 클래스의 수와 같습니다.

신경망 훈련시키기

신경망을 훈련시키려면 훈련을 클릭하십시오.

훈련 창에서 훈련 진행 상황을 확인할 수 있습니다. 훈련은 중지 기준 중 하나를 충족할 때까지 계속됩니다. 이 예제에서는 검증을 6회 연속으로 반복하는 동안 검증 오차가 그전까지의 가장 작은 검증 오차보다 크거나 같을 때까지("검증 기준이 충족됨") 훈련이 계속됩니다.

결과 분석하기

모델 요약에는 훈련 알고리즘에 대한 정보와 각 데이터 세트의 훈련 결과가 포함되어 있습니다.

플롯을 생성하여 결과를 더 자세히 분석할 수 있습니다. 혼동행렬을 플로팅하려면 플롯 섹션에서 혼동행렬을 클릭하십시오. 신경망 출력은 매우 정확합니다. 녹색 정사각형(대각선)의 올바른 분류 개수가 많고 빨간색 정사각형(비대각선)의 잘못된 분류 개수가 적습니다.

ROC 곡선을 보고 신경망 성능을 추가로 검증합니다. 플롯 섹션에서 ROC 곡선을 클릭하십시오.

각 축의 컬러 선은 ROC 곡선을 나타냅니다. ROC 곡선은 분계점 변화에 따른 참양성률(민감도) 대 거짓양성률(1-특이도)의 플롯입니다. 테스트 결과가 완벽하다면 100% 민감도와 100% 특이도로서 왼쪽 상단 코너에 점이 표시될 것입니다. 이 문제에서 신경망의 성능은 매우 좋습니다.

신경망 성능에 만족하지 못하는 경우 다음 중 하나를 수행할 수 있습니다.

  • 신경망을 다시 훈련시킵니다.

  • 은닉 뉴런 수를 늘립니다.

  • 더 큰 훈련 데이터 세트를 사용합니다.

훈련 세트에서의 성능은 좋은데 테스트 세트 성능이 나쁘면 모델이 과적합임을 의미할 수 있습니다. 뉴런 수를 줄이면 과적합을 줄일 수 있습니다.

또한, 추가 테스트 세트에 대해 신경망 성능을 평가할 수 있습니다. 추가 테스트 데이터를 불러와서 신경망을 평가하려면 테스트 섹션에서 테스트를 클릭하십시오. 모델 요약에 추가 테스트 결과가 표시됩니다. 플롯을 생성하여 추가 테스트 결과를 분석할 수도 있습니다.

코드 생성하기

코드 생성 > 단순 훈련 스크립트 생성을 선택하여 명령줄에서 이전 단계를 재현할 수 있는 MATLAB 코드를 만듭니다. 툴박스의 명령줄 기능을 사용하여 훈련 과정을 사용자 지정하는 방법을 배우려면 MATLAB 코드 만들기가 유용할 수 있습니다. 명령줄 함수를 사용한 패턴 인식에서 생성된 스크립트를 자세히 조사해야 합니다.

신경망 내보내기

훈련된 신경망을 작업 공간 또는 Simulink®로 내보낼 수 있습니다. 또한, 신경망과 함께 MATLAB Compiler™와 그 밖의 MATLAB 코드 생성 툴을 배포할 수 있습니다. 훈련된 신경망과 결과를 내보내려면 모델 내보내기 > 작업 공간으로 내보내기를 선택하십시오.

참고 항목

| | | |

도움말 항목