Вот так выглядит экспериментальная поисковая выдача Google.
Вместо привычных 10 синих ссылок мы видим рекомендации от ИИ.
Сложно сейчас оценить хорошо это или плохо. Привычные нам вещи меняются и будут меняться еще стремительнее в ближайшем будущем.
👉 @aisimpleru
Вместо привычных 10 синих ссылок мы видим рекомендации от ИИ.
Сложно сейчас оценить хорошо это или плохо. Привычные нам вещи меняются и будут меняться еще стремительнее в ближайшем будущем.
👉 @aisimpleru
👍3
Мы уже поговорили об искусственном нейроне (https://t.me/aisimpleru/38), рассмотрели, что такое нейронная сеть (https://t.me/aisimpleru/40), про обучение нейронной сети (https://t.me/aisimpleru/48).
Чтобы обучить нейронную сеть, нам нужна обучающая выборка.
Обучающая выборка - множество примеров, относящихся к одному объекту при определенных условиях его исследования.
Посмотрите на фрагмент обучающей выборки Ирисов Фишера.
Это классический пример, который использовался ученым Рональдом Фишером для решения задачи классификации.
Есть три вида ирисов:
1. щетинистый (setosa),
2. разноцветный (versicolor),
3. виргинский (virginica).
Эти растения разделяют в зависимости от параметров чашелистика и лепестков.
Длина и ширина чашелистика и лепестков закодированы цифрами. Будем подавать их на вход сети.
На выходе нейронная сеть должна будет вернуть выходной вектор из трех значений в следующих комбинациях:
1, 0, 0 - setosa,
0, 1, 0 - versicolor,
0, 0, 1 - virginica.
Архитектура нейронной сети может быть такой: вектор входов из 4 значений, далее 4 нейрона в первом слое, 1 промежуточный слой из 3 нейронов и 3 выходных нейрона.
После обучения нейронная сеть может относить подаваемые на вход значения к определенному классу, что соответствует виду ирисов.
В следующем посте поговорим об особенностях формирования обучающих выборок.
👉 @aisimpleru
Чтобы обучить нейронную сеть, нам нужна обучающая выборка.
Обучающая выборка - множество примеров, относящихся к одному объекту при определенных условиях его исследования.
Посмотрите на фрагмент обучающей выборки Ирисов Фишера.
Это классический пример, который использовался ученым Рональдом Фишером для решения задачи классификации.
Есть три вида ирисов:
1. щетинистый (setosa),
2. разноцветный (versicolor),
3. виргинский (virginica).
Эти растения разделяют в зависимости от параметров чашелистика и лепестков.
Длина и ширина чашелистика и лепестков закодированы цифрами. Будем подавать их на вход сети.
На выходе нейронная сеть должна будет вернуть выходной вектор из трех значений в следующих комбинациях:
1, 0, 0 - setosa,
0, 1, 0 - versicolor,
0, 0, 1 - virginica.
Архитектура нейронной сети может быть такой: вектор входов из 4 значений, далее 4 нейрона в первом слое, 1 промежуточный слой из 3 нейронов и 3 выходных нейрона.
После обучения нейронная сеть может относить подаваемые на вход значения к определенному классу, что соответствует виду ирисов.
В следующем посте поговорим об особенностях формирования обучающих выборок.
👉 @aisimpleru
👍3
В предыдущем посте (https://t.me/aisimpleru/61) мы рассмотрели, что такое обучающая выборка.
Качество обучающей выборки - ключевой параметр, влияющий на эффективность работы вашей модели. В особенности, если речь идет о комплексных моделях, а не только о нейронных сетях.
Неправильно подготовленная обучающая выборка может привести к провалу любые попытки использования вашей модели в дальнейшем.
Три главных правила хорошей обучающей выборки для обучения нейронных сетей:
1️⃣ Соответствие используемой структуре нейронной сети
2️⃣ Непротиворечивость
3️⃣ Репрезентативность
Рассмотрим каждое правило.
Соответствие используемой структуре НС или правило 2-5 гласит, что количество настраиваемых весовых коэффициентов должно быть в 2-5 раз меньше, чем число примеров обучающей выборки.
Количество настраиваемых весовых коэффициентов = числу синаптических связей.
Например, обучающая выборка для архитектуры из предыдущего поста (https://t.me/aisimpleru/61) должна содержать от 74 до 185 примеров, т.к. настраивается 37 весовых коэффициентов.
Непротиворечивость. Из выборки должны быть исключены противоречивые и повторяющиеся значения или заменены усредненными значениями. Как это реализовать математически, рассмотрим в дальнейшем.
Репрезентативность. В выборке должны содержаться значения входных переменных и соответствующих им выходных из всего спектра возможных значений. Чтобы нейронная сеть или модель могла решить задачу с заданной точностью.
Например, если вы используете в выборке в качестве входного параметра возраст, то нельзя ограничиваться узким диапазоном с 24 до 30 лет.
⚠️ Важный момент! Если целевая аудитория для решения задачи именно этого возраста, то включать в выборку детей или стариков 70+ лет не будет иметь никакого смысла.
Таким образом, репрезентативность выборки сильно связана с предметной областью. На это всегда нужно обращать внимание при подготовке обучающей выборки.
👉 @aisimpleru
Качество обучающей выборки - ключевой параметр, влияющий на эффективность работы вашей модели. В особенности, если речь идет о комплексных моделях, а не только о нейронных сетях.
Неправильно подготовленная обучающая выборка может привести к провалу любые попытки использования вашей модели в дальнейшем.
Три главных правила хорошей обучающей выборки для обучения нейронных сетей:
1️⃣ Соответствие используемой структуре нейронной сети
2️⃣ Непротиворечивость
3️⃣ Репрезентативность
Рассмотрим каждое правило.
Соответствие используемой структуре НС или правило 2-5 гласит, что количество настраиваемых весовых коэффициентов должно быть в 2-5 раз меньше, чем число примеров обучающей выборки.
Количество настраиваемых весовых коэффициентов = числу синаптических связей.
Например, обучающая выборка для архитектуры из предыдущего поста (https://t.me/aisimpleru/61) должна содержать от 74 до 185 примеров, т.к. настраивается 37 весовых коэффициентов.
Непротиворечивость. Из выборки должны быть исключены противоречивые и повторяющиеся значения или заменены усредненными значениями. Как это реализовать математически, рассмотрим в дальнейшем.
Репрезентативность. В выборке должны содержаться значения входных переменных и соответствующих им выходных из всего спектра возможных значений. Чтобы нейронная сеть или модель могла решить задачу с заданной точностью.
Например, если вы используете в выборке в качестве входного параметра возраст, то нельзя ограничиваться узким диапазоном с 24 до 30 лет.
⚠️ Важный момент! Если целевая аудитория для решения задачи именно этого возраста, то включать в выборку детей или стариков 70+ лет не будет иметь никакого смысла.
Таким образом, репрезентативность выборки сильно связана с предметной областью. На это всегда нужно обращать внимание при подготовке обучающей выборки.
👉 @aisimpleru
👍1
Если будете создавать и обучать нейросетевую модель, рекомендуем использовать данный алгоритм.
1. Постановка задачи
2. Выбор источника данных для обучающей выборки
3. Выбор архитектуры нейронной сети для решения задачи
4. Определение структуры нейронной сети (количество и тип входных и выходных данных, количество скрытых слоев)
5. Подготовка обучающей выборки
6. Выбор алгоритма обучения
7. Проведение обучения нейросетевой модели
8. Оценка адекватности работы модели
9. Применение нейросетевой модели на практике
В дальнейшем, разберем более подробно отдельные шаги этого алгоритма
👉 @aisimpleru
1. Постановка задачи
2. Выбор источника данных для обучающей выборки
3. Выбор архитектуры нейронной сети для решения задачи
4. Определение структуры нейронной сети (количество и тип входных и выходных данных, количество скрытых слоев)
5. Подготовка обучающей выборки
6. Выбор алгоритма обучения
7. Проведение обучения нейросетевой модели
8. Оценка адекватности работы модели
9. Применение нейросетевой модели на практике
В дальнейшем, разберем более подробно отдельные шаги этого алгоритма
👉 @aisimpleru
👍2
Поговорим о преимуществах нейронных сетей.
Выделим 6 преимуществ:
1. Способность к обобщению
2. Решение задач при неизвестных закономерностях
3. Устойчивость к шумам во входных данных
4. Адаптация к изменениям окружающей среды
5. Потенциальное сверхвысокое быстродействие
6. Отказоустойчивость при аппаратной реализации нейронной сети
Завтра поговорим о недостатках нейронных сетей.
👉 @aisimpleru
Выделим 6 преимуществ:
1. Способность к обобщению
2. Решение задач при неизвестных закономерностях
3. Устойчивость к шумам во входных данных
4. Адаптация к изменениям окружающей среды
5. Потенциальное сверхвысокое быстродействие
6. Отказоустойчивость при аппаратной реализации нейронной сети
Завтра поговорим о недостатках нейронных сетей.
👉 @aisimpleru
👍1
Попросил Midjourney нарисовать, как она видит сама себя.
Вот что из этого вышло 🤷♂️
Интересно, что ИИ видит себя и в мужском и женском обличии одновременно.
👉 @aisimpleru
Вот что из этого вышло 🤷♂️
Интересно, что ИИ видит себя и в мужском и женском обличии одновременно.
👉 @aisimpleru
👍2
Недостатки нейронных сетей можно разделить на две группы:
серьезные и незначительные.
Самый главный недостаток нейронных сетей - подготовка обучающей выборки.
Если данных для обучения недостаточно, то использование нейросетевого подхода приведет к неадекватному результату.
⚠️ От качества исходных данных зависит успех применения алгоритмов машинного обучения.
👉 @aisimpleru
серьезные и незначительные.
Самый главный недостаток нейронных сетей - подготовка обучающей выборки.
Если данных для обучения недостаточно, то использование нейросетевого подхода приведет к неадекватному результату.
⚠️ От качества исходных данных зависит успех применения алгоритмов машинного обучения.
👉 @aisimpleru
👍1
post-035-3.jpg
111.1 KB
Ранее, мы упоминали (https://t.me/aisimpleru/23), что методы ИИ используются в скоринговых моделях. Это одно из популярных направлений применения ИИ и нейросетей.
В четверг, 19 июля на Хабре вышла подробная статья о том, как в компании развивают и улучшают скоринговые модели, используя нейронные сети.
В Альфа-банке решили заменить несколько скоринговых моделей, данные которых «смешивались» при помощи логистической регресии, на единую нейросетевую модель.
Подробнее читайте в источнике: https://habr.com/ru/companies/alfa/articles/748824/
👉 @aisimpleru
В четверг, 19 июля на Хабре вышла подробная статья о том, как в компании развивают и улучшают скоринговые модели, используя нейронные сети.
В Альфа-банке решили заменить несколько скоринговых моделей, данные которых «смешивались» при помощи логистической регресии, на единую нейросетевую модель.
Подробнее читайте в источнике: https://habr.com/ru/companies/alfa/articles/748824/
👉 @aisimpleru
Мы с вами рассмотрели, что такое нейронные сети, поговорили о том, какие типы и архитектуры нейронных сетей бывают, как обучать нейронные сети.
Еще раз напомним мысли из вот этого поста (https://t.me/aisimpleru/31).
Любую задачу предметной области можно свести к одной или нескольким задачам из математики, статистики.
Нейронные сети прекрасно справляются с решением 5 классов задач:
1️⃣ Задача интерполирования и аппроксимации данных и рядов
2️⃣ Задача прогнозирования
3️⃣ Задача классификации
4️⃣ Задача кластеризации
5️⃣ Задача распознавания образов
На этой неделе рассмотрим все эти задачи более подробно.
👉 @aisimpleru
Еще раз напомним мысли из вот этого поста (https://t.me/aisimpleru/31).
Любую задачу предметной области можно свести к одной или нескольким задачам из математики, статистики.
Нейронные сети прекрасно справляются с решением 5 классов задач:
1️⃣ Задача интерполирования и аппроксимации данных и рядов
2️⃣ Задача прогнозирования
3️⃣ Задача классификации
4️⃣ Задача кластеризации
5️⃣ Задача распознавания образов
На этой неделе рассмотрим все эти задачи более подробно.
👉 @aisimpleru
👍1
Задачи интерполирования и аппроксимации успешно решаются искусственными нейронными сетями.
При аппроксимации (приближение) – функция максимально близко прилегает к точкам на графике
При интерполяции (изменение, переделка) – функция строго совпадает с данными в узлах сетки.
👉 @aisimpleru
При аппроксимации (приближение) – функция максимально близко прилегает к точкам на графике
При интерполяции (изменение, переделка) – функция строго совпадает с данными в узлах сетки.
👉 @aisimpleru
👍1
Задача прогнозирования на самом деле сводится к задаче аппроксимации.
Задача нейронной сети заключается в том, чтобы смоделировать такую зависимость одной переменной от другой так, чтобы можно было предсказать поведение этой функции на несколько шагов вперед.
Нейронные сети с большим количеством скрытых слоев могут моделировать сложные зависимости не только для одной переменной.
Такие нейронки могут моделировать зависимость множества выходов от множества входов.
👉 @aisimpleru
Задача нейронной сети заключается в том, чтобы смоделировать такую зависимость одной переменной от другой так, чтобы можно было предсказать поведение этой функции на несколько шагов вперед.
Нейронные сети с большим количеством скрытых слоев могут моделировать сложные зависимости не только для одной переменной.
Такие нейронки могут моделировать зависимость множества выходов от множества входов.
👉 @aisimpleru
👍1
Рассмотрим задачу классификации.
Суть состоит в том, чтобы из множества объектов при помощи математического алгоритма отобрать объекты, отнесенные к определенным классам по каким-либо характеристикам.
Если для решения такой задачи использовать нейронную сеть, то на вход сети нужно подать параметры объекта, а на выходе получить условный номер класса, к которому относится объект.
⚠️ Важный момент! В отличие от задачи кластеризации (рассмотрим завтра), классы объектов определены заранее. Вы уже знаете количество категорий и параметры объектов, по которым тот или иной объект включается в категорию.
👉 @aisimpleru
Суть состоит в том, чтобы из множества объектов при помощи математического алгоритма отобрать объекты, отнесенные к определенным классам по каким-либо характеристикам.
Если для решения такой задачи использовать нейронную сеть, то на вход сети нужно подать параметры объекта, а на выходе получить условный номер класса, к которому относится объект.
⚠️ Важный момент! В отличие от задачи кластеризации (рассмотрим завтра), классы объектов определены заранее. Вы уже знаете количество категорий и параметры объектов, по которым тот или иной объект включается в категорию.
👉 @aisimpleru
👍1
Кластеризация (или кластерный анализ) — это задача разбиения множества объектов на группы, называемые кластерами.
Математический алгоритм разбивает объекты на группы таким образом, что внутри каждой группы окажутся наиболее «похожие» объекты.
Объекты разных групп должны быть максимально отличны друг от друга.
На входе нейронной сети – параметры объектов, на выходе – номер кластера.
В отличие от задачи классификации число групп или категорий неизвестно заранее. В процессе обучения нейронная сеть самостоятельно определяет количество кластеров и параметры объектов, по которым они включаются в кластер.
С задачей кластеризации отлично справляются нейронные сети Кохонена, которые будет рассматривать позднее в этом канале и на сайте.
👉 @aisimpleru
Математический алгоритм разбивает объекты на группы таким образом, что внутри каждой группы окажутся наиболее «похожие» объекты.
Объекты разных групп должны быть максимально отличны друг от друга.
На входе нейронной сети – параметры объектов, на выходе – номер кластера.
В отличие от задачи классификации число групп или категорий неизвестно заранее. В процессе обучения нейронная сеть самостоятельно определяет количество кластеров и параметры объектов, по которым они включаются в кластер.
С задачей кластеризации отлично справляются нейронные сети Кохонена, которые будет рассматривать позднее в этом канале и на сайте.
👉 @aisimpleru
❤2
Задача распознавания образов - комплексная задача.
Для ее решения могут использоваться несколько классов моделей нейронных сетей и/или алгоритмов машинного обучения.
В частности сверточные нейронные сети справляются с данной задачей.
В сверточных нейронных сетях есть нейроны разных типов, которые различаются по функциям. Также при одинаковом количестве нейронов и скрытых слоев сверточная нейронная сеть за счет своей структуры имеет меньшее количество синаптических связей и настраиваемых весовых коэффициентов, чем многослойная нейронная сеть.
Про то, чем сверточные нейронные сети отличаются от многослойных перцептронов и как они устроены можно прочитать в статье на хабре: https://habr.com/ru/articles/214317/
👉 @aisimpleru
Для ее решения могут использоваться несколько классов моделей нейронных сетей и/или алгоритмов машинного обучения.
В частности сверточные нейронные сети справляются с данной задачей.
В сверточных нейронных сетях есть нейроны разных типов, которые различаются по функциям. Также при одинаковом количестве нейронов и скрытых слоев сверточная нейронная сеть за счет своей структуры имеет меньшее количество синаптических связей и настраиваемых весовых коэффициентов, чем многослойная нейронная сеть.
Про то, чем сверточные нейронные сети отличаются от многослойных перцептронов и как они устроены можно прочитать в статье на хабре: https://habr.com/ru/articles/214317/
👉 @aisimpleru
👍1
Мы рассмотрели, что такое нейронные сети, какие они бывают и какие задачи решают.
Сейчас в тренде понятия Deep Learning и Machine Learning.
Этот пост для тех, кто не совсем понимает, в чем отличие этих терминов между собой.
Machine Learning (машинное обучение) - способ решения задач, при котором задача решается не напрямую, а путем обучения некоторой математической модели. Обучение происходит внутри некоторой программной среды, например Python, при помощи алгоритмов. Эти алгоритмы относят к методам искусственного интеллекта.
При помощи машинного обучения вы можете решить одну из типовых задач (https://t.me/aisimpleru/72) или более сложную комплексную задачу, например управление движущимся объектом.
Deep Learning (глубокое или глубинное обучение) - совокупность методов машинного обучения, включая все основные способы (с учителем, без учителя, с подкреплением). Его называют глубоким потому, что при обучении, в основном, используются сложные архитектуры нейронных сетей, содержащие множество скрытых слоев и нейроны разных типов. Эти модели более совершенны.
Таким образом, машинное обучение - это способ решения задач, включающий весь класс методов и алгоритмов. Глубокое обучение - это разновидность машинного обучения для сложных архитектур нейронных сетей и других моделей.
Вторым отличием deep learning от machine learning является отсутствие человека в 1 случае. Deep Learning модель самостоятельно извлекает признаки для классификации.
👉 @aisimpleru
Сейчас в тренде понятия Deep Learning и Machine Learning.
Этот пост для тех, кто не совсем понимает, в чем отличие этих терминов между собой.
Machine Learning (машинное обучение) - способ решения задач, при котором задача решается не напрямую, а путем обучения некоторой математической модели. Обучение происходит внутри некоторой программной среды, например Python, при помощи алгоритмов. Эти алгоритмы относят к методам искусственного интеллекта.
При помощи машинного обучения вы можете решить одну из типовых задач (https://t.me/aisimpleru/72) или более сложную комплексную задачу, например управление движущимся объектом.
Deep Learning (глубокое или глубинное обучение) - совокупность методов машинного обучения, включая все основные способы (с учителем, без учителя, с подкреплением). Его называют глубоким потому, что при обучении, в основном, используются сложные архитектуры нейронных сетей, содержащие множество скрытых слоев и нейроны разных типов. Эти модели более совершенны.
Таким образом, машинное обучение - это способ решения задач, включающий весь класс методов и алгоритмов. Глубокое обучение - это разновидность машинного обучения для сложных архитектур нейронных сетей и других моделей.
Вторым отличием deep learning от machine learning является отсутствие человека в 1 случае. Deep Learning модель самостоятельно извлекает признаки для классификации.
👉 @aisimpleru
👍2❤1