-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMakeModel.cntk
124 lines (107 loc) · 2.38 KB
/
MakeModel.cntk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# MakeModel.cntk
command=Train:WriteProbs:DumpWeights:Test
modelPath = "Model\SimpleNet.snn"
deviceId = -1
dimension = 2
labelDimension = 3
precision = "float"
# =====
Train = [
action="train"
# network description
BrainScriptNetworkBuilder = [
FDim = $dimension$
HDim = 5
LDim = $labelDimension$
# define the neural network
neuralDef (ftrs) = [
W0 = Parameter (HDim, FDim)
b0 = Parameter (HDim, 1)
W1 = Parameter (LDim, HDim)
b1 = Parameter (LDim, 1)
hn = Tanh (W0 * ftrs + b0)
zn = W1 * hn + b1
].zn
# specify inputs
features = Input (FDim)
labels = Input (LDim)
# create network
myNet = neuralDef (features)
# define training criteria and output(s)
ce = CrossEntropyWithSoftmax (labels, myNet)
err = ErrorPrediction (labels, myNet)
pn = Softmax (myNet)
# connect to the NDL system.
featureNodes = (features)
inputNodes = (labels)
criterionNodes = (ce)
evaluationNodes = (err)
outputNodes = (pn)
]
# stochastic gradient descent
SGD = [
epochSize = 0
minibatchSize = 1
learningRatesPerSample = 0.04
maxEpochs = 500
momentumPerMB = 0.90
]
# configuration for reading data
reader = [
readerType = "CNTKTextFormatReader"
file = "TrainData.txt"
input = [
features = [
dim = $dimension$
format = "dense"
]
labels = [
dim = $labelDimension$
format = "dense"
]
]
]
]
# test
Test = [
action = "test"
reader = [
readerType = "CNTKTextFormatReader"
file="TestData.txt"
randomize = "false"
input = [
features = [
dim = $dimension$
format = "dense"
]
labels = [
dim = $labelDimension$
format = "dense"
]
]
]
]
# log the output node values
WriteProbs = [
action="write"
reader=[
readerType="CNTKTextFormatReader"
file="TestData.txt"
input = [
features = [
dim = $dimension$
format = "dense"
]
labels = [
dim = $labelDimension$
format = "dense"
]
]
]
outputPath = "TestProbs_txt"
]
# dump weight and bias values
DumpWeights = [
action = "dumpNode"
printValues = "true"
]