前提・実現したいこと
オープンソースのニューラルネットワークのコード(Variational Integrator Networks)でnumpyなどを用いたコードを回しています.
requirements.txtを参考に必要なパッケージをインストールし,ファイルを実行しようとしたところ,numpyのgetattr関数でNotImplementedErrorが出てしまいました.
初学者ゆえ不足等あるかと思いますが,アドバイスいただけると大変助かります.
発生している問題・エラーメッセージ
(base) ユーザー名@MacBook-Pro Variational_Integrator_Networks %python run_exp.py root_dir model_name system_name observations num_train_traj num_train_steps seed Traceback (most recent call last): File “run_exp.py”, line 4, in <module> import tensorflow as tf File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow/__init__.py”, line 101, in <module> from tensorflow_core import * File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow_core/__init__.py”, line 40, in <module> from tensorflow.python.tools import module_util as _module_util File “<frozen importlib._bootstrap>“, line 983, in _find_and_load File “<frozen importlib._bootstrap>“, line 959, in _find_and_load_unlocked File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow/__init__.py”, line 50, in __getattr__ module = self._load() File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow/__init__.py”, line 44, in _load module = _importlib.import_module(self.__name__) File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/importlib/__init__.py”, line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow_core/python/__init__.py”, line 85, in <module> from tensorflow.python.ops.standard_ops import * File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow_core/python/ops/standard_ops.py”, line 48, in <module> from tensorflow.python.ops.special_math_ops import * File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/tensorflow_core/python/ops/special_math_ops.py”, line 30, in <module> import opt_einsum File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/opt_einsum/__init__.py”, line 9, in <module> from .contract import contract, contract_path, contract_expression File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/opt_einsum/contract.py”, line 10, in <module> from . import backends, blas, helpers, parser, paths, sharing File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/opt_einsum/backends/__init__.py”, line 7, in <module> from .dispatch import (get_func, has_einsum, has_tensordot, build_expression, evaluate_constants, has_backend) File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/opt_einsum/backends/dispatch.py”, line 12, in <module> from . import jax as _jax File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/opt_einsum/backends/jax.py”, line 12, in <module> import jax File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/__init__.py”, line 20, in <module> from jax import nn File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/nn/__init__.py”, line 17, in <module> from . import initializers File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/nn/initializers.py”, line 28, in <module> from jax import random File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/random.py”, line 33, in <module> from . import numpy as np File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/numpy/__init__.py”, line 16, in <module> from .lax_numpy import * File “<frozen importlib._bootstrap>“, line 1019, in _handle_fromlist File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/numpy/lax_numpy.py”, line 3211, in wrapped raise NotImplementedError(msg.format(fun)) NotImplementedError: Numpy function <function __getattr__ at 0x1102c4170> not yet implemented
該当のソースコード
python
1run_exp.pyの中身は以下の通りです.文字数制限の関係から関係があると思われる冒頭部分のみ記述させていただきます. 2 3 4import sys 5import os 6 7import tensorflow as tf 8import tensorflow.keras as tfk 9import numpy as np 10 11from tensorflow_probability import distributions as tfd 12 13import gin 14import build_utils 15import plot_utils 16 17import matplotlib.pyplot as plt 18import seaborn as sns 19 20COLORS = list(sns.color_palette()) 21MODEL_COLORS = { 22 "ResNet": COLORS[0], 23 "VIN_VV": COLORS[1], 24 "VIN_SV": COLORS[2], 25 "VIN_SO2": COLORS[3] 26} 27 28 29
試したこと
エラー文で検索したところ,python3.7とnumpy1.18でjaxをインポートしようとすると類似のエラーが出ていることを発見しました→ただこれに関しては,①今回はjaxを使用していないこと②このイシューに関しては修正がされていることから関係ないような気もします.
Pythonの公式ドキュメントでNotImprementedErrorの具体的な内容について参照しましたが,具体的な対処法がわからず途方に暮れています.
exception NotImplementedError This exception is derived from RuntimeError. In user defined base classes, abstract methods should raise this exception when they require derived classes to override the method, or while the class is being developed to indicate that the real implementation still needs to be added. Note It should not be used to indicate that an operator or method is not meant to be supported at all – in that case either leave the operator / method undefined or, if a subclass, set it to None. Note NotImplementedError and NotImplemented are not interchangeable, even though they have similar names and purposes. See NotImplemented for details on when to use it.
またanacondaをpipを併用していたことに気づいたため,anacondaをアンインストールしました
参考にしたページ
2021/05/02 22:43追記
pip show jax の結果を、質問を編集して貼りましょう
今回はjaxを使用していない エラーはjaxから出てますよ > File “/Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages/jax/numpy/lax_numpy.py”, line 3211, in wrapped
このイシューに関しては修正がされている 修正されるよりも前のバージョンを使っている、ということはありませんでしょうか? Jan 2020頃(jax 0.1.56~58あたり)で修正されてるようですが https://github.com/google/jax/pull/1931/files https://pypi.org/project/jax/#history
上記の通りご指摘をいただいたためjaxのバージョンを確認したところ,0.1.55(修正前)のバージョンを使っていたため,取り急ぎ0.1.60にアップデートしました.
pip show jaxの出力結果 Name: jax Version: 0.1.55 Summary: Differentiate, compile, and transform Numpy code. Home-page: https://github.com/google/jax Author: JAX team Author-email: jax-dev@google.com License: Apache-2.0 Location: /Users/ユーザー名/.pyenv/versions/3.7.5/lib/python3.7/site-packages Requires: numpy, six, absl-py, opt-einsum, fastcache Required-by:
拙文で申し訳ありませんが,些細なことでも構いませんのでアドバイスいただけると大変助かります.
よろしくおねがいいたします.
補足情報(FW/ツールのバージョンなど)
0S: MacOS Catalina ver10.15.7
pip 21.0.1
Python 3.7.5
numpy 1.18.1
回答1件
あなたの回答
tips
プレビュー