correct = tf.equal(tf.argmax(pred, 1), tf.to_int64(labels_pl))
首先看tf.argmax(pred,1)因爲pred,是32,40的tensor,40那一維是40個模型中對應的概率,取最大的一個索引作爲預測值,最後得到shape 32的tensor然後跟shape 32的labels_pl相比,即tf.equal,得到32的tensor,類型爲bool
correct = tf.equal(tf.argmax(pred, 1), tf.to_int64(labels_pl))
首先看tf.argmax(pred,1)因爲pred,是32,40的tensor,40那一維是40個模型中對應的概率,取最大的一個索引作爲預測值,最後得到shape 32的tensor然後跟shape 32的labels_pl相比,即tf.equal,得到32的tensor,類型爲bool
pointnet學習(七)中input_transform_net函數,通過條用tf_util.conv2d構建net。 tf_util.conv2d(input_image, 64, [1,3],
net = tf_util.dropout(net, keep_prob=0.7, is_training=is_training, scope='dp1') 具體實現如下 def drop
config = tf.ConfigProto() config.gpu_options.allow_growth = True config.allow_soft_placement = True
net = tf_util.max_pool2d(net, [num_point,1], padding='VALID', scope='tmaxpool') 看下具體實現 d
for epoch in range(MAX_EPOCH): log_string('**** EPOCH %03d ****' % (epoch)) sys.stdout
merged = tf.summary.merge_all() train_writer = tf.summary.FileWriter(os.path.join(LOG_DIR, 'train'),
net = tf_util.fully_connected(net, 512, bn=True, is_training=is_training, scope='tfc