tensorflow何时更新for循环中的权重和偏差?
下面是来自tf的github的代码.mnist_softmax.py
for _ in range(1000):
batch_xs, batch_ys = mnist.train.next_batch(100)
sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
Run Code Online (Sandbox Code Playgroud)
sess.run()?如果是这样,在这个程序中,是否意味着更新权重和偏差1000倍?我在Windows 8 笔记本电脑上安装了 MinGW并尝试编译一个 C 代码文件
gcc test.c -o test.exe
Run Code Online (Sandbox Code Playgroud)
编译器没有给出警告或错误,但它没有创建 test.exe
我如何让编译器创建文件
测试.c

我的终端会话

一个有趣的观察:
当我故意在代码中引入错误并尝试编译时编译器显示错误
有错误的代码
编译器输出

当我尝试使用命令提示符编译相同的代码时
这是它显示的

但该文件确实存在于 MinGW\bin 目录中

我移动了
test.c
Run Code Online (Sandbox Code Playgroud)
归档到
C:\
Run Code Online (Sandbox Code Playgroud)
并在
C:\MinGW\bin
Run Code Online (Sandbox Code Playgroud)
目录
这是它的输出

问题部分解决:
我在 Windows 8 中禁用了混合启动并重新启动了计算机。编译器现在可以在命令提示符中运行,但不能在 PowerShell 中运行。
我成功构建了 bazel-0.4.0。
然后,我试了一下升级到最新版本巴泽尔-0.5.1使用
$ ./compile.sh compile ../bazel-0.4.0/output/bazel.exe
Run Code Online (Sandbox Code Playgroud)
它给了我一个错误,bazel-0.5.0,bazel-0.4.5给了我同样的错误
错误日志:
$ ./compile.sh compile ../bazel-0.4.0/output/bazel.exe
Building Bazel with Bazel.
ERROR: Illegal javabase value 'C:/Program Files/Java/jdk', javabase must be an absolute path or label.
INFO: Elapsed time: 0.246s
ERROR: Could not build Bazel
Run Code Online (Sandbox Code Playgroud)
bazel-0.4.4 给了我不同的错误
错误日志:
Building Bazel with Bazel.
.ERROR: no such target '//:Files/Java/jdk': target 'Files/Java/jdk' not declared in package '' defined by C:/Users/potlapel/Downloads/bazel-0.4.4/BUILD.
INFO: Elapsed time: 0.182s
ERROR: Could not build Bazel
Run Code Online (Sandbox Code Playgroud) 我试图将两个64位整数相乘并得到错误 - 当我尝试将产品存储在uint512_t数据类型中时,uint512_t未在此范围内声明.是否有可用于存储此类巨大值的替代数据类型?我的数组包含我想要乘以的数字的数字.
#include <cstdint>
#include <iostream>
#include <stdint.h>
using namespace std;
int multiply(int x, int y, int carry)
{
int product;
product = x * y + carry;
return product;
}
int add(int multiplier, int product_current, int product_new)
{
product_current = product_current + multiplier * product_new;
return product_current;
}
int main()
{
int a[64] = { 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9, 3, 2, 3, 8, 4, 6, 2, 6, …Run Code Online (Sandbox Code Playgroud) 我有一个界面,如下所示
interface Evaluator {
boolean requiresP2();
EvalResult evaluate(Param1 p1, Param2 p2, Param3 p3);
// some more methods
}
Run Code Online (Sandbox Code Playgroud)
该接口由几个类实现.p2evaluate方法的参数由某些人使用,而其他人则不使用.该方法requiresP2基本上返回一个布尔值,告知evaluate方法是否使用p2.
现在,这些问题在上下文中可能看起来有点奇怪,但请相信我,这在我们的用例中是有意义的.另外,重构所有代码需要花费大量时间来消除对requiresP2方法的需求,所以如果我们讨论除了自上而下的代码库重构之外的其他解决方案,我将不胜感激.
问题是方法的返回值requiresP2取决于evaluate方法的实现方式.因此,每个人都必须确保requiresP2在更改方法时更新evaluate方法.
我正在寻找方法,以便这可以由编译器/单元测试/ linters强制执行,而不是将它留给开发人员的内存.
编辑:我仍在探索模拟框架对此问题的适用性.
我认为我可以在单元测试中反映在单元测试中检查它evaluate的主体以检查它是否引用p2然后确保它与requiresP2方法返回的值匹配但似乎无法检查方法体使用反射.
我正在寻找关于如何做到这一点的建议.任何输入都表示赞赏.
bazel ×1
c ×1
c++ ×1
gcc ×1
java ×1
linter ×1
python ×1
reflection ×1
tensorflow ×1
unit-testing ×1