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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Python

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

Q&A

2回答

7708閲覧

エラー:ModuleNotFoundError: No module named 'tensorflow.python.eager'の解消

oshikosan

総合スコア4

Python

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

0グッド

0クリップ

投稿2020/01/22 07:51

編集2022/01/12 10:55

前提・実現したいこと

エラーの解消

pythonで異常検知のプログラムを組んでいます。
といってもまだ参考書のサンプルプログラムの試走段階で以下のエラーを吐かれてしまいました。
同じ経験のあるかたやpythonに詳しい方がいれば解決方法を教えていただきたいです。よろしくお願いします。

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

ModuleNotFoundError Traceback (most recent call last) <ipython-input-1-09d76afbea9b> in <module>() 7 import numpy as np 8 import tensorflow as tf ----> 9 from tensorflow.python.eager import context 10 11 ModuleNotFoundError: No module named 'tensorflow.python.eager'

該当のソースコード

字数の都合上のせることができないため、以下のURLからダウンロードしていただけると幸いです
ソースコードの所在
書籍検索で「Advanced Python」で出てくる書籍の第四章にあるEncDec-ADというpythonファイルです。

試したこと

仮想環境を2つ作り、pythonを最新バージョン(3.8.1)にしたものと参考書を同じバージョン(3.7.3)にしたものでそれぞれ試し、加えてtensorflow-gpuのバージョンも2.0.0にしたのですが(参考書の方ではtensorflow-gpuのアルファ版を使っていました)それでも解決しませんでした。ちなみにtensorflow-gpuを使用するにあたってあらかじめCUDAとcuDNNは最新のものにアップデートしておきました。

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

python: 3.8.1,3.7.1(2つの仮想環境で試しました)
tensorflow: tensorflow-gpu==2.0.0
CUDA: 10.2
cuDNN: 7.6.5
os: windows10
仮想化ツール: anaconda

コードの出典は共立出版の「Advanced Python」という書籍で、LSTM EncDec ADという異常検知手法を実現しているものとなっています。
つい先日まではGPUを使っておらず、その時はしっかりと動作していたため、GPUの使い方に問題があるのかもしれ知れないと考えています。
補足事項が必要であれば付け足します。
追記:以下の文章によるエラーのようです。
from tensorflow.python.eager import context

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

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

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

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

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

quickquip

2020/01/22 08:08

import tensorflow as tf print(tf.__file__) としてみて"どこのファイルを読みこんでいるのか"を調べて補足するのがよいかもしれません。
shiracamus

2020/01/22 08:11

tensorflow って Python3.8 対応してるのですか?
oshikosan

2020/01/22 09:12

@quiquiさん 補足ありがとうございます。 ファイルというのはソースコードが入っているファイルという意味でしょうか?
oshikosan

2020/01/22 09:16

@shiracamusさん ご指摘ありがとうございます。 なるほど、それは考えていませんでした。調べてみたら少し前までpython3.7にすら対応していなかったみたいなので、その可能性もあるかもしれませんのでもう少し詳しく調べてみます。 ただ、バージョン3.7.3で試しても同じ結果となったためそれが直接の原因ではないような気がしています。
shiracamus

2020/01/22 09:27

仮想環境は何を使っていますか? 公式Pythonをインストールして、仮想環境も構築してあると、仮想環境にないモジュールは標準のモジュールを使おうとしたりしておかしくなることがあります。
oshikosan

2020/01/22 09:35

仮想環境はAnacondaによるものを使っています。 今回投稿させてもらったエラーはtensorflowに関するものだと思うのですが、tensorflowに関しては仮想環境を構築した後でインストールしているので標準のモジュールを使用したことによるエラーではないように思います。 認識に誤りがあったら指摘していただけると助かります。
meg_

2020/01/22 10:50

リンクは「リンクの挿入」で記入してください。
oshikosan

2020/01/23 02:53

ご指摘ありがとうございます。リンクを追加しておきました。 これまで乗せていたリンクが間違っていたみたいなのでそれも修正しておきました。
oshikosan

2020/01/24 03:13

仮想環境名\lib\site-packages\tensorflow\__init__.py が表示されました。一応問題なくモジュールの参照はできていたということでしょうか?
quickquip

2020/01/24 03:26

> 問題なくモジュールの参照はできていた そうですね。「場所」の問題はなさそうです
oshikosan

2020/01/25 03:21

ありがとうございます。 それと、一応GPUではなくCPUを使えば動作するようになったので解決したはしたのですが、まだなぜ今回のようなエラーが出てしまったのかが解決していないのでもしわかったら教えていただけるとありがたいです。
guest

回答2

0

gpu版のほうを使って何かあったのなら
この対応表を見てCUDAとかのバージョンがあっているか見てみればいいと思います
バージョン合わせればたぶん動くと思います

投稿2020/04/03 12:52

編集2020/04/03 12:54
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

試してみたところ「tensorflow  1.14.0(CPU)」ではimport部分でのエラーは出ませんでした。
また、Google Colaboratory(tensorflow  1.15.0(GPU))でもimport部分でのエラーは出ませんでした。
1.X系で試されてはどうでしょうか?

※コードの動作保証をするものではありません。あくまでimport部分の確認のみです。

投稿2020/01/23 10:38

meg_

総合スコア10577

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

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

oshikosan

2020/01/24 03:10

回答ありがとうございます。tensorflowはpipで入れたものですか? 実はこの質問を投稿した後でpipでインストールされたtensorflowの入っている仮想環境であれば問題なく動作することがわかりました。(これまではcondaコマンドでインストールしていました)
meg_

2020/01/24 03:23

そうです。pipでインストールしました。
oshikosan

2020/01/25 03:22

仮想化ツールにanacondaを使っているためcondaコマンドでインストールした方が良いと思っていたのですが、一概にそういうわけではないということでしょうか?
meg_

2020/01/25 06:17

基本的にはconda installで良いと思います。 pipでしか提供されてないものは専用の仮想環境を用意して使用しています。 GPU版のみ失敗するならドライバ関係かもしれませんね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問