Добавить результаты и показать, какая комбинация произошла? - PullRequest
0 голосов
/ 28 октября 2019

Это классический пример Python с append и for loop, но я не могу понять, что нужно изменить, чтобы работать.

У меня есть эти строки:

clf =  SVC(C=10,gamma=1,kernel='rbf')
clf.fit(vectors, df.type)
vectors_test = vectorizer.transform(df_test.news)
pred = clf.predict(vectors_test)
metrics.f1_score(df_test.type, pred, average='macro') 

последняя строка дает оценку f1 0,95.

Цель

Я хочупопробуйте разные комбинации для первой строки (clf) и сделайте так, чтобы она возвращала результаты f1 score (последняя строка) для каждой комбинации.

Вот что я пробовал:

import itertools

clf=[]
mode=[]

ar=np.array(df_test.type)
for element in list(itertools.product(range(3),range(3))):
    c = element[0] #for each iteration will take a new value from the range
    g = element[1] #same here, and will replace the values c and g below
    try:
        clf.append(SVC(C=c,gamma=g,kernel='rbf').fit(vectors,df.type))
        vectors_test = vectorizer.transform(df_test.news)
        pred = clf.predict(vectors_test)
        metrics.f1_score(df_test.type, pred, average='macro')
        except:
            pass        

Это вроде как близко, я думаю. Вы можете помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...