example dense conv2d compile classifier python cuda theano keras

python - dense - keras sequential



Keras no pudo compilar con backend theano (1)

Parece que hay un problema con GCC 5.3 y CUDA. Tuve que comentar los siguientes cambios en /usr/include/string.h y ahora funciona.

https://fossies.org/diffs/glibc/2.22_vs_2.23/string/string.h-diff.html

Obtengo el siguiente error cuando intento compilar el ejemplo en la documentación de keras.

/usr/include/string.h: In function ‘void* __mempcpy_inline(void*, const void*, size_t)’: /usr/include/string.h:652:42: error: ‘memcpy’ was not declared in this scope return (char *) memcpy (__dest, __src, __n) + __n; ^ ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: (''nvcc return status'', 1, ''for cmd'', ''nvcc -shared -O3 -m64 -Xcompiler -DCUDA_NDARRAY_CUH=mc72d035fdf91890f3b36710688069b2e,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,-fPIC,-fvisibility=hidden -Xlinker -rpath,/home/chase/.theano/compiledir_Linux-4.4--generic-x86_64-with-Ubuntu-16.04-xenial-x86_64-3.5.1+-64/cuda_ndarray -I/usr/local/lib/python3.5/dist-packages/theano/sandbox/cuda -I/usr/lib/python3/dist-packages/numpy/core/include -I/usr/include/python3.5m -I/usr/local/lib/python3.5/dist-packages/theano/gof -o /home/chase/.theano/compiledir_Linux-4.4--generic-x86_64-with-Ubuntu-16.04-xenial-x86_64-3.5.1+-64/cuda_ndarray/cuda_ndarray.so mod.cu -L/usr/lib -lcublas -lpython3.5m -lcudart'')

Estoy en Ubuntu 16.04. Estoy usando CUDA 7.5 que instalé desde los repositorios predeterminados. He usado CUDA para compilar algunos de mis propios programas de cuda y de ArrayFire, así sé que CUDA está funcionando.

Esto es lo que traté de compilar ...

from keras.models import Sequential model = Sequential() from keras.layers.core import Dense, Activation model.add(Dense(output_dim=64, input_dim=100)) model.add(Activation("relu")) model.add(Dense(output_dim=10)) model.add(Activation("softmax")) model.compile(loss=''categorical_crossentropy'', optimizer=''sgd'', metrics=[''accuracy''])