🔥 Дайджест полезных материалов из мира Data Science за неделю
Почитать:
— TechArena Ireland: как готовился хакатон
— Визуализация распределений вероятностей в Python.
— Построение пайплайна обработки данных в реальном времени с использованием Python
— Исследования возможностей нейронных сетей глубокого обучения в распознавании маскируемого трафика
— Как мы создавали self-service функционал проверки качества данных для ML-моделей
— Становясь Пангеей: будущее современного стека для анализа данных
— Как я пришёл в дата-анализ после долгих блужданий по онлайн-курсам, маршрут со всеми тупиками и ухабами
— Как оценить объем работ по миграции хранилища данных на Arenadata DB / Greenplum: методика и пример
— Data Science for Beginners: 2023 - 2024 Complete Roadmap
— A Beginner's Guide to Data Analytics: Understanding the Fundamentals
— The Start of My Year-long Journey into AI: From Novice to Engineer
— Data Science for Beginners: 2023–2024 Complete Roadmap
— Data Science for Beginners: 2023 - 2024 Complete Roadmap
— Data Science Roadmap.
— How can Ed-tech companies adopt AI, and what ways will it help in revenue generation and in work Operations?
— Matplotlib Tutorial: Let’s Take Your Country Maps to Another Level
— Data Analysis with SQL
— Autoscout24 SQL Analysis
Посмотреть:
🌐 Large Language Models Are Not (Necessarily) Generative Ai - Karin Verspoor, PhD (⏱ 29:59)
🌐 Django начало работы. (⏱ 08:18)
🌐 Популярная задача с собеседования в Яндекс #python #задача #программирование #собеседование (⏱ 01:00)
🌐 Новые функции в IOS 17 (⏱ 00:29)
🌐 TokenFlow редактирование видео с помощью текстового описания (⏱ 00:22)
🌐 Парсер телеграм каналов на Python. Гайд по написанию мощного бота. (⏱ 11:58)
🌐 Задача из Собеседования в Яндекс с зарплатой 85000 рублей #python #собеседование #задача #yandex (⏱ 00:59)
🌐 Асинхронный парсинг сайтов на Python (⏱ 22:06)
🌐 Evolving Trends in Prompt Engineering for LLMs with Built-in Responsible AI Practices (⏱ 33:21)
🌐 OpenAI’s ChatGPT Has Been Supercharged! (⏱ 06:48)
🌐 Evolving Trends in Prompt Engineering for LLMs with Built-in Responsible AI Practices (⏱ 33:21)
🌐 OpenAI’s ChatGPT Has Been Supercharged! (⏱ 06:48)
🌐 New AI Listened To 20,000 Hours Of Music. What Did It Learn? (⏱ 07:33)
Хорошего дня!
@data_analysis_ml
Почитать:
— TechArena Ireland: как готовился хакатон
— Визуализация распределений вероятностей в Python.
— Построение пайплайна обработки данных в реальном времени с использованием Python
— Исследования возможностей нейронных сетей глубокого обучения в распознавании маскируемого трафика
— Как мы создавали self-service функционал проверки качества данных для ML-моделей
— Становясь Пангеей: будущее современного стека для анализа данных
— Как я пришёл в дата-анализ после долгих блужданий по онлайн-курсам, маршрут со всеми тупиками и ухабами
— Как оценить объем работ по миграции хранилища данных на Arenadata DB / Greenplum: методика и пример
— Data Science for Beginners: 2023 - 2024 Complete Roadmap
— A Beginner's Guide to Data Analytics: Understanding the Fundamentals
— The Start of My Year-long Journey into AI: From Novice to Engineer
— Data Science for Beginners: 2023–2024 Complete Roadmap
— Data Science for Beginners: 2023 - 2024 Complete Roadmap
— Data Science Roadmap.
— How can Ed-tech companies adopt AI, and what ways will it help in revenue generation and in work Operations?
— Matplotlib Tutorial: Let’s Take Your Country Maps to Another Level
— Data Analysis with SQL
— Autoscout24 SQL Analysis
Посмотреть:
🌐 Large Language Models Are Not (Necessarily) Generative Ai - Karin Verspoor, PhD (⏱ 29:59)
🌐 Django начало работы. (⏱ 08:18)
🌐 Популярная задача с собеседования в Яндекс #python #задача #программирование #собеседование (⏱ 01:00)
🌐 Новые функции в IOS 17 (⏱ 00:29)
🌐 TokenFlow редактирование видео с помощью текстового описания (⏱ 00:22)
🌐 Парсер телеграм каналов на Python. Гайд по написанию мощного бота. (⏱ 11:58)
🌐 Задача из Собеседования в Яндекс с зарплатой 85000 рублей #python #собеседование #задача #yandex (⏱ 00:59)
🌐 Асинхронный парсинг сайтов на Python (⏱ 22:06)
🌐 Evolving Trends in Prompt Engineering for LLMs with Built-in Responsible AI Practices (⏱ 33:21)
🌐 OpenAI’s ChatGPT Has Been Supercharged! (⏱ 06:48)
🌐 Evolving Trends in Prompt Engineering for LLMs with Built-in Responsible AI Practices (⏱ 33:21)
🌐 OpenAI’s ChatGPT Has Been Supercharged! (⏱ 06:48)
🌐 New AI Listened To 20,000 Hours Of Music. What Did It Learn? (⏱ 07:33)
Хорошего дня!
@data_analysis_ml
👍12🔥7❤4💔1
Jackknife+ — это эффективный метод конформного прогнозирования, разработанный ведущими исследователями в области машинного обучения из Чикагского университета, Стэнфордского университета, Университета Карнеги-Меллона и Калифорнийского университета в Беркли.
Наша задача — построить функцию регрессии с помощью обучающих данных, которые включают пары признаков (Xi, Yi). Нам нужно предсказать выход Yn+1 для нового вектора признаков Xn+1=x и создать соответствующий интервал погрешности для этого предсказания. Предположительно данный интервал будет включать истинное значение Yn+1 с заранее определенной вероятностью охвата.
Прямой подход может заключаться в подгонке базовой регрессионной модели к обучающим данным, вычислении остатков и использовании этих остатков для оценки квантиля. Этот квантиль затем может быть использован для определения ширины интервала прогнозирования для новой тестовой точки.
Однако такой подход имеет тенденцию недооценивать фактическую погрешность из-за чрезмерной подгонки: остатки, полученные из обучающего множества, обычно меньше, чем те, которые можно было бы получить на основе неизвестных тестовых данных.
📌Читать
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2🔥2
🐍Как Snowflake повышает эффективность dbt-моделей на Python
dbt — это инструмент, помогающий управлять всеми трансформациями данных, которые выполняются в базах данных с использованием SQL.
Допустим, у вас есть таблица с общим числом клиентских заказов, и нужно подсчитать, сколько из них пришлось на праздничные дни. Выполнить эту задачу можно с помощью двух SQL-запросов.
1. Добавить столбец is_holiday в таблицу sf100_orders, объединив ее с all_holidays. Назвать полученную таблицу sf100_orders_annotated.
2. Подсчитать строки, для которых is_holiday=true в таблице sf100_orders_annotated.
Эти два шага объединяют исходные данные, визуализированные с помощью dbt: в изображении.
Производный граф: из двух исходных таблиц составляется таблица count_holidays
Используя dbt, можно записать эти две трансформации в виде “dbt-моделей”, которые представляют собой файлы, содержащие SQL и некоторую конфигурацию dbt (при необходимости):
Эти два файла выглядят как типичный SQL, но с некоторым отличием. Вместо ссылок на таблицы dbt позволяет ссылаться на другие “модели” с помощью аннотаций {{ref(‘sf100_orders_annotated’)}}. Таким образом, dbt определяет связь и зависимости между всеми трансформациями, через которые проходят данные.
Продолжение
@data_analysis_ml
dbt — это инструмент, помогающий управлять всеми трансформациями данных, которые выполняются в базах данных с использованием SQL.
Допустим, у вас есть таблица с общим числом клиентских заказов, и нужно подсчитать, сколько из них пришлось на праздничные дни. Выполнить эту задачу можно с помощью двух SQL-запросов.
1. Добавить столбец is_holiday в таблицу sf100_orders, объединив ее с all_holidays. Назвать полученную таблицу sf100_orders_annotated.
2. Подсчитать строки, для которых is_holiday=true в таблице sf100_orders_annotated.
Эти два шага объединяют исходные данные, визуализированные с помощью dbt: в изображении.
Производный граф: из двух исходных таблиц составляется таблица count_holidays
Используя dbt, можно записать эти две трансформации в виде “dbt-моделей”, которые представляют собой файлы, содержащие SQL и некоторую конфигурацию dbt (при необходимости):
-- sf100_orders_annotated.sql
{{ config(materialized='table') }}
select a.*, b.date is not null is_holiday
from {{ref('sf100_orders')}} a
left join {{ref('all_holidays')}} b
on a.o_orderdate = b.date
-- count_holidays.sql
{{config(materialized='table')}}
select count(*) total_days
, count_if(is_holiday) holiday_count
, holiday_count/total_days ratio
from {{ref('sf100_orders_annotated')}}
Эти два файла выглядят как типичный SQL, но с некоторым отличием. Вместо ссылок на таблицы dbt позволяет ссылаться на другие “модели” с помощью аннотаций {{ref(‘sf100_orders_annotated’)}}. Таким образом, dbt определяет связь и зависимости между всеми трансформациями, через которые проходят данные.
Продолжение
@data_analysis_ml
👍6❤1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Если вы хотите использовать модульный и простой код для создания красивых дашбордов, рекомендуем попробовать библиотеку vizro.
С помощью нескольких строк кода и простой конфигурации можно создавать сложные дашборды, которые автоматически генерируются на основе Plotly и Dash.
pip install vizro
• Github
• Документация
• Примеры с кодом
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥5❤3
Эти курсы - ваш билет к совершенству.
Возможность получить актуальные знания бесплатно от одного из лучших учебных заведений мира.
Ознакомьтесь с ними ниже:
1. Введение в информатику и программирование на языке Python
https://www.edx.org/learn/computer-programming/massachusetts-institute-of-technology-introduction-to-computer-science-and-programming-7
2. Foundations Of Software Engineering.
https://ocw.mit.edu/courses/1-124j-foundations-of-software-engineering-fall-2000/
3. Компьютерные алгоритмы в системной инженерии.
https://ocw.mit.edu/courses/1-204-computer-algorithms-in-systems-engineering-spring-2010/
4 Integrating ESystems & Global Information Systems.
https://ocw.mit.edu/courses/15-565j-integrating-esystems-global-information-systems-spring-2002/
5. Оптимизация проектирования мультидисциплинарных систем.
https://ocw.mit.edu/courses/ids-338j-multidisciplinary-system-design-optimization-spring-2010/
6. Статистическое мышление и анализ данных.
https://ocw.mit.edu/courses/15-075j-statistical-thinking-and-data-analysis-fall-2011/
7. Вычисления и анализ данных.
https://ocw.mit.edu/courses/1-017-computing-and-data-analysis-for-environmental-applications-fall-2003/
8. Концепции программной инженерии.
https://ocw.mit.edu/courses/16-355j-software-engineering-concepts-fall-2005/
9. Анализ данных для социологов
https://mitxonline.mit.edu/courses/course-v1:MITxT+14.310x/
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28❤2❤🔥1🥰1👏1
В начале сентября прошла Practical ML Conf, а сейчас Яндекс опубликовал плейлист с записями докладов, в которых ведущие инженеры ВТБ, Авито, Сбера и самого Яндекса рассказывают о своем опыте применения практического машинного обучения.
Из запоминающегося:
Алексей Морозов из Поиска поделился кейсом модернизации нейронных сетей, которая позволяет ML-инженерам и исследователям не беспокоиться о работоспособности инфраструктуры и автоматически масштабироваться в процессе работы.
Руководитель группы компьютерного зрения и робототехники, Валерий Ильин, рассказал о том, как компьютерное зрение используется в роботах на складах Яндекс Маркета.
Записи этих докладов и всех остальных можно найти здесь.
@data_analysis_ml
Из запоминающегося:
Алексей Морозов из Поиска поделился кейсом модернизации нейронных сетей, которая позволяет ML-инженерам и исследователям не беспокоиться о работоспособности инфраструктуры и автоматически масштабироваться в процессе работы.
Руководитель группы компьютерного зрения и робототехники, Валерий Ильин, рассказал о том, как компьютерное зрение используется в роботах на складах Яндекс Маркета.
Записи этих докладов и всех остальных можно найти здесь.
@data_analysis_ml
❤6👍6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
PyTorch только что выпустил крутой инструмент для визуализации умножения матриц!
Внутри:
Визуализация
умножения матриц, операций на ними и много других интересных функций.Запустите его в браузере: https://bhosmer.github.io/mm/.
Подробнее читайте в блоге👇
https://pytorch.org/blog/inside-the-matrix/
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥9❤3
This media is not supported in your browser
VIEW IN TELEGRAM
🦙 Medusa: Simple Framework for Accelerating LLM Generation with Multiple Decoding Heads
Попробуйте модель, которая ускоряет в генерацию текста 2 раза: Medusa упрощает и ускоряет большие языковые модели.
Ваша исходная модель остается нетронутой, а в процессе обучения производится только тонкая настройка новых функций. В процессе генерации каждая из этих функций выдает несколько вероятных слов для соответствующей позиции. Затем эти варианты комбинируются и обрабатываются с помощью
• Github
• Как работает модель
@data_analysis_ml
Попробуйте модель, которая ускоряет в генерацию текста 2 раза: Medusa упрощает и ускоряет большие языковые модели.
Ваша исходная модель остается нетронутой, а в процессе обучения производится только тонкая настройка новых функций. В процессе генерации каждая из этих функций выдает несколько вероятных слов для соответствующей позиции. Затем эти варианты комбинируются и обрабатываются с помощью
механизма внимания
, древовидной структуры. Затем, выбираются наиболее правдоподобные генерации для дальнейшего декодирования.pip install medusa-llm
• Github
• Как работает модель
@data_analysis_ml
🔥10👍2❤1
Greenplum — это open source MPP СУБД, основанная на PostgreSQL.
Архитектура СУБД укрупненно представляет собой систему, состоящую из n-го количества Segment Host — процессов/серверов, на которых производится хранение и обработка данных, и одного Master Host – процесса/сервера, являющегося точкой входа клиента, который также хранит внутри себя метаданные таблиц и распределяет обработку данных между сегментами.
Вопрос выбора способа хранения данных для меня встал достаточно остро из-за относительно большого объема анализируемых данных. Кратко опишу набор таблиц витрины и примерное количество строк в них на данный момент:
1. Таблица с пользователями маркетплейса (более 4 млн.);
2. Корзина товаров (более 150 млн.);
3. Покупки пользователей в маркетплейсе (более 40 млн.);
4. Таблица с начислениями бонусов за покупки (более 20 млн.)
5. И т.д. (суммарно еще около 5-10 млн. строк уходят на перечень продаваемых товаров, различные справочники и другую сопутствующую информацию)
Аналитические запросы, в особенности с объединением этих таблиц, занимают достаточно большое количество времени и ресурсов, что негативно складывается на работе СУБД, коллег и меня в частности.
В связи с этим, оптимизация хранения таблиц является одним из основных вариантов оптимизации запросов (вкупе с объяснением того, как эти оптимальные запросы строить, но это уже совсем другая история).
Рассмотрим задачу выбора оптимального способа хранения данных подробнее.
📌Читать
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤5🥰2
При работе с файлами Parquet в pandas обычно сначала загружают данные в pandas DataFrame, а затем применяют фильтры.
Для повышения скорости выполнения запросов следует переместить фильтры в движок PyArrow, чтобы использовать оптимизацию обработки PyArrow.
В приведенном ниже коде фильтрация набора данных из 100 млн строк с помощью PyArrow выполняется примерно в 113 раз быстрее, чем при использовании pandas.
📌 Смотреть код
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30🔥6❤5
✔ No Black Box Machine Learning Course – Learn Without Libraries
Как насчет курса по машинному обучению, который не опирается на библиотеки?
В этом курсе "без черного ящика" алгоритмы изучаются с нуля.
Вы узнаете, как они работают и создадите несколько интересных DS проектов таких, как приложение для рисования, визуализатор данных и многое другое.
• Video
• Github
• Course
@data_analysis_ml
Как насчет курса по машинному обучению, который не опирается на библиотеки?
В этом курсе "без черного ящика" алгоритмы изучаются с нуля.
Вы узнаете, как они работают и создадите несколько интересных DS проектов таких, как приложение для рисования, визуализатор данных и многое другое.
• Video
• Github
• Course
@data_analysis_ml
❤10🔥6👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Документирование помогает прояснить функциональность каждого запроса для других членов команды.
С помощью #dbt вы можете легко документировать свои запросы с помощью команды 𝐝𝐛𝐭 𝐝𝐨𝐜𝐬 𝐠𝐞𝐧𝐞𝐫𝐚𝐭𝐞.
📌 Что такое dbt
📌 Больше примеров
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤3🔥2👎1
🔥 Дайджест полезных материалов из мира Машинного обучения за неделю
Почитать:
— Есть ли жизнь после Nvidia?
— Откройте свое будущее: Изучите 15 бесплатных курсов IBM прямо сейчас
— Перевод трактата по демонологии при помощи GPT-4 и Claude
— Откройте свое будущее: Изучите 15 бесплатных курсов IBM прямо сейчас
— SAGE: коррекция орфографии с помощью языковых моделей
— Python, Go или… готовим сырой видеопоток с полсотни камер
— Как мы используем NLP в банке
— Нейронные сети для планирования движения беспилотных автомобилей
— Организация GPU-вычислений для машинного обучения в компании: проблемы и трудности
— Детекция дефектов дорожного покрытия без размеченных данных: Хакатон, LiDAR, RANSAC, ICP и 44 бесcонных часов
— Чат GPT-4V, который видит — что он умеет
— Feature engineering и кластерный анализ клиентов на PySpark
— Trabaje con sus datos en tiempo real usando Langchain
— BakaLLM, part 3: it's testing time, it's testing time
— Enabling Language Models to Implicitly Learn Self-Improvement
— Introdução ao Aprendizado de Máquina Online
— Why Python is a first choice for Data scientist
— Mastering Machine Learning: Your Path to Excellence with UpSkill Certifications
— Data Science for Beginners: 2023-2024 Edition
— Data Science for beginners, complete roadmap.
— Data Science Beginner's guide.
— The Ultimate Guide to Getting a Data Scientist Job in 2023 (Even If You're a Beginner)
Посмотреть:
🌐 Разбор задачи с собеседования Data Science. Подготовка на практике (⏱ 26:12)
🌐 Cобеседование #Python топовый банк Goldman Sachs Associate на 12000 $ #задача #программирование (⏱ 01:00)
🌐 Interview: "Large Language Model Operations: The Next Frontier in MLOps" (⏱ 59:18)
🌐 Exploring the Generative AI Landscape: From Basics to Hands-on Applications - Raghav Bali (⏱ 32:54)
Хорошего дня!
@data_analysis_ml
Почитать:
— Есть ли жизнь после Nvidia?
— Откройте свое будущее: Изучите 15 бесплатных курсов IBM прямо сейчас
— Перевод трактата по демонологии при помощи GPT-4 и Claude
— Откройте свое будущее: Изучите 15 бесплатных курсов IBM прямо сейчас
— SAGE: коррекция орфографии с помощью языковых моделей
— Python, Go или… готовим сырой видеопоток с полсотни камер
— Как мы используем NLP в банке
— Нейронные сети для планирования движения беспилотных автомобилей
— Организация GPU-вычислений для машинного обучения в компании: проблемы и трудности
— Детекция дефектов дорожного покрытия без размеченных данных: Хакатон, LiDAR, RANSAC, ICP и 44 бесcонных часов
— Чат GPT-4V, который видит — что он умеет
— Feature engineering и кластерный анализ клиентов на PySpark
— Trabaje con sus datos en tiempo real usando Langchain
— BakaLLM, part 3: it's testing time, it's testing time
— Enabling Language Models to Implicitly Learn Self-Improvement
— Introdução ao Aprendizado de Máquina Online
— Why Python is a first choice for Data scientist
— Mastering Machine Learning: Your Path to Excellence with UpSkill Certifications
— Data Science for Beginners: 2023-2024 Edition
— Data Science for beginners, complete roadmap.
— Data Science Beginner's guide.
— The Ultimate Guide to Getting a Data Scientist Job in 2023 (Even If You're a Beginner)
Посмотреть:
🌐 Разбор задачи с собеседования Data Science. Подготовка на практике (⏱ 26:12)
🌐 Cобеседование #Python топовый банк Goldman Sachs Associate на 12000 $ #задача #программирование (⏱ 01:00)
🌐 Interview: "Large Language Model Operations: The Next Frontier in MLOps" (⏱ 59:18)
🌐 Exploring the Generative AI Landscape: From Basics to Hands-on Applications - Raghav Bali (⏱ 32:54)
Хорошего дня!
@data_analysis_ml
👍17🔥5❤4
Вы узнаете о семи неоспоримых признаках того, что стали продвинутым пользователем Sklearn, о чем, возможно, и не подозревали. А поскольку Sklearn — самая популярная МО-библиотека, можете считать эти признаки подтверждением своего профессионализма в области машинного обучения.
Начнем!
0. Разделение на три набора
Почти все, что вы делаете в машинном обучении, направлено на избежание чрезмерной подгонки. Один из лучших способов борьбы с этим явлением — разделение данных не на два, а на три набора!
Кэсси Козырьков, руководительница отдела интеллектуальных решений в Google, считает: разделение данных — самая мощная идея в машинном обучении.
Вы знаете, что переподгонка может произойти не только на обучающей, но и на контрольной выборке. Вы замечали, что использование одного и того же набора для тестирования и настройки гиперпараметров часто приводит к утечке данных, которую трудно обнаружить.
При постоянном подстраивании гиперпараметров на основе производительности модели на конкретном тестовом наборе возникает риск переподгонки модели под этот конкретный набор.
Итак, вы обучаете выбранную модель, используя 50% имеющихся данных. Затем проводите тонкую настройку и оценку модели на отдельном контрольном наборе, содержащем 25% данных. И наконец, когда baby-модель уже готова к внедрению, тестируете ее в последний раз, используя совершенно нетронутый (то есть вы даже не просматривали первые пять строк) тестовый набор.
Помня вышеупомянутое правило, вы сохраняете этот фрагмент кода на своем рабочем столе, чтобы скопировать/вставить его в любое время:
from sklearn.model_selection import train_test_split
def split_dataset(data, target, train_size=0.5, random_state=42):
# Разделение датасета на обучающий набор и остальные данные
X_train, remaining_data, y_train, remaining_target = train_test_split(
data, target, train_size=train_size, random_state=random_state
)
# Разделение оставшихся данных поровну на тестовый и валидационный наборы
X_val, X_test, y_val, y_test = train_test_split(
remaining_data, remaining_target, test_size=0.5, random_state=random_state
)
return X_train, X_val, X_test, y_train, y_val, y_test
1. Установление общепринятой базовой оценки
Как понять, вносят ли вклад в конечный продукт — идеальную модель — ваши действия в МО-проекте?
Подход “
могу определить навскидку”
не годится. Здесь нужна путеводная звезда — некий ориентир, на который всегда можно опереться, чтобы понять, может ли только что подготовленная модель пройти хотя бы простейшие тесты.Как вы неоднократно убеждались на опыте своих проектов, эта путеводная звезда является общепринятой базовой эффективностью.
После идентификации задачи машинного обучения, выбора характеристик и определения целевой переменной вы устанавливаете либо DummyRegressor, либо
DummyClassifier
, чтобы оценить эффективность модели случайного угадывания для конкретной задачи. Эта оценка служит базовой, и все последующие эксперименты направлены на улучшение этого начального результата.from sklearn.dummy import DummyClassifier
clf = DummyRegressor().fit(X_train, y_train)
clf.score(X_test, y_test)
Вы не устаете рекомендовать эту практику другим, включая вашего лучшего друга.Однажды по глупости он перепробовал все подходящие для задачи классификации изображений Sklearn-модели и все более сложные архитектуры глубокого обучения, пытаясь выяснить, почему все его эксперименты не дают результата выше определенного порога.
Когда вы напомнили ему о базовой оценке, он попробовал
DummyClassifier
и понял: задача в принципе была неразрешима и все его усилия оказались пустой тратой времени, потому что ни один из его экспериментов не смог превзойти модель случайного угадывания. Ему пришлось искать новый набор данных.Ничто не сравнится с ужасом перед оверинжинирингом (чрезмерным инжинирингом), когда модель, казавшаяся исключительной, оказалась совершенно неэффективной.
📌 Читать дальше
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26❤4🔥4
https://www.youtube.com/watch?v=w2y01D2tLt4
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
NLP практика. Определяем тональность текста при помощи NLTK и DL
В этом увлекательном видеоролике узнаем, как использовать два мощных инструмента - Natural Language Toolkit (NLTK) и Deep Learning (DL), чтобы определить тональность текста.
▪ https://t.iss.one/ai_machinelearning_big_data -подписывайтесь на наш телеграм анализ…
▪ https://t.iss.one/ai_machinelearning_big_data -подписывайтесь на наш телеграм анализ…
👍12🔥3❤1
Для достижения функциональности, аналогичной auto.arima в R, в рамках scikit-learn-подобного интерфейса, используйте Pmdarima.
Pmdarima - это статистическая библиотека, для анализа временных рядов на Python.
#Python #DataScience
• Github
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤3⚡2🔥1
А/В-тестирование – это метод, который используется для сравнения двух версий переменной, например, дизайна сайта при маркетинговом исследовании с целью выявления лучшей версии. Это критически важный метод исследования в
Data Science
, который часто используется различными организациями при принятии решений с целью оптимизации существующего продукта и максимизации прибыли.Представлю, что компания, продающая мебель, хочет увеличить число кликов по баннеру «Мебель на заказ». Они значительно изменили дизайн сайта для этой цели. К сожалению, не существует способов предсказать, как именно изменится поведение людей на обновленном сайте по сравнению со старой версией. А/В-тестирование может помочь, например, измерить разницу в конверсии между двумя версиями сайта и сказать, является ли эта разница статистически значимой.
Нулевая гипотеза в рамках А/В-тестирования – предположение о том, что разницы между версиями сайта А и В в действительности нет, а все наблюдаемые различия обусловлены случайностью. Моя задача в ходе А/В-тестирования – опровергнуть нулевую гипотезу. Альтернативная гипотеза в рамках А/В-тестирования утверждает, что версии сайта А и В различны с точки зрения поведения пользователей.
Уровень значимости – это порог вероятности для определения того, являются ли результаты эксперимента статистически значимыми. Чаще всего уровень значимости устанавливается равным 0,05. Это значит, что моё утверждение о значимости результата будет справедливо на
95%
. Чем ниже выбранный уровень значимости, тем ниже риск того, что будет обнаружена разница, вызванная случайностью.P—value – это вероятность наблюдения данного результата при условии, что нулевая гипотеза верна. Если p-value меньше, чем уровень значимости
(α)
, то отвергается нулевая гипотеза в пользу альтернативной (то есть результаты являются статистически значимыми). Например, при уровне значимости 0,05 p-value
должна быть меньше 0,05
для признания результатов эксперимента статистически значимыми.Доверительный интервал – интервал значений, в котором, с вероятностью
(1- α)
, лежит истинное значение переменной. Доверительный интервал является оценкой возможных значений переменной в зависимости от её стандартного отклонения.Статистическая мощность – вероятность отклонения нулевой гипотезы в случае, если альтернативная гипотеза верна. Обычно статистическая мощность теста устанавливается равной
0,8.
Это значение используется для вычисления размера выборки, необходимой для подтверждения гипотезы с необходимой силой эффекта.Организация эксперимента
Для проведения А/В-теста требуется разделить всех пользователей на две группы: одна группа будет видеть старый дизайн сайта, а другая – новый. Пользователи распределяются между группами случайным образом. Как правило, группу, которой показывают новый дизайн сайта (В), называют тестовой, а группу, которой показывают старый дизайн (А) – контрольной.
Целевая метрика – CTR, то есть количество кликов на баннер, делённое на количество показов. Буду сравнивать среднее значение метрики CTR для контрольной и тестовой групп. Предположу, что в контрольной группе среднее значение метрики составляет 12%, а в тестовой – 14%.
Если среднее значение метрики в тестовой группе выше, чем в контрольной, то означает ли это, что дизайн сайта В лучше дизайна сайта А? Ответ: нет. Необходимо показать, что результаты А/В-теста статистически значимы. Это означает, что различие в версиях наблюдается не случайно и не обусловлено какой-либо ошибкой. Проверить это можно с помощью статистических тестов.
Не буду заниматься сбором данных в рамках данной публикации. Буду анализировать данные, взятые из датасета с Kaggle. Скачать его можно здесь.
📌 Читать дальше
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍44❤9🔥3
Большие датафреймы могут потреблять значительные объемы памяти. Если обрабатывать #данные небольшими фрагментами, то можно избежать нехватки памяти и получить доступ к данным быстрее.
В приведенном примере кода используется
#tips #datascience #junior
@data_analysis_ml
В приведенном примере кода используется
chunksize=100000
, что работает примерно в 5495 раз быстрее, чем без использования chunksize
.#tips #datascience #junior
@data_analysis_ml
👍35🔥9❤6👎2
Cleanlab 🚀
Всего за 3 строки кода эта библиотека с открытым исходным кодом может очистить любой датасет!
Вы можете:
- удалять выбросы
- находить ошибки в данных
- выявлять дубликаты
- проводить активное обучение
- строить распределения
- И многое другое ...
Cleanlab разработана специалистами Массачусетского технологического института и работает на основе нового алгоритма под названием
На картинке 2 приведено упрощенное объяснение этого алгоритма!
Библиотека работает с:
- Любыми данными (текст, изображения, таблицы, аудио и т.д.)
- Любые задачи ML (классификация,, распознавание, работа с LLM и многое другое ...)
• Github
@data_analysis_ml
Всего за 3 строки кода эта библиотека с открытым исходным кодом может очистить любой датасет!
Вы можете:
- удалять выбросы
- находить ошибки в данных
- выявлять дубликаты
- проводить активное обучение
- строить распределения
- И многое другое ...
Cleanlab разработана специалистами Массачусетского технологического института и работает на основе нового алгоритма под названием
Confident Learning!
На картинке 2 приведено упрощенное объяснение этого алгоритма!
Библиотека работает с:
- Любыми данными (текст, изображения, таблицы, аудио и т.д.)
- Любые задачи ML (классификация,, распознавание, работа с LLM и многое другое ...)
• Github
@data_analysis_ml
👍36🔥6❤3