У меня есть NN, который обучен прогнозировать вывод уравнения с использованием pyTorch. Это очень простой, полностью связанный NN. Я использовал его в течение нескольких недель совершенно нормально, но по какой-то причине сегодня я начал получать ошибку CUDA error: out of memory
. Я уменьшил размер пакета до 1 (изначально он работал нормально с размером пакета 1024), и я все еще получаю эту ошибку. Я запускаю это на общей машине Linux (однако я единственный пользователь большую часть времени). Я входил и выходил несколько раз и все еще получаю эту ошибку. Я попытался nvidia-smi
и заметил, что использование графического процессора составляло 99-100%, однако позже это значение упало до 0%, и я все еще получаю сообщение об ошибке. Я действительно новичок в искусственном интеллекте и ничего не знаю о графических процессорах. У кого-нибудь есть идеи, в чем может быть проблема? Спасибо!
Обновление: вот часть кода:
for filename in os.listdir(pathdir):
print(filename)
for i in range(1):
n_variables = np.loadtxt(pathdir+"/%s" %filename, dtype='str').shape[1]-1
variables = np.loadtxt(pathdir+"/%s" %filename, usecols=(0,))
if n_variables==0:
print("Solved! ", variables[0])
continue
elif n_variables==1:
variables = np.reshape(variables,(len(variables),1))
else:
for j in range(1,n_variables):
v = np.loadtxt(pathdir+"/%s" %filename, usecols=(j,))
variables = np.column_stack((variables,v))
f_dependent = np.loadtxt(pathdir+"/%s" %filename, usecols=(n_variables,))
f_dependent = np.reshape(f_dependent,(len(f_dependent),1))
factors = torch.from_numpy(variables[0:100000])
print(len(factors))
factors = factors.cuda()
Кажется, что ошибка появляется в последней строке, в factors = factors.cuda()
. Factors - это тензор факела размером 4 x 100000. Я сделал размер 4 x 1 и все еще не хватает памяти CUDA.