简体   繁体   中英

AttributeError: 'NoneType' object has no attribute 'name' ( related to different tensorflow versions )

While running the jupyter notebook online in google colab, no error is coming out, but while running the code in offline mode, it's giving following error. :

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-30-04f071b889cd> in <module>
      4     start_time = time.time()
      5     x, min_val, info = fmin_l_bfgs_b(evaluator.loss, x.flatten(),
----> 6                            fprime=evaluator.grads, maxfun=20)
      7     print(min_val)
      8     end_time = time.time()

~/anaconda3/lib/python3.7/site-packages/scipy/optimize/lbfgsb.py in fmin_l_bfgs_b(func, x0, fprime, args, approx_grad, bounds, m, factr, pgtol, epsilon, iprint, maxfun, maxiter, disp, callback, maxls)
    197 
    198     res = _minimize_lbfgsb(fun, x0, args=args, jac=jac, bounds=bounds,
--> 199                            **opts)
    200     d = {'grad': res['jac'],
    201          'task': res['message'],

~/anaconda3/lib/python3.7/site-packages/scipy/optimize/lbfgsb.py in _minimize_lbfgsb(fun, x0, args, jac, bounds, disp, maxcor, ftol, gtol, eps, maxfun, maxiter, iprint, callback, maxls, **unknown_options)
    333             # until the completion of the current minimization iteration.
    334             # Overwrite f and g:
--> 335             f, g = func_and_grad(x)
    336         elif task_str.startswith(b'NEW_X'):
    337             # new iteration

~/anaconda3/lib/python3.7/site-packages/scipy/optimize/lbfgsb.py in func_and_grad(x)
    283     else:
    284         def func_and_grad(x):
--> 285             f = fun(x, *args)
    286             g = jac(x, *args)
    287             return f, g

~/anaconda3/lib/python3.7/site-packages/scipy/optimize/optimize.py in function_wrapper(*wrapper_args)
    324     def function_wrapper(*wrapper_args):
    325         ncalls[0] += 1
--> 326         return function(*(wrapper_args + args))
    327 
    328     return ncalls, function_wrapper

<ipython-input-27-551cb8cb7b3f> in loss(self, x)
      6     def loss(self, x):
      7         assert self.loss_value is None
----> 8         loss_value, grad_values = eval_loss_and_grads(x)
      9         self.loss_value = loss_value
     10         self.grad_values = grad_values

<ipython-input-26-8de948cd1256> in eval_loss_and_grads(x)
      1 def eval_loss_and_grads(x):
      2     x = x.reshape((1, height, width, 3))
----> 3     outs = f_outputs([x])
      4     loss_value = outs[0]
      5     grad_values = outs[1].flatten().astype('float64')

~/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/backend.py in __call__(self, inputs)
   3287         feed_symbols != self._feed_symbols or self.fetches != self._fetches or
   3288         session != self._session):
-> 3289       self._make_callable(feed_arrays, feed_symbols, symbol_vals, session)
   3290 
   3291     fetched = self._callable_fn(*array_vals,

~/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/backend.py in _make_callable(self, feed_arrays, feed_symbols, symbol_vals, session)
   3213     # Handle fetches.
   3214     for x in self.outputs + self.fetches:
-> 3215       callable_opts.fetch.append(x.name)
   3216     # Handle updates.
   3217     callable_opts.target.append(self.updates_op.name)

AttributeError: 'NoneType' object has no attribute 'name'

In offline mode, following versions of tensoflow and keras respectively : 1.14.0, 2.3.0

In google colab, following versions of tensoflow and keras respectively : 1.15.0, 2.2.5

[ Note : i checked the code, and when i ran it on colab, it was working. ]

The code is :

import time
for i in range(iterations):
    print('Start of iteration', i)
    start_time = time.time()
    x, min_val, info = fmin_l_bfgs_b(evaluator.loss, x.flatten(),
                           fprime=evaluator.grads, maxfun=20)
    print(min_val)
    end_time = time.time()
    print('Iteration %d completed in %ds' % (i, end_time - start_time))

尝试再次安装软件包,因为它解决了我的问题,就像我在 anaconda 环境中再次重新安装了一些冲突的软件包一样

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM