Vi essa dúvida no fórum, porém como ela é antiga, não consegui responder diretamente no tópico original:
https://cursos.alura.com.br/forum/topico-desvio-padrao-174286
Conteúdo do tópico original:
Quando rodo o código, retorna desvio padrão = 0.
from sklearn.model_selection import cross_validate
from sklearn.dummy import DummyClassifier
import numpy as np
SEED = 301
np.random.seed(SEED)
modelo = DummyClassifier()
results = cross_validate(modelo, x_azar, y_azar, cv = 10, return_train_score=False)
media = results['test_score'].mean()
desvio_padrao = results['test_score'].std()
print("Accuracy com dummy stratified, 10 = [%.2f, %.2f]" % ((media - 2 * desvio_padrao)*100, (media + 2 * desvio_padrao) * 100))
O results['test_score'] apresenta array:
array([0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58])
Eu estava com o mesmo problema e depois de investigar um pouco, acho que descobri a solução.
Quando o curso foi feito, a estratégia 'default' (padrão) do Dummy Classifier era a 'stratified'. Desde a versão 0.24 do Sci-Kit Learner, a estratégia padrão mudou para 'prior'. Link para a documentação: https://scikit-learn.org/stable/modules/generated/sklearn.dummy.DummyClassifier.html
Assim, para ter resultados próximos daqueles apresentados no video, basta mudar a configuração do modelo dessa maneira:
model = DummyClassifier(strategy='stratified')
Vale ressaltar que meus resultados ainda foram levemente diferentes, mas bem próximos (47.18% e 53.60%).