Hi all, I am attempting to follow the logistic regression example in the documentation. Here is a subset of the code that people with correct theano versions should be able to run:
import numpy import theano import theano.tensor as T rng = numpy.random N = 400 feats = 784 # generate a dataset: D = (input_values, target_class) D = (rng.randn(N, feats), rng.randint(size=N, low=0, high=2)) training_steps = 10000 # Declare Theano symbolic variables x = T.dmatrix("x") y = T.dvector("y") # initialize the weight vector w randomly this and the following bias variable b # are shared so they keep their values between training iterations (updates) w = theano.shared(rng.randn(feats), name="w") b = theano.shared(0., name="b") # Construct Theano expression graph p_1 = 1 / (1 + T.exp(-T.dot(x, w) - b)) prediction = p_1 > 0.5 xent = -y * T.log(p_1) - (1-y) * T.log(1-p_1) # Cross-entropy loss function cost = xent.mean() + 0.01 * (w ** 2).sum() # The cost to minimize (w/regularization!) gw, gb = T.grad(cost, [w, b]) # Compute gradient of cost wrt w and b. predict = theano.function( inputs=[x], outputs=[prediction] ) When running the above, I get the following error: ERROR (theano.gof.opt): Optimization failure due to: LocalOptGroup(use_c_ger,use_c_gemv) ERROR (theano.gof.opt): node: Gemv{no_inplace}(AllocEmpty{dtype='float64'}.0, TensorConstant{1.0}, x, w, TensorConstant{0.0}) ERROR (theano.gof.opt): TRACEBACK: ERROR (theano.gof.opt): Traceback (most recent call last): File "/Users/danielseita/anaconda2/lib/python2.7/site-packages/theano/gof/opt.py", line 1922, in process_node replacements = lopt.transform(node) File "/Users/danielseita/anaconda2/lib/python2.7/site-packages/theano/gof/opt.py", line 1309, in transform new_repl = opt.transform(node) File "/Users/danielseita/anaconda2/lib/python2.7/site-packages/theano/tensor/blas_c.py", line 674, in use_c_gemv if not config.blas.ldflags: File "/Users/danielseita/anaconda2/lib/python2.7/site-packages/theano/configparser.py", line 328, in __get__ val_str = self.default() File "/Users/danielseita/anaconda2/lib/python2.7/site-packages/theano/configdefaults.py", line 1258, in default_blas_ldflags lib_path = blas_info.get('library_dirs', [])[0] IndexError: list index out of range Note that if I don't include the predict function in the code above, it will work (i.e. the problem is with the function). The error message seems to be related to blas (?) but I'm not sure how to fix it. I noticed something similar here: https://groups.google.com/forum/#!topic/theano-users/Lv-tmIOYqR4 But that is with Python 3.4. I am using Python 2.7. In addition, what I don't understand is that I can actually run functions from the Theano documentation! Here's an example. I'm following the tutorial on "copying functions" but this was chosen purely as an example. I run the following lines: Python 2.7.12 |Anaconda 4.2.0 (x86_64)| (default, Jul 2 2016, 17:43:17) Type "copyright", "credits" or "license" for more information. IPython 5.1.0 -- An enhanced Interactive Python. ? -> Introduction and overview of IPython's features. %quickref -> Quick reference. help -> Python's own help system. object? -> Details about 'object', use 'object??' for extra details. In [*1*]: *import* *theano* In [*2*]: *import* *theano.tensor* *as* *T* In [*3*]: state = theano.shared(0) In [*4*]: inc = T.iscalar('inc') In [*5*]: accumulator = theano.function([inc], state, updates=[(state, state+inc)]) In [*6*]: accumulator(10) Out[*6*]: array(0) In [*7*]: *print*(state.get_value()) 10 Everything looks good! So I don't know why I can run some functions here but not others. Any advice would be appreciated. Additional details: This is run on a Mac laptop, version 10.11.16 El Capitan My .theanorc file in the home directory: [global] floatX = float32 ddevice = cpu I am NOT using a GPU, though my laptop has one (I just choose not to use it out of simplicity for now). Here is my theano version: In [*1*]: *import* *theano* In [*2*]: theano.__version__ Out[*2*]: '0.9.0dev4.dev-RELEASE' Let me know if there's any other information that would be helpful. -- --- You received this message because you are subscribed to the Google Groups "theano-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to theano-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.