title: How to normalize tf-idf vectors for SVMs?
body: <p>I am using <a href="http://en.wikipedia.org/wiki/Support_vector_machine" rel="nofollow">Support Vector Machines</a> for <a href="https://en.wikipedia.org/wiki/Document_classification" rel="nofollow">document classification</a>. My feature set for each document is a <a href="https://en.wikipedia.org/wiki/Tf%E2%80%93idf" rel="nofollow">tf-idf</a> vector. I have M documents with each tf-idf vector of size N. 
  Giving M * N matrix. </p>
  
  <p>The size of M is just 10 documents and tf-idf vector is 1000 word vector. So my features are much larger than number of documents. Also each word occurs in either 2 or 3 documents. When i am normalizing each feature ( word ) i.e. column normalization in [0,1] with</p>
  
  <pre><code>val_feature_j_row_i = ( val_feature_j_row_i - min_feature_j ) / ( max_feature_j - min_feature_j)
  </code></pre>
  
  <p>It either gives me 0, 1 of course. </p>
  
  <p>And it gives me bad results. I am using <a href="https://en.wikipedia.org/wiki/LIBSVM" rel="nofollow">libsvm</a>, with <a href="https://en.wikipedia.org/wiki/Radial_basis_function" rel="nofollow">rbf function</a> C = 0.0312, gamma = 0.007815 </p>
  
  <p>Any recommendations ?</p>
  
  <p>Should i include more documents ? or other functions like sigmoid or better normalization methods ?</p>