Olá! Tudo ok até a parte de rodar o Algoritmo, logo, está tudo perfeito até a criação das variáveis "vetores_de_texto" e "marcas". Eu possuo o costume de deixar o código mais limpo sempre transformando os códigos em funções, logo, realizei a criação de uma. Até então, sempre consegui adequar os exemplos dos vídeos para minhas funções, contudo, dessa vez não consegui. A função criada está a seguir:
def fit_and_predict(X, Y, quebras, modelo):
x = X
y = Y
treino = int(len(dataset) * 0.8)
validacao = int(len(dataset) * 0.2)
treino_x = x[0:treino]
treino_y = y[0:treino]
validacao_x = x[treino:]
validacao_y = y[treino:]
SEED = 5
np.random.seed(SEED)
modelo_one_rest = OneVsRestClassifier(modelo)
cv = KFold(n_splits = quebras)
results = cross_validate(modelo_one_rest, treino_x, treino_y, cv = cv, return_train_score = True)
media_treino = results['train_score'].mean()
desvio_padrao_treino = results['train_score'].std()
intervalo_esq, intervalo_dir = (media_treino - (2 * desvio_padrao_treino)) * 100 , (media_treino + (2 * desvio_padrao_treino)) * 100
return print(f'O Intervalo de Confiança de Treino é: {intervalo_esq.round(2), intervalo_dir.round(2)}')
Veja que "incrementei" algumas métricas como o uso de um Intervalo de Confiança para deixar ainda mais assertivo a performance. O meu problema é que a função roda normalmente, mas o Intervalo de Confiança retorna (100.00, 100.00), como se o Algoritmo tivesse acertado todas as Classificações e isso não é normal. Poderiam me ajudar?