Введение в машинное обучение

Введения, предисловия и комментарии обычно не читают.

Поэтому здесь введение будет дано без текста. Даже устного.
Бывают слепые прослушивания, а здесь будет применено
глухое просматривание. Нажимай, не бойся.

То есть все ролики ниже без звука, собственно он им и не нужен.
Это скринкасты с реальных Moodle-курсов, под каждым есть ссылка.
Но если желания читать оригинал нет, то ролик лучше смотреть
в замедленном режиме. Гостевой вход: 1q2w3e

https://lms3.mgimo.ru/mod/book/view.php?id=10998&chapterid=181



https://lms3.mgimo.ru/mod/page/view.php?id=5429



https://lms3.mgimo.ru/mod/page/view.php?id=5998



https://lms3.mgimo.ru/mod/page/view.php?id=5403



https://lms3.mgimo.ru/mod/page/view.php?id=9228



https://lms3.mgimo.ru/mod/page/view.php?id=9227



https://lms3.mgimo.ru/mod/page/view.php?id=9247




Зачем нам работать на низком уровне?

В информационных технологиях тысячи многомерных слоёв.
Начиная от проектирования и построения литографических машин
для производства чипов, и заканчивая манипулированием сознанием
масс людей, для достижения политических или коммерческих целей.
Каждый из этих слоёв, в свою очередь, - суть многомерный тензор
похожий на торт «Наполеон».

Об этом ролик
    со звуком.    И всё остальное...

Рассмотрим упрощенную картину в области разработки софта, и еще сузим ее до машинного обучения.
Вот примитивная иллюстрация, но для ответа на вопрос, поставленный в заголовке, ее хватит.

IT.svg



Понятно, что чем ниже уровень на котором работает разработчик, тем ближе он к железу.
Самый низкий - это ассемблер, т.е. язык процессора. На нём пишут биосы, компиляторы, драйверы, etc.
Высокий уровень стремиться к человеку. Фронтенд-разработчики должны учитывать человеческую физиологию, моторику и психологию массового пользователя.

Обычно начинающих программистов, а начальные навыки программирования нужны сегодня абсолютно всем людям, получающим высшее образование (в Китае начинают с детсада), предлагают инструментарий из верхнего пула - он удобнее, легче осваивается, потому что похож на то, чем людей уже приучили пользоваться на работе и дома: окошки, чекбоксы, всплывающие подсказки, почти всё можно делать не выпуская из рук мыши.

Однако при этом человек не знает, что реально происходит под капотом окошек.

Каждый водитель автомобиля, хоть раз в жизни, в автошколе, услышал рассказ о том, как устроен мотор, коробка, тормоза, что такое аккумулятор и бензобак. А пользователь компьютера, может во всю жизнь ни разу не задуматься о процессоре и памяти, не говоря уже о роутере, сервере и сети.

Поработать, хоть немного, в командной строке Linux, в консоли Postgres, использовать простейший текстовый редактор, почитать логи и выловить без отладчика ошибки - необходимый опыт, чтобы поднять свой уровень понимания той среды в которой он работает.

Мы ходим по земной твёрдой поверхности, однако иногда летаем на воздушном шаре и ныряем с аквалангом - нам это зачем-то нужно, что-то в мозгу поправляется при этом. Аналог этого в любой работе с Машиной - это подняться на уровень архитектуры и дизайна, и нырнуть поглубже - руками пощупать, как там работает нами отлаженный код.