2015-02-11 4 views
2

У меня есть часть кода, которая должна рассчитать простой матричный продукт , в python (используя theano). Матрица, которую я собираюсь размножить, является общей переменной.Множественное преобразование матрицы Anano

Пример - самый маленький пример, демонстрирующий мою проблему.

Я использовал две вспомогательные функции. floatX преобразует свой вход в нечто вроде theano.config.floatX init_weights генерирует случайную матрицу (в виде floatX) заданных измерений.

Последняя строка вызывает сбой кода. Фактически, это заставляет так много выводить на командную строку, что я больше не могу прокручивать ее.

Итак, может ли кто-нибудь сказать мне, что я делаю неправильно?

def floatX(x): 
return numpy.asarray(x,dtype=theano.config.floatX) 

def init_weights(shape): 
return floatX(numpy.random.randn(*shape)) 

a = init_weights([3,3]) 
b = theano.shared(value=a,name="b") 
x = T.matrix() 
y = T.dot(x,b) 
f = theano.function([x],y) 

ответ

2

Эта работа для меня. Поэтому я предполагаю, что у вас проблемы с установкой blas. Убедитесь в том, чтобы использовать Theano разрабатываемой версии:

http://deeplearning.net/software/theano/install.html#bleeding-edge-install-instructions

Он имеет более по умолчанию для некоторой конфигурации. Если это не исправить проблему, посмотрите на сообщение об ошибке. Существует основная часть, которая находится после сбрасывания кода. После трассировки стека. Это то, что наиболее полезно.

Вы можете отключить прямые ссылки на Феано к Бласу с этим флагом Theano: blas.ldflags =

Это может вызвать замедление. Но это быстрая проверка, чтобы подтвердить, что проблема - это blas.

Если вам нужна дополнительная справка, отправьте сообщение об ошибке в текстовый файл и поместите его в Интернет и свяжите с ним отсюда.

+0

Как установить этот флаг? Только python -c 'blas.ldflags =' – user3214017

+0

Это сделало трюк. Спасибо. – user3214017

+0

Поскольку это сработало для вас, вы принимаете ответ. Для других, чтобы установить флаги Theano, одним из способов определить переменную environement OS 'THEANO_FLAGS = blas.ldflags = ...'. Doc для более подробной и альтернативной http://deeplearning.net/software/theano/library/config.html – nouiz

Смежные вопросы