cnn tensorflow 예제

augusztus 2, 2019 6:09 du. Közzétette cccccccccccccc

위의 shape() 작업에서 -1은 batch_size 차원이 입력 데이터의 예제 수에 따라 동적으로 계산된다는 것을 의미합니다. 각 예제에는 7(풀2 높이) * 7(풀2 너비) * 64(풀2 채널) 피처가 있으므로 피처 차원에 7 * 7 * 64(총 3136)의 값을 갖기를 원합니다. 출력 텐서, pool2_flat은 모양 [batch_size, 3136]을 가합니다. 주어진 예제의 경우 예측 클래스는 가장 높은 원시 값을 가진 로그 텐서의 해당 행에 있는 요소입니다. 우리는 tf.argmax 함수를 사용하여이 요소의 인덱스를 찾을 수 있습니다 : 텐서 딥 러닝 데이터를 나타내는 방법입니다. 데이터 집합의 여러 기능에 대한 데이터를 저장하는 데 사용되는 다차원 배열로 각 피처가 추가 차원을 나타냅니다. 예를 들어 3차원 텐서(tensor)는 세 축을 따라 값을 저장하는 „큐브”입니다. 이제 각 단계를 로깅하지 않고 모델을 더 길게 학습하기 위해 단계=1000을 설정하지만 이 예제를 실행하기에는 적절한 시간입니다. 교육 CN은 계산 집약적입니다. 모델의 정확도를 높이려면 20,000단계와 같이 기차에 전달된 단계 수를 늘립니다. 이제 mnist_classifier에서 train_input_fn을 만들고 train()을 호출하여 수행할 수 있는 모델을 학습할 준비가 되었습니다.

numpy_input_fn 호출에서 교육 피처 데이터와 레이블을 각각 x(지시자) 및 y로 전달합니다. batch_size를 100으로 설정합니다(즉, 각 단계에서 100개의 예제의 minibatchs에서 모델이 학습됩니다). num_epochs=없음은 지정된 단계에 도달할 때까지 모델이 학습된다는 것을 의미합니다. 또한 셔플=True를 설정하여 교육 데이터를 섞습니다. 그런 다음 모델을 단일 단계를 학습하고 출력을 기록합니다: 마지막으로 패딩 인수의 또 다른 예가 있습니다. 컨볼루션 함수 conv2d()와 동일한 규칙이 `SAME` 옵션에 적용됩니다. 즉: max pooling의 위의 예를 고려할 때 출력의 왼쪽 위 값은 입력 이미지의 왼쪽 위 2×2 정사각형에만 의존합니다. 이 경우 tf.float32를 사용하여 데이터 형식을 명시적으로 제공했습니다. 따라서 이 데이터 형식은 32비트 형태로 저장되는 단일 정밀도입니다. 그러나 첫 번째 예제와 마찬가지로 이 작업을 수행하지 않는 경우 TensorFlow는 초기화 된 값에서 상수 / 변수의 형식을 유추합니다. 출력에는 개 또는 고양이인 입력 이미지의 확률이 포함됩니다. 이 예에서 개가 될 확률은 고양이보다 훨씬 높습니다.

아직 다룰 것이 많기 때문에 파이썬 코스에서 DataCamp의 딥 러닝을 받아보시지 않겠습니까? 그 동안, 또한 체크 아웃 해야 TensorFlow 문서, 아직 그렇게 하지 않은 경우. 모든 함수, 인수, 더 많은 레이어 등에 대한 더 많은 예제와 정보를 찾을 수 있습니다. 파이썬에서 신경망으로 작업하는 방법을 배울 때 의심 할 여지없이 필수 자원이 될 것입니다! 이는 10가지 카테고리에서 65,000개의 패션 제품의 28×28 그레이스케일 이미지를 사용하는 약간 더 진보된 예입니다. 데이터 집합은 Xiao, Rasul 및 Vollgraf의 기사에서 제공되었으며 TensorFlow에 내장되어 있지 않으므로 가져와서 일부 전처리를 수행해야합니다. 이것은 비용의 매우 간단한 예이지만 실제 교육에서는 교차 엔트로피 비용과 같은 훨씬 더 복잡한 비용 측정값을 사용합니다.

Kategória: Egyéb kategória

Írta: Gabor