Unexpected keyword argument 'ragged' in Keras

zxsq

Trying to run a trained keras model with the following python code:

from keras.preprocessing.image import img_to_array
from keras.models import load_model

from imutils.video import VideoStream
from threading import Thread
import numpy as np
import imutils
import time
import cv2
import os

MODEL_PATH = "/home/pi/Documents/converted_keras/keras_model.h5"

print("[info] loading model..")
model = load_model(MODEL_PATH)


print("[info] starting vid stream..")
vs = VideoStream(usePiCamera=True).start()
time.sleep(2.0)

while True:
    frame = vs.Read()
    frame = imutils.resize(frame, width=400)

    image = cv2.resize(frame, (28, 28))
    image = image.astype("float") / 255.0
    image = img_to_array(image)
    image = np.expand_dims(image, axis=0)
    (fuel, redBall, whiteBall, none) = model.predict(image)[0]
    label = "none"
    proba = none

    if fuel > none and fuel > redBall and fuel > whiteBall:
        label = "Fuel"
        proba = fuel
    elif redBall > none and redBall > fuel and redBall > whiteBall:
        label = "Red Ball"
        proba = redBall
    elif whiteBall > none and whiteBall > redBall and whiteBall > fuel:
        label = "white ball"
        proba = whiteBall
    else:
        label = "none"
        proba = none

    label = "{}:{:.2f%}".format(label, proba * 100)
    frame = cv2.putText(frame, label, (10, 25),
                        cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 255, 0), 2)
    cv2.imshow("Frame", frame)
    key = cv2.waitKey(1) & 0xFF

    if key == ord("q"):
        break

print("[info] cleaning up..")
cv2.destroyAllWindows()
vs.stop()

When I run it with python3, I get the following error: TypeError: __init__() got an unexpected keyword argument 'ragged'

What's causing the error, and how do I get around it?

Versions: Keras v2.3.1 tensorflow v1.13.1

Edit to add:

Traceback (most recent call last):
  File "/home/pi/Documents/converted_keras/keras-script.py", line 18, in <module>
    model = load_model(MODEL_PATH)
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/saving.py", line 492, in load_wrapper
    return load_function(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/saving.py", line 584, in load_model
    model = _deserialize_model(h5dict, custom_objects, compile)
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/saving.py", line 274, in _deserialize_model
    model = model_from_config(model_config, custom_objects=custom_objects)
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/saving.py", line 627, in model_from_config
    return deserialize(config, custom_objects=custom_objects)
  File "/usr/local/lib/python3.7/dist-packages/keras/layers/__init__.py", line 168, in deserialize
    printable_module_name='layer')
  File "/usr/local/lib/python3.7/dist-packages/keras/utils/generic_utils.py", line 147, in deserialize_keras_object
    list(custom_objects.items())))
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/sequential.py", line 301, in from_config
    custom_objects=custom_objects)
  File "/usr/local/lib/python3.7/dist-packages/keras/layers/__init__.py", line 168, in deserialize
    printable_module_name='layer')
  File "/usr/local/lib/python3.7/dist-packages/keras/utils/generic_utils.py", line 147, in deserialize_keras_object
    list(custom_objects.items())))
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/sequential.py", line 301, in from_config
    custom_objects=custom_objects)
  File "/usr/local/lib/python3.7/dist-packages/keras/layers/__init__.py", line 168, in deserialize
    printable_module_name='layer')
  File "/usr/local/lib/python3.7/dist-packages/keras/utils/generic_utils.py", line 147, in deserialize_keras_object
    list(custom_objects.items())))
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/network.py", line 1056, in from_config
    process_layer(layer_data)
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/network.py", line 1042, in process_layer
    custom_objects=custom_objects)
  File "/usr/local/lib/python3.7/dist-packages/keras/layers/__init__.py", line 168, in deserialize
    printable_module_name='layer')
  File "/usr/local/lib/python3.7/dist-packages/keras/utils/generic_utils.py", line 149, in deserialize_keras_object
    return cls.from_config(config['config'])
  File "/usr/local/lib/python3.7/dist-packages/keras/engine/base_layer.py", line 1179, in from_config
    return cls(**config)
  File "/usr/local/lib/python3.7/dist-packages/keras/legacy/interfaces.py", line 91, in wrapper
    return func(*args, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'ragged'

h5 file link (google drive)

Vivek Mehta

So I tried link above which you have mentioned teachable machine
As it turns out model you have exported is from tensorflow.keras and not directly from keras API. These two are different. So while loading it might be using tf.ragged tensors that might not be compatible with keras API.

Soulution to your issue:

Don't import keras directly as your model is saved with Tensorflow's keras high level api. Change all your imports to tensorflow.keras

Change:

from keras.preprocessing.image import img_to_array
from keras.models import load_model

to this:

from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.models import load_model

It will solve your issue.

EDIT :
All of your imports, either should be from Keras or tensorflow.keras. Although being same API few things are different which creates these kind of issues. Also for tensorflow backend tf.keras is preferred, because Keras 2.3.0 is last major release which will support backends other than tensorflow.

This release brings the API in sync with the tf.keras API as of TensorFlow 2.0. However note that it does not support most TensorFlow 2.0 features, in particular eager execution. If you need these features, use tf.keras. This is also the last major release of multi-backend Keras. Going forward, we recommend that users consider switching their Keras code to tf.keras in TensorFlow 2.0.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Unexpected keyword argument 'ragged' in Keras

From Dev

Keras TypeError: evaluate_generator() got an unexpected keyword argument 'steps'

From Dev

Unexpected keyword argument in django

From Dev

Unexpected keyword argument in django

From Dev

Gittle - "unexpected keyword argument 'pkey'"

From Dev

Unexpected keyword argument in python click

From Dev

TypeError: got an unexpected keyword argument

From Dev

Django got an unexpected keyword argument

From Dev

django unexpected keyword argument error

From Dev

save() got an unexpected keyword argument

From Dev

Python **kwargs: unexpected keyword argument

From Dev

Type error: unexpected keyword argument

From Dev

save() got an unexpected keyword argument

From Dev

DepositRateHelper unexpected keyword argument 'dayCounter'

From Dev

Keras load_model returning Unexpected keyword argument passed to optimizer: amsgrad

From Dev

pie() got an unexpected keyword argument 'startangle'

From Java

TypeError: attrib() got an unexpected keyword argument 'convert'

From Java

subprocess: unexpected keyword argument capture_output

From Dev

Unexpected keyword argument TypeError with Django REST Framework

From Dev

__init__() got an unexpected keyword argument 'mimetype'

From Dev

Django dispatch() got an unexpected keyword argument in Django

From Dev

__init__() got an unexpected keyword argument 'required'

From Dev

save() got an unexpected keyword argument 'using'

From Dev

TypeError: MLPClassifier() got an unexpected keyword argument 'algorithm'

From Dev

BaseModelFormSet __init__() got an unexpected keyword argument

From Dev

pycharm pytestrunner PluginManager unexpected keyword argument

From Dev

Why is unexpected keyword argument 'typ' error thrown?

From Dev

unexpected keyword argument 'buffering' - python client

From Dev

TypeError: boxplot() got an unexpected keyword argument 'labels'

Related Related

  1. 1

    Unexpected keyword argument 'ragged' in Keras

  2. 2

    Keras TypeError: evaluate_generator() got an unexpected keyword argument 'steps'

  3. 3

    Unexpected keyword argument in django

  4. 4

    Unexpected keyword argument in django

  5. 5

    Gittle - "unexpected keyword argument 'pkey'"

  6. 6

    Unexpected keyword argument in python click

  7. 7

    TypeError: got an unexpected keyword argument

  8. 8

    Django got an unexpected keyword argument

  9. 9

    django unexpected keyword argument error

  10. 10

    save() got an unexpected keyword argument

  11. 11

    Python **kwargs: unexpected keyword argument

  12. 12

    Type error: unexpected keyword argument

  13. 13

    save() got an unexpected keyword argument

  14. 14

    DepositRateHelper unexpected keyword argument 'dayCounter'

  15. 15

    Keras load_model returning Unexpected keyword argument passed to optimizer: amsgrad

  16. 16

    pie() got an unexpected keyword argument 'startangle'

  17. 17

    TypeError: attrib() got an unexpected keyword argument 'convert'

  18. 18

    subprocess: unexpected keyword argument capture_output

  19. 19

    Unexpected keyword argument TypeError with Django REST Framework

  20. 20

    __init__() got an unexpected keyword argument 'mimetype'

  21. 21

    Django dispatch() got an unexpected keyword argument in Django

  22. 22

    __init__() got an unexpected keyword argument 'required'

  23. 23

    save() got an unexpected keyword argument 'using'

  24. 24

    TypeError: MLPClassifier() got an unexpected keyword argument 'algorithm'

  25. 25

    BaseModelFormSet __init__() got an unexpected keyword argument

  26. 26

    pycharm pytestrunner PluginManager unexpected keyword argument

  27. 27

    Why is unexpected keyword argument 'typ' error thrown?

  28. 28

    unexpected keyword argument 'buffering' - python client

  29. 29

    TypeError: boxplot() got an unexpected keyword argument 'labels'

HotTag

Archive