DenoiseLAB
486 subscribers
1.33K photos
159 videos
3 files
1.58K links
Блог DenoiseLAB (машинное обучение, аналитика)

Информация в канале служит только для ознакомления и не является призывом к действию. Не нарушайте законы РФ и других стран. Мы не несем отвественность за ваши действия или бездействия.
Download Telegram
300 Вопросов по Машинному обучению (Machine Learning) - Вопрос_221

🔠 Что вы знаете про Partial Dependence Plots (PDP) ? (Часть_2)

Основные преимущества PDP включают:

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

#Partial_Dependence_Plots #Machine_Learning #Model_Interpretation #Linear_Regression #Classification #Feature_Influence #Predictive_Modeling #Data_Visualization
300 Вопросов по Машинному обучению (Machine Learning) - Вопрос_221

🔠 Что вы знаете про Partial Dependence Plots (PDP) ? (Часть_3)

Однако, есть и недостатки:

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

#Partial_Dependence_Plots #Machine_Learning #Model_Interpretation #Linear_Regression #Classification #Feature_Influence #Predictive_Modeling #Data_Visualization
Пример реализации Partial Dependence Plots (PDP) для взаимодействия двух признаков с использованием GradientBoostingClassifier:

from sklearn.datasets import make_hastie_10_2
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.inspection import PartialDependenceDisplay
import matplotlib.pyplot as plt

# Создание набора данных
X, y = make_hastie_10_2(random_state=0)

# Обучение модели
clf = GradientBoostingClassifier(n_estimators=100, learning_rate=1.0, max_depth=1, random_state=0).fit(X, y)

# Определение признаков для PDP
features = [0, 1, (0, 1)]

# Создание PDP
pdp_display = PartialDependenceDisplay.from_estimator(clf, X, features)

# Показать PDP
plt.show()
🔥🔥🔥Анализ навыков аналитиков по данным Яндекса. Затейно, что на втором месте не hard скилы или какие-то софт-скилы, а именно аналитика, как таковая. Что и требовалось доказать.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32
https://habr.com/ru/users/VladimirMironovML/publications/articles/ - Опубликованна моя статья для компании Selectel про h2oGPT. Ох... сколько материалу было перелопачено, прям, вагон!
https://habr.com/ru/specials/808603/ - моя вторая статья, которую я освещал по заказу Хабр.ру и Компании Cloud.ru. Мне надо было пообщаться с гостями собрать материалы, провести несколько интервью, в том числе с главными спикерами и узнать мнение публики о положении дел на рынке на сегодняшний день в облачно инфраструктуре, как со стороны бизнеса, так и со стороны вендров.
👍3
☄️☄️☄️Бесплатные симуляторы Аналитика, можно немного прокачаться и отточить навыки в анализе.

1. Data analytics & visualization в Accenture (компания - лидер консалтинговых услуг из списка Fortune Global 500)
2. Power BI в PWC (консалтинговая компания из “большой четверки”)
3. Data Analytics в Quantium (компания, занимающаяся data science и AI)
4. Data Visualisation: Empowering Business with Effective Insights в Tata (многопрофильная компания, работающая в 150 странах)
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
😎😎😎Чую работы будет много с этими друзьями ))))
😁2
300 Вопросов по Машинному обучению (Machine Learning) - Вопрос_222

🔠Какие есть аналоги Partial Dependence Plots (PDP) ?

1. Accumulated Local Effects (ALE) Plots:
- Похожи на PDPs, но более устойчивы к смещению, вызванному распределением входных данных.
- ALE оценивают локальное влияние переменной, а не глобальное влияние, как в PDPs.

2. Shapley Additive Explanations (SHAP):
- Метод, основанный на теории кооперативных игр, для объяснения прогнозов индивидуальных образцов.
- Вычисляет вклад каждой входной переменной в прогноз для каждого наблюдения.
- Предоставляет как локальные, так и глобальные объяснения модели.

#Partial_Dependence_Plots #Machine_Learning #Model_Interpretation #Linear_Regression #Classification #Feature_Influence #Predictive_Modeling #Data_Visualization
Пример кода, который демонстрирует, как вычислить и визуализировать ALE для модели прогнозирования цен на недвижимость в Калифорнии, используя линейную регрессию и случайный лес:

%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import fetch_california_housing
from sklearn.ensemble import RandomForestRegressor
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from alibi.explainers import ALE, plot_ale

# Загрузка и подготовка данных
data = fetch_california_housing()
X = data.data
y = data.target
feature_names = data.feature_names

# Разделение данных на обучающую и тестовую выборки
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Обучение моделей
lr = LinearRegression()
rf = RandomForestRegressor(n_estimators=100, random_state=42)
lr.fit(X_train, y_train)
rf.fit(X_train, y_train)

# Вычисление ALE для линейной регрессии
lr_ale = ALE(lr.predict, feature_names=feature_names, target_names=['Value in $100,000's'])
lr_exp = lr_ale.explain(X_train)

# Вычисление ALE для случайного леса
rf_ale = ALE(rf.predict, feature_names=feature_names, target_names=['Value in $100,000's'])
rf_exp = rf_ale.explain(X_train)

# Визуализация ALE
plot_ale(lr_exp, feature_names=feature_names)
plot_ale(rf_exp, feature_names=feature_names)
🔥🔥🔥Вчера, с постоянным клиентом разбирали рабочую задачу, по NLP от крупного заказчика. Была поставлена задача разработки семантического анализа для небольшой базы данных при ее ручном дополнении и выдачи ролеватного результата.

🥵🥵🥵 Разобрали текущие кейсы, посмотрели его демо код на тестовых сторонних данных обсудили этапы реализации пайплайна и препроцессинга. Посмотрели, какие есть текущие решения в плане использования WordToVec, TF-IDF, Transformers.

👍👍👍В итоге, я предложил остановиться на коде реализованyом на Bert (Transformers). Показал заготовку для рабочего прототипа, и сказал как ее надо поставить, чтобы все отработало. Как итог, клиент остался доволен, допилил свою модель и поднял скор по решению задачи на требуемую величину.

🔠🔠🔠Изначально, наивысший скор был у него не выше 0.65 по заданным позициям.
Please open Telegram to view this post
VIEW IN TELEGRAM
☄️☄️☄️День, вчера был насыщен на новые рабочие задачи, в частности консультации. Пришел новый заказчик и разбирали с ним рабочий кейс. Заказчик представляет собой среднего регионального поставщика услуг электроэнергии. Была рабочая задача, по оценке степени обледенения на линиях электропередач.

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

🚩🚩🚩Разработке MVP, реализации его и возможности масштабирования, как в целом это будет выглядеть, а также дальнейшие способы реализации продукта и его дополнения и расширения. Также я рассказал, какие уже были в практике похожие кейсы, как они решались. В детали конечно не было погружения, так как есть соглашения о неразглашении, но общие концепции и вектора действия были указаны. По итогу встречи, осталось очень положительное обоюдное впечатление и были расставлены множественные финальные точки над существующими пробелами и вопросами со стороны заказчика.
Please open Telegram to view this post
VIEW IN TELEGRAM
300 Вопросов по Машинному обучению (Machine Learning) - Вопрос_222

🔠Какие есть аналоги Partial Dependence Plots (PDP) ? (Часть_2)

3. Individual Conditional Expectation (ICE) plots: Эти графики также используются для визуализации и анализа взаимодействия целевой переменной и набора входных признаков. Однако, в отличие от PDP, ICE позволяет наблюдать за изменением предсказания для конкретных значений признаков, сохраняя остальные признаки на их средних значениях.

4. ICE Curves: Подобно ICE plots, ICE Curves также позволяют наблюдать за изменением предсказания модели при изменении значений отдельных признаков, но в виде кривых, что может быть более удобно для визуализации изменений на разных уровнях признака

#Partial_Dependence_Plots #Machine_Learning #Model_Interpretation #Linear_Regression #Classification #Feature_Influence #Predictive_Modeling #Data_Visualization
В этом примере используется модель на основе деревьев (например, XGBoost) для классификации данных, но SHAP может быть применен к любой модели машинного обучения.

import shap
import xgboost
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_breast_cancer

# Загрузка и подготовка данных
data = load_breast_cancer()
X = data.data
y = data.target

# Разделение данных на обучающую и тестовую выборки
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Обучение модели
model = xgboost.XGBClassifier(use_label_encoder=False, eval_metric='logloss')
model.fit(X_train, y_train)

# Создание объекта Explainer для модели
explainer = shap.Explainer(model)

# Вычисление значений SHAP для обучающих данных
shap_values = explainer(X_train)

# Визуализация глобальной важности признаков
shap.summary_plot(shap_values, X_train, plot_type="bar")

# Вычисление значений SHAP для тестовых данных и визуализация
shap_values_test = explainer(X_test)
shap.summary_plot(shap_values_test, X_test, plot_type="bar")
🥳🥳🥳Наконец-то, 100 отзыв на Profi.ru. Ох... сколько за это время всего было и не перечесть, проектов, знакомств, связей, интересных решений, много чего было.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥1
🚩🚩🚩Сегодня плотно работаю на соревой по Kaggle, дописываю статью про галлюцинации в LLM, скоро все это будет анонсировано и выйдет на ресурсах, также будет новая скоро статья про взлом LLM, сейчас она в разработке.
Please open Telegram to view this post
VIEW IN TELEGRAM
Для обучения ИИ теперь можно обойтись без людей.
Трудно переоценить прорыв, достигнутый китайцами в Tencent AI Lab. Без преувеличения можно сказать, что настал «момент AlphaGo Zero» для LLM. И это значит, что AGI уже совсем близко - практически за дверью.

Первый настоящий сверхразум был создан в 2017 компанией DeepMind. Это ИИ-система AlphaGo Zero, достигшая сверхчеловеческого (недостижимого для людей) класса игры в шахматы, играя сама с собой.
Ключевым фактором успеха было то, что при обучении AlphaGo Zero не использовались наборы данных, полученные от экспертов-людей. Именно игра сама с собой без какого-либо участия людей и позволила ИИ-системе больше не быть ограниченной пределами человеческих знаний. И она вышла за эти пределы, оставив человечество далеко позади.

Если это произошло еще в 2017, почему же мы не говорим, что сверхразум уже достигнут?
Да потому, что AlphaGo Zero – это специализированный разум, достигший сверхчеловеческого уровня лишь играя в шахматы (а потом в Го и еще кое в чем).
А настоящий сверхразум (в современном понимании) должен уметь если не все, то очень многое.

Появившиеся 2 года назад большие языковые модели (LLM), в этом смысле, куда ближе к сверхразуму.
Они могут очень-очень много: писать романы и картины, сдавать экзамены и анализировать научные гипотезы, общаться с людьми практически на равных …
НО! Превосходить людей в чем либо, кроме бесконечного (по нашим меркам) объема знаний, LLM пока не могут. И потому они пока далеко не сверхразум (ведь не считает же мы сверхразумом Библиотеку Ленина, даже если к ней приделан автоматизированный поиск в ее фондах).

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

И вот прорыв – исследователи Tencent AI Lab предложили и опробовали новый способ обучения LLM.
Он называется «Самостоятельная состязательная языковая игра» [1]. Его суть в том, что обучение модели идет без полученных от людей данных. Вместо этого, две копии LLM соревнуются между собой, играя в языковую игру под названием «Состязательное табу», придуманную китайцами для обучения ИИ еще в 2019 [2].

Первые экспериментальные результаты впечатляют (см. график).
• Копии LLM, играя между собой, с каждой новой серией игр, выходят на все более высокий уровень игры в «Состязательное табу».
• На графике показаны результаты игр против GPT-4 двух не самых сильных и существенно меньших моделей после 1й, 2й и 3й серии их обучения на играх самих с собой.

Как видите, класс существенно растет.
И кто знает, что будет, когда число самообучающих серий станет не 3, а 3 тысячи?

График: https://telegra.ph/file/9adb0d03a3a0d78e
1 https://arxiv.org/abs/2404.10642
2 https://arxiv.org/abs/1911.01622
🥶🥶🥶Snowflake только что запустила самую крупную модель с открытым исходным кодом на сегодняшний день.

👍👍👍482 млрд параметр MoE.

❄️❄️❄️17 млрд. активных параметров и 128 экспертов, обученных на 3,5 Т токенов.

Даже описание данных с открытым исходным кодом!

pip install git+https://github.com/Snowflake-Labs/transformers.git@arctic

https://huggingface.co/Snowflake/snowflake-arctic-instruct
Please open Telegram to view this post
VIEW IN TELEGRAM