Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error importing BERT: module 'tensorflow._api.v2.train' has no attribute 'Optimizer'

I tried to use bert-tensorflow in Google Colab, but I got the following error:

--------------------------------------------------------------------------- AttributeError Traceback (most recent call last) in () 1 import bert ----> 2 from bert import run_classifier_with_tfhub # run_classifier 3 from bert import optimization 4 from bert import tokenization

1 frames /usr/local/lib/python3.6/dist-packages/bert/optimization.py in () 85 86 ---> 87 class AdamWeightDecayOptimizer(tf.train.Optimizer): 88 """A basic Adam optimizer that includes "correct" L2 weight decay.""" 89

AttributeError: module 'tensorflow._api.v2.train' has no attribute 'Optimizer'

Here is the code I tried:

  1. Install the libraries:

!pip install --upgrade --force-reinstall tensorflow !pip install --upgrade --force-reinstall tensorflow-gpu !pip install tensorflow_hub !pip install sentencepiece !pip install bert-tensorflow

  1. Run this code:

from sklearn.model_selection import train_test_split import pandas as pd from datetime import datetime from tensorflow.keras import optimizers import bert from bert import run_classifier from bert import optimization from bert import tokenization

I've also tried import tensorflow.compat.v1 as tf tf.disable_v2_behavior()

But got the same error.

like image 615
Belkacem Thiziri Avatar asked Dec 23 '22 18:12

Belkacem Thiziri


2 Answers

I did some experimentation in my own colab notebook (please provide a link next time) and I found that in the error message, there was

class AdamWeightDecayOptimizer(tf.train.Optimizer):

this being the header of the class. But there is nothing like tf.train.optimizer instead it should be :

class AdamWeightDecayOptimizer(tf.compat.v1.train.Optimizer):

The link where there is exact issue with (lol) exact same line is here

like image 170
neel g Avatar answered Dec 25 '22 06:12

neel g


import tensorflow as tf

print(tf.__version__)

!pip uninstall tensorflow==2.2.0

!pip install tensorflow==1.15.0

!pip install bert-tensorflow

try this. it worked for me for the same issue

like image 43
LALIT SINGH Avatar answered Dec 25 '22 08:12

LALIT SINGH