質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.69%

kerasでERROR:tensorflow Object was never usedが発生しました

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 504

keraker

score 7

前提・実現したいこと

kerasでLambdaレイヤーを作成しています。
backend.switch中のbackend.concatenateでkeras.backend.zerosを使った行列を結合したmodelをgoogle colaboratory のtpuで実行する際に以下のエラーが発生します。
modelを作成する時点では発生しません。

発生している問題・エラーメッセージ

ERROR:tensorflow:==================================
Object was never used (type <class 'tensorflow.python.framework.ops.Tensor'>):
<tf.Tensor 'VarIsInitializedOp_2:0' shape=() dtype=bool>
If you want to mark it as used call its "mark_used()" method.
It was originally created here:
  File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)  File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)  File "/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py", line 16, in <module>
    app.launch_new_instance()  File "/usr/local/lib/python3.6/dist-packages/traitlets/config/application.py", line 658, in launch_instance
    app.start()  File "/usr/local/lib/python3.6/dist-packages/ipykernel/kernelapp.py", line 477, in start
    ioloop.IOLoop.instance().start()  File "/usr/local/lib/python3.6/dist-packages/tornado/ioloop.py", line 888, in start
    handler_func(fd_obj, events)  File "/usr/local/lib/python3.6/dist-packages/tornado/stack_context.py", line 277, in null_wrapper
    return fn(*args, **kwargs)  File "/usr/local/lib/python3.6/dist-packages/zmq/eventloop/zmqstream.py", line 450, in _handle_events
    self._handle_recv()  File "/usr/local/lib/python3.6/dist-packages/zmq/eventloop/zmqstream.py", line 480, in _handle_recv
    self._run_callback(callback, msg)  File "/usr/local/lib/python3.6/dist-packages/zmq/eventloop/zmqstream.py", line 432, in _run_callback
    callback(*args, **kwargs)  File "/usr/local/lib/python3.6/dist-packages/tornado/stack_context.py", line 277, in null_wrapper
    return fn(*args, **kwargs)  File "/usr/local/lib/python3.6/dist-packages/ipykernel/kernelbase.py", line 283, in dispatcher
    return self.dispatch_shell(stream, msg)  File "/usr/local/lib/python3.6/dist-packages/ipykernel/kernelbase.py", line 235, in dispatch_shell
    handler(stream, idents, msg)  File "/usr/local/lib/python3.6/dist-packages/ipykernel/kernelbase.py", line 399, in execute_request
    user_expressions, allow_stdin)  File "/usr/local/lib/python3.6/dist-packages/ipykernel/ipkernel.py", line 196, in do_execute
    res = shell.run_cell(code, store_history=store_history, silent=silent)  File "/usr/local/lib/python3.6/dist-packages/ipykernel/zmqshell.py", line 533, in run_cell
    return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)  File "/usr/local/lib/python3.6/dist-packages/IPython/core/interactiveshell.py", line 2718, in run_cell
    interactivity=interactivity, compiler=compiler, result=result)  File "/usr/local/lib/python3.6/dist-packages/IPython/core/interactiveshell.py", line 2822, in run_ast_nodes
    if self.run_code(code, result):  File "/usr/local/lib/python3.6/dist-packages/IPython/core/interactiveshell.py", line 2882, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)  File "<ipython-input-179-6b78e8192dae>", line 43, in <module>
    model = tf.contrib.tpu.keras_to_tpu_model(model, strategy=strategy)  File "/usr/local/lib/python3.6/dist-packages/tensorflow/contrib/framework/python/framework/experimental.py", line 64, in new_func
    return func(*args, **kwargs)  File "/usr/local/lib/python3.6/dist-packages/tensorflow/contrib/tpu/python/tpu/keras_support.py", line 2221, in tpu_model
    model_weights = model.get_weights()  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/network.py", line 392, in get_weights
    return backend.batch_get_value(weights)  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/backend.py", line 2819, in batch_get_value
    return get_session().run(tensors)  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/backend.py", line 482, in get_session
    _initialize_variables(session)  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/backend.py", line 758, in _initialize_variables
    [variables_module.is_variable_initialized(v) for v in candidate_vars])  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/backend.py", line 758, in <listcomp>
    [variables_module.is_variable_initialized(v) for v in candidate_vars])  File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/util/tf_should_use.py", line 193, in wrapped
    return _add_should_use_warning(fn(*args, **kwargs))

tensorflowで置き換えた場合に発生している問題・エラーメッセージ

InvalidArgumentError: Combined status information from 9 operations:

Status code: Invalid argument [9x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_0/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_1/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_2/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_3/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_4/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_5/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_6/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
  You must feed a value for placeholder tensor 'input_1' with dtype float and shape [?,128,128,3]
       [[{{node input_1}}]]
       [[{{node GroupCrossDeviceControlEdges_7/TPUReplicate/_compile/_6611770376868054350/_423}}]] [1x]
(0 successful operations.)

該当のソースコード

batch_size = tf.shape(x)[0]

#K.switchで実行する関数
lambda: K.concatenate([x,K.zeros((batch_size,1))], axis=-1),
lambda: K.concatenate([x,K.ones((batch_size,1))], axis=-1)

試したこと

上記を
lambda: x
にした場合はエラーが発生しなかったので原因はzerosではないかと思いますが、それ以上はわかりませんでした。

補足情報(FW/ツールのバージョンなど)

tensowflowのバージョンは最新でした。

以下のようにtensowflowで置き換えた場合は二番目のエラーが発生しました。

lambda: tf.concat([x,tf.zeros((batch_size, 1))],1)
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.69%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる