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

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

新規登録して質問してみよう
ただいま回答率
85.47%
scikit-learn

scikit-learnは、Pythonで使用できるオープンソースプロジェクトの機械学習用ライブラリです。多くの機械学習アルゴリズムが実装されていますが、どのアルゴリズムも同じような書き方で利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

4743閲覧

InvalidArgumentError: Graph execution errorの対策方法

KYuki1218

総合スコア26

scikit-learn

scikit-learnは、Pythonで使用できるオープンソースプロジェクトの機械学習用ライブラリです。多くの機械学習アルゴリズムが実装されていますが、どのアルゴリズムも同じような書き方で利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2023/02/28 09:35

編集2023/02/28 11:47

実現したいこと

Google ColabでKerasを試した際にエラー(InvalidArgumentError: Graph execution error)が出てしまい改善しません。https://teratail.com/questions/4xse8bqij3aiatを確認しましたが,解決済なものが削除されたとのこと…

なお,Google Drive内の全csvファイルに3列ほどデータを追加する前は,問題なく実行可能でした。

解決策をご存知な方は,ご教示いただけますと幸いです。

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

InvalidArgumentError Traceback (most recent call last) <ipython-input-2-bb8e73d2cf55> in <module> 119 ) 120 # 学習モデルにデータを与えて学習させる --> 121 model.fit( 122 train_gen, 123 epochs = epochs, 1 frames /usr/local/lib/python3.8/dist-packages/tensorflow/python/eager/execute.py in quick_execute(op_name, num_outputs, inputs, attrs, ctx, name) 50 try: 51 ctx.ensure_initialized() ---> 52 tensors = pywrap_tfe.TFE_Py_Execute(ctx._handle, device_name, op_name, 53 inputs, attrs, num_outputs) 54 except core._NotOkStatusException as e: InvalidArgumentError: Graph execution error: 2 root error(s) found. (0) INVALID_ARGUMENT: ValueError: Input contains infinity or a value too large for dtype('float64'). Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/ops/script_ops.py", line 271, in __call__ ret = func(*args) File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py", line 642, in wrapper return func(*args, **kwargs) File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/data/ops/dataset_ops.py", line 1039, in generator_py_func values = next(generator_state.get_iterator(iterator_id)) File "/usr/local/lib/python3.8/dist-packages/keras/engine/data_adapter.py", line 901, in wrapped_generator for data in generator_fn(): File "<ipython-input-2-bb8e73d2cf55>", line 36, in generator data = StandardScaler().fit_transform(data.reshape(-1, 1)).reshape(data.shape) File "/usr/local/lib/python3.8/dist-packages/sklearn/base.py", line 852, in fit_transform return self.fit(X, **fit_params).transform(X) File "/usr/local/lib/python3.8/dist-packages/sklearn/preprocessing/_data.py", line 806, in fit return self.partial_fit(X, y, sample_weight) File "/usr/local/lib/python3.8/dist-packages/sklearn/preprocessing/_data.py", line 841, in partial_fit X = self._validate_data( File "/usr/local/lib/python3.8/dist-packages/sklearn/base.py", line 566, in _validate_data X = check_array(X, **check_params) File "/usr/local/lib/python3.8/dist-packages/sklearn/utils/validation.py", line 800, in check_array _assert_all_finite(array, allow_nan=force_all_finite == "allow-nan") File "/usr/local/lib/python3.8/dist-packages/sklearn/utils/validation.py", line 114, in _assert_all_finite raise ValueError( ValueError: Input contains infinity or a value too large for dtype('float64'). [[{{node PyFunc}}]] [[IteratorGetNext]] [[IteratorGetNext/_8]] (1) INVALID_ARGUMENT: ValueError: Input contains infinity or a value too large for dtype('float64'). Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/ops/script_ops.py", line 271, in __call__ ret = func(*args) File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/autograph/impl/api.py", line 642, in wrapper return func(*args, **kwargs) File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/data/ops/dataset_ops.py", line 1039, in generator_py_func values = next(generator_state.get_iterator(iterator_id)) File "/usr/local/lib/python3.8/dist-packages/keras/engine/data_adapter.py", line 901, in wrapped_generator for data in generator_fn(): File "<ipython-input-2-bb8e73d2cf55>", line 36, in generator data = StandardScaler().fit_transform(data.reshape(-1, 1)).reshape(data.shape) File "/usr/local/lib/python3.8/dist-packages/sklearn/base.py", line 852, in fit_transform return self.fit(X, **fit_params).transform(X) File "/usr/local/lib/python3.8/dist-packages/sklearn/preprocessing/_data.py", line 806, in fit return self.partial_fit(X, y, sample_weight) File "/usr/local/lib/python3.8/dist-packages/sklearn/preprocessing/_data.py", line 841, in partial_fit X = self._validate_data( File "/usr/local/lib/python3.8/dist-packages/sklearn/base.py", line 566, in _validate_data X = check_array(X, **check_params) File "/usr/local/lib/python3.8/dist-packages/sklearn/utils/validation.py", line 800, in check_array _assert_all_finite(array, allow_nan=force_all_finite == "allow-nan") File "/usr/local/lib/python3.8/dist-packages/sklearn/utils/validation.py", line 114, in _assert_all_finite raise ValueError( ValueError: Input contains infinity or a value too large for dtype('float64'). [[{{node PyFunc}}]] [[IteratorGetNext]] 0 successful operations. 0 derived errors ignored. [Op:__inference_train_function_7490]

気になる質問をクリップする

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

PondVillege

2023/02/28 10:03

Graph execution errorは上記エラー文だけでは解決が困難です.エラー全文掲載可能でしょうか.
PondVillege

2023/02/28 10:52

なるほど,左右対称性とやらの導出過程でinfinityを叩き出したものと考えられます.コメントに書いていただいたエラー文 ValueError: Input contains infinity or a value too large for dtype('float64'). が大事なのでエラー全文質問の方に転記願います.コメント欄の方からは削除して結構です. 同様に,左右対称性の変数を追加した処理も追記願います.
KYuki1218

2023/02/28 11:53

エラー全文を質問の方に転記いたしました(コメントは削除依頼済)。 処理は下記の通りになります(これを股関節・膝関節・足関節で出力)。 LRdiff_knee_angle = abs((abs(df["KNEE_l"])/abs(df["KNEE_r"])) - (abs(df["KNEE_r"])/abs(df["KNEE_l"]))) なお,KNEE_lなどは角度の変数が入っており,左右対称性の変数をコメントアウトして,csvファイルを元に戻したら,実行できました(左右対称性の変数は追加できず…)。
PondVillege

2023/02/28 12:23

なるほど,やはり除算が入ってましたかdf["KNEE_r"]やdf["KNEE_l"]が0近い値だと,これが分母に来たときにinfinityを得てしまい質問のエラーになりますね 左右対称性とやらをグラフ描画して可視化することで対処法を考えるしかないですね
KYuki1218

2023/02/28 13:14

エラーに関する詳細をご教示いただきありがとうございます。 可視化すると0に近い値に寄っていたため,下記のように全体を絶対値で括らないようにしてもエラーが生じてしまう結果となりました。 (abs(df["ANKLE_l"])/abs(df["ANKLE_r"])) - (abs(df["ANKLE_r"])/abs(df["ANKLE_l"]))
PondVillege

2023/02/28 13:56

はい,absで括ろうが問題はゼロ除算なので効果無いですね. ANKLEすなわち足首の角度がゼロになること無いと思いますがどういう計算してるのでしょう,導出あたりを洗う必要があります. 元データはxyzの3次元直交座標系だったので,これを3次元極座標系にすると角度は2つ出てくるはずですが見た感じANKLE_rやANKLE_lしか無いので疑問に思う点が多いです
KYuki1218

2023/02/28 14:52

ps_aux_grep様,別の左右非対称性を示す指標を用いることによって解決しました!これも0に近い値に問題があるのではというご助言をしていただいたおかげです(角度に関しては再検討します…)。 いつも親身になってご指導いただき本当にありがとうございます。
PondVillege

2023/03/01 02:53

では,その旨を解答欄に記述して自己解決でクローズしてください
KYuki1218

2023/03/01 14:30

承知しました!本当にいつもありがとうございます。
guest

回答2

0

追加されたデータをチェックし、それが Keras モデルの予想される入力形式と一致していることを確認することをお勧めします。Buckshot Roulette

投稿2024/01/24 02:24

MikasaAckerman

総合スコア4

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自己解決

変数を追加する際に0に近い値が多くなりすぎないように工夫をする。

投稿2023/03/01 14:31

KYuki1218

総合スコア26

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問