Creación de un corpus categorizado personalizado en NLTK y Python

Estoy experimentando un pequeño problema que tiene que ver con expresiones regulares y CategorizedPlaintextCorpusReader en Python.

Quiero crear un corpus categorizado personalizado y entrenar un clasificador de Naive-Bayes en él. Mi problema es el siguiente: quiero tener dos categorías, “pos” y “neg”. Los archivos positivos están todos en un directorio, main_dir/pos/*.txt , y los negativos están en un directorio separado, main_dir/neg/*.txt .

¿Cómo puedo usar el CategorizedPlaintextCorpusReader para cargar y etiquetar todos los archivos positivos en el directorio pos, y hacer lo mismo para los negativos?

NB: la configuración es absolutamente la misma que la de la Movie_reviews las Movie_reviews ( ~nltk_data\corpora\movie_reviews ).

Aquí está la respuesta a mi pregunta. Ya que estaba pensando en usar dos casos, creo que es bueno cubrir ambos en caso de que alguien necesite la respuesta en el futuro. Si tiene la misma configuración que el corpus movie_review: varias carpetas etiquetadas de la misma forma en que le gustaría que se llamen sus tags y que contengan los datos de capacitación que puede usar.

 reader = CategorizedPlaintextCorpusReader('~/MainFolder/', r'.*\.txt', cat_pattern=r'(\w+)/*') 

El otro enfoque que estaba considerando es poner todo en una sola carpeta y nombrar los archivos 0_neg.txt, 0_pos.txt, 1_neg.txt, etc. El código para su lector debe tener el siguiente aspecto:

 reader = CategorizedPlaintextCorpusReader('~/MainFolder/', r'.*\.txt', cat_pattern=r'\d+_(\w+)\.txt') 

Espero que esto ayude a alguien en el futuro.