I am trying to finetune/retrain InceptionV1 model here, on my own data. I was able to
Convert the Image data to TFR format data using this.
Pass the converted data to finetune_inception_v1_on_flowers
Complete the training and evaluation in according to the script file above, I am attaching the logs here.
INFO:tensorflow:global step 1000: loss = 0.1833 (20.37 sec/step) INFO:tensorflow:Stopping Training. INFO:tensorflow:Finished training! Saving model to disk. INFO:tensorflow:Scale of 0 disables regularizer. WARNING:tensorflow:From eval_image_classifier.py:157: streaming_recall_at_k (from tensorflow.contrib.metrics.python.ops.metric_ops) is deprecated and will be removed after 2016-11-08. Instructions for updating: Please use streaming_sparse_recall_at_k, and reshape labels from [batch_size] to [batch_size, 1]. INFO:tensorflow:Evaluating /tmp/flowers-models/inception_v1/all/model.ckpt-1000 INFO:tensorflow:Starting evaluation at 2017-04-26-14:59:28 INFO:tensorflow:Restoring parameters from /tmp/flowers-models/inception_v1/all/model.ckpt-1000 INFO:tensorflow:Evaluation [1/4] INFO:tensorflow:Evaluation [2/4] INFO:tensorflow:Evaluation [3/4] INFO:tensorflow:Evaluation [4/4] 2017-04-26 20:30:23.505265: I tensorflow/core/kernels/logging_ops.cc:79] eval/Recall_5[1] 2017-04-26 20:30:23.505420: I tensorflow/core/kernels/logging_ops.cc:79] eval/Accuracy[1] INFO:tensorflow:Finished evaluation at 2017-04-26-15:00:23
4.The training process genertaed many checkpoints, two graph.pbtxt files. I used the latest checkpoint and the graph.pbtxt file in the freeze tool and generated a .pb file, according to the discussion here, I used following parameters
--input_graph=/../../graph.pbtxt
--output_node_names=InceptionV1/Logits/Predictions/Softmax
- Now I am trying to use the .pb file in tensorflow demo application, by making few changes toClassifierActivity.java in tensorflow demo android app and it shows an error to me,
No Operation named [input] in the Graph"
following are the changes I made toClassifierActivity.java
private static final int INPUT_SIZE = 224;//224//299
private static final int IMAGE_MEAN = 117;//117//128
private static final float IMAGE_STD = 1;//1//128
private static final String INPUT_NAME ="input";//input
private static final String OUTPUT_NAME ="InceptionV1/Logits/Predictions/Softmax";//output
private static final String MODEL_FILE ="file:///android_asset/frozen_1000_graph.pb";//tensorflow_inception_graph
private static final String LABEL_FILE ="file:///android_asset/labels.txt";//imagenet_comp_graph_label_strings
- As suggested in discussion link above, I tried Summarize graph tool on my frozen_1000_graph.pb and got the following output.
No inputs spotted. No variables spotted. Found 1 possible outputs: (name=InceptionV1/Logits/Predictions/Softmax, op=Softmax) Found 5598451 (5.60M) const parameters, 0 (0) variable parameters, and 114 control_edges Op types used: 472 Const, 230 Mul, 173 Add, 172 Sub, 116 Identity, 114 Sum, 58 Reshape, 58 Conv2D, 57 Rsqrt, 57 Relu, 57 Reciprocal, 57 Square, 57 SquaredDifference, 57 Mean, 57 StopGradient, 13 MaxPool, 9 ConcatV2, 1 Squeeze, 1 RandomUniform, 1 Softmax, 1 RealDiv, 1 QueueDequeueV2, 1 Floor, 1 FIFOQueueV2, 1 BiasAdd, 1 AvgPool.
Please help me understand, how I can fix this issue.