개발시 자주 생기는 error 처리 - yarak001/machine_learning_common GitHub Wiki
- error 처리
- NotImplementedError: Cannot convert a symbolic Tensor to a numpy array
이 에러는 numpy 1.20 버전일 때 발생한다고 한다. 해결 방법은 numpy 1.19 버전으로 다운그레이드 해주면 된다. > pip install numpy==1.19.5
- CUDNN_STATUS_EXECUTION_FAILED
GPU memory 문제인듯, tf.compat.v1.ConfigProto()의 .gpu_options.allow_growth와 gpu_options.per_process_gpu_memory_fraction를 동시에 사용? model의 batch_size등을 수정하여 구동시켜 본다.
- categorical_crossentropy loss 사용시
- binary classification에서 tensorflow=2.1.0에서는 error 발생하지만 그 상위 version에서는 동작함
- ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found error
- NotImplementedError: Cannot convert a symbolic Tensor to a numpy array
from tensorflow import keras
import numpy as np
model = keras.models.Sequential()
model.add(keras.layers.Dense(3, input_shape=(3,), kernel_initializer='he_normal'))
model.add(keras.layers.Dense(1, activation='softmax', kernel_initializer='he_normal'))
optimizer = keras.optimizers.Nadam(0.001)
model.compile(loss='categorical_crossentropy', optimizer=optimizer, metrics=['acc'])
model.summary()
X_train = np.array([0, 0, 1], [1, 0, 0], [0, 1, 0](/yarak001/machine_learning_common/wiki/0,-0,-1],-[1,-0,-0],-[0,-1,-0))
y_train = np.array([1.0], [1.0], [1.0](/yarak001/machine_learning_common/wiki/1.0],-[1.0],-[1.0))
history = model.fit(X_train, y_train, batch_size=1, epochs=5, validation_split=0.1)