実現したいこと
ここに実現したいことを箇条書きで書いてください。
- CNNで画像分類を行う
前提
anacondaのJupyter Notebookを使っています。
以下のプログラムを動かしたところエラーになり困っています。
以前動作確認の為に参考書からコピペした似たようなのプログラム(以前正常に動いていた)も同じエラーになりました。
正常に動いていた時期からエラーがでるまでにしたことは
・opencvをインストールして、画像サイズを変更したこと
だけです。
vscodeなど他のプログラム系は一切使っていません
発生している問題・エラーメッセージ
エラーメッセージ ModuleNotFoundError Traceback (most recent call last) Cell In[1], line 2 1 # coding:utf-8 ----> 2 import keras 3 from keras.utils import to_categorical 4 from keras.models import Sequential File ~\anaconda3\Lib\site-packages\keras\__init__.py:3 1 """AUTOGENERATED. DO NOT EDIT.""" ----> 3 from keras import __internal__ 4 from keras import activations 5 from keras import applications File ~\anaconda3\Lib\site-packages\keras\__internal__\__init__.py:3 1 """AUTOGENERATED. DO NOT EDIT.""" ----> 3 from keras.__internal__ import backend 4 from keras.__internal__ import layers 5 from keras.__internal__ import losses File ~\anaconda3\Lib\site-packages\keras\__internal__\backend\__init__.py:3 1 """AUTOGENERATED. DO NOT EDIT.""" ----> 3 from keras.src.backend import _initialize_variables as initialize_variables 4 from keras.src.backend import track_variable File ~\anaconda3\Lib\site-packages\keras\src\__init__.py:21 15 """Implementation of the Keras API, the high-level API of TensorFlow. 16 17 Detailed documentation and user guides are available at 18 [keras.io](https://keras.io). 19 """ 20 from keras.src import distribute ---> 21 from keras.src import models 22 from keras.src.engine.input_layer import Input 23 from keras.src.engine.sequential import Sequential File ~\anaconda3\Lib\site-packages\keras\src\models\__init__.py:18 1 # Copyright 2022 The TensorFlow Authors. All Rights Reserved. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); (...) 13 # limitations under the License. 14 # ============================================================================== 15 """Keras models API.""" ---> 18 from keras.src.engine.functional import Functional 19 from keras.src.engine.sequential import Sequential 20 from keras.src.engine.training import Model File ~\anaconda3\Lib\site-packages\keras\src\engine\functional.py:23 20 import itertools 21 import warnings ---> 23 import tensorflow.compat.v2 as tf 25 from keras.src import backend 26 from keras.src.dtensor import layout_map as layout_map_lib File ~\anaconda3\Lib\site-packages\tensorflow\__init__.py:46 43 from tensorflow.python import tf2 as _tf2 44 _tf2.enable() ---> 46 from ._api.v2 import __internal__ 47 from ._api.v2 import __operators__ 48 from ._api.v2 import audio File ~\anaconda3\Lib\site-packages\tensorflow\_api\v2\__internal__\__init__.py:13 11 from . import distribute 12 from . import eager_context ---> 13 from . import feature_column 14 from . import function 15 from . import graph_util File ~\anaconda3\Lib\site-packages\tensorflow\_api\v2\__internal__\feature_column\__init__.py:12 10 from tensorflow.python.feature_column.feature_column_v2 import SequenceDenseColumn 11 from tensorflow.python.feature_column.feature_column_v2 import _StateManagerImpl as StateManager ---> 12 from tensorflow.python.feature_column.feature_column_v2_types import FeatureColumn 13 from tensorflow.python.feature_column.serialization import deserialize_feature_column 14 from tensorflow.python.feature_column.serialization import serialize_feature_column ModuleNotFoundError: No module named 'tensorflow.python.feature_column.feature_column_v2_types'
該当のソースコード
python
1ソースコード 2# coding:utf-8 3import keras 4from keras.utils import to_categorical 5from keras.models import Sequential 6from keras.layers import Conv2D, MaxPooling2D 7from keras.layers import Dense, Dropout, Activation, Flatten 8import numpy as np 9from sklearn.model_selection import train_test_split 10from PIL import Image 11import glob 12 13folder = ["1","2"] 14image_size = 50 15num_class = 2 16X = [] 17Y = [] 18for index, name in enumerate(folder): 19 dir = "./" + name 20 files = glob.glob(dir + "/*.JPG") 21 for i, file in enumerate(files): 22 image = Image.open(file) 23 image = image.convert("RGB") 24 image = image.resize((image_size, image_size)) 25 data = np.asarray(image) 26 X.append(data) 27 Y.append(index) 28 29X = np.array(X) 30Y = np.array(Y) 31 32X = X.astype('float32') 33X = X / 255.0 34 35# 正解ラベルの形式を変換 36Y = to_categorical(Y, 2) 37# 学習用データとテストデータ 38X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size=0.20) 39# CNNを構築 40model = Sequential() 41 42model.add(Conv2D(32, (3, 3), padding='same',input_shape=X_train.shape[1:]))#変える 43model.add(Activation('relu')) 44model.add(Conv2D(32, (3, 3))) 45model.add(Activation('relu')) 46model.add(MaxPooling2D(pool_size=(2, 2))) 47model.add(Dropout(0.25)) 48 49model.add(Conv2D(64, (3, 3), padding='same')) 50model.add(Activation('relu')) 51model.add(Conv2D(64, (3, 3))) 52model.add(Activation('relu')) 53model.add(MaxPooling2D(pool_size=(2, 2))) 54model.add(Dropout(0.25)) 55 56model.add(Flatten()) 57model.add(Dense(512)) 58model.add(Activation('relu')) 59model.add(Dropout(0.5)) 60model.add(Dense(num_class)) 61model.add(Activation('softmax')) 62 63# コンパイル 64model.compile(loss='categorical_crossentropy',optimizer='SGD',metrics=['accuracy']) 65 66#訓練 67history = model.fit(X_train, y_train, epochs=100)#? 68 69#訓練 70#評価 & 評価結果出力 71print(model.evaluate(X_test, y_test))
試したこと
import tensorflow.~
import tennsorflow.python~など
補足情報(FW/ツールのバージョンなど)
tensorflow 2.13.0
keras 2.13.1
Python 3.11.3
初めての質問なので不備があったらごめんなさい

回答2件
あなたの回答
tips
プレビュー