本文整理匯總了Python中utils.one_hot方法的典型用法代碼示例。如果您正苦於以下問題:Python utils.one_hot方法的具體用法?Python utils.one_hot怎麽用?Python utils.one_hot使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類utils
的用法示例。
在下文中一共展示了utils.one_hot方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: load_train
# 需要導入模塊: import utils [as 別名]
# 或者: from utils import one_hot [as 別名]
def load_train(self):
labels = utils.one_hot(data.labels_train, m=121).astype(np.float32)
split = np.load(DEFAULT_VALIDATION_SPLIT_PATH)
split = np.load(DEFAULT_VALIDATION_SPLIT_PATH)
indices_train = split['indices_train']
indices_valid = split['indices_valid']
image_shapes = np.asarray([img.shape for img in data.load('train')]).astype(np.float32)
moments = np.load("data/image_moment_stats_v1_train.pkl")
centroid_distance = np.abs(moments["centroids"][:, [1, 0]] - image_shapes / 2)
info = np.concatenate((centroid_distance, image_shapes, moments["angles"][:, None], moments["minor_axes"][:, None], moments["major_axes"][:, None]), 1).astype(np.float32)
self.info_train = info[indices_train]
self.info_valid = info[indices_valid]
self.y_train = np.load(self.train_pred_file).astype(np.float32)
self.y_valid = np.load(self.valid_pred_file).astype(np.float32)
self.labels_train = labels[indices_train]
self.labels_valid = labels[indices_valid]
示例2: _get_minibatch_feed_dict
# 需要導入模塊: import utils [as 別名]
# 或者: from utils import one_hot [as 別名]
def _get_minibatch_feed_dict(self, target_q_values,
non_terminal_minibatch, terminal_minibatch):
"""
Helper to construct the feed_dict for train_op. Takes the non-terminal and
terminal minibatches as well as the max q-values computed from the target
network for non-terminal states. Computes the expected q-values based on
discounted future reward.
@return: feed_dict to be used for train_op
"""
assert len(target_q_values) == len(non_terminal_minibatch)
states = []
expected_q = []
actions = []
# Compute expected q-values to plug into the loss function
minibatch = itertools.chain(non_terminal_minibatch, terminal_minibatch)
for item, target_q in zip_longest(minibatch, target_q_values, fillvalue=0):
state, action, reward, _, _ = item
states.append(state)
# target_q will be 0 for terminal states due to fillvalue in zip_longest
expected_q.append(reward + self.config.reward_discount * target_q)
actions.append(utils.one_hot(action, self.env.action_space.n))
return {
self.network.x_placeholder: states,
self.network.q_placeholder: expected_q,
self.network.action_placeholder: actions,
}
示例3: train
# 需要導入模塊: import utils [as 別名]
# 或者: from utils import one_hot [as 別名]
def train(epoch):
h_phi.train()
to_average = []
# train
for query, candidates in zip(batched_query_train, batched_neighbor_train):
optimizer.zero_grad()
cand_x, cand_y = candidates
query_x, query_y = query
cand_x = cand_x.to(device=gpu)
cand_y = cand_y.to(device=gpu)
query_x = query_x.to(device=gpu)
query_y = query_y.to(device=gpu)
neighbor_e = h_phi(cand_x).reshape(NUM_TRAIN_NEIGHBORS, EMBEDDING_SIZE)
query_e = h_phi(query_x).reshape(NUM_TRAIN_QUERIES, EMBEDDING_SIZE)
neighbor_y_oh = one_hot(cand_y).reshape(NUM_TRAIN_NEIGHBORS, 10)
query_y_oh = one_hot(query_y).reshape(NUM_TRAIN_QUERIES, 10)
losses = dknn_loss(query_e, neighbor_e, query_y_oh, neighbor_y_oh)
loss = losses.mean()
loss.backward()
optimizer.step()
to_average.append((-loss).item() / k)
print('Avg. train correctness of top k:',
sum(to_average) / len(to_average))
print('Avg. train correctness of top k:', sum(
to_average) / len(to_average), file=logfile)
logfile.flush()
示例4: main
# 需要導入模塊: import utils [as 別名]
# 或者: from utils import one_hot [as 別名]
def main():
""" Test an RNN trained for TIMIT phoneme recognition. """
args, params_str, layer_kwargs = parse_args()
_, _, test_inputs, test_labels = timitphonemerec.load_split(args.data_dir, val=False,
mfcc=True, normalize=True)
# Input seqs have shape [length, INPUT_SIZE]. Label seqs are int8 arrays with shape [length],
# but need to have shape [length, 1] for the batch generator.
test_labels = [seq[:, np.newaxis] for seq in test_labels]
test_batches = utils.full_bptt_batch_generator(test_inputs, test_labels, TEST_BATCH_SIZE,
num_epochs=1, shuffle=False)
model = models.RNNClassificationModel(args.layer_type, INPUT_SIZE, TARGET_SIZE, args.num_hidden_units,
args.activation_type, **layer_kwargs)
def _error_rate(valid_predictions, valid_targets):
incorrect_mask = tf.logical_not(tf.equal(tf.argmax(valid_predictions, 1), tf.argmax(valid_targets, 1)))
return tf.reduce_mean(tf.to_float(incorrect_mask))
model.error_rate = _error_rate(model.valid_predictions, model.valid_targets)
config = tf.ConfigProto()
config.gpu_options.allow_growth = False
sess = tf.Session(config=config)
saver = tf.train.Saver()
saver.restore(sess, os.path.join(args.results_dir, 'model.ckpt'))
batch_inputs, batch_labels = next(test_batches)
batch_targets = utils.one_hot(np.squeeze(batch_labels, 2), TARGET_SIZE)
valid_predictions, valid_targets, error_rate = sess.run(
[model.valid_predictions, model.valid_targets, model.error_rate],
feed_dict={model.inputs: batch_inputs,
model.targets: batch_targets}
)
print('%f' % error_rate)
with open(os.path.join(args.results_dir, 'test_result.txt'), 'w') as f:
print('%f' % error_rate, file=f)
示例5: main
# 需要導入模塊: import utils [as 別名]
# 或者: from utils import one_hot [as 別名]
def main():
""" Test an RNN for sequential (possibly permuted) MNIST recognition. """
args, params_str, layer_kwargs = parse_args()
outs = mnist.load_split(args.data_dir, val=False, permute=args.permute, normalize=True, seed=0)
_, _, test_images, test_labels = outs
# Flatten the images.
test_inputs = test_images.reshape([len(test_images), -1, INPUT_SIZE])
# Align sequence-level labels with the appropriate time steps by padding with NaNs,
# and to do so, first convert the labels to floats.
length = test_inputs.shape[1]
pad = lambda x: np.pad(x, [[0, 0], [length - 1, 0], [0, 0]], mode='constant', constant_values=np.nan)
test_labels = pad(test_labels.reshape([-1, 1, 1]).astype(np.float))
test_batches = utils.full_bptt_batch_generator(test_inputs, test_labels, TEST_BATCH_SIZE, num_epochs=1,
shuffle=False)
model = models.RNNClassificationModel(args.layer_type, INPUT_SIZE, TARGET_SIZE, args.num_hidden_units,
args.activation_type, **layer_kwargs)
def _error_rate(valid_predictions, valid_targets):
incorrect_mask = tf.logical_not(tf.equal(tf.argmax(valid_predictions, 1), tf.argmax(valid_targets, 1)))
return tf.reduce_mean(tf.to_float(incorrect_mask))
model.error_rate = _error_rate(model.valid_predictions, model.valid_targets)
config = tf.ConfigProto()
config.gpu_options.allow_growth = False
sess = tf.Session(config=config)
saver = tf.train.Saver()
saver.restore(sess, os.path.join(args.results_dir, 'model.ckpt'))
error_rates = []
for batch_inputs, batch_labels in test_batches:
batch_targets = utils.one_hot(np.squeeze(batch_labels, 2), TARGET_SIZE)
valid_predictions, valid_targets, batch_error_rates = sess.run(
[model.valid_predictions, model.valid_targets, model.error_rate],
feed_dict={model.inputs: batch_inputs,
model.targets: batch_targets}
)
error_rates.append(batch_error_rates)
error_rate = np.mean(error_rates, dtype=np.float)
print('%f' % error_rate)
with open(os.path.join(args.results_dir, 'test_result.txt'), 'w') as f:
print('%f' % error_rate, file=f)
示例6: train_feature_generator
# 需要導入模塊: import utils [as 別名]
# 或者: from utils import one_hot [as 別名]
def train_feature_generator(self):
print 'Training sampler.'
images, labels = self.load_svhn(self.svhn_dir, split='train')
labels = utils.one_hot(labels, 10)
# build a graph
model = self.model
model.build_model()
noise_dim = 100
epochs = 5000
with tf.Session(config=self.config) as sess:
# initialize variables
tf.global_variables_initializer().run()
# restore feature extractor trained on Step 0
print ('Loading pretrained feature extractor.')
variables_to_restore = slim.get_model_variables(scope='feature_extractor')
restorer = tf.train.Saver(variables_to_restore)
restorer.restore(sess, self.pretrained_feature_extractor)
print 'Loaded'
summary_writer = tf.summary.FileWriter(logdir=self.log_dir, graph=tf.get_default_graph())
saver = tf.train.Saver()
for step in range(self.train_feature_generator_iters):
i = step % int(images.shape[0] / self.batch_size)
images_batch = images[i*self.batch_size:(i+1)*self.batch_size]
labels_batch = labels[i*self.batch_size:(i+1)*self.batch_size]
noise = utils.sample_Z(self.batch_size, noise_dim, 'uniform')
feed_dict = {model.noise: noise, model.images: images_batch, model.labels: labels_batch}
sess.run(model.d_train_op, feed_dict)
sess.run(model.g_train_op, feed_dict)
if (step+1) % 100 == 0:
avg_D_fake = sess.run(model.logits_fake, feed_dict)
avg_D_real = sess.run(model.logits_real, feed_dict)
summary, dl, gl = sess.run([model.summary_op, model.d_loss, model.g_loss], feed_dict)
summary_writer.add_summary(summary, step)
print ('Step: [%d/%d] d_loss: %.6f g_loss: %.6f avg_d_fake: %.2f avg_d_real: %.2f ' \
%(step+1, self.train_feature_generator_iters, dl, gl, avg_D_fake.mean(), avg_D_real.mean()))
print 'Saving.'
saver.save(sess, self.pretrained_feature_generator)