nnp.get_optimizer -> access violation
Armin234 opened this issue · 5 comments
Hi,
when I try to get the optimizer from the attachted net.nntxt (created with Neural Network Console binary_connect_mnist_MLP.sdcproj), I get an access viloation, with the precompiled lib for Windows.
nnp.add("net.nntxt");
auto optimizer_names = nnp.get_optimizer_names();
std::cout << "optimizer: " << optimizer_names[0] << std::endl;
auto optimizer = nnp.get_optimizer(optimizer_names[0]);
We roughly check this issue, it might be caused by cache file not exist
,
Could you kindly check if this folder has cached files:
C:\\Users\\Armin\\Desktop\\ncc 2.1\\samples\\sample_dataset\\mnist\\mnist_training.cache
C:\\Users\\Armin\\Desktop\\ncc 2.1\\samples\\sample_dataset\\mnist\\mnist_test.cache"
Yes, the cached files are in the folders
We tried to reproduce this problem on windows platform using same file.
This problem can be reproduced if we make the dataset files is not reachable.
This problem disappears if we ensure the dataset files is really reachable.
Hence, please kindly check if dataset file and cache files is consistent with the file name setting in net.nntxt, and ensure the cache files contains all necessary files and the path is really reachable.
So, could you please try to change directory?
The directory "nnc 2.1" has included space, so this might be caused error.
I got information this issue may not be caused by space included, because this issue cannot be reproduced if all cache files exist.
Hi, yes the dataset file and cache files are consistent with the file name setting in net.nntxt, and the chace files contains all files and the path is reachable ,but I can't reproduce the access violation.
Today I get an exception by 0x00007FFF3B521208 (ucrtbase.dll) invalid paramater
at the line
auto optimizer = nnp.get_optimizer(optimizer_names[0]);
Thank you for additional information.
We checked this optimizer exception, and it indicates that libarchive version might cause similar problem.
I don't know what version you use, but please try to upgrade to latest version if possible.