Ошибки при попытке заставить тензорный поток работать - PullRequest
0 голосов
/ 10 июля 2020

Итак, я изучаю курс linkedin на основе c keras и tensorflow, поскольку мне очень интересно изучать эти технологии. Однако настройка тензорного потока, вероятно, была одной из самых болезненных вещей, которые мне когда-либо приходилось делать.

Я использую Conda Enviornment с python 3.7 на ОС ma c только для перспективы.

При попытке запустить следующий код;

import pandas as pd
from keras.models import Sequential
from keras.layers import *

training_data_df = pd.read_csv("sales_data_training_scaled.csv")

X = training_data_df.drop('total_earnings', axis=1).values
Y = training_data_df[['total_earnings']].values

# Define the model
model = Sequential()
model.add(Dense(50, input_dim=9, activation='relu'))
model.add(Dense(100, activation='relu'))
model.add(Dense(50, activation='relu'))
model.add(Dense(1, activation='linear'))
model.compile(loss="mean_squared_error", optimizer="adam")

я получаю следующее сообщение об ошибке.

ModuleNotFoundError: Нет модуля с именем 'tensorflow.contrib'

Ive пробовал кучу разных вещей, таких как импорт tensorflow.compat.v1 и отключение v2, но это только ухудшает ситуацию. Я застрял, если бы кто-нибудь мог помочь, я был бы очень признателен.

Я использую tenorflow 2.0.0 и keras 2.0.6

после переключения моих операторов импорта на

import pandas as pd
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import *

Я больше не получаю ошибку ModuleNotFound, однако получаю следующее:

Python 3.7.7 (по умолчанию, 6 мая 2020 г., 04:59:01) [Clang 4.0.1 (tags / RELEASE_401 / final)] на darwin runfile ('/ Users / shaneschipper / Desktop / Code / Machine Learning Projects / Ex_Files_Building_Deep_Learning_Apps / Exercise Files / 03 / create_model final.py', wdir = '/ Users / shaneschipper / Desktop / Code / Machine Learning Projects / Ex_Files_Building_Deep_Learning_Apps / Exercise Files / 03 ') 2020-07-14 09: 52: 37.558165: I tensorflow / core / platform / cpu_feature_guard. cc: 145] Этот двоичный файл TensorFlow оптимизирован с Intel (R) MKL-DNN для использования следующие инструкции ЦП в критических для производительности операциях: SSE4.1 SSE4.2 AVX AVX2 FMA Чтобы включить их в операциях, отличных от MKL-DNN, перестройте TensorFlow с соответствующими флагами компилятора. 2020-07-14 09: 52: 37.558405: I tensorflow / core / common_runtime / process_util. cc: 115] Создание нового пула потоков с настройкой взаимодействия по умолчанию: 8. Настройте с помощью inter_op_parallelism_threads для лучшей производительности.

Я не совсем уверен, что это означает, это может быть просто предупреждающий флаг и он работает правильно, но я не знаю.

1 Ответ

1 голос
/ 10 июля 2020

Как упоминалось в комментарии MZ , установленные вами модули tensorflow и keras могут быть несовместимы. Чтобы избежать этого, я всегда использую версию keras, найденную в модуле tensorflow. Попробуйте изменить свой импорт на следующее:

import pandas as pd
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import *

Если это не решит вашу проблему, публикация версии tenorflow и keras, которые вы установили, поможет другим помочь вам в дальнейшем устранении неполадок.

РЕДАКТИРОВАТЬ: после внесения этого изменения это хороший знак, что вы больше не получаете ошибку. Я не знаю наверняка значение сообщения, которое вы получаете сейчас, но tenorflow имеет тенденцию предоставлять некоторую информацию при первом импорте в зависимости от используемой архитектуры.

Код, который вы опубликовали, определяет только и соответствует модели. Следующими вашими шагами, вероятно, должны быть подгонка модели к вашим обучающим данным. Затем вы можете протестировать модель на наборе тестовых данных и посмотреть, соответствуют ли результаты ожидаемым.

...