tensorflow 이미지 인식 예제

컨볼루션 신경망 기반 이미지 분류기를 구축하는 방법을 시연하기 위해 개 이미지를 고양이의 이미지와 식별하고 분리하는 6층 신경망을 구축합니다. 우리가 구축 할이 네트워크는 CPU에서 실행할 수있는 매우 작은 네트워크입니다. 이미지 분류를 수행하는 데 매우 능숙한 기존 신경망에는 더 많은 매개 변수가 있으며 CPU에서 학습하는 경우 많은 시간이 소요됩니다. 그러나, 이 게시물에서, 내 목표는 ILSVRC에 참여 하는 대신 Tensorflow를 사용 하 여 실제 컨볼루션 신경 망을 구축 하는 방법을 보여. 텐서플로우 튜토리얼을 시작하기 전에 컨볼루션 신경망의 기본을 살펴보겠습니다. conv-nets에 이미 익숙한 경우(그리고 conv-net이라고 부름) 2부 즉 Tensorflow 자습서로 이동할 수 있습니다. 텐서플로우는 대부분의 최적화 기능을 구현합니다. 그라데이션 계산 및 중량 최적화를 위해 AdamOptimizer를 사용해야 합니다. 우리는 0.0001의 학습 속도로 비용을 최소화하기 위해 노력하고 있음을 지정합니다. 파일 개 – 고양이 – model.meta는 전체 네트워크 그래프를 포함하고 우리는 나중에 그래프를 다시 만드는 데 사용할 수 있습니다. 이를 위해 텐서플로우에서 제공하는 보호기 오브젝트를 사용해야 합니다. 이제 가중치의 최적 값에 도달하기 위해 최소화할 비용을 정의해 보겠습니다.

우리는 마지막으로 완전히 연결된 레이어와 실제 레이블의 출력을 소요 Tensorflow 함수 softmax_cross_entropy_with_logits를 사용하여 계산되는 간단한 비용을 사용하여 그 평균우리에게 비용을 줄 것이다 cross_entropy을 계산합니다. 이 자습서에서는 Tensorflow 딥 러닝 프레임워크를 사용하여 범주별로 이미지를 얼마나 쉽게 학습할 수 있는지 보여 드리겠습니다. 이 튜토리얼의 경우, 나는 이미지에서 강아지의 품종을 결정하기 위해, Kaggle의 예측 경쟁 “개 품종 식별”에서 간단한 사용 사례를 촬영했습니다. 이미지 인식은 이미지를 신경망에 입력하고 해당 이미지에 대해 일종의 레이블을 출력하는 작업을 말합니다. 네트워크가 출력하는 레이블은 미리 정의된 클래스에 해당합니다. 이미지에 레이블을 지정하거나 하나만 레이블을 지정할 수 있는 클래스가 여러 개 있을 수 있습니다. 단일 클래스가 있는 경우 “인식”이라는 용어가 자주 적용되는 반면 다중 클래스 인식 작업은 종종 “분류”라고 합니다. 이제 두 이미지에 대한 결과는 아래와 동일하게 표시됩니다.

우리는 예측 클래스 ID를 가지고, ImageNet 레이블을 가져 오기, 당신이 결정해야 신경망의 아키텍처를 디자인 할 때 예측을 디코딩 : 당신은 레이어를 정렬하는 방법? 어떤 레이어를 사용할 것인가? 각 층 등에서 얼마나 많은 뉴런을 사용할 수 있습니까? 아키텍처를 설계하는 것은 약간 복잡하고 고급 주제이며 많은 연구가 필요합니다. 많은 표준 문제에 대 한 좋은 작동 하는 많은 표준 아키텍처가 있다. 예는 알렉스넷, 구글넷, 인셉션레스넷, VGG 등입니다. 처음에는 표준 네트워크 아키텍처만 사용해야 합니다. 신경망에 대한 많은 경험을 쌓은 후에 네트워크 설계를 시작할 수 있습니다. 따라서, 지금 그것에 대해 걱정하지 말자. TensorFlow 2.0의 고급 Keras API를 사용하여 이미지 분류 모델을 신속하게 빌드해 보겠습니다. 전송 학습을 위해 사전 학습된 MobileNetV2 모델을 기능 검출기로 사용할 수 있습니다.

Geplaatst in Geen categorie door admin. Zet de link bij je favorieten link.