Teaching the computers to teach themselves