Forum Replies Created

Viewing 15 posts - 391 through 405 (of 410 total)
  • Author
    Posts
  • in reply to: Matrix de confusão para Bert #33709
    Denny Ceccon
    Moderator

      Olá Felix,

      1) Você pode recuperar y_test a partir do test_dataset. Como cada iteração do test_dataset retorna um batch de (X, y), nós podemos acumular todos os batches de y em uma lista, e depois transformá-la em um numpy array.

      y_true = []
      for X, y in test_dataset:
          y_true.append(y.numpy())
      y_true = np.concatenate(y_true)

      Para y_pred, basta usar o modelo no modo de predição:

      y_pred = Dcnn.predict(test_dataset)
      y_pred = y_pred.reshape(-1)

      Agora, se você inspecionar y_test e y_pred, vai ver que o primeiro contém 0 e 1, e o segundo contém valores reais no intervalo entre 0 e 1. Isso porque y_pred retorna a probabilidade de o tweet ser da classe 1. Para converter em 0 e 1, basta fazer y_pred = y_pred > 0.5, ou seja, se a probabilidade retornada pelo modelo for maior que 50%, a resposta final será 1, caso contrário será 0.

      Aí você pode usar as duas variáveis com as funções que citou.

      2) Foi sim, na aula Criação da base de dados por volta de @14:00. O professor usou o dataset de teste na parte de avaliação do modelo.

      in reply to: Restore de checkpoint #33707
      Denny Ceccon
      Moderator

        Olá Felix,

        Você deve usar somente ckpt.restore(ckpt_manager.latest_checkpoint), isso depois de instanciar os objetos ckpt, ckpt_manager, a classe DCNN e o objeto Dcnn instanciado dela, da mesma forma que feitos na aula, se estiver em uma nova sessão. Esta função não retorna nada, por isso seu objeto history está vazio. Depois da restauração, o objeto Dcnn, que corresponde ao modelo, terá os pesos provenientes do arquivo salvo durante o treinamento.

        • This reply was modified 3 years, 10 months ago by Denny Ceccon.
        in reply to: Aplicação do np.log para distribuição normal #33677
        Denny Ceccon
        Moderator

          Olá Alisson,

          Você pode dizer a qual aula se refere?

          in reply to: Erro na avaliação de algoritmo #33102
          Denny Ceccon
          Moderator

            Olá Vitória,

            Pela mensagem de erro, parece que você passou o parâmetro min_sample_left na sua variável parametros, que é inválida para RandomForestClassifier. Dê uma verificada.

            in reply to: Versão torch 0.3.1 não está mais disponível pra Linux #33049
            Denny Ceccon
            Moderator

              Olá,

              Por enquanto, pode tentar usar a versão 1.0. As atualizações costumam ser um pouco trabalhosas, então não temos como prometer isto no curto prazo. Se tiver algum problema com a v1.0, nos avise ao longo do curso que vamos verificando pontualmente.

              in reply to: Transferência de Aprendizagem #33004
              Denny Ceccon
              Moderator

                Olá,

                Geralmente o processo de transferência de aprendizagem se comporta bem quando utilizamos dados da mesma natureza, como é o caso que você sugere. Entretanto, um modelo só vai conseguir prever novas classes se ele passar pelo fine tuning, ou seja, devemos treinar o topo do modelo (a parte classificatória) com novos dados rotulados. Aliás, é exatamente isso que fazemos na Parte 6 do curso. Sem o fine-tuning, o modelo sequer tem como representar uma nova classe na camada de saída, e por isso ele vai tentar encaixar novas categorias com base nas categorias já existentes, com resultados ineficientes.

                in reply to: Projeto #3: Breast cancer com tunning, gernado um IndexError #32915
                Denny Ceccon
                Moderator

                  Olá,

                  Este erro é relacionado à última versão do Skorch, agora o arquivo Colab já está atualizado, obrigado por nos avisar.

                  Denny Ceccon
                  Moderator

                    Olá,

                    Esta atualização foi feita para que o modelo possa ser processado pela biblioteca Skorch, que não aceita que a saída da rede seja o resultado de uma ativação, mas sim exige que seja o resultado bruto. Neste caso, a função de custo fica responsável por fazer a ativação correspondente.

                    in reply to: forward_steps pytorch #32775
                    Denny Ceccon
                    Moderator

                      Olá Morandin,

                      As redes recorrentes tradicionais só fazem a predição para um timestep no futuro, e para períodos mais adiante é preciso realimentar as previsões anteriores, como você está fazendo, mas isso de fato tende a aumentar o erro exponencialmente. Talvez existam outras implementações mais recentes ou modificações das redes recorrentes para levar isso em consideração, mas eu desconheço.

                      in reply to: K-means – Salvar base original #32442
                      Denny Ceccon
                      Moderator

                        Olá Alisson,

                        Você pode usar o método transform ou fit_transform para gerar os nomes dos clusters, e depois adicionar uma coluna ao dataframe original com os rótulos dos grupos formados. Mais ou menos assim:

                        grupos = kmeans.fit_transform(X)
                        df['grupos'] = grupos
                        df.to_csv('kmeans.csv')

                         

                        in reply to: Colocar o resultado da predição no DF #32390
                        Denny Ceccon
                        Moderator

                          Olá Aislan,

                          É sobre qual dos problemas tratados no curso? Qual o conteúdo das variáveis que você está manipulando? Como você quer que seja apresentado o resultado final?

                          in reply to: Como otimizar uma métrica utilizando Deep Learning? #30674
                          Denny Ceccon
                          Moderator

                            Olá Lucas,

                            Este é um problema de otimização, então você precisa dar uma olhada em algoritmos de otimização. Aqui na IA Academy temos alguns cursos sobre o tema, recomendo começar por este: https://iaexpert.academy/courses/inteligencia-artificial-algoritmos-otimizacao-python/

                            in reply to: Validação cruzada #29903
                            Denny Ceccon
                            Moderator

                              Olá Fernando,

                              Não sei dizer, eu acredito que a última versão não está recebendo atualizações por isso os erros na mudança de versão persistem.

                              in reply to: Dúvida conceitual sobre Classificação #29790
                              Denny Ceccon
                              Moderator

                                Olá Daniel,

                                A presença de um registro na base histórica não é garantia que o modelo vai retornar o mesmo resultado no modo de predição. Fosse assim, a acurácia no dataset de treinamento seria seria de 100%, e não é o caso. Acontece que os modelos de machine learning começam a aprender a partir de uma situação onde há ausência de conhecimento, e a cada exposição a um dado, eles fazem um pequeno ajuste no sentido de prever a informação que o dado sugere. Mas todo algoritmo tem suas premissas, por exemplo, uma regressão linear vai sempre produzir uma reta, e é possível que a reta no final das contas não inclua exatamente o dado original, mas passe o mais próximo possível que essa limitação (ser uma reta) permite. É por isso que todo modelo tem um erro associado, e às vezes este erro é em decorrência de os dados não atenderem as premissas do algoritmo, como no exemplo, de ser um problema linear.

                                Se houver dois registros com a classificação diferente, cada um deles vai “puxar” o modelo para o “seu canto”, mas no final das contas, todas as outras instâncias de dados fazem isso, então o resultado final depende do efeito somado de cada uma delas. Não é possível dizer antecipadamente qual predição o modelo vai fazer somente com as informações que você sugere, pois o modelo aprender a partir da coleção de dados somada.

                                Sobre incluir mais variáveis, você certamente pode, mas os dados usados no treinamento devem ter valores conhecidos para essas variáveis, se não o modelo não tem como levá-la em consideração. Às vezes nós geramos novas variáveis a partir das já existentes, ou seja, é possível gerar a nova variável a partir dos dados de histórico, mas não é possível incluir uma variável para a qual você não conheça, ou não possa coletar, os valores.

                                Denny Ceccon
                                Moderator

                                  Olá ronem,

                                  Os datasets estão na sessão de Introdução do curso: https://iaexpert.academy/topic/recursos-para-download-3/

                                Viewing 15 posts - 391 through 405 (of 410 total)