변수 L이 해당 값과 같다고 가정해 보겠습니다. 당신이 상상할 수 있듯이, 손실은 훈련 이미지의 처음 몇 매우 높을 것이다. 이제 직관적으로 생각해 봅시다. 우리는 예측 된 레이블 (ConvNet의 출력)이 교육 레이블과 동일한 지점으로 가고 싶습니다 (이것은 우리의 네트워크가 예측을 올바르게 얻었다는 것을 의미합니다). 거기에 도착하기 위해, 우리는 우리가 가지고있는 손실의 양을 최소화할 수 있습니다. 미적분학의 최적화 문제로 시각화하여 네트워크의 손실(또는 오류)에 가장 직접적으로 기여한 입력(사례의 가중치)을 알아내고자 합니다. 신경망은 그 이름에서 알 수 있듯이 뇌 구조를 모델로 한 기계 학습 기술입니다. 그것은 뉴런이라는 학습 단위의 네트워크로 구성됩니다. 필터가 다른 이미지의 컨볼루션은 필터를 적용하여 가장자리 감지, 흐림 및 선명화와 같은 작업을 수행할 수 있습니다. 아래 예제에서는 다양한 유형의 필터(커널)를 적용한 후 다양한 컨볼루션 이미지를 보여 주며 있습니다. 컨볼루션 신경망.

생물학과 수학의 이상한 조합과 약간의 CS가 뿌려진 것처럼 들리지만, 이러한 네트워크는 컴퓨터 비전 분야에서 가장 영향력 있는 혁신 중 일부였습니다. 2012년은 알렉스 Krizhevsky가 그 해의 ImageNet 대회(기본적으로 컴퓨터 비전의 연례 올림픽)에서 우승하는 데 사용되면서 신경망이 두드러지게 증가한 첫 해였으며, 분류 오류 기록을 26%에서 15%로 떨어뜨리면서 놀라운 개선을 이룬다. 당시에. 그 이후로 많은 기업들이 서비스의 핵심에서 딥 러닝을 사용하고 있습니다. 페이스 북은 자동 태그 알고리즘에 대 한 신경망을 사용 하 여, 그들의 사진 검색에 대 한 구글, 그들의 제품 추천에 대 한 아마존, 그들의 홈 피드 개인화에 대 한 Pinterest, 그리고 그들의 검색 인프라에 대 한 인스 타 그램. 다음은 임의 입력과 두 개의 숨겨진 레이어가 있는 신경망의 기본 파이썬 코드입니다. 그래서 위대한 앤드류 Ng에 의해 가르쳐 우리의 deeplearning.ai 과정 시리즈 (딥 러닝 전문화)의 3 부에 오신 것을 환영합니다. ConvNet(컨볼루션 신경망)의 작동 방식을 탐색하는 것 외에도 ConvNet의 다양한 아키텍처와 YOLO를 사용하여 개체 검색 모델을 빌드하는 방법에 대해서도 살펴보겠습니다. 마지막으로, 우리는 우리가 실제 응용 프로그램에서 이러한 개념을 적용 할 수있는 위치를 이해하기 위해 함께 우리의 학습을 묶어 (얼굴 인식 및 신경 스타일 전송 등). 첫째, 몇 가지 필요한 수입을 할 수 있습니다. 케라스 라이브러리는 컨볼루션 신경망을 구축하는 데 도움이 됩니다.

우리는 케라스를 통해 mnist 데이터 집합을 다운로드합니다. 레이어를 추가할 수 있는 미리 빌드된 각선 모델인 순차 모델을 가져옵니다. 컨볼루션 및 풀링 레이어를 가져옵니다. 또한 레이블을 예측하는 데 사용되는 조밀한 레이어도 가져옵니다. 드롭아웃 레이어는 과적합을 줄이고 평평한 레이어는 3차원 벡터를 1차원 벡터로 확장합니다. 마지막으로 행렬 작업에 대해 numpy를 가져옵니다. 이 경우 입력(6 X 6 X 3)은 [0]이고 필터(3 X 3 X 3)는 가중치 w[1]입니다. 레이어 1의 이러한 활성화는 레이어 2의 입력역할을 합니다. 분명히 컨볼루션 신경망의 경우 파라미터 수는 이미지 크기와 무관합니다. 그것은 본질적으로 필터 크기에 따라 달라집니다. 모양 3 X 3 X 3 각각에 10개의 필터가 있다고 가정합니다. 해당 레이어의 매개 변수 수는 어떻게 됩니까? 이 문제를 해결해 보겠습니다: 신경 스타일 전송에 대해 자세히 살펴보기 전에 먼저 ConvNet의 더 깊은 레이어가 실제로 무엇을 하고 있는지 시각적으로 이해해 보겠습니다.

224 X 224 X 3 입력 이미지에서 컨볼루션 신경망을 학습했다고 가정해 보겠습니다.

Scroll Up