New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restricted Boltzmann Machine with CNTK #534

nuxai opened this Issue May 27, 2016 · 5 comments


None yet
5 participants

nuxai commented May 27, 2016

Is it possible to build a Restricted Boltzmann Machine for in CNTK?

Are there any "Autoencoders" or Deep Believe Network Models in CNTK?


This comment has been minimized.

zpbappi commented Jul 15, 2016

You cannot currently build and train an RBM with CNTK. Reference: #646

There is an autoencoder example in the "Examples\Speech\Miscellaneous\TIMIT\config" directory. Look into "TIMIT_TrainAutoEncoder.cntk" and "ae.ndl" files. In case you are wondering how to pre-train the autoencoder with RBM CD1, it is currently not possible. Please see the issue referenced above for detail.


This comment has been minimized.

arijit17 commented Nov 13, 2016

@zpbappi Do you know how to run the TIMIT Auto-encoder in CNTK? I have no idea about how to use HTK to prepare the inputs. Do you have a simple autoencoder example that just takes in a matrix (e.g. 2D matrix) and tries to reconstruct the input?


This comment has been minimized.

zpbappi commented Nov 14, 2016

@arijit17 The example you are referring to is marked as obsolete. There have been many changes and improvement in CNTK (or, should I say, Microsoft Cognitive Toolkit) since then. I would suggest you use the current version, wich is V2-Beta3. The good thing is, you have a fully working python API support for V2. I am no longer looking at the BrainScript model, just the python. You can have look at the python examples here. They are very thorough. I think the Sequence2Sequence example will give you an idea about how you can implement your network. Moreover, as you mentioned that you have a 2D matrix, please have a look at the NumpyInterop example there as well. That will show how you can use numpy arrays as input to a network designed using CNTK. Hope that helps.


This comment has been minimized.

arijit17 commented Nov 14, 2016

@zpbappi Thank you for useful tips. With Python, I think it should be now easier to feed in data (e.g. Audio/speech wav files) to CNTK. I don't have to deal with the CNTK "readers", correct?


This comment has been minimized.


n17s commented Nov 16, 2016

Yes in Python you can either feed the data yourself or with readers.

@wolfma61 wolfma61 closed this Jun 29, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment