Wie verwende ich String-Kernel in scikit-learn?

Ich versuche, einen String-Kernel zu generieren, der einen Support-Vektor-Klassifikator versorgt. Ich habe es mit einer Funktion versucht, die den Kernel berechnet, so etwas wie das

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

Und wenn ich es als Parameter an SVC übergebe, erhalte ich

 clf = svm.SVC(kernel = my_kernel)
 clf.fit(data, target)

 ValueError: could not convert string to float: photography

wobei meine Daten eine Liste von Zeichenfolgen sind und das Ziel die entsprechende Klasse ist, zu der diese Zeichenfolge gehört. Ich habe einige Fragen zu diesem Problem in stackoverflow überprüft, aber ich denke, dass eine Bag-of-words-Darstellung für diesen Fall nicht geeignet ist.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage