https://pyclip.ru/en/tapes/c-IO5r18EXk/supervised-and-unsupervised-learning-explained