classificação de texto com SciKit-learn e um grande conjunto de dados

Primeiro de tudo eu comecei com python ontem. Estou tentando fazer uma classificação de texto com o SciKit e um grande conjunto de dados (250.000 tweets). Para o algoritmo, cada tweet será representado como um vetor de 4000 x 1, então isso significa que a entrada é de 250.000 linhas e 4000 colunas. Quando eu tento construir isso em python, fico sem memória depois de 8500 tweets (quando trabalho com uma lista e anexando-a) e quando eu pré-aloco a memória acabei de receber o erro:MemoryError (np.zeros (4000,2500000)). O SciKit não consegue trabalhar com esses grandes conjuntos de dados? Estou fazendo algo errado (como é meu segundo dia com python)? Existe outra maneira de representar os recursos para que ela possa caber na minha memória?

editar: Eu quero o para o Bernoulli NB

edit2: Talvez seja possível com o aprendizado online? leia um tweet, deixe o modelo usar o tweet, remova-o da memória, leia outro, deixe o modelo aprender ... mas não acho que o Bernoulli NB permita a aprendizagem on-line no scikit-learn

questionAnswers(2)

yourAnswerToTheQuestion