Forum Replies Created

Viewing 15 posts - 391 through 405 (of 414 total)
  • Author
    Posts
  • in reply to: Aula -> Validação Cruzada – Implementação #34058
    Denny Ceccon
    Moderator

      Olá Henrique,

      Esse é o número do batch. O número total de batches é definido pelo tamanho do dataset (número de instâncias), que no caso é igual a len(previsores), dividido pelo batch_size. Como o tamanho do dataset é fixo durante uma tarefa de validação cruzada, você pode alterá-lo mudando o batch_size.

      Denny Ceccon
      Moderator

        Olá Aislan,

        Basta utilizar NB_CLASSES = 5, conforme aula Treinamento do Modelo @1:22.

        in reply to: Bert para outras linguas #33725
        Denny Ceccon
        Moderator

          Felix, é que o BERT trabalha com uma estratégia de tokenização chamada subwords, onde as palavras são quebradas nos n-gramas de letras mais frequentes. Adicione a isso o fato de que o modelo multilíngua foi treinado com várias línguas, e o resultado é que muitos tokens não farão sentido gramatical, mas computacionalmente eles são úteis. O importante não é que a tokenização “faça sentido”, mas que sirva para a finalidade do algoritmo.

          Existem modelos treinados em outras línguas, mas são soluções de outros grupos, não oficiais do Google. Algumas, inclusive, você consegue importar do próprio hub do Tensorflow, o que facilita a adaptação do código da aula. Não temos como oferecer suporte neste caso, mas você está livre para testá-las por conta própria.

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

            Olá Felix,

            Nesse caso, você deve salvar o atributo history do objeto history com:

            import joblib
            joblib.dump(history.history, 'history.joblib')

            E depois restaurar com:

            history = joblib.load('history.joblib')

            Observe entretanto que não é possível salvar o objeto history inteiro, apenas o atributo history dele, que contém as métricas.

            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, 11 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?

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