我有以下格式的數據:150個字母的序列字母只能是 A、B、C、D、E。我總共有 20k 個序列10k 個序列標記為 1,其他 10k 個序列標記為 0我通過執行以下操作將這 150 個字母轉換為 one-hot 向量:from skimage.transform import resizeimport numpy as npdef transform(data): #transform sequence into one hot encoding def one_hot_encode(seq): mapping = dict(zip("ABCDE", range(5))) seq2 = [mapping[i] for i in seq] return np.eye(5)[seq2] train = np.zeros((len(data), 150, 5, 1), dtype=np.uint8) for idx, d in enumerate(data): seq = one_hot_encode(d) seq = resize(seq, (150, 5, 1), mode='constant', preserve_range=True) train[idx] = seq.astype('float32') return train現在,我只想將這些數據傳遞到由 Keras 構建的簡單 CNN 中。我將模型構建為:model = Sequential()model.add(Conv2D(64,kernel_size=(3,3),activation='relu',input_shape=(150,5,1)))model.add(Conv2D(32, kernel_size=3, activation='relu'))model.add(Flatten())model.add(Dense(1, activation='sigmoid'))model.summary()model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])現在,我正在嘗試通過以下方式進行訓練:history = model.fit(X_train, Y_train, epochs=100, verbose=False, validation_split=0.25, batch_size=10)但這不斷拋出以下錯誤:InternalError:為 CUDA 設備序號 0 初始化 StreamExecutor 失?。簝炔浚簩?cuDevicePrimaryCtxRetain 的調用失?。篊UDA_ERROR_OUT_OF_MEMORY:內存不足;報告的總內存:11721506816我已經訓練了尺寸為 512x512x3 的圖像,其輸入尺寸遠不止于此。那么為什么會導致這個錯誤呢?
添加回答
舉報
0/150
提交
取消