Text classification: Choosing training and testing set for each category I am very new to machine learning.
I have a text classification problem in hand. I have a tagged dataset of around 750 documents( short texts), categorized manually into 16 buckets. I want to train a classifier on this data. I know that there should be a training set and a test set (an option could be 80-20 ). In my understanding, this should be for the complete set( 80% of my 750 documents- training, 20% of 750 documents - testing ). 
1. They should be randomly generated or is there some condition for category? ie. if category A constitutes 60%,category B 5%, C 7% etc. how to choose the training set?
The most commonly used option is 2/3rd of the data as training and 1/3rd as testing sets respectively. What kind of software or tool are you using for this categorization process? For your classifier to work efficiently at the end of all the hard work, have you considered cross validating it using a multiple fold cross validation before using and assigning the training and testing sets? As in for the skewed data categories, try finding instances for the classes/ categories which have fewer samples (~10%).