Oii Anne, espero que você esteja bem ^⁻^
Peço desculpas pela demora em obter uma resposta.
É incerto dizer o exato motivo que está gerando o erro sem ter acesso ao código completo. Sobre o erro anterior, te respondi em sua outra postagem.
Deixo abaixo o código da classe PacoteDePalavras
e suas respectivas chamadas:
QUANTIDADE_PALAVRAS_VIRTUAIS = 512
class PacoteDePalavras:
def gerar_dicionario(self, lista_descritores):
kmeans = KMeans(n_clusters=QUANTIDADE_PALAVRAS_VIRTUAIS)
kmeans = kmeans.fit(lista_descritores)
self.dicionario = kmeans.cluster_centers_
def histograma_de_frequencia(self, descritor):
algoritmo_knn = NearestNeighbors(n_neighbors= 1)
algoritmo_knn.fit(self.dicionario)
mais_proximos = algoritmo_knn.kneighbors(descritor, return_distance=False).flatten()
histograma_caracteristicas = np.histogram(mais_proximos, bins=np.arange(self.dicionario.shape[0] + 1))[0]
return histograma_caracteristicas
teste_palavras_virtuais = PacoteDePalavras()
teste_palavras_virtuais.gerar_dicionario(descritor)
histograma_caracteristicas = teste_palavras_virtuais.histograma_de_frequencia(descritor)
print(histograma_caracteristicas)
Caso o erro ainda persista, peço que compartilhe seu notebook para que eu possa avaliar o código e ser mais assertiva quanto ao erro de incompatibilidade no tamanho dos arrays.
Qualquer dúvida fique a vontade para retornar aqui.
Grande abraço!