В настоящее время у меня есть маринованная модель для прогнозирования выживаемости Титани c на основе пользовательских данных формы Django. Спустя несколько дней, я теперь могу наконец-то получить ответ для внешнего интерфейса о том, выжил ли кто-то!
После отправки я использую сообщение django .contrib, чтобы отправить «выжил» или « погиб "под формой. Однако после первой отправки поля очищаются в форме, но когда я пытаюсь ввести новые значения и отправить, я получаю объект «_thread._local» без ошибки «значение» атрибута. форма , ошибка
Теперь, если я перезапущу сервер django и обновлю sh страницу, я могу снова запустить POST, но только не последовательно на том же сеансе. так что я покопался, и кто-то включил в аналогичный проект утверждение, в котором они «из kera import backend as K», а затем добавили ниже прямо перед возвратом в функцию:
K.clear_session()
Но когда я положил это в свой код я получаю ту же ошибку атрибута, что и раньше, но я получаю ее при первой отправке формы, что делает ее бесполезной.
Итак, как я могу использовать форму для многократного запроса модели при каждом использовании независимый. Результатом проекта станет размещение в сети, чтобы люди могли также заполнять форму, поэтому более чем 1 использование за раз имеет решающее значение.
мой код для «views.py»: https://github.com/CourseCharter/MLshowcase/blob/master/titanic/views.py
фрагмент:
def survived(unit):
try:
mdl=jload("/Users/user/projects/mlshowcase/titanic/titanic_model.pkl")
#mydata=pd.read_excel('/Users/sahityasehgal/Documents/Coding/bankloan/test.xlsx')
sc=StandardScaler()
X=sc.fit_transform(unit)
y_pred=mdl.predict_classes(X)
#newdf=pd.DataFrame(y_pred, columns=['Survived'])
#newdf=newdf.replace({1:'Survived', 0:'Perished'})
return (str(y_pred))
except ValueError as e:
return Response(e.args[0], status.HTTP_400_BAD_REQUEST)
def titanic_page_guess(request):
if request.method =='POST':
form=TitanicForm(request.POST)
if form.is_valid():
sex=form.cleaned_data['sex']
pclass=form.cleaned_data['pclass']
age=form.cleaned_data['age']
relatives=form.cleaned_data['relatives']
fare=form.cleaned_data['fare']
myDict = (request.POST).dict()
df=pd.DataFrame(myDict, index=[0])
df=df.drop(['csrfmiddlewaretoken'], axis=1)
answer = survived(df)[0]
messages.success(request, 'Your Fate: {}'.format(answer))
form=TitanicForm()
return render(request, 'titanic/testform.html', {'form': form})