Home › Fóruns › Fórum Machine Learning e Data Science com R de A à Z › Erro na implementação do DeepLearning
Marcado: Redes neurais em R – base censo
- Este tópico contém 5 respostas, 2 vozes e foi atualizado pela última vez 2 anos, 5 meses atrás por
Denny Ceccon.
- AutorPosts
- 24 de junho de 2022 às 16:39 #35649
Olá Jones,
Ao tentar implementar a aula de DeepLearning usando a base de dades Census.csv no RStudio versão 2022.02.3 Build 492 aparece a mensagem
|=========================================================================| 100%
ERROR: Unexpected HTTP Status code: 412 Precondition Failed (url = http://localhost:54321/3/ModelBuilders/deeplearning)
water.exceptions.H2OModelBuilderIllegalArgumentException
[1] “water.exceptions.H2OModelBuilderIllegalArgumentException: Illegal argument(s) for DeepLearning model: DeepLearning_model_R_1656097366399_6. Details: ERRR on field: _response_column: Use numerical, categorical or time variable. Currently used String\n”
[2] ” water.exceptions.H2OModelBuilderIllegalArgumentException.makeFromBuilder(H2OModelBuilderIllegalArgumentException.java:19)”
[3] ” hex.ModelBuilder.trainModelOnH2ONode(ModelBuilder.java:334)”
[4] ” water.api.ModelBuilderHandler.handle(ModelBuilderHandler.java:51)”
[5] ” water.api.ModelBuilderHandler.handle(ModelBuilderHandler.java:16)”
[6] ” water.api.RequestServer.serve(RequestServer.java:470)”
[7] ” water.api.RequestServer.doGeneric(RequestServer.java:301)”
[8] ” water.api.RequestServer.doPost(RequestServer.java:227)”
[9] ” javax.servlet.http.HttpServlet.service(HttpServlet.java:707)”
[10] ” javax.servlet.http.HttpServlet.service(HttpServlet.java:790)”
[11] ” org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)”
[12] ” org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:535)”
[13] ” org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)”
[14] ” org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1317)”
[15] ” org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)”
[16] ” org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)”
[17] ” org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)”
[18] ” org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1219)”
[19] ” org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)”
[20] ” org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)”
[21] ” org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)”
[22] ” water.webserver.jetty9.Jetty9ServerAdapter$LoginHandler.handle(Jetty9ServerAdapter.java:130)”
[23] ” org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)”
[24] ” org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)”
[25] ” org.eclipse.jetty.server.Server.handle(Server.java:531)”
[26] ” org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352)”
[27] ” org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)”
[28] ” org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281)”
[29] ” org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)”
[30] ” org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)”
[31] ” org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)”
[32] ” org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)”
[33] ” org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)”
[34] ” org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)”
[35] ” org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)”
[36] ” org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:762)”
[37] ” org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:680)”
[38] ” java.lang.Thread.run(Unknown Source)”Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page, :
ERROR MESSAGE:
Illegal argument(s) for DeepLearning model: DeepLearning_model_R_1656097366399_6. Details: ERRR on field: _response_column: Use numerical, categorical or time variable. Currently used String
Resolvi o problema colocando a variável ‘income’ no mesmo formato numérico das variáveis preditivas. Porém ao usar o comando predict retornou o seguinte resultado
predict
1 1.0119418
2 1.7859616
3 1.7070299
4 0.9467311
5 1.5249221
6 0.9774379O que significa esses números ?
Aguardo, obgd
AH
27 de junho de 2022 às 20:33 #35731Olá,
É que, como você converteu a variável income para valores numéricos, o algoritmo está prevendo números reais. Para o processamento correto, você precisa transformar a variável em um fator, basta ativar a linha 16 que está comentada. A diferença para a aula deve ser em função de alguma atualização nas versões mais recentes da biblioteca.
4 de julho de 2022 às 18:16 #35812Pois é Denny, Obgd por responder mas a dúvida permanece … como interpretar o resultado ?
predict
1 1.0119418
2 1.7859616
3 1.7070299
4 0.9467311
5 1.5249221
6 0.9774379aguardo
Armando
4 de julho de 2022 às 20:49 #35813Se você seguir a minha orientação, os valores serão expressos como 0 ou 1, e não haverá mais problema para interpretação. Sem a correção, os resultados não fazem sentido.
5 de julho de 2022 às 14:30 #35819obgd Denny, deu certo.
Tentei convertei todas como factor e deu certo também.
Então ficou a dúvida: porque o Jones precisou trabalhar como numérico ?
abs
5 de julho de 2022 às 15:28 #35820O que eu acho mais provável é por causa de versões das bibliotecas, às vezes os desenvolvedores mudam a forma de usar o algoritmo, eu acho que este foi o caso. Antigamente aceitava numérico, agora não aceita mais.
- AutorPosts
- Você deve fazer login para responder a este tópico.