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

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

新規登録して質問してみよう
ただいま回答率
85.31%
Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

Python

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

Q&A

1回答

1169閲覧

VisualStudioCodeの導入がうまくいかない

marus2024

総合スコア0

Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

Python

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

0グッド

0クリップ

投稿2024/03/19 07:26

実現したいこと

現在主PCとは違うPCで新規にVisualStudioCodeを導入し、主PCでやったようにPythonコードでh5ファイルを読み込み、写真を判読できるようにしたいと考えています。

発生している問題・分からないこと

VisualStudioCodeを導入し、主PCと同じフォルダ構成でpyファイルを読み込ませたのですが、以下のエラーメッセージが出ます。
主PCでは問題なく実行できたのですが、何かのインストールが抜けているのでしょうか。

エラーメッセージ

error

12024-03-19 16:20:03.215232: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`. 22024-03-19 16:20:03.816781: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`. 3C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\layers\reshaping\flatten.py:37: UserWarning: Do not pass an `input_shape`/`input_dim` argument to a layer. When using Sequential models, prefer using an `Input(shape)` object as the first layer in the model instead. 4 super().__init__(**kwargs) 52024-03-19 16:20:05.206084: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations. 6To enable the following instructions: AVX2 AVX_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags. 7Traceback (most recent call last): 8 File "C:\Users\teamn\Desktop\work2\mnist_cloth.py", line 21, in <module> 9 model = load_model('./clothes.h5')#学習済みモデルをロード 10 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 11 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\saving\saving_api.py", line 183, in load_model 12 return legacy_h5_format.load_model_from_hdf5(filepath) 13 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 14 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\legacy\saving\legacy_h5_format.py", line 133, in load_model_from_hdf5 15 model = saving_utils.model_from_config( 16 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 17 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\legacy\saving\saving_utils.py", line 85, in model_from_config 18 return serialization.deserialize_keras_object( 19 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 20 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\legacy\saving\serialization.py", line 495, in deserialize_keras_object 21 deserialized_obj = cls.from_config( 22 ^^^^^^^^^^^^^^^^ 23 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\models\model.py", line 492, in from_config 24 return functional_from_config( 25 ^^^^^^^^^^^^^^^^^^^^^^^ 26 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\models\functional.py", line 555, in functional_from_config 27 output_tensors = map_tensors(config["output_layers"]) 28 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 29 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\models\functional.py", line 552, in map_tensors 30 return [get_tensor(*v) for v in tensors] 31 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 32 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\models\functional.py", line 552, in <listcomp> 33 return [get_tensor(*v) for v in tensors] 34 ^^^^^^^^^^^^^^ 35 File "C:\Users\teamn\anaconda3\Lib\site-packages\keras\src\models\functional.py", line 545, in get_tensor 36 layer_output_tensors = layer._inbound_nodes[node_index].output_tensors 37 ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ 38IndexError: list index out of range

該当のソースコード

import os from flask import Flask, request, redirect, render_template, flash from werkzeug.utils import secure_filename from tensorflow.keras.models import Sequential, load_model from tensorflow.keras.preprocessing import image import numpy as np classes = ["uniform","work_clothes","short_sleeve"] image_size = 256 UPLOAD_FOLDER = "uploads" ALLOWED_EXTENSIONS = set(['png', 'jpg', 'jpeg', 'gif']) app = Flask(__name__) def allowed_file(filename): return '.' in filename and filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS model = load_model('./clothes.h5')#学習済みモデルをロード @app.route('/', methods=['GET', 'POST']) def upload_file(): if request.method == 'POST': if 'file' not in request.files: flash('ファイルがありません') return redirect(request.url) file = request.files['file'] if file.filename == '': flash('ファイルがありません') return redirect(request.url) if file and allowed_file(file.filename): filename = secure_filename(file.filename) file.save(os.path.join(UPLOAD_FOLDER, filename)) filepath = os.path.join(UPLOAD_FOLDER, filename) #受け取った画像を読み込み、np形式に変換 img = image.load_img(filepath, grayscale=False, target_size=(image_size,image_size)) img = image.img_to_array(img) data = np.array([img]) #変換したデータをモデルに渡して予測する result = model.predict(data)[0] predicted = result.argmax() pred_answer = "これは " + classes[predicted] + " です" return render_template("index.html",answer=pred_answer) return render_template("index.html",answer="") if __name__ == "__main__": app.run()

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

VisualStudioCodeの導入について調べたが、よくわからなかった。

補足

特になし

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

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

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

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

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

meg_

2024/03/19 09:29

> 主PCでは問題なく実行できたのですが、何かのインストールが抜けているのでしょうか。 1.VSCodeを使わずPython単体では実行可能ですか? 2.「主PC」とPython、各モジュールのバージョンは一致していますか?
marus2024

2024/03/19 10:06

VSC右隅に出るanacondaのバージョンがともに3.11.5であること、VSCのバージョンが同一であることは確認しました。 またanaconda内にあるpython.exeではhtmlファイルをうまく開けませんでしたが、少なくともhttp://127.0.0.1:5000を呼び出すところまでは動いています。
meg_

2024/03/19 10:43

> またanaconda内にあるpython.exeではhtmlファイルをうまく開けませんでしたが、少なくともhttp://127.0.0.1:5000を呼び出すところまでは動いています。 何の話でしょうか?質問はtensorflowのエラーについてかと思いましたが違いましたか?
marus2024

2024/03/19 11:07

どこが原因かよくわかっておらず、質問したもので申し訳ありません。 tensorflowに問題があるのでしょうか。 主PCではVSCで問題としてtensorflowは出ていますが、昨日はしているのでそこ以外に問題があるのかと思っていました。
meg_

2024/03/19 11:26 編集

先程の質問についてはいかがでしょうか? > > 2.「主PC」とPython、各モジュールのバージョンは一致していますか? > 主PCではVSCで問題としてtensorflowは出ていますが、昨日はしているのでそこ以外に問題があるのかと思っていました。 「主PCではVSCで問題として」とは何でしょうか?「主PC」でも問題が発生しているのですか?話が分からないです。
marus2024

2024/03/19 11:35

VSCのターミナルで実行すると問題タブのところに tensorflow.keras.modelsを解決できませんでした。 tensorflow.keras.preprocessingを解決できませんでした。 と表示されます。 主PCでも、今回問題としている新たに導入したいPCでも両方表示されるのですが、主PCではhtmlを開いて画像の分類を行うことができます。 新規PCでは上述のエラーが出ているので何が違うのか、ということが質問になります。
TakaiY

2024/03/19 14:24

すでにコメントされている方もしてきしているように、たぶん、発生している問題にVSCodeは関係ありません。 出ているエラーはkerasあたりで出ているようです。環境によって出たり出なかったりということのようですから、2つのPCでインストールされているパッケージのバージョンが違うのが原因ではないかという指摘が入っています。 なので、 - 両方のPCで使っているパッケージのバージョンの一覧を取得して比較する。 anaconda であれば conda list で取得できます。 仮想環境を使っているのであればそれにも注意 - vscodeからではなく、コマンドラインから実行する 原因を切り分けるには必要
marus2024

2024/03/19 15:22

確認したところ、新たに導入したいPCではcondaのバージョンが23.9.0、主PCでは23.7.4、tensorflowが2.16.1、主PCでは2.15.0でした。 これ以外にも10か所以上相違点があります。 仮想環境を調べる場合はどこで入力してあげればよいでしょうか。
TakaiY

2024/03/20 02:33

> 仮想環境を調べる場合はどこで入力 「仮想環境を調べる」とは何を調べようとしていますか? 「どこで入力」とは何を入力しようとしていますか?
marus2024

2024/03/20 03:07

いただいたご意見の仮想環境にも注意という一文から、仮想環境のバージョンを把握し、そのバージョンの上げ下げを調整してあげる必要があると考えました。 それを調べる必要っがあるのではないのでしょうか。
TakaiY

2024/03/20 05:48

そもそも仮想環境を使っていますか? anacondaで作る仮想環境にバージョンはなく、インストールされているパッケージのバージョンの差分が差分です。 特に今回エラーが出ているkerasのバージョンを確認して、main PCとバージョンを合せてみるのがいいのではないかと思います。 anacondaは使ったことがないので、同じ環境を別PCで作る方法はわかりません。
marus2024

2024/03/20 07:01

バージョンが高すぎるのが原因かもしれません。調節してみます。 ありがとうございました。
guest

回答1

0

例えばですが、以下を試してみてはいかがですか?

  1. 旧PCでpip freeze > requirements.txtを実行し、使ったモジュールを出力する
  2. 新PCにrequirements.txtを移動する
  3. 新PCでpip install -r requirements.txtを実行し、使うモジュールをインストールする

投稿2024/03/19 15:34

Refrain

総合スコア682

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

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

marus2024

2024/03/20 03:05

作業しているフォルダ内にrequirements.txtをおいて記載されたコマンドを実行したのですが、以下のエラーが出てダメでした。 VSC、python本体両方で実施しても同様のエラーになったのですが、txtを置く場所などありますでしょうか。 ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: 'C:\\b\\abs_1c1a_vjay2\\croot\\aiobotocore_1682537737724\\work'
marus2024

2024/03/20 07:57

とりあえず、外套のエラーは解消されるようになりました。 ありがとうございます。
Refrain

2024/03/20 07:59

インストール後は新旧PCで`pip list`などを実行し、同じ環境が準備出来ているか確認してみると良いかもしれません。
marus2024

2024/03/20 12:09

確認します。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問