VSCodeでnumpyのimportができない
問題:ライブラリのインポートに失敗します。
最近機械学習の本を読み勧めて、畳み込みニューラルネットワークの実装(手書き)まで学習しました。
次の勉強として、実践に取り掛かっていきたいと思っていて、こちらの記事のコードを動かしながら読み解いていこうと考えています。
https://qiita.com/kshina76/items/5686923dee2889beba7c
コードを動かして、挙動を確かめたり、改変して他のデータでテストすることが目的です。
自環境
LinuxMint 20.x
64bit
VSCode
Python 3.8.8
Colaboratory
発生している問題・エラーメッセージ
上記のソースコード(audio-classification-master/cnn_reco_various_feature
/cnn_reco.py, generator.pyとも)を実行したところ、インポートの段階でエラーが発生します。
1. SyntaxError: invalid syntax 現環境でそのまま実行した場合のエラー 14行目:`from keras.layers import pip3 install numpy pip3 install numpyEmbedding` 2. ModuleNotFoundError: No module named 'numpy' 1.の箇所をコメントアウトしたときのエラー
該当のソースコード
エラー箇所とエラー出力(表記まま)を見出しにしています。
コメントアウトは、今回エラーに関係なかった箇所を実施しています。
python
1# cnn_reco.py 2""" 3開発環境 4> python3.7.3 5> Anaconda3 6> keras2.2.4 7> tensorflow1.13.1 8""" 9 10- import numpy as np 11- # ModuleNotFoundError: No module named 'numpy' 12import os 13import glob 14import librosa 15import random 16import math 17import generator 18 19import matplotlib.pyplot as plt 20from sklearn.preprocessing import MinMaxScaler, LabelBinarizer 21from sklearn.model_selection import train_test_split 22from keras.models import Sequential, load_model, Model 23from keras.layers import Dense, Activation, Dropout, Input 24- _ 25- from keras.layers import pip3 install numpy pip3 install numpyEmbedding 26- # SyntaxError: invalid syntax 27from keras.layers import Conv1D, GlobalAveragePooling1D, MaxPooling1D 28from keras.optimizers import Adam 29from keras.utils import Sequence 30from keras.utils import np_utils 31””” 32class CNN(): 33 34 def build_model(self): 35 inputs = Input(shape=(193, 1)) 36 x = Conv1D(64, 3, activation='relu')(inputs) 37 x = Conv1D(64, 3, activation='relu')(x) 38 x = MaxPooling1D(3)(x) 39 x = Conv1D(128, 3, activation='relu')(x) 40 x = Conv1D(128, 3, activation='relu')(x) 41 x = GlobalAveragePooling1D()(x) 42 x = Dropout(0.5)(x) 43 x = Dense(3, activation='softmax')(x) 44 model = Model(input=inputs, output=x) 45 optimizer = Adam() 46 model.compile(loss="categorical_crossentropy", 47 optimizer=optimizer, metrics=['accuracy']) 48 model.summary() 49 50 return model 51 52def get_path_labels(self): 53 #onseiディレクトリ下のディレクトリのフルパスを取得 54 dirs_path = glob.glob(data_path) 55 56 labels = [] 57 files_path = [] 58 label_count = -1 59 for dir_path in dirs_path: 60 label_count += 1 61 for file_path in glob.glob(dir_path + '/*'): 62 files_path.append(file_path) 63 labels.append(label_count) 64 65 files_path = np.asarray(files_path) 66 labels = np.asarray(labels) 67 68 # one hot encording 69 lb = LabelBinarizer() 70 lb.fit(labels) 71 labels = lb.transform(labels) 72 73 return files_path, labels 74 75if __name__ == '__main__': 76 sample_rate = 44100 77 threshold = 20 78 sample_length = 7680 79 batch_size = 16 80 epoch = 50 81 save_model_name = 'dnn_reco.h5' 82 data_path = './onsei/*' 83 84 files_path, labels = get_path_labels(data_path) 85 86 for i in range(len(labels)): 87 print('{} : {}'.format(files_path[i], labels[i])) 88 89 # パスとラベルから学習、テスト、評価データを作成 90 X_train, X_test, y_train, y_test = train_test_split(files_path, labels, train_size=0.8) 91 X_train, X_val, y_train, y_val = train_test_split(X_train, y_train, train_size=0.8) 92 93 # ジェネレータを作成 94 train_batch_generator = generator.BatchGenerator(X_train, y_train, batch_size, sample_rate, sample_length, threshold) 95 test_batch_generator = generator.BatchGenerator(X_val, y_val, batch_size, sample_rate, sample_length, threshold) 96 97 # モデル構築 98 dnn = CNN() 99 model = dnn.build_model() 100 101 # 学習 102 fit_history = model.fit_generator(train_batch_generator, epochs=epoch, verbose=1, 103 steps_per_epoch=train_batch_generator.batches_per_epoch, 104 validation_data=test_batch_generator, 105 validation_steps=test_batch_generator.batches_per_epoch, 106 shuffle=True 107 ) 108 model.save(save_model_name) 109”””
試したこと
・ from keras.layers import pip3 install numpy pip3 install numpyEmbedding
のpip3を削除、やコメントアウト
・ numpyのpipアンインストール/インストール
・ VSCodeの再インストール
・ Colaboratoryでの実行
補足情報(FW/ツールのバージョンなど)
当方なにもわかっていないのですが、何かしらご教示いただけると助かります。
回答1件
あなたの回答
tips
プレビュー