Como usar os kernels de string no scikit-learn?
Estou tentando gerar um kernel de string que alimenta um classificador de vetor de suporte. Eu tentei com uma função que calcula o kernel, algo assim
def stringkernel(K, G):
for a in range(len(K)):
for b in range(len(G)):
R[a][b] = scipy.exp(editdistance(K[a] , G[b]) ** 2)
return R
E quando passo para o SVC como parâmetro, recebo
clf = svm.SVC(kernel = my_kernel)
clf.fit(data, target)
ValueError: could not convert string to float: photography
onde meus dados são uma lista de cadeias e o destino é a classe correspondente à qual essa cadeia pertence. Analisei algumas perguntas no stackoverflow com relação a esse problema, mas acho que as representações de palavras-chave não são adequadas para este caso.