반응형
#from keras.layers.merge import Concatenate #tensorflow1
from keras.layers.merging.concatenate import Concatenate #tensorflow2
tensorflow 2.4부터 tensorflow.keras.utils.multi_gpu_model이 제거되어 사용 안됨
#from keras.engine import InputSpec #tensorflow1
from keras.layers import InputSpec #tensorflow2
tf1 버젼
x = tf.layers.conv2d(x, 32, 3, activation=tf.nn.relu,
kernel_regularizer=tf.contrib.layers.l2_regularizer(0.04))
x = tf.layers.max_pooling2d(x, (2, 2), 1)
x = tf.layers.flatten(x)
x = tf.layers.dropout(x, 0.1, training=training)
x = tf.layers.dense(x, 64, activation=tf.nn.relu)
x = tf.layers.batch_normalization(x, training=training)
x = tf.layers.dense(x, 10, activation=tf.nn.softmax)
tf2 버젼(contrib 는 사용할 수 없다)
tf.keras.layers.Conv2D(32, 3, activation='relu',
kernel_regularizer=tf.keras.regularizers.l2(0.04),
input_shape=(28, 28, 1)),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Flatten(),
tf.keras.layers.Dropout(0.1),
tf.keras.layers.Dense(64, activation='relu'),
tf.keras.layers.BatchNormalization(),
tf.keras.layers.Dense(10)
Slim & contrib.layers를 위한 노트
예전 텐서플로 1.x 코드는 Slim 라이브러리를 많이 사용합니다. 이 라이브러리는 텐서플로 1.x의 tf.contrib.layers로 패키지되어 있습니다. contrib 모듈은 더 이상 텐서플로 2.0에서 지원하지 않고 tf.compat.v1에도 포함되지 않습니다. Slim을 사용한 코드를 TF 2.0으로 변환하는 것은 v1.layers를 사용한 코드를 변경하는 것보다 더 어렵습니다. 사실 Slim 코드는 v1.layers로 먼저 변환하고 그 다음 케라스로 변환하는 것이 좋습니다.
- arg_scopes를 삭제하세요. 모든 매개변수는 명시적으로 설정되어야 합니다.
- normalizer_fn과 activation_fn를 사용해야 한다면 분리하여 각각 하나의 층으로 만드세요.
- 분리 합성곱(separable conv) 층은 한 개 이상의 다른 케라스 층으로 매핑합니다(깊이별(depthwise), 점별(pointwise), 분리(separable) 케라스 층).
- Slim과 v1.layers는 매개변수 이름과 기본값이 다릅니다.
- 일부 매개변수는 다른 스케일(scale)을 가집니다.
- 사전 훈련된 Slim 모델을 사용한다면 tf.keras.applications나 TFHub를 확인해 보세요.
일부 tf.contrib 층은 텐서플로 내부에 포함되지 못했지만 TF 애드온(add-on) 패키지로 옮겨졌습니다.
from tensorflow.contrib import slim ->
import tf_slim as slim
tf.contrib.layers 를 사용하기 위해서 다음과 같이 사용한다.
1) pip install tf-slim (tf-slim 패키지 설치)
2) from tf_slim.layers import layers as slimLayers
3) tf.contrib.layers -> slimLayers 로 변경
코랩에서
import face_recognition 라이브러리 임포트시 다음과 같은 에러 발생시 GPU 모델을 선택해서 임포트
RuntimeError: Error while calling cudaGetDevice(&the_device_id) in file
https://codingman.tistory.com/229
http://solarisailab.com/archives/2640
반응형
'머신러닝 > 에러처리' 카테고리의 다른 글
cv2.COLOR_BGR2GRAY error (0) | 2022.09.26 |
---|