我想使用以下代码计算预测:
import tensorflow as tf
x = tf.placeholder("float", [None, n_input])
y = tf.placeholder("float", [None, n_classes])
pred = multilayer_perceptron(x, weights, biases)
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(pred, y))
optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(cost)
# Initializing the variables
##trn.txt start
##tst.txt end
with tf.Session() as sess:
sess.run(init)
# Training cycle
for epoch in range(training_epochs):
avg_cost = 0.
total_batch = int(num_lines_trn/batch_size)
# Loop over all batches
for i in range(total_batch):
batch_x, batch_y = bat_x[i*batch_size:(i+1)*batch_size],bat_y[i*batch_size:(i+1)*batch_size]#mnist.train.next_batch(batch_size)
# Run optimization op (backprop) and cost op (to get loss value)
_, c …Run Code Online (Sandbox Code Playgroud) 我注意到新的Estimator API会在训练期间自动保存检查点,并在训练中断时自动从上一个检查点重新启动.不幸的是,它似乎只保留了最后5个检查点.
您知道如何控制培训期间保留的检查点数量吗?
这可能与OpenGL-ES有关吗?
我试图在Android中使用OpenGL-ES制作一个非常简单的3D游戏.现在,我认为使用光线根据2D触摸坐标获取球体表面上一个点的坐标,这是最好的方法.
我对3D编程和openGL整体还是比较陌生的但是在互联网上找到的关于如何实现这一点的所有教程都是通过使用OpenGL-ES不支持的方法.
我想使用我的透视投影变换的反转是它应该如何,但我现在想知道如何得到它.
(我用GLU.gluPerspective将我的视角设置为45度)
在tensorflow CIFAR-10 教程在cifar10_inputs.py线174它是说你应该随机化操作的顺序random_contrast和random_brightness更好的数据增强.
为此,我想到的第一件事是从0和1之间的均匀分布中绘制一个随机变量:p_order.并做:
if p_order>0.5:
distorted_image=tf.image.random_contrast(image)
distorted_image=tf.image.random_brightness(distorted_image)
else:
distorted_image=tf.image.random_brightness(image)
distorted_image=tf.image.random_contrast(distorted_image)
Run Code Online (Sandbox Code Playgroud)
但是获取p_order有两种可能的选择:
1)使用numpy不满意我,因为我想要纯TF和TF阻止其用户混合numpy和tensorflow
2)使用TF,但是因为p_order只能在tf.Session()中进行评估,所以我真的不知道是否应该这样做:
with tf.Session() as sess2:
p_order_tensor=tf.random_uniform([1,],0.,1.)
p_order=float(p_order_tensor.eval())
Run Code Online (Sandbox Code Playgroud)
所有这些操作都在函数体内,并从另一个具有不同会话/图形的脚本运行.或者我可以将其他脚本中的图形作为参数传递给此函数,但我很困惑.即使像tensorflow这样的函数或者例如推论似乎以全局方式定义图形而没有明确地将其作为输出返回,这对我来说有点难以理解.
我有两个任意点V1和V2.我定义了从V1到V2的光线,我想找到光线撞击平面的确切位置.当我运行我的代码时,命中位置落在错误的位置!如您所见,绿色球体显示的光线碰撞位置与V1和V2不对齐.

using UnityEngine;
using System.Collections;
public class RaycastLearning : MonoBehaviour {
// Use this for initialization
Vector3 v1;
Vector3 v2;
float MoveToLeft = 5f;
void Start () {
GameObject plane = GameObject.CreatePrimitive (PrimitiveType.Plane);
plane.transform.rotation = Quaternion.AngleAxis (90f, Vector3.right);
plane.transform.position = new Vector3 (MoveToLeft, 0, 5);
v2 = new Vector3 (MoveToLeft, 0f, -10f);
v1 = new Vector3 (MoveToLeft, 0f, 10f);
GameObject SV1 = GameObject.CreatePrimitive (PrimitiveType.Sphere);
SV1.transform.position = v1;
SV1.name = "SV1";
GameObject SV2 = GameObject.CreatePrimitive (PrimitiveType.Sphere);
SV2.transform.position = v2;
SV2.name = …Run Code Online (Sandbox Code Playgroud) 例如:
我有一个输入tensor(input),形(?,10) dtype=float32,第一维的意思batch_size。
还有一个面具tensor(mask),异形(?,10)。mask[sample_number]就像[True,True,False,...],意味着面具
和一个标签张量(avg_label),形状(?,),表示每个样本的掩码位置的正确平均值
我想训练模型,但找不到获得输出的好方法。
在tf.reduce_...(如tf.reduce_mean)的功能似乎并不支持论点约遮蔽。
我尝试tf.boolean_mask,但它会将输出形状展平为一维,抛出sample_number维,因此无法区分样本
我考虑过tf.where,比如:
masked=tf.where(mask,input,tf.zeros(tf.shape(input)))
avg_out=tf.reduce_mean(masked,axis=1)
loss=tf.pow(avg_out-avg_label,2)
Run Code Online (Sandbox Code Playgroud)
但是上面的代码肯定不起作用,因为 False 设置为 0 会改变 avg。如果使用 np.nan ,它总是会得到 nan 。我想知道在做reduce操作时是否有一个表示缺席的值。
我怎样才能做到这一点?
python artificial-intelligence conv-neural-network tensorflow
我正在尝试实现一个八叉树,为此,我需要一个快速的AABB射线交叉算法.经过一番搜索,我偶然发现了这篇文章.从这里提供的源代码中,我将pluecker_cls_cff函数转换为C#,如下所示:
public bool Intersect_2(ref RayPluecker r)
{
switch (r.Classification)
{
// 7 same-ish cases snipped
case Classification.PPP:
return !((r.Position.X > this.Max.X) || (r.Position.Y > this.Max.Y) || (r.Position.Z > this.Max.Z) ||
(r.PlueckerCoefficient.X + r.Direction.X * this.Max.Y - r.Direction.Y * this.Min.X < 0) ||
(r.PlueckerCoefficient.X + r.Direction.X * this.Min.Y - r.Direction.Y * this.Max.X > 0) ||
(r.PlueckerCoefficient.Y + r.Direction.X * this.Min.Z - r.Direction.Z * this.Max.X > 0) ||
(r.PlueckerCoefficient.Y + r.Direction.X * this.Max.Z - r.Direction.Z * …Run Code Online (Sandbox Code Playgroud) 我已经构建了一个回归类型的神经网络(NN),由Tensorflow辍学.我想知道是否有可能找到从输出文件中的上一层中删除哪些隐藏单元.因此,我们可以通过C++或Matlab实现NN结果.
以下是Tensorflow模型的示例.有三个隐藏层和一个输出层.在第3个sigmoid层之后,存在一个概率等于0.9的丢失.我想知道是否可以知道第三个sigmoid层中哪些隐藏单元被丢弃.
def multilayer_perceptron(_x, _weights, _biases):
layer_1 = tf.nn.sigmoid(tf.add(tf.matmul(_x, _weights['h1']), _biases['b1']))
layer_2 = tf.nn.sigmoid(tf.add(tf.matmul(layer_1, _weights['h2']), _biases['b2']))
layer_3 = tf.nn.sigmoid(tf.add(tf.matmul(layer_2, _weights['h3']), _biases['b3']))
layer_d = tf.nn.dropout(layer_3, 0.9)
return tf.matmul(layer_d, _weights['out']) + _biases['out']
Run Code Online (Sandbox Code Playgroud)
非常感谢你!
我想加快我的训练程序,使用带有input_fn编写的Estimator API tf.data.Dataset.
我的实现需要2秒钟来准备一批数据,然后在GPU上运行训练1秒,然后重新开始准备批处理.这实在是效率低下.
我正在寻找一种方法来异步准备批次并将它们上传到GPU以加速培训.或者替代地用于在调用之间缓存数据集的方法input_fn(由于dataset.cache()必须在每个input_fn调用上重新创建数据集,因此似乎不是一个好的选择).
这是我的代码的简化版本:
def input_fn(filenames, labels, epochs):
dataset = tf.data.Dataset.from_tensor_slices((filenames, labels))
dataset = dataset.map(_read_wav, num_parallel_calls=num_map_threads)
if shuffle:
dataset = dataset.shuffle(buffer_size=len(labels))
dataset = dataset.map(_post_process, num_parallel_calls=num_map_threads)
dataset = dataset.map(lambda wav, label: ({'wav': wav}, label))
dataset = dataset.batch(128)
dataset = dataset.repeat(epochs) # to iterate over the training set forever
iterator = dataset.dataset.make_one_shot_iterator()
features, labels = iterator.get_next()
return features, labels
train_input_fn = lambda : input_fn(train_files, train_labels, None)
eval_input_fn = lambda : input_fn(eval_files, eval_labels, 1)
train_spec = …Run Code Online (Sandbox Code Playgroud) 所以我回来了另一个光线追踪问题.我的代码渲染球体都很好,花花公子,但立方体并没有真正起作用.我正在使用此代码来测试交叉点:http://pastebin.com/qgm6vpdx(这是一个递归函数,t是到交点的距离)边界框定义为:
Cube* c1 = new Cube;
c1->Corner1 = Vec3(100, 100, 100);
c1->Corner2 = Vec3(200, 200, 200);
Run Code Online (Sandbox Code Playgroud)
我已经确认相机不在立方体内.现在,唯一的问题是整个屏幕显示为绿色(指定给立方体的颜色)
我不认为我正在做正确的立方体交叉点,任何人都可以证明我的代码?
tensorflow ×6
c++ ×2
aabb ×1
android ×1
c# ×1
collision ×1
cubes ×1
intersection ×1
matlab ×1
opengl-es ×1
performance ×1
python ×1
random ×1
raycasting ×1
raytracing ×1