Что делает метод Монте-Карло?
На самом деле, это группа методов для изучения случайных процессов. В целом, однако, суть методов можно описать как многократную имитацию некого процесса с помощью компьютера.
Можно также рассматривать метод Монте-Карло как вероятностную модель, которая способна включать в прогнозирование элемент неопределённости или случайности. Это даёт более чёткую картину, чем детерминированный прогноз. Например, для прогнозирования финансовых рисков нужен анализ десятков или сотен факторов. Финансовые аналитики используют моделирование методом Монте-Карло для определения вероятности каждого возможного исхода.
Процесс моделирования состоит из таких шагов:
▫️Создание математической модели.
▫️Определение входных значений.
▫️Создание большого набора случайных выборок на основе распределения выбранных данных.
▫️Проведение расчётов.
▫️Анализ результатов.
Нередко модели машинного обучения используются для тестирования и подтверждения результатов моделирования методом Монте-Карло.
#теория_вероятностей
На самом деле, это группа методов для изучения случайных процессов. В целом, однако, суть методов можно описать как многократную имитацию некого процесса с помощью компьютера.
Можно также рассматривать метод Монте-Карло как вероятностную модель, которая способна включать в прогнозирование элемент неопределённости или случайности. Это даёт более чёткую картину, чем детерминированный прогноз. Например, для прогнозирования финансовых рисков нужен анализ десятков или сотен факторов. Финансовые аналитики используют моделирование методом Монте-Карло для определения вероятности каждого возможного исхода.
Процесс моделирования состоит из таких шагов:
▫️Создание математической модели.
▫️Определение входных значений.
▫️Создание большого набора случайных выборок на основе распределения выбранных данных.
▫️Проведение расчётов.
▫️Анализ результатов.
Нередко модели машинного обучения используются для тестирования и подтверждения результатов моделирования методом Монте-Карло.
#теория_вероятностей
Самые полезные каналы для программистов в одной подборке!
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
💼Каналы с вакансиями
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие профильные каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
💼Каналы с вакансиями
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
Верно ли, что классический градиентный спуск всегда найдёт глобальный минимум функции потерь и выдаст оптимальные параметры?
Нет, неверно.
Градиентный спуск эффективно работает на выпуклых функциях. В этом случае любой локальный минимум автоматически является глобальным. Однако без выпуклости данный метод оптимизации ничего не гарантирует. При этом невыпуклые функции встречаются повсеместно, в том числе в машинном обучении.
Нередко при обучении градиентный спуск застревает в локальном минимуме и не может найти глобальный. Это означает, что найденное решение может не быть оптимальным. Для того, чтобы снизить вероятность такого исхода, применяются разные техники. Однако 100-процентной гарантии не дают и они.
К вышеуказанным техникам относятся:
▫️выбор удачных начальных параметров;
▫️модификации градиентного спуска (стохастический градиентный спуск (SGD), градиентный спуск с моментом и др.).
#машинное_обучение
Нет, неверно.
Градиентный спуск эффективно работает на выпуклых функциях. В этом случае любой локальный минимум автоматически является глобальным. Однако без выпуклости данный метод оптимизации ничего не гарантирует. При этом невыпуклые функции встречаются повсеместно, в том числе в машинном обучении.
Нередко при обучении градиентный спуск застревает в локальном минимуме и не может найти глобальный. Это означает, что найденное решение может не быть оптимальным. Для того, чтобы снизить вероятность такого исхода, применяются разные техники. Однако 100-процентной гарантии не дают и они.
К вышеуказанным техникам относятся:
▫️выбор удачных начальных параметров;
▫️модификации градиентного спуска (стохастический градиентный спуск (SGD), градиентный спуск с моментом и др.).
#машинное_обучение
Напишите код, который будет иллюстрировать Закон больших чисел (ЗБЧ)
ЗБЧ утверждает, что при увеличении количества попыток случайная величина стремится к своему математическому ожиданию. Для иллюстрации возьмём подбрасывание честной монетки. Математическое ожидание выпадения орла равно 0.5. С увеличением числа подбрасываний среднее значение количества выпавших орлов должно приближаться к 0.5.
#программирование
#теория_вероятностей
ЗБЧ утверждает, что при увеличении количества попыток случайная величина стремится к своему математическому ожиданию. Для иллюстрации возьмём подбрасывание честной монетки. Математическое ожидание выпадения орла равно 0.5. С увеличением числа подбрасываний среднее значение количества выпавших орлов должно приближаться к 0.5.
import random
import matplotlib.pyplot as plt
total_flips = 0
numerical_probability = []
H_count = 0
for i in range(0, 5000):
new_flip = random.choice(['H', 'T'])
total_flips += 1
if new_flip == 'H':
H_count += 1
numerical_probability.append(H_count / total_flips)
plt.figure(figsize=(10, 6))
plt.plot(numerical_probability, label='Численная вероятность орла')
plt.axhline(y=0.5, color='r', linestyle='-', label='Математическое ожидание (0.5)')
plt.xlabel("Количество бросков")
plt.ylabel("Численная вероятность орла")
plt.title("Закон больших чисел: Подбрасывание монеты")
plt.legend()
plt.show()
#программирование
#теория_вероятностей
Зачем нужно масштабирование признаков? Как бы вы его провели?
Допустим, у нас есть линейная регрессия с двумя независимыми переменными, у которых совершенно разный масштаб. Например, значения одного признака находятся в диапазоне от 0 до 100, а второго — от 0 до 1. Чтобы подстроиться под такие признаки, модель подберёт коэффициенты так, что первый будет небольшим, а второй — большим.
Проблема тут возникает на этапе обучения. Дело в том, что скорость оптимизации таких коэффициентов не будет одинаковой: ведь при градиентном спуске мы найдём две частные производные и подберём единый для обеих производных коэффициент скорости обучения. В результате, на каждой итерации мы будем получать различающиеся значения градиента для разных направлений.
Есть несколько способов масштабирования:
▫️Нормализация.
В данном случае все значения будут находиться в диапазоне от 0 до 1.
▫️Стандартизация.
Масштабирует значения с учётом стандартного отклонения.
Для нормализации, например, можно использовать метод MinMaxScaler из scikit-learn. Для стандартизации в этой же библиотеке есть метод StandardScaler.
#машинное_обучение
Допустим, у нас есть линейная регрессия с двумя независимыми переменными, у которых совершенно разный масштаб. Например, значения одного признака находятся в диапазоне от 0 до 100, а второго — от 0 до 1. Чтобы подстроиться под такие признаки, модель подберёт коэффициенты так, что первый будет небольшим, а второй — большим.
Проблема тут возникает на этапе обучения. Дело в том, что скорость оптимизации таких коэффициентов не будет одинаковой: ведь при градиентном спуске мы найдём две частные производные и подберём единый для обеих производных коэффициент скорости обучения. В результате, на каждой итерации мы будем получать различающиеся значения градиента для разных направлений.
Есть несколько способов масштабирования:
▫️Нормализация.
В данном случае все значения будут находиться в диапазоне от 0 до 1.
▫️Стандартизация.
Масштабирует значения с учётом стандартного отклонения.
Для нормализации, например, можно использовать метод MinMaxScaler из scikit-learn. Для стандартизации в этой же библиотеке есть метод StandardScaler.
#машинное_обучение
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.
В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги
👉Подписаться👈
В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги
👉Подписаться👈
Этот алгоритм используется для кластеризации. Он инициализируется с заранее определённым числом кластеров и работает, перемещая центроиды кластеров так, чтобы минимизировать суммарное квадратичное отклонение между точками данных и соответствующими центроидами.
Описание какого алгоритма дано выше?
Anonymous Quiz
5%
Иерархическая кластеризация
17%
DBSCAN
78%
К-средних
Что такое VIF (variance inflation factor)?
VIF — это метрика, используемая для оценки мультиколлинеарности между признаками в моделях машинного обучения. Мультиколлинеарность возникает, когда два или более признака в модели сильно коррелированы друг с другом.
VIF измеряет, насколько много дисперсии коэффициента регрессии оцениваемого признака объясняется другими признаками в модели. Принцип расчёта метрики заключается в том, чтобы поочередно принимать каждый из признаков за целевую переменную и строить модель линейной регрессии на основе оставшихся независимых переменных.
Значение VIF больше 10 обычно считается признаком наличия мультиколлинеарности.
#машинное_обучение
#статистика
VIF — это метрика, используемая для оценки мультиколлинеарности между признаками в моделях машинного обучения. Мультиколлинеарность возникает, когда два или более признака в модели сильно коррелированы друг с другом.
VIF измеряет, насколько много дисперсии коэффициента регрессии оцениваемого признака объясняется другими признаками в модели. Принцип расчёта метрики заключается в том, чтобы поочередно принимать каждый из признаков за целевую переменную и строить модель линейной регрессии на основе оставшихся независимых переменных.
Значение VIF больше 10 обычно считается признаком наличия мультиколлинеарности.
#машинное_обучение
#статистика
Какие могут быть проблемы в данных? Как вы бы их исправляли?
В данных могут быть ошибки, дубликаты, пропущенные значения.
🔹Ошибки могут быть связаны с человеческим фактором, например, невнимательностью, или вызваны сбоями в работе оборудования, записывающего какие-либо показатели. Чтобы исправить ошибки, нам нужно выяснить, чем они были вызваны. После этого можно будет выбрать верную стратегию.
Распространённым типом ошибок являются неверные значения. Поэтому необходимо проверить, что данные не противоречат своей природе. Например, цена товара не может быть отрицательной.
🔹Дубликаты в данных следует удалять. Найти их и удалить можно, например, с помощью Pandas, методов duplicated и drop_duplicates.
🔹Неверные типы значений могут испортить анализ и дальнейшую работу с данными. Например, некоторый показатель записан в виде строк, хотя нам было бы предпочтительнее работать с ним как с типом float. Нужно привести все типы к требуемым. Даты и время можно перевести в объекты datetime.
🔹Обработка пропущенных значений также требует понимания природы данных. В целом, тут есть несколько основных методов:
▫️удалить объекты с пропусками,
▫️заменить пропуски на среднее значение, медиану или моду,
▫️провести множественную импутацию данных (MICE).
🔹Также стоит провести поиск аномалий (выбросов) в данных. В зависимости от ситуации, аномалии можно отфильтровать, скорректировать или проанализировать отдельно.
#машинное_обучение
#предобработка_данных
В данных могут быть ошибки, дубликаты, пропущенные значения.
🔹Ошибки могут быть связаны с человеческим фактором, например, невнимательностью, или вызваны сбоями в работе оборудования, записывающего какие-либо показатели. Чтобы исправить ошибки, нам нужно выяснить, чем они были вызваны. После этого можно будет выбрать верную стратегию.
Распространённым типом ошибок являются неверные значения. Поэтому необходимо проверить, что данные не противоречат своей природе. Например, цена товара не может быть отрицательной.
🔹Дубликаты в данных следует удалять. Найти их и удалить можно, например, с помощью Pandas, методов duplicated и drop_duplicates.
🔹Неверные типы значений могут испортить анализ и дальнейшую работу с данными. Например, некоторый показатель записан в виде строк, хотя нам было бы предпочтительнее работать с ним как с типом float. Нужно привести все типы к требуемым. Даты и время можно перевести в объекты datetime.
🔹Обработка пропущенных значений также требует понимания природы данных. В целом, тут есть несколько основных методов:
▫️удалить объекты с пропусками,
▫️заменить пропуски на среднее значение, медиану или моду,
▫️провести множественную импутацию данных (MICE).
🔹Также стоит провести поиск аномалий (выбросов) в данных. В зависимости от ситуации, аномалии можно отфильтровать, скорректировать или проанализировать отдельно.
#машинное_обучение
#предобработка_данных
Хардкорный курс по математике для тех, кто правда любит математику!
Бесплатные вводных занятий к курсу по математике тут – https://proglib.io/w/3a1592a6
Вводные занятия содержат:
– 3 лекции по теории множеств от аспиранта кафедры общей математики факультета ВМК МГУ;
– 3 практических задания для закрепления материала и ссылки на дополнительные материалы
– лекция по комбинаторике от кандидата физико-математических наук, доцента факультета ВМК МГУ
👉 Переходите на страницу и активируйте доступ к вводным занятиям: https://proglib.io/w/3a1592a6
Бесплатные вводных занятий к курсу по математике тут – https://proglib.io/w/3a1592a6
Вводные занятия содержат:
– 3 лекции по теории множеств от аспиранта кафедры общей математики факультета ВМК МГУ;
– 3 практических задания для закрепления материала и ссылки на дополнительные материалы
– лекция по комбинаторике от кандидата физико-математических наук, доцента факультета ВМК МГУ
👉 Переходите на страницу и активируйте доступ к вводным занятиям: https://proglib.io/w/3a1592a6
Объясните, как работает Transformer?
Архитектура Transformer используется преимущественно в языковых моделях. Их обучают на большом количестве текстов. Наиболее известная задача, в которой используются такие модели, это, конечно, генерация новых текстов. Нейросеть должна предсказать следующее слово в последовательности, отталкиваясь от предыдущих. Transformer же изначально был разработан для перевода.
Его архитектура состоит из двух основных блоков:
▪️Энкодер (Encoder) (слева).
Этот блок получает входные данные (инпут) и создаёт их представления в векторном пространстве.
▪️Декодер (Decoder) (справа).
Этот блок использует представления, полученные от энкодера, а также другие входные данные, чтобы сгенерировать последовательность.
Основная фишка архитектуры Transformer заключается в наличии специального слоя — attention. Этот слой как бы указывает модели обращать особое внимание на определённые слова в последовательности. Это позволяет более эффективно обрабатывать контекст и улавливать сложные зависимости в тексте.
Во время обучения Transformer энкодер получает инпут (предложение) на определённом языке. Декодеру дают то же предложение, но на другом, целевом, языке. В энкодере слой attention может использовать все слова в предложении для создания контекстуализированного представления каждого слова, а декодер использует информацию об уже сгенерированных словах для предсказания следующего слова в последовательности.
В целом, ключевой особенностью механизма attention является его способность динамически фокусироваться на различных частях входной последовательности при обработке каждого слова, что позволяет модели лучше понимать контекст и нюансы языка.
#глубокое_обучение
#NLP
Архитектура Transformer используется преимущественно в языковых моделях. Их обучают на большом количестве текстов. Наиболее известная задача, в которой используются такие модели, это, конечно, генерация новых текстов. Нейросеть должна предсказать следующее слово в последовательности, отталкиваясь от предыдущих. Transformer же изначально был разработан для перевода.
Его архитектура состоит из двух основных блоков:
▪️Энкодер (Encoder) (слева).
Этот блок получает входные данные (инпут) и создаёт их представления в векторном пространстве.
▪️Декодер (Decoder) (справа).
Этот блок использует представления, полученные от энкодера, а также другие входные данные, чтобы сгенерировать последовательность.
Основная фишка архитектуры Transformer заключается в наличии специального слоя — attention. Этот слой как бы указывает модели обращать особое внимание на определённые слова в последовательности. Это позволяет более эффективно обрабатывать контекст и улавливать сложные зависимости в тексте.
Во время обучения Transformer энкодер получает инпут (предложение) на определённом языке. Декодеру дают то же предложение, но на другом, целевом, языке. В энкодере слой attention может использовать все слова в предложении для создания контекстуализированного представления каждого слова, а декодер использует информацию об уже сгенерированных словах для предсказания следующего слова в последовательности.
В целом, ключевой особенностью механизма attention является его способность динамически фокусироваться на различных частях входной последовательности при обработке каждого слова, что позволяет модели лучше понимать контекст и нюансы языка.
#глубокое_обучение
#NLP
Что такое бутстреп (bootstrap) в контексте Data Science?
Это метод для оценки стандартных отклонений и нахождения доверительных интервалов статистических функционалов. Он основан на многократной выборке с возвращением из исходного набора данных. Так создаются «псевдовыборки».
Допустим, у нас есть выборка из неизвестного распределения: [7,2,4]. Мы хотим построить доверительный интервал для среднего.
▪️Начнём с того, что по имеющейся выборке построим много псевдовыборок. Для этого три раза подряд берём случайный элемент из выборки, допуская повторения. Повторяя эту процедуру много раз, мы получим много новых псевдовыборок такого же размера.
▪️У каждой из получившихся псевдовыборок посчитаем среднее. Так мы получим n чисел (по количеству псевдовыборок). Мы предполагаем, что каждое такое число что-то говорит нам об истинном математическом ожидании изначальной выборки.
▪️Мы упорядочиваем эти n чисел по возрастанию, и берём 0.95 интервал из середины. То есть выкидываем 2.5% самых маленьких чисел и 2.5% самых больших чисел. Из оставшихся чисел берём самое маленькое и самое большое — это будут границы нашего доверительного интервала для среднего.
#анализ_данных
#статистика
Это метод для оценки стандартных отклонений и нахождения доверительных интервалов статистических функционалов. Он основан на многократной выборке с возвращением из исходного набора данных. Так создаются «псевдовыборки».
Допустим, у нас есть выборка из неизвестного распределения: [7,2,4]. Мы хотим построить доверительный интервал для среднего.
▪️Начнём с того, что по имеющейся выборке построим много псевдовыборок. Для этого три раза подряд берём случайный элемент из выборки, допуская повторения. Повторяя эту процедуру много раз, мы получим много новых псевдовыборок такого же размера.
▪️У каждой из получившихся псевдовыборок посчитаем среднее. Так мы получим n чисел (по количеству псевдовыборок). Мы предполагаем, что каждое такое число что-то говорит нам об истинном математическом ожидании изначальной выборки.
▪️Мы упорядочиваем эти n чисел по возрастанию, и берём 0.95 интервал из середины. То есть выкидываем 2.5% самых маленьких чисел и 2.5% самых больших чисел. Из оставшихся чисел берём самое маленькое и самое большое — это будут границы нашего доверительного интервала для среднего.
#анализ_данных
#статистика
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
🧠🤖 Как создать память для вашего чат-бота на Python с
помощью графов знаний
Хотите, чтобы ваш чат-бот давал более точные и релевантные ответы, избегая «галлюцинаций»? Графы знаний в помощь!
В статье и туториале разбираем, что такое графы и как создать память на примере данных из Википедии.
🔗 Читать статью
🔗 Зеркало
помощью графов знаний
Хотите, чтобы ваш чат-бот давал более точные и релевантные ответы, избегая «галлюцинаций»? Графы знаний в помощь!
В статье и туториале разбираем, что такое графы и как создать память на примере данных из Википедии.
🔗 Читать статью
🔗 Зеркало
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Как бороться с переобучением на примере линейной регрессии?
Есть три основных способа:
✔️Увеличить размер обучающей выборки.
Маленькая выборка снижает обобщающую способность модели, а значит повышает разброс.
✔️Уменьшить количество признаков.
Можно сделать это вручную или через специальный алгоритм. Однако есть риск выбросить нужные признаки.
✔️ Использовать регуляризацию.
Регуляризация позволяет снижать параметр (вес, коэффициент) признака и, таким образом, снижать его значимость.
Для регуляризации линейной регрессии есть несколько вариантов:
▪️Ridge (L2)
Штрафует за слишком большие коэффициенты. Этот штраф представляет собой сумму коэффициентов, возведённых в квадрат.
▪️Lasso (L1)
Для штрафа использует сумму коэффициентов по модулю.
▪️Elastic Net
Использует как L1, так и L2 регуляризацию.
#машинное_обучение
Есть три основных способа:
✔️Увеличить размер обучающей выборки.
Маленькая выборка снижает обобщающую способность модели, а значит повышает разброс.
✔️Уменьшить количество признаков.
Можно сделать это вручную или через специальный алгоритм. Однако есть риск выбросить нужные признаки.
✔️ Использовать регуляризацию.
Регуляризация позволяет снижать параметр (вес, коэффициент) признака и, таким образом, снижать его значимость.
Для регуляризации линейной регрессии есть несколько вариантов:
▪️Ridge (L2)
Штрафует за слишком большие коэффициенты. Этот штраф представляет собой сумму коэффициентов, возведённых в квадрат.
▪️Lasso (L1)
Для штрафа использует сумму коэффициентов по модулю.
▪️Elastic Net
Использует как L1, так и L2 регуляризацию.
#машинное_обучение
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
У нас вышла новая статья на
Ниже — небольшая выдержка из статьи, а целиком читайте здесь 👈
▫️NVIDIA продемонстрировала впечатляющие достижения в робототехнике на конференции GDC 2024. Посмотрите на гуманоидных роботов здесь.
▫️Компания DeepMind совместно с клубом Liverpool представила TacticAI — систему, которая может давать тактические советы футбольным тренерам.
▫️Stability AI выпустила модель Stable Video 3D, способную превращать изображения в 3D-видео.
🛠 Инструменты
▫️Arcads — генерирует маркетинговые видео с ИИ-актерами.
▫️Instanice — преобразует фото в любой нужный стиль, сохраняя внешность.
▫️PNGMaker — генерирует любые изображения на прозрачном фоне.
▫️Devika — опенсорсная альтернатива нашумевшему автономному агенту Devin от Cognition AI. Это ИИ-помощник, способный создавать сложные программные проекты с минимальным участием разработчика.
▫️GPT Prompt Engineer — агент для создания эффективных промптов. Поддерживает все модели OpenAI и Claude 3.
Please open Telegram to view this post
VIEW IN TELEGRAM