LoginSignup
1
0

More than 1 year has passed since last update.

tensorflow-addonsのSpectralNormalizationでTypeError

Posted at

エラー全文はこんな感じ

TypeError: isinstance() arg 2 must be a type or tuple of types

私はSpectralNormalizationでのみ確認したが、どうやらWeightNormalizationなどの他の複数の関数でも発生する模様。

原因

tensorflow-addonsの依存ライブラリの1つに「typeguard」というものが存在する。もしもtypeguardがインストールされていない状態でtensorflow-addonsのインストールを行った場合は、pipが最新のtypeguardを同時にインストールしてくれる。
しかし、最近リリースされた「typeguard 3.0」系列はtensorflow-addonsと互換性がないので、pipがこれを取ってくるとエラーとなってしまう。

対処法

なので対処法は簡単で、typeguard2系列(たとえば2.13)をインストールする
より具体的には、pip install typeguard==2.13すればOK
ちなみに、2023年3月28日現在では、最新のtensorflow-addonsである0.19.0でも対策はされていない。よって現状ではtensorflow-addonsのバージョンを変更しても無意味(確認済み)

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0