Я тренирую сеть ResNet-50 на большой базе данных. Проверяя процент использования моего графического процессора, я обнаружил, что он варьируется от 0% до 4%! хотя я использую tenorflow-GPU.
Вот мой коэффициент использования процессора и графического процессора:

Когда я запускаю эти две командные строки:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
Я получаю
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 4622338339054789933
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 13594420839
locality {
bus_id: 1
links {
}
}
incarnation: 17927686236275886371
physical_device_desc: "device: 0, name: Quadro
P5000, pci bus id: 0000:01:00.0, compute
capability: 6.1"
]
и когда я бегу
NVIDIA-СМИ
я получил

Может ли кто-нибудь помочь мне с простым объяснением, как правильно и полностью использовать мой графический процессор?
Я должен упомянуть, что во время обучения я использую объект ImageDataGenerator с двумя его методами flow_from_directory и fit_generator, поэтому я могу установить конкретные параметры, такие как параметр working, чтобы повысить частоту использования моего графического процессора.
Вот как я использую ImageDataGenerator
input_imgen = ImageDataGenerator()
train_it = input_imgen.flow_from_directory(directory=data_path_l,target_size=
(224,224),
color_mode="rgb",
batch_size=batch_size,
class_mode="categorical",
shuffle=False,
)
valid_it = input_imgen.flow_from_directory(directory=test_data_path_l,target_size=
(224,224),
color_mode="rgb",
batch_size=batch_size,
class_mode="categorical",
shuffle=False,
)
model = resnet.ResnetBuilder.build_resnet_50((img_channels, img_rows,
img_cols), num_classes)
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
filepath=".\conv2D_models\weights-improvement-{epoch:02d}-
{val_acc:.2f}.hdf5"
mc = ModelCheckpoint(filepath, save_weights_only=False, verbose=1,
monitor='loss', mode='min')
history=model.fit_generator(train_it,
steps_per_epoch= train_images // batch_size,
validation_data = valid_it,
validation_steps = val_images// batch_size,
epochs = epochs,callbacks=[mc],
shuffle=False)