1
resposta

Erro na taxa de acerto

Ola,

Estava testando o código da atividade 7 da aula 2:

from dados import carregar_acessos
X, Y = carregar_acessos()

from sklearn.naive_bayes import MultinomialNB
modelo = MultinomialNB()
modelo.fit(X, Y)

resultado = modelo.predict(X)

diferencas = resultado - Y

acertos = [d for d in diferencas if d == 0]
total_de_acertos = len(acertos)
total_de_elementos = len(X)

taxa_de_acerto = 100.0 * total_de_acertos / total_de_elementos

print(taxa_de_acerto)
print(total_de_elementos)

O mesmo que o professor usa, porém ao invés de retornar 93% de acerto, ele retorna: 66,666..%, por que?

E também tenho uma dúvida a respeito da própria taxa do professor. Se ele executou 99 treinamentos, e testou com os mesmos 99 dados, não deveria retornar uma taxa de acerto de 100%?

Fico no aguardo das respostas!

1 resposta

Olá Lucas.

Rodei o seu código e obtive 93.93939393939394 na taxa de acerto, como pode consultar nesse link do Google Colab.

Imagino que pode ter alguma problema na sua função carregar_acessos, se poder fornecer posso olhar com você.

Quanto ao seu questionamento sobre a taxa de acerto, por mais que você esteja fornecendo os mesmo dados do treinamento da previsão o modelo pode ainda assim errar e não atingir o 100%, isso porque a maneira que o modelo funciona, como é apresentado na Aula 5 atividade 02 (link), vemos que ele faz cálculos para fazer sua previsão, então assim ele ainda pode chegar em conclusões erradas mesmo com dados 'conhecidos'.

Espero ter te ajudado a entender melhor o que está acontecendo, qualquer duvida não hesite em perguntar.

Bons Estudos.