Мульти метка классификации с использованием Meka Java - PullRequest
0 голосов
/ 18 октября 2018

Может ли кто-нибудь помочь с полной документацией для классификации набора данных с несколькими метками с использованием meka java-кода. Сначала мне нужно обучить 80% данных, а затем проверить 20% данных. Как это сделать с meka? Это будет действительно, если кто-то сможетВот как выглядит мой набор данных: первые шесть атрибутов класса

     @attribute IS_PROTECTION_binarized {0,1}
     @attribute IS_PRICING_binarized {0,1}
     @attribute IS_ERROR_binarized {0,1}
     @attribute IS_USAGE_binarized {0,1}
     @attribute IS_COMPATIBILITY_binarized {0,1}
     @attribute IS_RESOURCES_binarized {0,1}
     @attribute text string

     @data
     0,0,1,0,1,0,'keeps crashing since i upgraded my android this game keeps crashing'
     0,0,0,0,0,0,'addictive i first became a fan of this game when i got an app that u had to earn coins to unlock diffrent colored lights how u got coins was to play games and it just happened tbat one of the mini games was this kind of game'
     0,1,0,0,0,0,'ad free port of the original open source game'

1 Ответ

0 голосов
/ 19 октября 2018

Для этого вы можете использовать scikit-multilearn, класс LabelPowerset сделает свое дело, просто выберите базовый мультиклассовый классификатор.Возможно, вам нужно что-то сделать с атрибутом text, поэтому использование конвейера может быть важным.

from skmultilearn.problem_transform import LabelPowerset
from sklearn.ensemble import RandomForestClassifier

# initialize LabelPowerset multi-label classifier with a RandomForest
classifier = LabelPowerset(
    classifier = RandomForestClassifier(n_estimators=100),
    require_dense = [False, True]
)

# train
classifier.fit(X_train, y_train)

# predict
predictions = classifier.predict(X_test)

Конвейер может выглядеть как this :

from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer

pipeline = Pipeline([
    ('vect', CountVectorizer()),
    ('tfidf', TfidfTransformer()),
    ('clf', classifier),
])
...