Machine Learning - How To Learn ?                                 Home :




How to Learn ?


There are many different ways for a machine and human to learn something. It would be difficult to compare machine learning algorithm to human learning process partly because there can be too many variations and partly because we don't know exactly what is going on inside of our brain when we learn something.

So what I describe in this page is mainly my own subjective opinion and the way I describe is more of analogy rather than the detailed technical/scientific facts.




How a Machine Learn ?


As I mentioned above, there are many types of algorithm for a machine to learn something, but the model I am trying to explain here is the one based on Machine Learning/Deep Learning which can be illustrated as below.



The details of this process is explained in what they do page and the perceptron algorithm would give you more detailed technical details on Machine Learning algorithm part. Just reiterating the process at high level,

    i) another machine (or software) or human prepare huge set of training data (pairs of example data and label for the data)

    ii) the data (training example) is fed to the learning algorithm (neural net).

    iii) the machine learning algorithm evaluate the training data and produce a result (e.g, classification result)

    iv) the machine compares the produced result(estimated result) with the desirect result. // How can it know the desired result ? The desired result was  given to the algorithm as a part of training data.

    v) the machine adjust the internal parameters of the machine learning based on the result of the comparision.

    vi) another example data is given to the machine learning algorithm and go to step iii).

Machine learning algorithm repeats the steps from ii)~vi) for thousands, millions of training data.




How a Human Learn ?


Now let's think of how we (human) learn. As mentioned above, we don't know exactly what's happening with each and every neurons in our brain when we learn. It is highly likely that multiple different mechanism is going on in our brain when we are learning. But I get the sense the way I learn something in technology/engineering is very similar to the way a neural network learns.

The way I study/learn about a technical/engineering topics can be illustrated as follows.




    i) feed training data (e.g, YouTube videos, Blog, Papers etc) into my learning algorithm (my brain)

    ii) my brain produce a summarized information (sometimes I explictely write down the summary or sometimes I imaginarily produce the summary in my brain)

    iii) this process of summrization seems to be fed back to my brain and seems to augment some part of my brain (a kind of circuit for the specific knowledge).

    iv) another training data (e.g, videos, blogs, papers) for the same topic is fed into my brain and go to step ii).

I repeat the steps ii) ~ iv) many times (usually at least around 50 times) for the initial study.


NOTE : You can apply this learning process for studying Machine Learning itself. Just try to gather around 50~100 video and around the same number of blogs/papers and feed them into your brain. You do not need to understand each and everything from the training data (video or blogs and papers), but you would feel as if your brain learn about it by itself as you feed more of those data into your brain. TRUST YOUR BRAIN and just FEED the proper data and let it learn on its own.




Similarify between Machine Learning and Human Learning


At least in terms of the learning model described above, I think there are some similarities between Machine Learning and Human Learning as follows.

  • Both learns from training data
  • Both seems to be augmented (or reinforced) by some kind of feedback mechanism
  • The more training data is fed , the better both learn
  • training with only a few limited training data may result in overfitting. This overfitting would degrade the capability of recognizing the new data (the data not used for training).




Difference between Machine Learning and Human Learning


I think there are some differences between Machine Learning and Human learning and narrowing the gap between these differences can be a good target for the next evolution of Machine Learning technology.

  • Unlink Machine Learning requires extensive data preparation process (generaing huge cost as well) to feed the data into a specific machine learning algorithm, Human brain does not (almost not) require this kind of process. Of course, Human learning also requires some effort for data search (like googling the document or searching video) but this is uncomparavely small effort comparing to all those data preparation listed in WhatTheyDo page.
  • Human Brain can learn things with much less number of training data than Machine Learning. Most of machine learning algorithm would require huge set of training data (a few thousands for simple classification and it may require several hundreds thousands or millions training data set), but human brain would require much less number of training data. You may learn a new things to a certain (meaningful) level just by watching several tens of video or blog posts. If we can revolutionize machine learning algorithm so that I can learn to the level of human brain with such a few training data, it can be a great breakthrough.
  • One of the main advantage of machine learning would be that Machine Learning algorithm gets never tired or lose attention to each and every training input. But think of the situation where you have to watch a long video or watch several video/read the several document back to back. It would be hard for you to main the same level of attention throughout all the training process.