Я понимаю, что настроенный scoring
может возвращать только одно числовое значение, но мне интересно узнать различные детали моих гиперпараметров, которые составляют окончательное значение, которое будет возвращено.
Вот какЯ выполнил свой учебный скрипт на моей машине Linux nohup MyPythonScript.py &
Сценарий python должен сгенерировать вывод текстового файла.Однако не все команды print()
регистрируются на выходе, и некоторые из этих команд печати переносятся в nohup.out
Попытка выполнить сброс в моем коде (не уверен, что это Pythonic), но результатытакой же.
Вот мой код:
#The redirection command
sys.stdout = sys.stderr = open('./logs/log_mylogfile.txt', 'w')
print('Starting Code') # This was captured in the log file
def confi_score(self, mdl):
#Some code that works out the final score to be returned
final_score = a + b + c
print(str(a), str(b), str(c) , flush=True) # This wasnt captured on the logs but it appeared on nohup.out
return final_score
clf = RandomizedSearchCV(estimator=model, param_distributions=parameter_candidates,
scoring=self.confi_score, cv=3, n_jobs=-1, n_iter=20, random_state=42, verbose=1)
Я ожидал, что параметры, a
, b
и c
будут записаны моей командой перенаправления в файл журнала.Однако вместо этого он был помещен в nohup.out
.