Forum Replies Created

Viewing 15 posts - 286 through 300 (of 410 total)
  • Author
    Posts
  • in reply to: Como montar a rede usando o scikit-lean #36563
    Denny Ceccon
    Moderator

      Olá Luiz,

      O Scikit-learn tem um módulo chamado MLPClassifier (multi-layer perceptron), dá uma olhada na documentação: https://scikit-learn.org/stable/modules/generated/sklearn.neural_network.MLPClassifier.html

      in reply to: Taxa De Aprendizagem #36562
      Denny Ceccon
      Moderator

        Olá André,

        É um multiplicador de valor menor do que 1 que usamos para que o aprendizado não seja “muito rápido”, sem aplicar esse multiplicador a atualização dos pesos dá pulos muito grandes e corremos o risco de perder o ponto do treinamento onde está o mínimo global.

        in reply to: Qual o nome dessa formula ? de onde vem ? #36561
        Denny Ceccon
        Moderator

          Olá André, não tem um nome, ela foi criada no início do desenvolvimento das redes neurais e é a forma mais simples de atualizar os pesos.

          in reply to: Erro na função “seleciona_pai”. #36530
          Denny Ceccon
          Moderator

            Olá Jeiverson,

            Suas colocações estão corretas, mas a ideia por trás da roleta viciada é de selecionar o indivíduo na posição onde o valor sorteado está mesmo, não o mais próximo. Pense como uma roleta física mesmo, quando a gente gira, a escolha vale para onde a flecha está apontando, não para a fatia mais próxima. O valor_sorteado nada mais é do que a posição da flecha, e nós usamos o restante do código para determinar quem é o indivíduo presente naquela porção da roleta.

            in reply to: AULA BASE DE DADOS CENSUS #36523
            Denny Ceccon
            Moderator

              Olá Adauto,

              No caso de valores categóricos, você pode optar por usar o valor mais frequente. Você descobre isso selecionando a coluna e usando o método value_counts:

              base_census['income'].value_counts()

              Neste caso, o valor mais frequente é “<=50K”.

              Então, você filtra a coluna para os valores faltantes e passa o novo valor:

              base_census['income'][base_census['income'].isna()] = "<=50K"

              in reply to: 2 tópico aula 10 #36516
              Denny Ceccon
              Moderator

                Veja que essa expressão está dentro de um loop for, onde o valor de i muda a cada loop. i indica o número da linha em convites, começa na primeira e vai até o final. Então, em cada loop, conexoes['Full Name'] tem que ser igual a convites['From'] na linha/posição i. Se for, isto retorna True. e conexoes[conexoes[‘Full Name’] == convites[‘From’][i]] vai retornar as linhas inteiras de conexoes que cumprem o critério. Aí, nós usamos ['Company'] pra filtrar só esta coluna (nome da empresa), values para converter para numpy array e o índice [0] para recuperar a primeira entrada deste array.

                Se te ajudar a entender, desmonte essa linha e printe os resultados passo a passo:

                tmp = conexoes[‘Full Name’] == convites[‘From’][i]
                print(tmp)
                tmp = conexoes[tmp]
                print(tmp)
                tmp = tmp['Company']
                print(tmp)
                tmp = tmp.values
                print(tmp)
                company = tmp[0]
                print(company)

                 

                 

                • This reply was modified 3 years, 4 months ago by Denny Ceccon.
                in reply to: Generator #36497
                Denny Ceccon
                Moderator

                  Você precisa trocar os parênteses por colchetes na definição de semstop:

                  (p for p in palavras.split() if p not in stopwordsnltk) => [p for p in palavras.split() if p not in stopwordsnltk]

                  in reply to: 2 tópico aula 10 #36486
                  Denny Ceccon
                  Moderator

                    Olá Caio.

                    A expressão dentro dos colchetes externos, conexoes[‘Full Name’] == convites[‘From’][i], está checando se a informação que consta em conexoes['Full Name'] é igual a convites['From'] na linha i. Se for, esta comparação vai retornar True, então conexoes[conexoes[‘Full Name’] == convites[‘From’][i]] vai resultar ns entradas de conexoes identificadas como True.

                    • This reply was modified 3 years, 4 months ago by Denny Ceccon.
                    in reply to: Generator #36485
                    Denny Ceccon
                    Moderator

                      Oi Giovanne,

                      Não faltou o print na linha 39? @7:15 da aula?

                      • This reply was modified 3 years, 4 months ago by Denny Ceccon.
                      in reply to: Vetores e matrizes – Exercício Python #36476
                      Denny Ceccon
                      Moderator

                        Olá Michael,

                        int é um tipo de dado básico do Python, mas os tipos do Numpy são baseados em C, o que ajuda em questão de performance. Dê uma olhada nesta página da documentação do Numpy: https://numpy.org/doc/stable/user/basics.types.html

                        Denny Ceccon
                        Moderator

                          Olá Dorimar,

                          As frequências nada mais são do que as probabilidades de as categorias ocorrem naquele dataset. Então, em termos de X e y, podemos reescrever o teorema acima da seguinte forma:

                          P(y/X) = P(X/y) . P(X)  /  P(y)

                          Ou seja, a probabilidade de determinada saída em função dos dados de entrada é definida pela multiplicação das probabilidades (ou frequências) dos dados.

                          in reply to: extratorpalavras #36453
                          Denny Ceccon
                          Moderator

                            Isso.

                            in reply to: extratorpalavras #36437
                            Denny Ceccon
                            Moderator

                              Oi Caio,

                              %s é um “placeholder”, quer dizer que ali vai entrar uma string, e com % palavra nós dizemos que a string está contido em palavra.

                              Ou seja, se palavrasunicastreinamento for uma lista com ['banana', 'maca', 'laranja'], então no final do loop você vai ter o dicionário caracteristicas contendo essas 3 chaves.

                              in reply to: count vectorizer #36380
                              Denny Ceccon
                              Moderator

                                Isso mesmo Caio, o CountVectorizer faz exatamente isso.

                                • This reply was modified 3 years, 5 months ago by Denny Ceccon.
                                in reply to: Implementação Validação Cruzada Atualizada. #36379
                                Denny Ceccon
                                Moderator

                                  Olá Gabriel,

                                  Sempre que você cria uma camada no Keras, a API coloca um índice no final do nome, por exemplo, dense_1, dense_2, dense_3… Aí, se você começar uma nova arquitetura, ele continua numerando como dense_4 em diante. O clear_session reseta esse estado. Não é um código estritamente necessário, mas se você quer acessar as camadas pelo nome depois, isso ajuda.

                                  A camada de Dropout serve para zerar algumas das saídas da camada anterior, 0.2 significa que 20% dos valores serão zerados. Isso ajuda a evitar problemas de overfitting.

                                Viewing 15 posts - 286 through 300 (of 410 total)