Use o scikit-learn para classificar em várias categorias

Estou tentando usar um dos métodos de aprendizado supervisionados pelo scikit-learn para classificar pedaços de texto em uma ou mais categorias. A função de previsão de todos os algoritmos que tentei apenas retorna uma correspondência.

Por exemplo, eu tenho um pedaço de texto:

<code>"Theaters in New York compared to those in London"
</code>

E eu treinei o algoritmo para escolher um local para cada snippet de texto que eu o alimentasse.

No exemplo acima, eu gostaria que ele retornasseNew York eLondon, mas só retornaNew York.

É possível usar o scikit-learn para retornar vários resultados? Ou até mesmo retornar o rótulo com a próxima probabilidade mais alta?

Obrigado pela ajuda.

---Atualizar

Eu tentei usarOneVsRestClassifier mas eu ainda só recebo uma opção por pedaço de texto. Abaixo está o código de exemplo que estou usando

<code>y_train = ('New York','London')


train_set = ("new york nyc big apple", "london uk great britain")
vocab = {'new york' :0,'nyc':1,'big apple':2,'london' : 3, 'uk': 4, 'great britain' : 5}
count = CountVectorizer(analyzer=WordNGramAnalyzer(min_n=1, max_n=2),vocabulary=vocab)
test_set = ('nice day in nyc','london town','hello welcome to the big apple. enjoy it here and london too')

X_vectorized = count.transform(train_set).todense()
smatrix2  = count.transform(test_set).todense()


base_clf = MultinomialNB(alpha=1)

clf = OneVsRestClassifier(base_clf).fit(X_vectorized, y_train)
Y_pred = clf.predict(smatrix2)
print Y_pred
</code>

Resultado: ['New York' 'London' 'London']

questionAnswers(5)

yourAnswerToTheQuestion