Как обучить искусственный интеллект
Перейти к содержимому

Как обучить искусственный интеллект

  • автор:

Как создается искусственный интеллект

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

Задачи, для чего используется

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

Как работает искусственный интеллект

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

Технологии и инструменты для разработки

Технологии и инструменты AI

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

Как создается искусственный интеллект

Создание искусственного интеллекта включает несколько этапов:

Определение задач и целей

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

Сбор и анализ данных

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

Выбор алгоритма и модели

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

Обучение модели — как обучается искусственный интеллект?

Обучение искусственного интеллекта (ИИ) основывается на использовании больших объемов данных и алгоритмов машинного обучения. Эти алгоритмы позволяют модели анализировать данные, выявлять в них закономерности и делать обоснованные предсказания или принимать решения.

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

Оптимизация и тестирование

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

Внедрение и использование

После успешного тестирования и оптимизации модель готова к внедрению и использованию. Модель интегрируется в существующую систему или создается специальное приложение для ее использования. Важно обеспечить надлежащую поддержку и обновление модели, чтобы она продолжала работать эффективно.

Мониторинг и улучшение

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

Этические вопросы и вызовы

С развитием искусственного интеллекта возникают и этические вопросы и вызовы. Некоторые из них связаны с приватностью данных и защитой личной информации, особенно в случае использования ИИ в медицине и финансовой сфере. Также возникают вопросы ответственности за действия ИИ, автономность систем и их взаимодействие с людьми.

Будущее искусственного интеллекта: что нас ждет

Будущее искусственного интеллекта

Будущее искусственного интеллекта предоставляет огромные возможности и вызовы. Ожидается, что ИИ будет продолжать развиваться и станет неотъемлемой частью нашей повседневной жизни. Мы можем ожидать улучшения производительности, повышения точности и расширения функциональности ИИ. Возможности применения ИИ будут расширяться и охватывать новые области, что приведет к изменениям во многих сферах человеческой деятельности.

Как самому создать Искусственный Интеллект

Как самому создать ИИ

Создание искусственного интеллекта — это сложный и многогранный процесс, который требует глубоких знаний в области программирования, математики и статистики. Если вы новичок в ИТ, то рекомендуется начать с освоения основ программирования и основ машинного обучения. Изучение языков программирования, таких как Python, и фреймворков, таких как TensorFlow или PyTorch, поможет вам создавать и экспериментировать с моделями ИИ. Кроме того, важно постоянно изучать новые исследования и технологии в области искусственного интеллекта, чтобы быть в курсе последних тенденций и достижений.

Как создать искусственный интеллект?

Хотите разобраться в создании AI и обучении нейросетей? Узнайте, как создают искусственный интеллект и как обучить его. Получите знания о процессе создания и обучения AI прямо сейчас!

Как создать искусственный интеллект?

Навигация по странице

  1. Что такое искусственный интеллект
  2. Методы и технологии обучения AI
  3. Почему лучше учиться на курсах GeekBrains

Не секрет, что сегодня технологии развиваются с огромной скоростью. Искусственный интеллект (ИИ, AI) и нейронные сети еще не так давно были плодом воображения писателей-фантастов, а сегодня стали реальностью. С искусственным интеллектом можно решать множество задач, ведь он широко применяется в разных областях — медицине, тяжелой промышленности, маркетинге и других. Мы постоянно используем ИИ в повседневной жизни, нередко сами того не подозревая. Поскольку все больше компаний и предприятий внедряет ИИ в свою деятельность, спрос на высококвалифицированных специалистов в соответствующей сфере стремительно растет.

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

Что такое искусственный интеллект

Прежде всего стоит отметить, что искусственный интеллект — это достаточно размытый термин, однозначного определения нет по сей день. В 1956 году, когда на научном семинаре в Дартмуте впервые прозвучало это словосочетание, в него вкладывалось значение, которое существенно отличалось от современного. В те годы искусственный интеллект рассматривался как некая сущность, которая сможет выполнять перевод текстов с одного языка на другой, производить распознавание объектов по фотографии или видеозаписи, понимать человеческую речь и соответственно на нее отвечать. Современный ИИ способен делать все вышеперечисленное. Однако чем больших успехов удавалось достичь, тем больше требований выдвигалось к ИИ.

Чаще всего можно услышать, что искусственный интеллект подразумевает способность электронной вычислительной машины анализировать данные и принимать решения в соответствии с принципами, по которым функционирует человеческий мозг. Таким образом, от нейросети мы вправе требовать умения обучаться и применять свои знания на практике. Современный искусственный интеллект успешно справляется с этими задачами.

Методы и технологии обучения AI

Есть разные точки зрения на предмет того, как классифицировать методы ИИ. Мы предлагаем следующую классификацию:

  • обработка естественного языка — предполагает разработку ПО для преобразования данных в естественный язык, понятный ЭВМ и применяемый ей для ответов человеку;
  • машинное обучение — это способность ЭВМ учиться и развиваться на основе опыта, не будучи прямо запрограммированной на это. Иначе говоря, это способность компьютера искать закономерности в сложных для человека задачах, находить верные ответы и достоверно прогнозировать события;
  • глубокое обучение — предполагает обнаружение закономерностей в больших массивах данных. В технологии глубокого обучения обработкой данных занимаются искусственные нейросети (ИНС). В ИНС используется алгоритм самообучения, который позволяет решать разнообразные задачи с учетом полученного ранее опыта.

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

Как сделать свой ИИ самостоятельно: пошаговый план

Разработка и обучение искусственного интеллекта на первый взгляд кажется весьма непростой задачей, однако с современными инструментами это стало более доступно. Создание AI включает следующие этапы:

  1. Определение задачи. Перед тем как начать создавать искусственный интеллект или нейросеть своими руками, нужно определить задачу, которую будет решать ИИ. Это может быть генерация лица человека, которого никогда не существовало, сортировка текстовых материалов, анализ временных рядов и так далее.
  2. Сбор и подготовка данных. Для обучения искусственного интеллекта требуются данные. Можно использовать открытые наборы данных или создать свои собственные. Прежде чем начать использовать данные, их «очищают» и готовят (удаляют дубликаты, заполняют пропущенные значения).
  3. Выбор алгоритма машинного обучения. Речь идет об одном или нескольких методах, которые позволяют обучить искусственный интеллект. Конкретный алгоритм выбирают в зависимости от поставленной задачи. К примеру, для классификации текстовых материалов могут использоваться рекуррентные «нейронки».
  4. Обучение модели. После того как был выбран алгоритм, нужно обучить модель на заготовленных данных. Длительность «учебы» зависит от сложности задачи и объема данных. Разумеется, машинное обучение AI в домашних условиях также возможно.
  5. Оценка производительности. После обучения модели оценивают ее производительность. Процедура оценки включает расчет метрик качества, таких как точность, полнота и F1-score. Если производительность не отвечает требованиям, проводят дополнительную настройку.
  6. 6. Использование модели для решения задач. Когда модель обучена и протестирована, ее можно использовать для решения реальных задач. Например, если была разработана модель для распознавания лиц, ее можно применять для автоматизированной идентификации людей на фотоснимках или видеороликах.
  7. Итеративное улучшение модели. Искусственный интеллект — это итеративный процесс. Разработчик может добавлять новые данные или видоизменять характеристики модели.
  8. Использование готовых инструментов. Есть большое количество инструментов, которые можно применять для создания и обучения моделей. К примеру, PyTorch, Keras и TensorFlow. Перечисленные выше инструменты существенно упрощают работу. Допустим, что необходимо разработать бота наподобие Siri. Разработать простейший искусственный интеллект, способный воспринимать человеческую речь и адекватно отвечать на вопросы, несложно.

Подобную задачу можно реализовать за несколько дней с помощью языка программирования Python и двух API:

  • AssemblyAI для преобразования речи в текстовый вид.
  • OpenAI для интерпретации вопроса и получения ответа.

Узнай, как получить
5 онлайн-курсов бесплатно

Почему следует выбрать курсы GeekBrains

GeekBrains — это ведущая образовательная онлайн-платформа в русскоязычном пространстве. Над курсами GB работают опытные преподаватели, которые отлично разбираются в теории и могут похвастаться практическими достижениями, а значит, на личном опыте расскажут, как создают ИИ. Программа обучения построена таким образом, чтобы у пользователей оставалось время на работу и личную жизнь. Кроме того, GB поможет войти в профессию. Для этого площадка обеспечивает все условия:

  • Обучающие материалы. Студент получает доступ к учебным руководствам, статьям и видеопособиям, позволяющим понять как обучают AI, взять на вооружение пошаговую инструкцию. Есть возможность общаться с наставниками и одногруппниками.
  • Тестирование. Тесты помогают проверить, насколько хорошо студент усвоил программу. Тестирование также можно рассматривать как своего рода подготовку перед собеседованием.
  • Обратная связь. Когда возникают вопросы (к примеру, «как обучить искусственный интеллект?») или хочется поделиться опытом, можно посетить форум, разработанный специально для студентов образовательного портала. Как правило, пользователи оперативно отвечают и помогают разобраться с возникающими проблемами.

По окончанию обучения выпускник получает сертификат, который подтверждает его квалификацию.

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

Илон Маск, предприниматель и основатель компаний Tesla и SpaceX

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

Получить консультацию

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

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

Как обучить нейросеть, если разметка данных стоит как самолет

Искусственный интеллект все чаще используется в медицинских целях, в частности для анализа медицинских изображений. Это прекрасный помощник для врачей-рентгенологов, который позволяет определять даже едва различимые человеческому глазу признаки патологий и вообще разгружает медицинских специалистов за счет автоматизации ряда рутинных задач.

Мы, в том числе, создаем нейросети для обработки КТ-исследований, например для оценки поражения легких при COVID-19 пневмонии (кстати, вы знали, что врачи оценивают процент поражения легких ковидного пациента “на глаз”?). Процесс создания качественной и эффективной нейросети долгий и дорогой. Более того, данных для обучения зачастую недостаточно.

Например, для классического обучения нейронных сетей необходимо много размеченных данных. Это ресурсозатратный процесс, как по стоимости, так и по времени, так как в качестве аннотаторов выступают врачи-рентгенологи. Кроме того, размеченным снимкам необходима повторная валидация. Например, пропуск диагнозов при анализе врачом КТ-снимков может составлять до 42% [1]. Также данные довольно разнообразны, это тоже проблема: разные дозы облучения при исследовании, положение пациента, особенности КТ-аппарата.

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

В результате нашего исследования, мы нашли лучший подход, который помог сохранить точность работы алгоритма при использовании лишь 20% разметки.
Магия — нет, расскажем подробнее…

Целевая задача

Мы решили создать модель для анализа КТ органов грудной клетки “ковидных” пациентов, в качестве патологии выбрали матовое стекло. Почему именно этот симптом? Во-первых, он часто возникает на фоне COVID-19 (у 61.4%-91% пациентов [2, 3]). Патология представляет собой уплотнения легочной ткани, альвеолы заполняются жидкостью и, как следствие, затрудняется дыхание. Во-вторых, патология может иметь сложные паттерны, что затрудняет исследование (см. рисунок ниже). При обнаружении “матового стекла” необходимо тщательно обследовать пациента, так как он подвергается большой опасности при заболевании COVID-19.

КТ-снимок пациента, больного COVID-19, цветом отмечена патология “матовое стекло”. Источник - Botkin.AI

При анализе снимков необходимо учитывать, что КТ-снимок — это объемное изображение (3D), содержащее целевой орган. Эту особенность можно использовать в анализе объемных патологий – на вход алгоритму подается не один снимок, а набор последовательно идущих, что позволяет передать контекст и дает больше информации алгоритму об окружении.

Пример 5 подряд идущих снимков. Источник - Botkin.AI

План эксперимента

Для имеющихся данных (КТ-снимков легких) решается задача сегментации патологии “матовое стекло” с использованием классической нейронной сети U-net [6], лежащей в основе модели .

Для получения референсных значений мы обучили целевую модель классическим способом (supervised) на данных с полной аннотацией (размечен каждый срез на всех исследованиях).

Качество работы данной модели берется как эталонное, именно такие метрики мы и хотим сохранить или улучшить при дальнейших экспериментах. Вторым этапом мы проверяем, какое качество мы получим, если классическим образом supervised обучим ту же модель на данных с 20% аннотации. Для этого этапа и последующих экспериментов срезы с аннотацией выбираются не случайно, а по следующему правилу: в каждом исследовании берется разметка только для каждого пятого срезы. Далее мы начали пробовать более свежие методы, которые являются представителями подходов self-supervised и semi-supervised, используя также только часть аннотации.

Исследование подхода №1

Semi-supervised Contrastive Learning for Label-efficient Medical Image Segmentation

Основная идея контрастивного обучения заключается в подготовке пространства признаков за счет использования только исходных данных. Сейчас наша задача – обучить сеть давать схожие вектора признаков на схожих примерах. В данном случае на вход подается два примера – оригинальное изображение x и аугментированное x’ и расстояние между векторами должно быть минимальным. Таким образом можно быстрее и качественнее обучить сеть на целевую задачу благодаря утилизации всех неразмеченных данных. Зачастую при использовании такого подхода предобучается только Encoder на всех данных (a)[4], после чего Decoder обучается обычным supervised на размеченных данных (c)[4]. Метод отличается тем, что авторы статьи придумали, как обучать ещё и Decoder с помощью подхода локального контрастивного обучения (b)[4]. Это достигается за счет работы не с векторами признаков, полученными из энкодера, а уже с картами признаков, получаемыми из ветки декодера.

Таким образом на первом этапе обучается только Encoder; фичи, полученные после AVG слоя, сравниваются с помощью контрастивного лосса:

где z_i и z_j — значения выхода Encoder x и x’, а z_t – все остальные результаты обработки батча.

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

Достаточно часто в качестве функции потерь используют Dice [7], он обозначает меру схожести классов между ground truth и prediction (также известный как F-1 мера):

D(P, G) = 2 |G∩P| / (|G| + |P|)

Однако он имеет несколько недостатков, так как оперирует целыми числами и не учитывает вероятностных значений prediction. Во-первых, необходимо подобрать threshold, который будет напрямую влиять на правильность результата. Во-вторых, для классического Dice без разницы, какая вероятность была у класса, например, если граничное значение равно 0, то значение 0.1 и 0.9 будут одинаково расценены как класс 1.

a - Continuous Dice учитывает низкие вероятности при расчете ошибки, b - все ошибки для Dice - равноценны [8]

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

где gi - значение бинарной маски в каждом i пикселе, pi - вероятностное значение результирующей маски нейронной сети

Исследование подхода №2

Transformation-consistent Self-ensembling Model for Semi-supervised Medical Image Segmentation

Не менее интересный подход – согласованная с преобразованием самоорганизующаяся модель для обучения с частичным привлечением учителя. Идею можно передать следующим примером – если мы подадим на вход нейронной сети повернутую на 90 градусов картинку, то получим тот же результат, если мы сначала повернем изображение на 90 градусов, а потом уже подадим в нейронную сеть. Таким образом, кроме поворота могут быть и другие преобразования (a)[5].

Однако важно понимать, что нейронные сети – нелинейные алгоритмы, поэтому одинаковые маски на выходе мы не получим (b)[5]. Эту идею сформулировать как функцию потерь.На основе этой идеи был создан алгоритм TCSM (transformation consistent self-ensembling model). Есть сеть “студент” и её копия ”учитель”, которая должна предсказывать маски. В сеть-ученик передается оригинальное изображение, в сеть-учитель – измененное, потом с помощью тех же самых преобразований меняем выход сети-ученик. Результат должен быть одинаковым. Так как сеть-учитель выступает в качестве среднего сглаживающего фильтра состояний модели-студента, то это позволяет использовать неразмеченные данные без потери консистентности предсказаний моделей (учитель, ученик) в процессе обучения. И так для всех исходных изображений обучаем таким пайплайном сети, используя соответственно Unlabeled loss. Для изображений с аннотациями – просто сравниваем выход сеть-учитель с целевой маской и используем для расчета ошибки labeled loss.

Результаты

Полученные модели мы оценили по метрикам Dice и объемный Dice (VolDice), который используется для оценки всего исследования как целого 3D объекта. Метрики были рассчитаны для каждого класса, где 0 — норма (отсутствие патологии), 1 — матовое стекло.

Как работают искусственный интеллект, машинное и глубокое обучение

Фото: Frank Augstein / AP

Об авторе: Андрей Беляев, технический директор (CTO) исследовательской компании Neurodata Lab.

Умные дома, самоуправляемые автомобили, роботы-помощники… Нас окружают инновационные технологии, в основе которых лежат алгоритмы, по своей специфике напоминающие работу человеческого мозга. Их называют по-разному: алгоритмы с использованием машинного обучения, глубокого обучения, а иногда и вовсе искусственный интеллект (ИИ).

В чем разница между этими названиями?

Все задачи, которые может решать человек или компьютер, можно условно разделить на две категории: рутинные и нерутинные.

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

Искусственным интеллектом сейчас принято называть все, что способно решать нерутинные задачи на уровне, близком к человеческому, а иногда и лучше. Такие задачи окружают нас везде. Камеры над дорогой вычисляют скорость автомобиля, распознают его знак и высылают штраф, а системы безопасности в метро и аэропортах находят преступников в толпе. Все это сегодня принято считать искусственным интеллектом, хотя в действительности алгоритмы, лежащие в основе каждой такой технологии, уникальны. И только некоторые используют машинное обучение.

Как работают искусственный интеллект, машинное и глубокое обучение

Получается, что машинное обучение — это обучение ИИ

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

Машинное обучение — это подход, при котором алгоритм «учится» решать задачу. Один из самых простых примеров алгоритма, использующего машинное обучение, это классификация фотографий на те, где изображены кошки и те, где есть собаки:

Как работают искусственный интеллект, машинное и глубокое обучение

Допустим, есть несколько тысяч фотографий кошек и несколько тысяч — собак. Эти данные можно загрузить в алгоритм и заставить его «учиться» отличать кошек от собак, «ругая» за ошибки в классификации и «поощряя» за правильные ответы. В зависимости от количества и качества вводных данных, а также от сложности используемого алгоритма после некоторого количества итераций с «наказанием» и «поощрением», получается обученный алгоритм, которой с разным качеством умеет отличать кошек и собак.

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

Такие алгоритмы можно научить решать задачи любой сложности?

В теории — да. Но на практике мы сталкиваемся с большим количеством проблем, начиная от недостаточного количества данных для обучения, заканчивая невозможностью интерпретировать действия человека при решении такой же задачи. Получается, что невозможно построить алгоритм, который эти действия бы совершал. Хороший пример — автопилотируемый автомобиль. Научить машину держать полосу, входить в повороты и автоматически перестраивать маршрут, если на дороге ремонт, сравнительно несложно, потому что есть понимание, как вел бы себя человек (а значит, как должна вести себя машина) в таких ситуациях.

Фото:Михаил Почуев / ТАСС

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

А что насчет глубокого обучения? Чем оно отличается от машинного?

Как машинное обучение является подвидом искусственного интеллекта, так и глубокое обучение является подвидом машинного (см. картинку в начале статьи). В глубоком обучении используются те же подходы: алгоритму дают много данных и «ругают» его за ошибки. Разница здесь в том, что сами алгоритмы глубокого обучения устроены гораздо сложнее и часто используют более серьезные математические модели. Сейчас под алгоритмами глубокого обучения практически всегда подразумевают нейронные сети.

Нейронные сети? Как те, что в мозгу у человека?

Такое сравнение действительно часто используется. Нейронная сеть — это последовательность слоев, каждый из которых, в свою очередь, состоит из нейронов, и каждый выполняет свою роль. Есть нейроны (или структуры нейронов), которые учатся выделять важные элементы на изображениях, например шерсть у кошки или собаки; есть те, которые учатся делать выводы, исходя из выделенных элементов — например, если у животного длинные лапы, то, скорее всего, это собака. Эти нейроны объединяются в группы (слои), а они превращаются в единую искусственную нейронную сеть.

Фото:Neuralink

И все же можно как-то сравнить процессы внутри нейросети с деятельностью мозга?

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

Если говорить упрощенно, смысл этой сверточной нейронной сети в том, чтобы оценивать каждый элемент картинки (пиксель) не отдельно, а в группе с несколькими соседними, благодаря чему можно находить как базовые фигуры (линии, углы, и т.д.), так и объекты целиком. Примерно такой же процесс происходит и в человеческом мозге при обработке визуальной информации. После снятия всех возможных визуальных признаков в нейросети, как и в человеческом мозге, происходит анализ этих признаков, а затем принимается решение: видим мы, допустим, кошку или собаку.

Фото:Michael Dziedzic / Unsplash

А как происходит процесс обучения?

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

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

Что значит «поощрять» и «штрафовать» нейросеть?

С математической точки зрения нейросеть — это функция с большим количеством параметров. Штрафование этой функции за неверное определения лица — это когда мы, упрощенно говоря, корректируем работу функции таким образом, чтобы в будущем она меньше ошибалась. Соответственно, поощрение нейросети — это когда мы ее просто не штрафуем.

График зависимости между длительностью обучения (горизонтальная ось) и конечной ошибкой (вертикальная ось). Чем дольше мы учим нейросеть, тем меньше ошибка.

График зависимости между длительностью обучения (горизонтальная ось) и конечной ошибкой (вертикальная ось). Чем дольше мы учим нейросеть, тем меньше ошибка.

Во всех примерах вы рассказываете про конкретные задачи. А можно ли нейросеть научить думать, как человек?

Это уже скорее философский вопрос. Мыслительный процесс напрямую связан с наличием сознания. Нейронная сеть, как и любой другой алгоритм машинного обучения, по своей сути является лишь математической функцией, и умеет решать лишь одну конкретную задачу. Нейросеть, которую учили отличать кошек и собак, не сможет отличить медведя от слона, ведь она даже не знала, что такие существуют. Процессы же анализа данных, которые происходят в голове у человека, намного сложнее чем те, что происходят в нейросети, так что даже при наличии данных, сопоставимых по размеру с массивом информации, которую за жизнь получает человек, сегодня обучить нейросеть думать, как человек, невозможно.

Подписывайтесь и читайте нас в Яндекс.Дзене — технологии, инновации, эко-номика, образование и шеринг в одном канале.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *