Self-Learning Machine