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

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

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

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

解決済

Pythonの「tensorflow」がうまく利用できない点について

green2021
green2021

総合スコア9

Python

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

1回答

0評価

0クリップ

515閲覧

投稿2022/03/21 05:35

編集2022/03/22 10:41

Pythonの「tensorflow」がうまく利用できません。
pip install tensorflowなどを行い、pathを通したはずですがうまくいきません。
数日前までは、添付画像のようにモジュール警告の線が引かれているのにも関わらず実行できました。
イメージ説明

しかし、現在は実行を行っても、エラーになります。
エラー文は以下となります。

TypeError: Unable to convert function return value to a Python type! The signature was
() -> handle

また、Tracebackの内容は以下です。

Traceback (most recent call last):
File "c:\Users\K21060066\Desktop\Python学習ファイル\自然言語処理入門\chapter09\models.py", line 1, in <module>
from tensorflow.keras.models import Model
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow_init_.py", line 37, in <module>
from tensorflow.python.tools import module_util as module_util
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python_init
.py", line 42, in <module>
from tensorflow.python import data
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data_init_.py", line 21, in <module>
from tensorflow.python.data import experimental
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data\experimental_init_.py", line 95, in <module>
from tensorflow.python.data.experimental import service
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data\experimental\service_init_.py", line 387, in <module>
from tensorflow.python.data.experimental.ops.data_service_ops import distribute
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data\experimental\ops\data_service_ops.py", line 23, in <module>
from tensorflow.python.data.experimental.ops import compression_ops
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data\experimental\ops\compression_ops.py", line 16, in <module>
from tensorflow.python.data.util import structure
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data\util\structure.py", line 22, in <module>
from tensorflow.python.data.util import nest
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\data\util\nest.py", line 36, in <module>
from tensorflow.python.framework import sparse_tensor as _sparse_tensor
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\framework\sparse_tensor.py", line 24, in <module>
from tensorflow.python.framework import constant_op
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\framework\constant_op.py", line 25, in <module>
from tensorflow.python.eager import execute
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\eager\execute.py", line 23, in <module>
from tensorflow.python.framework import dtypes
File "C:\Users\K21060066\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\python\framework\dtypes.py", line 29, in <module>
_np_bfloat16 = _pywrap_bfloat16.TF_bfloat16_type()
TypeError: Unable to convert function return value to a Python type! The signature was
() -> handle

ライブラリのtensorflow付近のリストは以下のようになっています。
イメージ説明

もし、この辺に精通している方がいらしましたら、ぜひご教授ください。
また、現在はanacondaの利用はできないのでご容赦ください。

python

#models.py from tensorflow.keras.models import Model from tensorflow.keras.layers import Dense, Input, Embedding, SimpleRNN, LSTM, Conv1D, GlobalMaxPooling1D class RNNModel: def __init__(self, input_dim, output_dim, emb_dim=300, hid_dim=100, embeddings=None, trainable=True): self.input = Input(shape=(None,), name='input') if embeddings is None: self.embedding = Embedding(input_dim=input_dim, output_dim=emb_dim, mask_zero=True, trainable=trainable, name='embedding') else: self.embedding = Embedding(input_dim=embeddings.shape[0], output_dim=embeddings.shape[1], mask_zero=True, trainable=trainable, weights=[embeddings], name='embedding') self.rnn = SimpleRNN(hid_dim, name='rnn') self.fc = Dense(output_dim, activation='softmax') def build(self): x = self.input embedding = self.embedding(x) output = self.rnn(embedding) y = self.fc(output) return Model(inputs=x, outputs=y) class LSTMModel: def __init__(self, input_dim, output_dim, emb_dim=300, hid_dim=100, embeddings=None, trainable=True): self.input = Input(shape=(None,), name='input') if embeddings is None: self.embedding = Embedding(input_dim=input_dim, output_dim=emb_dim, mask_zero=True, trainable=trainable, name='embedding') else: self.embedding = Embedding(input_dim=embeddings.shape[0], output_dim=embeddings.shape[1], mask_zero=True, trainable=trainable, weights=[embeddings], name='embedding') self.lstm = LSTM(hid_dim, name='lstm') self.fc = Dense(output_dim, activation='softmax') def build(self): x = self.input embedding = self.embedding(x) output = self.lstm(embedding) y = self.fc(output) return Model(inputs=x, outputs=y) class CNNModel: def __init__(self, input_dim, output_dim, filters=250, kernel_size=3, emb_dim=300, embeddings=None, trainable=True): self.input = Input(shape=(None,), name='input') if embeddings is None: self.embedding = Embedding(input_dim=input_dim, output_dim=emb_dim, trainable=trainable, name='embedding') else: self.embedding = Embedding(input_dim=embeddings.shape[0], output_dim=embeddings.shape[1], trainable=trainable, weights=[embeddings], name='embedding') self.conv = Conv1D(filters, kernel_size, padding='valid', activation='relu', strides=1) self.pool = GlobalMaxPooling1D() self.fc = Dense(output_dim, activation='softmax') def build(self): x = self.input embedding = self.embedding(x) conv = self.conv(embedding) pool = self.pool(conv) y = self.fc(pool) return Model(inputs=x, outputs=y) class LSTMCNNModel: def __init__(self, input_dim, output_dim, filters=250, kernel_size=3, emb_dim=300, hid_dim=100, embeddings=None): self.input = Input(shape=(None,), name='input') if embeddings is None: self.embedding = Embedding(input_dim=input_dim, output_dim=emb_dim, mask_zero=True, name='embedding') else: self.embedding = Embedding(input_dim=embeddings.shape[0], output_dim=embeddings.shape[1], mask_zero=True, weights=[embeddings], name='embedding') self.lstm = LSTM(hid_dim, return_sequences=True, name='lstm') self.conv = Conv1D(filters, kernel_size, padding='valid', activation='relu', strides=1) self.pool = GlobalMaxPooling1D() self.fc1 = Dense(hid_dim) self.fc2 = Dense(output_dim, activation='softmax') def build(self): x = self.input embedding = self.embedding(x) lstm = self.lstm(embedding) conv = self.conv(lstm) pool = self.pool(conv) y = self.fc1(pool) y = self.fc2(y) return Model(inputs=x, outputs=y)

良い質問の評価を上げる

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

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

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

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

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

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

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

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

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

y_waiwai

2022/03/21 05:49

コードを提示しよう
jbpb0

2022/03/21 06:09

> エラー文は以下となります。 そのエラーは、質問に記載のコードのどの行を実行した時に出るのでしょうか?
green2021

2022/03/21 06:19

すみません。一枚目の画像を別なものをアップロードしていました。修正いたしました。 tensorflowが関係している22,23,24行目を実行したときにエラーが出ます。
jbpb0

2022/03/21 06:34

> 22,23,24行目を実行したときにエラーが出ます。 その行のコードを書いてください (質問に記載のコードの行数を数えるのは面倒くさい) ここに書くのではなくて、質問を編集して追記してください
green2021

2022/03/21 06:39

失礼いたしました。エラーが発生する部分を追記しました。
jbpb0

2022/03/21 06:41

> TypeError: Unable to convert... よりも前(上)に「Traceback」と書かれてる行があれば、その行以降を省略せずに全部質問に書いてくれた方が、他人が状況を把握しやすくなります
green2021

2022/03/21 06:46

何度もすみませんでした。 Tracebackの部分を追記しました。
jbpb0

2022/03/21 07:09

> Traceback (most recent call last): File "c:\Users\K21060066\Desktop\Python学習ファイル\自然言語処理入門\chapter09\models.py", line 1, in <module> from tensorflow.keras.models import Model によると、 > エラーが生じているのは以下の部分です に記載の行とは違い、「...\自然言語処理入門\chapter09\models.py」の1行目の from tensorflow.keras.models import Model でエラーが出てるようですが
jbpb0

2022/03/21 07:43

> Unable to convert function return value to a Python type! The signature was () -> handle https://github.com/tensorflow/tensorflow/issues/48453#issuecomment-819415756 を見ると、 Python 3.9+numpy-1.19.5+tensorflow-2.6.0 だと同じエラーが出たのが、 Python 3.9+numpy-1.20.5+tensorflow-2.6.0 だとそのエラーは出なくなったようです numpyとtensorflowのバージョンの組み合わせに依存するのかもしれません
green2021

2022/03/21 09:18

貴重なご意見ありがとうございます。 tensorflow-2.8.0なので、なんとなくnumpyを1.20.3にしたら無事に動きました!! Python 3.9+numpy-1.20.3+tensorflow-2.8.0で実行できたことになります! 差し支えなければ、jbpb0様をベストアンサーにしたいのですが、 回答に「Python 3.9のにおいて、tensorflow-2.8.0であれば、numpy-1.20.3だと問題なく実行できます。」 など記載していただけないでしょうか? よろしくお願いいたします。
jbpb0

2022/03/22 00:21 編集

上にも書きましたが、質問の「エラーが生じているのは以下の部分です」のすぐ下に記載のコード3行は、実際にエラーが出てる場所ではありません 「エラーが生じているのは以下の部分です」と、そのすぐ下のコード3行は、質問を編集して削除した方がいいと思います 実際にエラーが出てる場所は「Traceback」以下を見たら分かるので、上記は削除するだけで大丈夫です

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Python

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