10 фактов о том, как работает мозг во время обучения
«Благодаря повторению запускается процесс консолидации — переход от медленной, сознательной обработки информации к быстрой и бессознательной автоматизации.
Когда мы изучаем новую информацию, она попадает в краткосрочную память. Согласно кривой забывания Германа Эббингауза, около 70% этой информации вы вскоре забудете. Чтобы не растерять знания, нужно повторение — так вы переводите информацию в долгосрочную память».
Мария Панкова
Руководитель учебно-методического отдела Нетологии
Тезис №2: сон необходим для эффективного обучения
Пока мы спим, мы продолжаем учиться. Французский нейробиолог Станислас Деан в своей книге «Как мы учимся» отмечал, что после сна когнитивная деятельность улучшается, и в подтверждение привел ряд исследований. В 1994 году израильские ученые провели эксперимент, который это подтвердил. «В течение дня добровольцы учились обнаруживать полосу в определенной точке сетчатки. Эффективность выполнения задачи медленно увеличивалась, пока не достигала плато. Однако стоило ученым отправить испытуемых спать, как их ждал сюрприз: когда те просыпались на следующее утро, их производительность резко повышалась и оставалась на этом уровне на протяжении следующих нескольких дней», — описывал Деан. Когда исследователи будили участников во время стадии быстрого сна, никаких улучшений не наблюдалось. Из этого следует, что глубокий сон способствует консолидации — переходу от медленной, сознательной обработки информации к быстрой и бессознательной автоматизации. Наоборот, быстрый сон содействует закреплению перцептивных и моторных навыков.
Итак, во время сна полученная за день информация систематизируется и закрепляется в памяти. После сна когнитивная деятельность улучшается.
Тезис №3: память улучшается благодаря физическим нагрузкам
Исследователи Университета Британской Колумбии выяснили, что регулярные физические нагрузки (в частности, аэробные) увеличивают объем гиппокампа. Этот отдел мозга отвечает за запоминание текстовой информации. В нем обрабатывается новая информация и переходит из краткосрочной в долгосрочную память. В исследовании участвовали 120 пожилых людей. Упражнения увеличивали объем гиппокампа на 2%, эффективно обращая вспять возрастную потерю объема на 1–2 года.
Тезис №4: после концентрации должно следовать расслабление и рассеивание внимания
«Мозг в принципе не может долго работать в интенсивном режиме. У него есть некоторый запас энергии, который называют „когнитивным ресурсом“. Когда этот запас заканчивается, то его нужно восполнить. Иногда можно взять его „в долг“ у будущего, если нам предстоит решить срочную задачу, но тогда и период восстановления потребуется более длительный.
Что касается второй части тезиса, то мозг действительно переупорядочивает нейронные связи, когда они не задействованы в активном процессе. Поэтому, когда мы перестали думать над проблемой и сосредоточились на другом, к нам может внезапно прийти решение. По той же причине какая-то идея может прийти к нам во сне, когда мозг имеет намного больше возможностей привести в порядок нейронные связи».
Егор Апрельский
СТО Лаборатории Знаний
Тезис №5: запоминать помогает вербальное выражение информации
«Когда мы проговариваем материал, включаются участки мозга, ответственные за устную речь. Наша информация обрастает новыми связями, которых раньше не было. А чем больше связей образуется при запоминании, тем лучше усвоится информация и тем проще нам будет ее потом вспомнить.
По этой же причине помогает получение одной и той же информации в нескольких разных формах. Например, совмещение изображений и звукового ряда работает лучше, чем каждый из этих каналов по отдельности».
Егор Апрельский
СТО Лаборатории Знаний
Тезис №6: гормон дофамин помогает получать от удовольствие от познания
Гормон дофамин — один из важнейших нейромедиаторов. Он вырабатывается во время процессов, от которых человек получает удовольствие, — именно поэтому это вещество используется мозгом для оценки и закрепления важных для дальнейшей жизни действий. Благодаря дофамину возникает то самое ощущение радостного предвкушения, которое может быть связано и с получением новых интересных знаний. То есть человек хочет учиться, когда он знает, что обучение принесет ему радость или даже эйфорию благодаря познанию.
Тезис №7: учиться можно в любом возрасте
«Мозг обладает нейропластичностью. На самом деле, возрастных ограничений почти нет (сложнее учиться после 60: нейропластичность ухудшается), до 45 лет отличная запоминаемость.
Однако вам может показаться, что в юношестве учиться было проще, да и вся жизнь была ярче и насыщеннее. Это связано с эффектом „пика воспоминаний“, который приходится на возраст от 15 до 25 лет. В это время у человека происходит больше нового, чем, допустим, в 30–40 лет, и эти события ярко эмоционально окрашены. Благодаря этой эмоциональной окраске в организме человека происходит сильный выброс нейромедиаторов. Таким образом, гормональный фон организма обеспечивает более глубокую степень запоминания именно в этом возрасте. Но это не означает, что, эмоционально „зачерствев“, вы стали хуже запоминать информацию. Помните об этом».
Мария Панкова
Руководитель учебно-методического отдела Нетологии
Тезис №8: мозг в состоянии стресса игнорирует информацию, не связанную с ситуацией
«При стрессе и депрессии уменьшается в размерах префронтальная часть коры головного мозга (область мозга, отвечающая за контроль над эмоциями, а также за принятие решений и рабочую память). Тогда как мозжечковая миндалина, также отвечающая за эмоциональные реакции, становится гиперактивной. Отсюда мы можем сделать вывод о том, что в стрессовой ситуации мы больше подвержены эмоционированию, но не погружению в учебу или рабочие задачи.
Также важно понимать, что во время стресса мозг игнорирует информацию, которая не связана со стрессовой ситуацией. То есть эти знания не будут вторично обработаны и, соответственно, не попадут в долгосрочную память. Поэтому не ругайте себя за эмоции и нежелание учиться во время стресса. Это не лень, а защитная реакция вашего мозга».
Мария Панкова
Руководитель учебно-методического отдела Нетологии
Тезис №9: любопытство — двигатель развития
«Наш мозг — это сложная машина для предсказаний. Он все время пытается спрогнозировать состояние окружающего мира и за правильные прогнозы получает вознаграждение. А когда обнаруживается расхождение, мозг корректирует свои предсказательные алгоритмы.
Поэтому наше любопытство направлено не на любую информацию вообще, а только на ту, которая улучшает нашу способность предсказывать значимые для нас аспекты окружающего мира.
Кроме того, у разных людей внутренние механизмы вознаграждения устроены по-разному, и это влияет на то, какие аспекты реальности являются для нас значимыми. Поэтому у разных людей круг интересов может сильно отличаться».
Егор Апрельский
СТО Лаборатории Знаний
Тезис №10: мозг изобретателен
«Мозг избирателен. Он придирчиво выбирает, на что ему тратить энергию, исходя из того, какое вознаграждение он может получить. Он, как эффективный инвестор, старается получить максимальную отдачу от минимальных вложений. Если он увидит возможность выгоды, высокого вознаграждения в будущем, он не пожалеет энергии для усвоения новой информации».
Что такое машинное обучение?
Машинное обучение – это наука о разработке алгоритмов и статистических моделей, которые компьютерные системы используют для выполнения задач без явных инструкций, полагаясь вместо этого на шаблоны и логические выводы. Компьютерные системы используют алгоритмы машинного обучения для обработки больших объемов статистических данных и выявления шаблонов данных. Таким образом, системы могут более точно прогнозировать результаты на основе заданного набора входных данных. Например, специалисты по работе с данными могут обучить медицинское приложение диагностировать рак по рентгеновским изображениям, сохраняя миллионы отсканированных изображений и соответствующие диагнозы.
Почему машинное обучение так важно?
Машинное обучение помогает компаниям стимулировать рост, открывать новые источники дохода и решать сложные проблемы. Данные являются важной движущей силой принятия бизнес-решений, но традиционно компании использовали данные из различных источников, таких как отзывы клиентов, сотрудников и финансов. Исследования в области машинного обучения автоматизируют и оптимизируют этот процесс. Используя ПО, которое анализирует очень большие объемы данных на высокой скорости, компании могут быстрее достигать результатов.
Где используется машинное обучение?
Ключевые области использования машинного обучения см. ниже.
Производство
Машинное обучение может поддерживать профилактическое обслуживание, контроль качества и инновационные исследования в производственном секторе. Технология машинного обучения также помогает компаниям улучшать логистические решения, включая активы, цепочки поставок и управление запасами. Например, крупномасштабная компания-производитель 3M использует AWS Machine Learning для инновации шлифовальной бумаги. Алгоритмы машинного обучения позволяют исследователям 3M анализировать, как незначительные изменения формы, размера и ориентации улучшают абразивность и долговечность. Эти предложения влияют на производственный процесс.
Здравоохранение и медико‑биологические разработки
Распространение носимых датчиков и устройств породило значительный объем данных о здоровье. Программы машинного обучения могут анализировать эту информацию и помогать врачам в диагностике и лечении в режиме реального времени. Исследователи машинного обучения разрабатывают решения, которые обнаруживают раковые опухоли и диагностируют глазные заболевания, что значительно влияет на показатели здоровья человека. Например, компания Cambia Health Solutions использовала машинное обучение AWS для поддержки стартапов в области здравоохранения с целью автоматизации и персонализации лечения беременных женщин.
Финансовые услуги
Проекты финансового машинного обучения улучшают аналитику рисков и регулирование. Технология машинного обучения может позволить инвесторам выявлять новые возможности путем анализа движений фондового рынка, оценки хедж-фондов или калибровки финансовых портфелей. Кроме того, это может помочь выявить кредитных клиентов с высоким уровнем риска и смягчить признаки мошенничества. Лидирующий поставщик финансового ПО Intuit использует подсистему AWS Machine Learning, Amazon Textract,чтобы обеспечить более персонализированное управление финансами и помочь конечным пользователям улучшить финансовое положение.
Розничная торговля
В розничной торговле машинное обучение может использоваться для улучшения обслуживания клиентов, управления запасами, дополнительных продаж и многоканального маркетинга. Например, Amazon Fulfillment (AFT) удалось сократить расходы на инфраструктуру на 40 %, используя модель машинного обучения для выявления неуместных запасов. Это позволяет выполнять обещание Amazon в отношении предоставления клиентам простого доступа к товару и своевременной доставки такого товара, несмотря на обработку миллионов поставок ежегодно.
Мультимедиа и развлечения
Компании в индустрии развлечений обращаются к машинному обучению, чтобы лучше понимать целевую аудиторию и предоставлять иммерсивный персонализированный контент по запросу. Алгоритмы машинного обучения используются для разработки трейлеров и другой рекламы, предоставления потребителям персонализированных рекомендаций по контенту и даже оптимизации производства.
Например, Disney использует глубокое обучение AWS для архивирования медиатеки. Инструменты машинного обучения AWS автоматически маркируют, описывают и сортируют медиаконтент, позволяя писателям и аниматорам Disney быстро искать персонажей Disney и знакомиться с ними.
Как работает машинное обучение?
Центральной идеей машинного обучения является существующая математическая связь между любой комбинацией входных и выходных данных. Модель машинного обучения не имеет сведений об этой взаимосвязи заранее, но может сгенерировать их, если будет предоставлено достаточное количество наборов данных. Это означает, что каждый алгоритм машинного обучения строится вокруг модифицируемой математической функции. Описание основополагающего принципа см. ниже.
- Мы «обучаем» алгоритм, давая ему следующие комбинации ввода-вывода [input / output (i,o)]: (2,10), (5,19) и (9,31).
- Алгоритм вычисляет соотношение между входом и выходом следующим образом: o = 3 × i + 4.
- Затем мы задаем ввод 7 и просим предсказать результат. Алгоритм может автоматически определить выход как 25.
Хотя это базовое понимание, машинное обучение фокусируется на том принципе, что все сложные точки данных могут быть математически связаны компьютерными системами, если у них достаточно данных и вычислительной мощности для обработки этих данных. Следовательно, точность выходных данных прямо пропорциональна величине входных данных.
Какие типы алгоритмов машинного обучения существуют?
Алгоритмы можно разделить на четыре стиля обучения в зависимости от ожидаемого результата и типа ввода.
- Машинное обучение с учителем
- Машинное обучение без учителя
- Машинное обучение с частичным привлечением учителя
- Машинное обучение с подкреплением
1. Машинное обучение с учителем
Специалисты по работе с данными предоставляют алгоритмам помеченные и определенные обучающие данные для оценки корреляций. Демонстрационные данные определяют как входные данные, так и выходные данные алгоритма. Например, изображения рукописных цифр аннотируются, чтобы указать, какому числу они соответствуют. Система обучения с учителем может распознавать кластеры пикселей и фигур, связанных с каждым числом, при наличии достаточного количества примеров. Со временем система распознает написанные от руки цифры, стабильно различая числа 9 и 4 или 6 и 8.
Сильные стороны машинного обучения с учителем – простота и легкость структуры. Такая система полезна при прогнозировании возможного ограниченного набора результатов, разделении данных на категории или объединении результатов двух других алгоритмов машинного обучения. Однако маркировка миллионов немаркированных наборов данных является сложной задачей. Давайте рассмотрим это подробнее.
Что такое маркировка данных?
Маркировка данных – это процесс категоризации входных данных с соответствующими им определенными выходными значениями. Помеченные обучающие данные необходимы для обучения с учителем. Например, миллионы изображений яблок и бананов должны быть помечены словами «яблоко» или «банан». Затем приложения машинного обучения могли бы использовать эти обучающие данные, чтобы угадывать название фрукта по изображению фрукта. Однако маркировка миллионов новых данных может быть трудоемкой и сложной задачей. Сервисы коллективной работы, такие как Amazon Mechanical Turk, могут в некоторой степени преодолеть это ограничение алгоритмов обучения с учителем. Эти сервисы обеспечивают доступ к большому количеству доступным рабочим ресурсам по всему миру, что упрощает сбор данных.
2. Машинное обучение без учителя
Алгоритмы обучения без учителя обучаются на неразмеченных данных. Такие алгоритмы просматривают новые данные, пытаясь установить значимые связи между входными и заранее определенными выходными данными. Они могут выявлять закономерности и классифицировать данные. Например, алгоритмы без учителя могут группировать новостные статьи с разных новостных веб-сайтов в общие категории, такие как спорт, криминал и т. д. Они могут использовать обработку естественного языка для понимания смысла и эмоций в статье. В розничной торговле обучение без учителя поможет найти закономерности в покупках клиентов и предоставить результаты анализа данных, такие как: покупатель, скорее всего, купит хлеб, если также купит масло.
Обучение без учителя полезно для распознавания образов, обнаружения аномалий и автоматического группирования данных по категориям. Поскольку обучающие данные не требуют маркировки, настройка проста. Эти алгоритмы также можно использовать для автоматической очистки и обработки данных для дальнейшего моделирования. Ограничение этого метода состоит в том, что он не может дать точных прогнозов. Кроме того, он не может самостоятельно выделять конкретные типы выходных данных.
3. Машинное обучение с частичным привлечением учителя
Как следует из названия, этот метод сочетает в себе обучение с учителем и без него. Этот метод основан на использовании небольшого количества размеченных данных и большого количества неразмеченных данных для обучения систем. Сначала размеченные данные используются для частичного обучения алгоритма машинного обучения. После этого частично обученный алгоритм сам размечает неразмеченные данные. Этот процесс называется псевдомаркировкой. Затем модель переобучается на результирующем наборе данных без явного программирования.
Преимущество этого метода в том, что вам не требуются большие объемы размеченных данных. Это удобно при работе с такими данными, как длинные документы, чтение и маркировка которых отнимает слишком много времени у человека.
4. Обучение с подкреплением
Обучение с подкреплением – это метод, в котором значения вознаграждения привязаны к различным шагам, которые должен пройти алгоритм. Таким образом, цель модели – накопить как можно больше призовых баллов и в конечном итоге достичь конечной цели. Большая часть практического применения обучения с подкреплением за последнее десятилетие была связана с видеоиграми. Передовые алгоритмы обучения с подкреплением добились впечатляющих результатов в классических и современных играх, часто значительно превосходя ручные аналоги.
Хотя этот метод лучше всего работает в неопределенных и сложных средах данных, он редко применяется в бизнес-контексте. Это неэффективно для четко определенных задач, и предвзятость разработчиков может повлиять на результаты. Поскольку специалист по работе с данными разрабатывает награды, они могут влиять на результаты.
Являются ли модели машинного обучения детерминированными?
Если выход системы предсказуем, то говорят, что она детерминирована. Большинство программных приложений предсказуемо реагируют на действия пользователя, поэтому можно сказать: что «если пользователь делает то-то, он получает то-то». Однако алгоритмы машинного обучения учатся на основе наблюдения и опыта. Поэтому они носят вероятностный характер. Утверждение теперь меняется на следующее: «если пользователь делает это, есть вероятность X %, что произойдет это».
В машинном обучении детерминизм – это стратегия, используемая при применении методов обучения, описанных выше. Любой из методов обучения (с учителем, без учителя и т. д.) можно сделать детерминированным в зависимости от желаемых бизнес-результатов. Вопрос исследования, поиск данных, структура и решения по хранению определяют, будет ли принята детерминированная или недетерминированная стратегия.
Детерминированный и вероятностный подходы
Детерминированный подход фокусируется на точности и объеме собранных данных, поэтому эффективность важнее неопределенности. С другой стороны, недетерминированный (или вероятностный) процесс предназначен для управления фактором случайности. Встроенные инструменты интегрированы в алгоритмы машинного обучения, чтобы помочь количественно определить, идентифицировать и измерить неопределенность во время обучения и наблюдения.
Что такое глубокое обучение?
Глубокое обучение – это метод машинного обучения, который моделируется мозгом человека. Алгоритмы глубокого обучения анализируют данные с логической структурой, аналогичной той, которую используют люди. Глубокое обучение использует интеллектуальные системы, называемые искусственными нейронными сетями, для обработки информации слоями. Данные проходят от входного слоя через несколько «глубоких» скрытых слоев нейронной сети, прежде чем попасть на выходной слой. Дополнительные скрытые слои поддерживают обучение, которое намного эффективнее, чем стандартные модели машинного обучения.
Что такое искусственная нейронная сеть?
Слои глубокого обучения представляют собой узлы искусственной нейронной сети (ИНС), которые работают как нейроны человеческого мозга. Узлы могут представлять собой комбинацию аппаратного и программного обеспечения. Каждый уровень в алгоритме глубокого обучения состоит из узлов ИНС. Каждый узел или искусственный нейрон соединяется с другим и имеет связанный с ним номер значения и пороговый номер. Узел отправляет номер своего значения в качестве входных данных узлу следующего слоя при активации. Он активируется, только если его выход превышает указанное пороговое значение. В противном случае никакие данные не передаются.
Что такое машинное зрение?
Компьютерное зрение – это реальное применение глубокого обучения. Точно так же, как искусственный интеллект позволяет компьютерам думать, компьютерное зрение позволяет им видеть, наблюдать и реагировать. Самоуправляемые автомобили используют компьютерное зрение, чтобы «читать» дорожные знаки. Камера автомобиля делает снимок знака. Это фото отправляется алгоритму глубокого обучения в машине. Первый скрытый слой обнаруживает края, следующий различает цвета, а третий слой идентифицирует детали алфавита на знаке. Алгоритм предсказывает, что на знаке написано СТОП, и автомобиль ответит срабатыванием тормозного механизма.
Машинное обучение и глубокое обучение – это одно и то же?
Глубокое обучение – это часть машинного обучения. Алгоритмы глубокого обучения можно рассматривать как непростую и математически сложную эволюцию алгоритмов машинного обучения.
Машинное обучение и искусственный интеллект – это одно и то же?
Короткий ответ: нет. Хотя термины «машинное обучение» и «искусственный интеллект» (ИИ) могут использоваться взаимозаменяемо, это не одно и то же. Искусственный интеллект – это общий термин для различных стратегий и методов, используемых для того, чтобы сделать машины более похожими на людей. ИИ включает в себя все, от умных помощников, таких как Alexa, до роботов-пылесосов и беспилотных автомобилей. Машинное обучение – одна из многих других ветвей искусственного интеллекта. Хотя машинное обучение – это ИИ, все действия ИИ нельзя назвать машинным обучением.
Машинное обучение и наука о данных – это одно и то же?
Нет, машинное обучение и наука о данных – это не одно и то же. Наука о данных – это область исследования, в которой используется научный подход для извлечения смысла и понимания из данных. Специалисты по работе с данными используют ряд инструментов для анализа данных, и машинное обучение является одним из таких инструментов. Специалисты по работе с данными понимают общую картину данных, таких как бизнес-модель, предметная область и сбор данных, в то время как машинное обучение — это вычислительный процесс, который работает только с необработанными данными.
Каковы преимущества и недостатки машинного обучения?
Мы предлагаем вашему вниманию возможности и ограничения машинного обучения.
Преимущества моделей машинного обучения:
- определение тенденций и закономерностей данных, которые может упустить человек;
- работа без вмешательства человека после настройки; например, машинное обучение в ПО для кибербезопасности может постоянно отслеживать и выявлять нарушения в сетевом трафике без участия администратора;
- результаты могут стать более точными с течением времени;
- обработка различных форматов данных в динамических, больших объемов и сложных сред данных.
Недостатки моделей машинного обучения:
- исходная подготовка является дорогостоящим и трудоемким процессом; трудоемкая реализация в отсутствии достаточного объема данных;
- ресурсоемкий процесс, требующий больших первоначальных инвестиций, если оборудование устанавливается собственными силами;
- без помощи специалиста может быть сложно правильно интерпретировать результаты и устранить неопределенность.
Как Amazon может содействовать машинному обучению?
AWS предоставляет машинное обучение в руки каждого разработчика, специалиста по данным и бизнес-пользователя. Сервисы Amazon Machine Learning предоставляют высокопроизводительную, экономически эффективную и масштабируемую инфраструктуру для удовлетворения потребностей бизнеса.
Работа только началась?
Овладейте машинным обучением с нашей помощью, используя учебные устройства: AWS DeepRacer, AWS DeepComposer и AWS DeepLens.
Архив данных уже существует?
Используйте маркировку данных Amazon SageMaker для встроенных рабочих процессов маркировки данных, поддерживающих видео, изображения и текст.
Системы машинного обучения уже имеются?
Используйте Amazon SageMaker Clarify для обнаружения смещений, а также Amazon SageMaker Debugger для мониторинга и оптимизации продуктивности.
Хотите внедрить глубокое обучение?
Используйте распределенное обучение Amazon SageMaker для автоматического обучения больших моделей глубокого обучения. Чтобы начать машинное обучение уже сегодня, зарегистрируйте бесплатный аккаунт!
Что такое машинное обучение и как оно работает
Единого определения для machine learning (машинного обучения) пока нет. Но большинство исследователей формулируют его примерно так: Машинное обучение — это наука о том, как заставить ИИ учиться и действовать как человек, а также сделать так, чтобы он сам постоянно улучшал свое обучение и способности на основе предоставленных нами данных о реальном мире.
Инженеры Google рассказывают, как устроено машинное обучение
Вот как определяют машинное обучение представители ведущих ИТ-компаний и исследовательских центров: Nvidia: «Это практика использования алгоритмов для анализа данных, изучения их и последующего определения или предсказания чего-либо». Университет Стэнфорда: «Это наука о том, как заставить компьютеры работать без явного программирования». McKinsey & Co: «Машинное обучение основано на алгоритмах, которые могут учиться на данных, не полагаясь на программирование на основе базовых правил». Вашингтонский университет: «Алгоритмы машинного обучения могут сами понять, как выполнять важные задачи, обобщая примеры, которые у них есть». Университет Карнеги Меллон: «Сфера машинного обучения пытается ответить на вопрос: «Как мы можем создавать компьютерные системы, которые автоматически улучшаются по мере накопления опыта и каковы фундаментальные законы, которые управляют всеми процессами обучения?»
История машинного обучения
- Первый компьютер с прототипом ИИ появился в 1946 году — в рамках ЭНИАК, сверхсекретного проекта армии США. Его можно было использовать для электронных вычислений и многих других задач;
- В 1950 году появился тест Алана Тьюринга для оценки интеллекта компьютера. С его помощью ученый предлагал определить, способен ли компьютер мыслить как человек;
- В 1958 году американский нейрофизиолог Фрэнк Розенблатт придумал Персептрон — первую искусственную нейронную сеть, а также первый нейрокомпьютер «Марк-1»;
- В 1959 году американский исследователь ИИ Марвин Минский создал SNARC — первую вычислительную машину на базе нейросети;
- В том же году его коллега Артур Самуэль изобрел первую программу по игре в шашки, которая обучалась самостоятельно. Он впервые ввел термин «машинное обучение», описав его как процесс, в результате которого машина показывает поведение, на которое не была изначально запрограммирована;
- В 1967 году был создан первый метрический алгоритм для классификации данных, который позволял ИИ использовать шаблоны для распознавания и обучения;
- В 1997 году программа Deep Blue впервые обыграла чемпиона мира по шахматам Гарри Каспарова;
- В 2006 году исследователь нейросетей Джеффри Хинтон ввел термин «глубокое обучение» (deep learning);
- В 2011 году была основана Google Brain — подразделение Google, которое занимается проектами в области ИИ;
- В 2012 году в рамках другого подразделения — Google X Lab — разработали нейросетевой алгоритм для распознавания котов на фото и видео. Тогда же Google запустила облачный сервис Google Prediction API для машинного обучения, который анализирует неструктурированные данные;
- В 2014 году Facebook (с 21 марта 2022 года соцсеть запрещена в России решением суда) разработала нейросеть DeepFace для распознавания лиц на фото и видео. Ее алгоритм работает с точностью 97%;
- В 2015 году Amazon запустила Amazon Machine Learning — платформу машинного обучения, несколько месяцев спустя аналогичная появилась и у Microsoft: Distributed Learning Machine Toolkit.
Как связаны машинное и глубокое обучение, ИИ и нейросети
Нейросети — один из видов машинного обучения.
Глубокое обучение — это один из видов архитектуры нейросетей.
Так выглядят взаимосвязи машинного обучения с другими видами обучения в рамках технологий ИИ
Глубокое обучение также включает в себя исследование и разработку алгоритмов для машинного обучения. В частности — обучения правильному представлению данных на нескольких уровнях абстракции. Системы глубокого обучения за последние десять лет добились особенных успехов в таких областях как обнаружение и распознавание объектов, преобразование текста в речь, поиск информации.
Какие задачи решает машинное обучение?
С помощью машинного обучения ИИ может анализировать данные, запоминать информацию, строить прогнозы, воспроизводить готовые модели и выбирать наиболее подходящий вариант из предложенных.
Особенно полезны такие системы там, где необходимо выполнять огромные объемы вычислений: например, банковский скоринг (расчет кредитного рейтинга), аналитика в области маркетинговых и статистических исследований, бизнес-планирование, демографические исследования, инвестиции, поиск фейковых новостей и мошеннических сайтов.
В Леруа Мерлен используют Big Data и Machine Learning, чтобы находить остатки товара на складах.
В маркетинге и электронной коммерции машинное обучение помогает настроить сервисы и приложения так, чтобы они выдавали персональные рекомендации.
Стриминговый сервис Spotify с помощью машинного обучения составляет для каждого пользователя персональные подборки треков на основе того, какую музыку он слушает.
Сегодня ключевые исследования сфокусированы на разработке машинного обучения с эффективным использованием данных — то есть систем глубокого обучения, которые могут обучаться более эффективно, с той же производительностью, за меньшее время и с меньшими объемами данных. Такие системы востребованы в персонализированном здравоохранении, обучении роботов с подкреплением, анализе эмоций.
Китайский производитель «умных» пылесосов Ecovacs Robotics обучил свои пылесосы распознавать носки, провода и другие посторонние предметы на полу с помощью множества фотографий и машинного обучения.
«Умная» камера на базе микрокомпьютера Raspberry Pi 3B+ с помощью фреймворка TensorFlow Light научилась распознавать улыбку и делать снимок ровно в этот момент, а также — выполнять голосовые команды.
В сфере инвестиций алгоритмы на базе машинного обучения анализируют рынок, отслеживают новости и подбирают активы, которые выгоднее всего покупать именно сейчас. При этом с помощью предикативной аналитики система может предсказать, как будет меняться стоимость тех или иных акций за конкретный период и корректирует свои данные после каждого важного события в отрасли.
Согласно исследованию BarclayHedge, более 50% хедж-фондов используют ИИ и машинное обучение для принятия инвестиционных решений, а две трети — для генерации торговых идей и оптимизации портфелей.
Наконец, машинное обучение способствует настоящим прорывам в науке.
Нейросеть AlphaFold от DeepMind в 2020 году смогла расшифровать механизм сворачивания белка. Над этой задачей ученые-биологи бились больше 50 лет.
Процесс сворачивания белка, смоделированный при помощи ИИ
Как устроено машинное обучение
По словам Дмитрия Ветрова, процесс машинного обучения выглядит следующим образом.
Есть большое число однотипных задач, в которых известны условие и правильный ответ или один из возможных ответов. Например, машинный перевод, где условие — фраза на одном языке, а правильный ответ — ее перевод на другой язык.
Модель машинного обучения, например, глубинная нейронная сеть, работает по принципу «черного ящика», который принимает на вход условие задачи, а на выходе выдает произвольный ответ. Например, какой-либо текст на втором языке.
У «черного ящика» есть дополнительные параметры, которые влияют на то, как будет обрабатываться входной сигнал. Процесс обучения нейросети заключается в поиске таких значений параметров, при которых она будет выдавать ответ, максимально близкий к правильному. Когда мы настроим параметры нужным образом, нейросеть сможет правильно (или максимально близко к этому) решать и другие задачи того же типа — даже если никогда не знала ответов к ним.
- Данные — примеры решений и всё, что может помочь в процессе обучения: статистика, примеры текстов, расчеты, показатели, исторические события. Данные собирают годами и объединяют в огромные массивы — датасеты, которые есть у всех ИТ-корпораций. Примером сбора является капча, которая просит вас выбрать все фото с автомобилями и запоминает правильные ответы;
- Признаки — они же свойства или характеристики. Это то, на что должна обратить внимание машина в процессе обучения. Например, цена акций, изображение животного, частотность слов или пол человека. Чем меньше признаков и чем четче они обозначены и оформлены, тем проще обучаться. Однако для сложных задач современным моделям приходится учитывать десятки миллионов параметров, определяющих, как входы преобразуются в выходы;
- Алгоритмы — это способ решения задачи. Для одной и той же задачи их может быть множество и важно выбрать самый точный и эффективный.
Основные виды машинного обучения
1. Классическое обучение
Это простейшие алгоритмы, которые являются прямыми наследниками вычислительных машин 1950-х годов. Они изначально решали формальные задачи — такие, как поиск закономерностей в расчетах и вычисление траектории объектов. Сегодня алгоритмы на базе классического обучения — самые распространенные. Именно они формируют блок рекомендаций на многих платформах.
Так выглядит блок рекомендаций в YouTube
Но классическое обучение тоже бывает разным:
Обучение с учителем — когда у машины есть некий учитель, который знает, какой ответ правильный. Это значит, что исходные данные уже размечены (отсортированы) нужным образом, и машине остается лишь определить объект с нужным признаком или вычислить результат.
Такие модели используют в спам-фильтрах, распознавании языков и рукописного текста, выявлении мошеннических операций, расчете финансовых показателей, скоринге при выдаче кредита. В медицинской диагностике классификация помогает выявлять аномалии — то есть возможные признаки заболеваний на снимках пациентов.
Обучение без учителя — когда машина сама должна найти среди хаотичных данных верное решение и отсортировать объекты по неизвестным признакам. Например, определить, где на фото собака.
Эта модель возникла в 1990-х годах и на практике используется гораздо реже. Ее применяют для данных, которые просто невозможно разметить из-за их колоссального объема. Такие алгоритмы применяют для риск-менеджмента, сжатия изображений, объединения близких точек на карте, сегментации рынка, прогноза акций и распродаж в ретейле, мерчендайзинга. По такому принципу работает алгоритм iPhoto, который находит на фотографиях лица (не зная, чьи они) и объединяет их в альбомы.
2. Обучение с подкреплением
Это более сложный вид обучения, где ИИ нужно не просто анализировать данные, а действовать самостоятельно в реальной среде — будь то улица, дом или видеоигра. Задача робота — свести ошибки к минимуму, за что он получает возможность продолжать работу без препятствий и сбоев.
Нейросеть играет в Mario
Обучение с подкреплением инженеры используют для беспилотников, роботов-пылесосов, торговли на фондовом рынке, управления ресурсами компании. Именно так алгоритму AlphaGo удалось обыграть чемпиона по игре Го: просчитать все возможные комбинации, как в шахматах, здесь было невозможно.
Как создавался AlphaGo от DeepMind
3. Ансамбли
Это группы алгоритмов, которые используют сразу несколько методов машинного обучения и исправляют ошибки друг друга. Их получают тремя способами:
- Стекинг — когда разные алгоритмы обучают по отдельности, а потом передают их результаты на вход последнему, который и принимает решение;
- Беггинг — когда один алгоритм многократно обучают на случайных выборках, а потом усредняют ответы;
- Бустинг — когда алгоритмы обучают последовательно, при этом каждый обращает особое внимание на ошибки предыдущего.
Ансамбли работают в поисковых системах, компьютерном зрении, распознавании лиц и других объектов.
Как работает алгоритм «Яндекса» CatBoost
4. Нейросети и глубокое обучение
Самый сложный уровень обучения ИИ. Нейросети моделируют работу человеческого мозга, который состоит из нейронов, постоянно формирующих между собой новые связи. Очень условно можно определить их как сеть со множеством входов и одним выходом. Нейроны образуют слои, через которые последовательно проходит сигнал. Все это соединено нейронными связями — каналами, по которым передаются данные. У каждого канала свой «вес» — параметр, который влияет на данные, которые он передает.
ИИ собирает данные со всех входов, оценивая их вес по заданным параметрами, затем выполняет нужное действие и выдает результат. Сначала он получается случайным, но затем через множество циклов становится все более точным. Хорошо обученная нейросеть работает, как обычный алгоритм или точнее.
Настоящим прорывом в этой области стало глубокое обучение, которое обучает нейросети на нескольких уровнях абстракций.
Как устроена нейросеть
Здесь используют две главных архитектуры:
- Сверточные нейросети первыми научились распознавать неразмеченные изображения — самые сложные объекты для ИИ. Для этого они разбивают их на блоки, определяют в каждом доминирующие линии и сравнивают с другими изображениями нужного объекта;
- Рекуррентные нейросети отвечают за распознавание текста и речи. Они выявляют в них последовательности и связывают каждую единицу — букву или звук — с остальными.
Как работает глубокое обучение в беспилотниках
Нейросети с глубоким обучением требуют огромных массивов данных и технических ресурсов. Именно они лежат в основе машинного перевода, чат-ботов и голосовых помощников, создают музыку и дипфейки, обрабатывают фото и видео.
Как обучается нейросеть
Проблемы машинного обучения
- Для того чтобы эффективно обучать нейросети и любые сложные алгоритмы, нужны огромные массивы данных и технические ресурсы: серверы, специальные помещения для них, высокоскоростной интернет без сбоев, много электроэнергии. На получение нужных данных уходят годы работы и миллионы долларов. Такие затраты может позволить себе только крупная ИТ-корпорация. Открытых датасетов совсем не много, некоторые можно купить, но стоят они очень дорого;
- С ростом мощностей для сбора и обработки датасетов растут и вредные выбросы, которые производят крупнейшие датацентры;
- Данные нужно не только собрать, но и разметить — так, чтобы машина точно определила, где какой объект и какие у него признаки. Это касается числовых данных, текстов, изображений. Опять же, чтобы сделать это вручную, нужны миллионные вложения. Например, у «Яндекса» есть «Яндекс.Толока» — сервис, где неразмеченные данные вручную обрабатывают миллионы фрилансеров. Такое тоже может себе позволить далеко не каждый разработчик;
- Даже если данных много и они регулярно обновляются, в процессе обучения может выясниться, что алгоритм не работает. Проблема может быть и в данных, и в самом подходе: когда машина успешно решила задачу с одними данными, но не в состоянии масштабировать решение с новыми условиями;
- Несмотря на все прорывы в глубоком обучении нейросетей, ИИ пока что не может создавать что-то абсолютно новое, выходить за рамки предложенных условий и превзойти заложенные в него способности. Другими словами, он пока что не в состоянии превзойти человека.
Перспективы машинного обучения: не начнет ли ИИ думать за нас?
Вопрос о том, не сделает ли машинное обучение ИИ умнее человека, изначально не совсем корректный. Дело в том, что в природе нет универсальной иерархии в плане интеллекта. Мы по умолчанию считаем себя умнее остальных существ, но, к примеру, белка способна запоминать местонахождения тысячи тайников с запасами, что не под силу даже очень умному человеку. А у осьминогов каждое щупальце способно мыслить и действовать самостоятельно.
Так же и с ИИ: он уже превосходит нас во всем, что касается сложных вычислений, но по-прежнему не способен сам ставить себе новые задачи и решать их, подбирая нужные данные и условия. Это ограничение в последние годы пытаются преодолеть в рамках сильного ИИ, но пока безуспешно. Надежду на решение этой проблемы внушают квантовые компьютеры, которые выходят за пределы обычных вычислений.
Зато мы в ближайшем будущем сможем заметно расширить свои возможности с помощью ИИ, передавая ему рутинные и затратные операции, общаясь и управляя техникой при помощи нейроинтерфейсов.
Что еще почитать про машинное обучение
- Статья о машинном обучении Педро Домингоса, почетного профессора компьютерных наук и инженерии Вашингтонского университета (англ.)
- Видеолекции о машинном обучении от профессора канадского Университета МакГилла (англ.).
- Статья в AI Magazine о вызовах и возможностях машинного обучения от ведущих исследователей (англ.)
- Исследователи и разработчики Facebook отвечают на самые актуальные вопросы о машинном обучении (англ.)
- Статья о перспективах и особенностях репрезентативного обучения (англ.)
- Цикл статей в рамках проекта Machine Learning for Humans (англ.)
- Статья о пяти самых актуальных алгоритмов с кластеризацией (способ сортировки данных в рамках классического обучения) (англ.)
- Лекции «Яндекса» о том, как работают рекомендательные сервисы.
- Хронология развития машинного обучения (англ.)
- Как выглядят разновидности нейросетей и чем они отличаются
Простыми словами: как работает машинное обучение
В последнее время все технологические компании твердят о машинном обучении. Мол, столько задач оно решает, которые раньше только люди и могли решить. Но как конкретно оно работает, никто не рассказывает. А кто-то даже для красного словца машинное обучение называет искусственным интеллектом.
Как обычно, никакой магии тут нет, все одни технологии. А раз технологии, то несложно все это объяснить человеческим языком, чем мы сейчас и займемся. Задачу мы будем решать самую настоящую. И алгоритм будем описывать настоящий, подпадающий под определение машинного обучения. Сложность этого алгоритма игрушечная — а вот выводы он позволяет сделать самые настоящие.
Задача: отличить осмысленный текст от белиберды
Текст, который пишут настоящие люди, выглядит так:
- Могу творить, могу и натворить!
- У меня два недостатка: плохая память и что-то еще.
- Никто не знает столько, сколько не знаю я.
- ОРПорыав аоырОрпаыор ОрОРАыдцуцзущгкгеуб ыватьыивдцулвдлоадузцщ
- Йцхяь длваополц ыадолцлопиолым бамдлотдламда
Для человека задача кажется тривиальной, ведь сразу видно, где чистое, а где зловредное, но вот формализовать разницу или, тем более, объяснить ее компьютеру — уже сложнее. Мы используем машинное обучение: сначала дадим алгоритму примеры, он на них «обучится», а потом будет сам правильно отвечать, где что.
Алгоритм
Наш алгоритм будет считать, как часто в нормальном тексте одна конкретная буква следует за другой конкретной буквой. И так для каждой пары букв. Например, для первой чистой фразы — «Могу творить, могу и натворить!» — распределение получится такое:
ат 1 | мо 2 | ри 2 |
во 2 | на 1 | тв 2 |
гу 2 | ог 2 | ть 2 |
ит 2 | ор 2 |
Что получилось: за буквой в следует буква о — два раза, — а за буквой а следует буква т — один раз. Для простоты мы не учитываем знаки препинания и пробелы.
На этом этапе мы понимаем, что для обучения нашей модели одной фразы мало: и сочетаний недостаточное количество, и разница между частотой появления разных сочетаний не так велика. Поэтому надо взять какой-то существенно больший объем данных. Например, давайте посчитаем, какие сочетания букв встречаются в первом томе «Войны и мира»:
то 8411 | на 6236 | на 6236 |
ст 6591 | не 5199 | оу 31 |
на 6236 | по 5174 | мб 2 |
оу 31 | ен 4211 | тж 1 |
Разумеется, это не вся таблица сочетаний, а лишь ее малая часть. Оказывается, вероятность встретить «то» в два раза выше, чем «ен». А чтобы за буквой т следовало ж — такое встречается лишь один раз, в слове «отжившим».
Отлично, «модель» русского языка у нас теперь есть, как же ее использовать? Чтобы определить, насколько вероятно исследуемая нами строка чистая или зловредная, посчитаем ее «правдоподобность». Мы будем брать каждую пару букв из этой строки, определять по «модели» ее частоту (по сути реалистичность сочетания букв) и перемножать эти числа:
F(мо) * F(ог) * F(гу) * F(тв) *… = 2131 * 2943 * 474 * 1344 *… = правдоподобность
Также в финальном значении правдоподобности следует учесть количество символов в исследуемой строке — ведь чем она была длиннее, тем больше чисел мы перемножили. Поэтому из произведения извлечем корень нужной степени (длина строки минус один).
Использование модели
Теперь мы можем делать выводы: чем больше полученное число — тем правдоподобнее исследуемая строка ложится в нашу модель. Стало быть, тем больше вероятность, что ее писал человек, то есть она чистая.
Если же исследуемая строка содержит подозрительно большое количество крайне редких сочетаний букв (например, ёё, тж, ъь и так далее), то, скорее всего, она искусственная — зловредная.
Для строчек выше правдоподобность получилась следующая:
- Могу творить, могу и натворить! — 1805 баллов
- У меня два недостатка: плохая память и что-то еще. — 1535 баллов
- Никто не знает столько, сколько не знаю я. — 2274 балла
- ОРПорыав аоырОрпаыор ОрОРАыдцуцзущгкгеуб ыватьыивдцулвдлоадузцщ — 44 балла
- Йцхяь длваополц ыадолцлопиолым бамдлотдламда — 149 баллов
Чтобы не гадать, что такое «много», а что — «мало», лучше доверить определение порогового значения самой машине (пусть обучается). Для этого скормим ей некоторое количество чистых строк и посчитаем их правдоподобность, а потом скормим немного зловредных строк — и тоже посчитаем. И вычислим некоторое значение посередине, которое будет лучше всего отделять одни от других. В нашем случае получится что-то в районе 500.
В реальной жизни
Давайте осмыслим, что же у нас получилось.
1. Мы выделили признаки чистых строк, а именно пары символов.
В реальной жизни — при разработке настоящего антивируса — тоже выделяют признаки из файлов или других объектов. И это, кстати, самый важный шаг: от уровня экспертизы и опыта исследователей напрямую зависит качество выделяемых признаков. Понять, что же на самом деле важно — это все еще задача человека. Например, кто сказал, что надо использовать пары символов, а не тройки? Такие гипотезы как раз и проверяют в антивирусной лаборатории. Отмечу, что у нас для отбора наилучших и взаимодополняющих признаков тоже используется машинное обучение.
2. На основании выделенных признаков мы построили математическую модель и обучили ее на примерах.
Само собой, в реальной жизни мы используем модели чуть посложнее. Сейчас наилучшие результаты показывает ансамбль решающих деревьев, построенный методом Gradient boosting, но стремление к совершенству не позволяет нам успокоиться.
3. На основе математической модели мы посчитали рейтинг «правдоподобности».
В реальной жизни мы обычно считаем противоположный рейтинг — рейтинг вредоносности. Разница, казалось бы, несущественная, но угадайте, насколько неправдоподобной для нашей математической модели покажется строка на другом языке — или с другим алфавитом?
Антивирус не имеет права допустить ложное срабатывание на целом классе файлов только по той причине, что «мы его не проходили».
Альтернатива машинному обучению
20 лет назад, когда вредоносов было мало, каждую «белиберду» можно было просто задетектить с помощью сигнатур — характерных отрывков. Для примеров выше “сигнатуры” могли бы быть такими:
ОРПорыав аоырОрпаыор ОрОРАыдцуцзущгкгеуб ыватьыивдцулвдлоадузцщ
Йцхяь длваополц ыадолцлопиолым бамдлотдламда
Антивирус сканирует файл, если встретил «зущгкгеу», говорит: «Ну понятно, это белиберда номер 17». А если найдет «длотдламд» — то “белиберда номер 139”.
15 лет назад, когда вредоносов стало много, преобладать стало «дженерик»-детектирование. Вирусный аналитик пишет правила, что для осмысленных строк характерно:
- Длина слов от одного до двадцати символов.
- Заглавные буквы очень редко встречаются посередине слова, цифры тоже.
- Гласные обычно более-менее равномерно перемежаются с согласными.
- И так далее. Если много критериев нарушено — детектируем эту строку как зловредную.
И вот 10 лет назад, когда вредоносов стало ну просто очень много, начали робко внедряться алгоритмы машинного обучения. Поначалу по сложности они были сопоставимые с описанным нами простейшим примером, но мы активно нанимали специалистов и наращивали уровень экспертных знаний.
Сейчас без машинного обучения не работает ни один нормальный антивирус. Если оценивать вклад в защиту пользователей, то с методами на основе машинного обучения по статическим признакам могут посоперничать разве что методы на основе анализа поведения. Но только при анализе поведения тоже используется машинное обучение. В общем, без него уже никуда.
Недостатки
Преимущества понятны, но неужели это серебряная пуля, спросите вы. Не совсем. Этот метод хорошо справляется, если описанный выше алгоритм будет работать в облаке или в инфраструктуре, постоянно обучаясь на огромных количествах как чистых, так и вредоносных объектов.
Также очень хорошо, если за результатами обучения присматривает команда экспертов, вмешивающихся в тех случаях, когда без опытного человека не обойтись.
В этом случае недостатков действительно немного, а по большому счету только один — нужна эта дорогостоящая инфраструктура и не менее дорогостоящая команда специалистов.
Другое дело, когда кто-то пытается радикально сэкономить и использовать только математическую модель и только на стороне продукта, прямо у клиента. Тогда могут начаться трудности.
1. Ложные срабатывания.
Детектирование на базе машинного обучения — это всегда поиск баланса между уровнем детектирования и уровнем ложных срабатываний. И если нам захочется детектировать побольше, то ложные срабатывания будут. В случае машинного обучения они будут возникать в непредсказуемых и зачастую труднообъяснимых местах. Например, эта чистая строка — «Мцыри и Мкртчян» — распознается как неправдоподобная: 145 баллов в модели из нашего примера. Поэтому очень важно, чтобы антивирусная лаборатория имела обширную коллекцию чистых файлов для обучения и тестирования модели.
Злоумышленник может разобрать такой продукт и посмотреть, как работает модель. Он человек и пока, если не умнее, то хотя бы креативнее машины — поэтому он подстроится. Например, следующая строка считается чистой (1200 баллов), хотя ее первая половина явно вредоносная: «лоыралоыврачигшуралорыловарДобавляем в конец много осмысленного текста, чтобы обмануть машину». Какой бы умный алгоритм ни использовался, его всегда может обойти человек (достаточно умный). Поэтому антивирусная лаборатория обязана иметь продвинутую инфраструктуру для быстрой реакции на новые угрозы.
Один из примеров обхода описанного нами выше метода: все слова выглядят правдоподобно, но на самом деле это бессмыслица. Источник.
3. Обновление модели.
На примере описанного выше алгоритма мы упоминали, что модель, обученная на русских текстах, будет непригодна для анализа текстов с другим алфавитом. А вредоносные файлы, с учетом креативности злоумышленников (смотри предыдущий пункт) — это как будто постепенно эволюционирующий алфавит. Ландшафт угроз меняется довольно быстро. Мы за долгие годы исследований выработали оптимальный подход к постепенному обновлению модели прямо в антивирусных базах. Это позволяет дообучать и даже полностью переобучать модель «без отрыва от производства».
Заключение
- Мы рассмотрели реальную задачу.
- Разработали реальный алгоритм машинного обучения для ее решения.
- Провели параллели с антивирусной индустрией.
- Рассмотрели с примерами достоинства и недостатки такого подхода.
Все в антивирусе должно быть прекрасно — и поведенческий анализ, и облачная защита, и алгоритмы машинного обучения, и многое-многое другое. Но об этом “многом другом” — в следующий раз.
- машинное обучение
- технологии
- лаборатория касперского
- просто о сложном