【CNTK】CNTK学习笔记之modelDir
来源:互联网 发布:福州网络家长学校 编辑:程序博客网 时间:2024/06/06 18:47
因为要用到图像识别,所以看的他CNN网络
cntk\Examples\Image\MNIST\Config\02_Convolution.cntk
先看配置文件:
rootDir = ".."configDir = "$rootDir$/Config"dataDir = "$rootDir$/Data"outputDir = "$rootDir$/Output"modelDir = "$outputDir$/Models"deviceId = 0# Override the above as follows when running on CPU:# deviceId = -1command = train:testprecision = "float"modelPath = "$modelDir$/02_Convolution"# uncomment the following line to write logs to a file# stderr = "$outputDir$/02_Convolution_out"traceLevel = 1numMBsToShowResult = 500######################################## TRAINING CONFIG ########################################train = [ action = "train" NDLNetworkBuilder = [ imageLayout = "cudnn" initOnCPUOnly = true ndlMacros = "$configDir$/Macros.ndl" networkDescription = "$ConfigDir$/02_Convolution.ndl" ] SGD = [ epochSize = 60000 minibatchSize = 32 #learningRatesPerSample = 0.003125 # TODO #momentumAsTimeConstant = 0 learningRatesPerMB = 0.1*5:0.3 momentumPerMB = 0*10:0.7 maxEpochs = 15 ] reader = [ readerType = "CNTKTextFormatReader" # See ../REAMDE.md for details on getting the data (Train-28x28_cntk_text.txt). file = "$DataDir$/Train-28x28_cntk_text.txt" input = [ features = [ dim = 784 format = "dense" ] labels = [ dim = 10 format = "dense" ] ] ] ]######################################## TEST CONFIG ########################################test = [ action = test minibatchSize = 1024 reader = [ readerType = "CNTKTextFormatReader" file = "$DataDir$/Test-28x28_cntk_text.txt" input = [ features = [ dim = 784 format = "dense" ] labels = [ dim = 10 format = "dense" ] ] ]]
配置文件总体分为两部分,按JAVA的解释,第一部分为变量声明,第二部分为类方法。这个文件里有两个类,第一个为train,第二个为test。这篇主要解释变量声明里的modelDir 。
可以看到配置文件是先指定了一些文件路径:
rootDir = ".."configDir = "$rootDir$/Config"dataDir = "$rootDir$/Data"outputDir = "$rootDir$/Output"modelDir = "$outputDir$/Models"
modelDir是训练模型得到的参数存储的路径。别的路径在下面的配置文件里都用到了,但是这个modelDir只是在这里声明了一下,下面没有再用。但是它很重要。很多工作都是CNTK框架给我们做了。不像其他一些机器学习框架,需要自己在代码里指定模型的路径。在进行网络训练和测试的时候,要先判断是否这个路径,如果模型存在,那么就不在进行训练。如果直接进行”test”,也会判断有没有已经训练好的模型。如果有就用这个模型进行test。感觉说的很啰嗦。测试一下就知道了:
测试一:
02_Convolution.cntk里面指定的执行命令为:
command = train:test
就是先执行train,再执行test。由于我之前已经训练好了。所以在执行的时候,就执行test了。
如果把../Output/Models这个文件改了名,找不到这个路径。再从新运行就会出现:
测试二:
command = test
模型已经训练好,只执行test
如果模型没有训练好,只执行test
0 0
- 【CNTK】CNTK学习笔记之modelDir
- CNTK学习笔记 -- Abstract
- CNTK学习笔记 -- Introduction
- 【CNTK】CNTK学习笔记之应用卷积神经网络模型进行数据预测
- 【CNTK】CNTK学习笔记之图像识别-树叶识别Train and Test
- cntk
- 深度学习 CNTK使用笔记
- CNTK学习笔记(一)
- CNTK学习笔记(二)
- CNTK学习笔记(三)
- 【CNTK】CNTK学习笔记之制作自己的数据集(以MNIST手写数字数据集为例)
- CNTK入门02:FeedForwardNet学习笔记
- CNTK学习(一)
- CNTK与深度强化学习笔记之二: Cart Pole游戏示例
- CNTK学习笔记 -- Computation Network part 2 -- Computation Nodes
- CNTK学习笔记 -- Computation Network part3 -- Convolutional Neural Network
- CNTK学习笔记 -- Computation Network part4 -- Recurrent Connection
- CNTK学习笔记 -- Computational Network Toolkit part2-- DataReader
- Visio2013使用注记
- 给定一个数输出它重复n遍的数
- Node.js前序v4.4.7
- Mongodb 连接错误
- 【计算机网络-11】【第四章】网络层
- 【CNTK】CNTK学习笔记之modelDir
- Java日期时间(Date/Time)
- Vue.js 数组使用注意事项
- 个人理解 java虚拟机中的符号引用和直接引用
- 完成端口的详解
- Android开发笔记--检查更新app功能
- 推理集 —— 特殊与差异
- 节约时间的技巧
- 代理模式二(JDK动态代理)