title: Machine learning - how do I get supervised learning?
body: <p>I'm trying to get into machine learning, but I don't know how to really get started.
  I don't know if the title is okay, but I just couldn't find a proper one (feel free to edit). </p>
  
  <p>This post is divided in two parts:</p>
  
  <ol>
  <li>How do I process/classify data comparing it with a database?</li>
  <li>(A little bit subjective one) What is the best language for this? Best database?</li>
  </ol>
  
  <p>Well, my structure of data goes like this (example from a sample generator that I made):</p>
  
  <pre><code>    {"word":"SuPPIndd",
      "data":[[38,80,39,71,4,88,93,62,19,0,90,24,19,81,79,42,53,-37,-14,-88,-51,-40,-16,-49,74,-20,100,86],
      [41,69,39,82,21,71,70,71,35,1,94,27,29,79,78,65,49,-17,-14,-100,-55,-45,-17,-29,81,2,100,93],
      [60,82,30,83,9,81,82,73,12,11,95,20,33,75,100,59,69,-30,-9,-100,-65,-49,-10,-43,57,-2,100,98],
      [34,79,27,69,16,69,66,79,38,14,87,13,31,91,94,43,50,-18,-30,-100,-49,-42,-5,-30,80,-14,95,100],
      [56,69,40,84,4,71,82,65,28,0,83,14,39,96,77,54,66,-37,-4,-88,-64,-40,-21,-51,71,-11,100,80],
      [57,90,30,90,17,97,92,81,31,2,86,37,26,72,100,68,64,-27,-2,-87,-61,-30,-10,-53,64,-1,96,98],
      [37,65,35,81,13,73,88,81,18,0,100,16,30,74,97,55,61,-21,-19,-90,-67,-31,-6,-53,84,-22,98,85],
      [43,65,34,73,8,88,72,62,36,0,89,17,17,91,86,59,55,-16,-2,-100,-57,-26,-7,-47,72,-5,96,90],
      [41,74,35,71,26,71,74,53,21,11,100,16,29,78,76,54,54,-16,-6,-100,-51,-23,-13,-45,65,-11,100,89],
      [50,75,23,85,34,88,71,66,29,0,100,31,24,78,88,40,59,-31,-5,-95,-56,-35,-25,-44,69,-12,100,100],
      [41,94,43,84,25,81,70,66,40,7,97,32,35,88,75,43,54,-33,-1,-79,-48,-19,-3,-29,56,-3,100,88],
      [58,86,42,92,11,90,93,69,18,15,88,33,28,95,100,59,43,-14,0,-100,-52,-34,-9,-45,54,-27,86,82]]
      }
  </code></pre>
  
  <p>The objects are like that, a "word", with an associated data, which is an array of arrays of values.</p>
  
  <p>I would have a database of a lot of these words (let's say 1000) with about 20 arrays each (minimum, they will be growing as more teaching is made).</p>
  
  <p>The main problem is this: <strong>I want to input an array of values (like one of the arrays inside the "data" array), and get the "word" that is most closest one.</strong></p>
  
  <p><strong>How much more difficult would it be if the input is an array of ten arrays of values, with a data structure like this?:</strong></p>
  
  <pre><code>{"word":"someoword",
  "data":[[Array of ten arrays],[Array of ten arrays],[Array of ten arrays]...]}
  </code></pre>
  
  <p>I though about Python or Node.js with a MongoDB database, and dividing the database in multiple collections depending on some of the values. But I only though about common ways of getting data from the DB, so they would be really inefficient if I there is a lot of data (I estimated a medium trained DB of around 18MB, and a fully trained one would be considerably larger).</p>