Конструктор ИИ

Можно ли собрать модель искусственного интеллекта без глубоких знаний математики и программирования?

Чат-боты на сайтах, голосовые помощники, операторы колл-центров, сортировка электронной почты — вы сталкиваетесь с ИИ каждый день. Для разработчиков понимание основ искусственного интеллекта — конкурентное преимущество. Если вы хотите не просто использовать, но и развивать технологии ИИ, пройдите наш тест. Впереди задания, которые покажут, насколько хорошо вы разбираетесь в теме. Если справитесь хорошо (или тема вас искренне заинтересует), задумайтесь об участии в профиле «Искусственный интеллект» Национальной технологической олимпиады — там вы получите ценный опыт решения AI-задач и найдете единомышленников.

1.

Представьте, что вам нужно создать приложение на основе искусственного интеллекта для классификации котов и собак. Для начала вам следует определиться, каким направлением ИИ воспользоваться для решения этой задачи.

К какому типу искусственного интеллекта относятся современные алгоритмы ИИ?
2.

Как называют категорию ИИ, на которой были основаны первые разработки в области ИИ?
3.

К какому типу задач машинного обучения относится поиск объекта на изображении (иначе — автоматическое вычитание фона)?
4.

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

Какой метод машинного обучения лучше всего подходит для распознавания изображений?
5.

Ваша идея обретает конкретные очертания. Осталось определиться с нейронной сетью.

Какие сети чаще всего используют для распознавания образов — в частности, изображений?
6.

Как называется вид нейросетей, состоящих из комбинации двух нейронных сетей, в которой одна — дискриминатор?
7.

Приступаем к созданию собственного алгоритма! Вы выбрали структуру нейронной сети, но возникает новый вопрос: как ее обучить?

Представим, что вы определились с выбором метода машинного обучения, который будете использовать для распознавания. Какой тип обучения вы выберете для бинарной (двухклассовой) классификации?
8.

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

Умение качественно считать ошибку модели помогает лучше подстраивать ее параметры и в целом ускоряет обучение. Представьте, что функция потерь в нашей нейросети считается по среднеквадратичной ошибке. Какая формула нам нужна?
9.

После того как ошибка нейросети была найдена, необходимо пересчитать параметры методом обратного распространения. Как еще называется этот процесс?
10.

Наконец, вы приступили к разработке кода программы. А как у вас с навыками программирования? Не запутаетесь в символах и переменных?

Мы определили функцию ошибок и готовы запрограммировать градиентный спуск. На наши глаза попалась статья про одну из его разновидностей — стохастический градиентный спуск. В какой строчке кода используется этот подход для обновления весов?
11.

На каком изображении представлен фрагмент кода, где вызывается функция активации?

Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.