2013-03-25 68 views
-2

我正在学习算法,我使用输入文件,如下所示从命令行输入: - c:\ user \ document> SBP < input.txt多次输入文件到一个可执行文件

但我想输入这个文件多次(不明确),直到训练误差不低于某一阈值,我该怎么办呢..

回答

2

您可以多次给它的命令行上,像

./command.exe input.txt input.txt input.txt 

或给它一次

./command.exe input.txt 

,当你需要它

int main(int argc, char **argv) 
{ 
    for (int i = 0; i < 3; ++i) { 
     std::ifstream f(argv[1]); 
     // process input 
    } 
} 
1

我建议重新设计你的SBP计划,包括学习上的反复循环多次打开它。这样,您只能读取一次数据输入,然后在程序中对其进行处理。可选地,您可以考虑为程序提供参数输入文件(例如,最大迭代次数(数据呈现给学习算法的次数),错误阈值,一些其他参数,甚至是要读取的数据文件的名称(so跳过从命令行提供它))。所以,最终你可能会到输入为:

c:\user\document> SBP < input_parameters.txt input_data.txt 

或者干脆

c:\user\document> SBP < input_parameters.txt 

坚持更或多或少标准的用户界面是做了一件好事。