में गतिशील एक्सिस के बारे में शिकायत करते हुए मैं एक अनुक्रम वर्गीकृत करने के लिए सीएनटीके (पायथन का उपयोग करके) में एक एलएसटीएम लागू करने की कोशिश कर रहा हूं।सीएनटीके एलएसटीएम
इनपुट: संख्याओं की
विशेषताएं ठीक लंबाई दृश्यों (एक समय श्रृंखला)
लेबल एक गर्म मूल्यों का वैक्टर हैं
नेटवर्क:
input = input_variable(input_dim)
label = input_variable(num_output_classes)
h = Recurrence(LSTM(lstm_dim)) (input)
final_output = C.sequence.last(h)
z = Dense(num_output_classes) (final_output)
loss = C.cross_entropy_with_softmax(z, label)
आउटपुट: एक संभावना है कि अनुक्रम एक लेबल से मेल खाता
सभी आकार निर्धारित किया जाता है, तो मुझे नहीं लगता कि मैं किसी भी गतिशील धुरी की जरूरत है और किसी भी निर्दिष्ट नहीं किया है है।
हालांकि, CNTK खुश नहीं है और मैं मिलता है:
return cross_entropy_with_softmax(output_vector, target_vector, axis, name)
RuntimeError: Currently if an operand of a elementwise operation has any dynamic axes, those must match the dynamic axes of the other operands
हैं (उदाहरण के कुछ के अनुसार) मैं एक गतिशील धुरी
label = input_variable(num_output_classes, dynamic_axes=[C.Axis.default_batch_axis()])
यह अब इस बारे में शिकायत के साथ लेबल को परिभाषित , और करने के लिए आगे हो जाता है:
tf = np.split(training_features,num_minibatches)
tl = np.split(training_labels, num_minibatches)
for i in range(num_minibatches*num_passes): # multiply by the
features = np.ascontiguousarray(tf[i%num_minibatches])
labels = np.ascontiguousarray(tl[i%num_minibatches])
# Specify the mapping of input variables in the model to actual minibatch data to be trained with
trainer.train_minibatch({input : features, label : labels})
लेकिन इस त्रुटि के साथ मर जाता है:
File "C:\Users\Dev\Anaconda3\envs\cntk-py34\lib\site-packages\cntk\cntk_py.py", line 1745, in train_minibatch
return _cntk_py.Trainer_train_minibatch(self, *args)
RuntimeError: Node '__v2libuid__Plus561__v2libname__Plus552' (Plus operation): DataFor: FrameRange's dynamic axis is inconsistent with matrix: {numTimeSteps:1, numParallelSequences:100, sequences:[{seqId:0, s:0, begin:0, end:1}, {seqId:1, s:1, begin:0, end:1}, {seqId:2, s:2, begin:0, end:1}, {seqId:3, s:3, begin:0, end:1}, {seq...
इसे ठीक करने के लिए मुझे क्या करने की ज़रूरत है?
मैंने कोशिश की, इसकी अभी भी – Tiny
रनटाइमर त्रुटि है: वर्तमान में यदि किसी तत्व के संचालन के संचालन में कोई गतिशील अक्ष है, तो उन्हें अन्य ऑपरेटरों की गतिशील अक्ष से मेल खाना चाहिए – Tiny
मैंने वास्तव में इसे आजमाने के बाद उत्तर अपडेट किया है। –