Чтобы понять машинное обучение, будет полезно сначала посмотреть на обучение человека. Предположим, вас просят оценить стоимость квартиры. Как это сделать? Наверное, она зависит от города, площади квартиры, числа комнат, состояния квартиры и других параметров. Вы можете посмотреть квартиры с похожими параметрами, узнать их цену и как-то предположить цену конкретной квартиры. Вы даже можете написать какое-то своё правило: берём базовую ставку для города, умножаем на площадь, коэффициент числа комнат и т.д. и получаем цену. Чем больше параметров вы захотите учесть, тем более сложной будет формула. А потом цены меняются, и вам нужно будет как-то эту формулу обновлять, отслеживать, что она корректно работает... Ровно такую задачу и решают алгоритмы машинного обучения: они сами подбирают формулу. Вы передаёте набор параметров и известных правильных ответов (в данном случае цена), а алгоритм подбирает такую формулу вычисления цены, которая лучше всего угадывает реальную цену. После этого вы применяете алгоритм уже к неизвестной квартире, и он выдаёт вам свою оценку. Это машинное обучение (если быть точным, то класс задач "обучение с учителем")
Важная особенность машинного обучения в том, что они применяются в задачах, где нет 100% правильной формулы. У алгоритма нет возможности абсолютно верно предугадать цену квартиры. Поэтому нет идеального алгоритма. А есть лишь те, что справляются лучше / хуже с такой задачей. Поэтому здесь так много разных алгоритмов / подходов, и целая своя культура решения такого рода задач.
И оказывается есть много задач, для которых такой подход работает: распознавание речи, перевод текста на иностранный язык, управление автомобилем, игра в шахматы и многое другое. Для всех этих задач раньше люди пробовали придумать алгоритм самостоятельно (посмотреть на данные и придумать правильную формулу), но по мере роста объёма доступных данных и вычислительных мощностей алгоритмы машинного обучения научились подбирать формулы лучше людей. Поэтому сейчас машинное обучение внедряется повсеместно.