Telegram Web Link
Какие основные типы данных в Python вы знаете?

Целые числа (int) — тут всё понятно, это обычные числа.
Вещественные числа (float) — их ещё называют числа с плавающей точкой.
Комплексные числа (complex) — их можно записывать так:

x = complex(1, 2)
print(x) # -> (1+2j)

Списки (List) — изменяемые коллекции, которые могут содержать элементы различных типов, упорядочены, поддерживают операции добавления и удаления элементов.
Кортежи (Tuple) — неизменяемые коллекции, которые также могут содержать элементы различных типов, упорядочены.
Строки (String) — неизменяемые коллекции. По сути, строка — это упорядоченная последовательность символов.
Множества (Set) — изменяемые коллекции, которые содержат уникальные элементы, не поддерживают индексацию и срезы.
Неизменяемые множества (Frozenset) — это те же множества, только неизменяемые.
Словари (Dictionary) — изменяемые коллекции пар ключ-значение, упорядочены начиная с Python 3.7.

#junior
🧠Чему вы бы хотели научиться?

Расскажите нам о ваших пожеланиях: какие навыки вы хотели бы прокачать в ближайшее время или какую профессию хотели бы приобрести?

За прохождение опроса вы получите промокод на скидку 15% на все наши курсы до конца 2024 года.

👉Опрос по ссылке👈
Допустим, у вас есть категориальная переменная, которая принимает тысячи разных значений. Как бы вы её закодировали?

Ответ зависит от того, какую задачу мы решаем: классификации или регрессии.

Если это регрессия, то один из способов — target энкодинг. Каждую категорию можно заменить на среднее значение целевой переменной для этой категории.

Если это бинарная классификация, то можно закодировать категориальную переменную, найдя вероятность целевой переменной принять значение 1, при условии, что объект принадлежит этой категории. Например, если у вас есть категориальная переменная «Город» для прогнозирования невозврата кредита, а вероятность того, что человек, живущий в Сан-Франциско, не вернёт кредит, равна 0,4, то вы замените значение «Сан-Франциско» на 0,4.

#junior
#middle
Какие стратегии подбора гиперпараметров вы знаете?

Можно назвать три стратегии:

✔️Grid Search
При таком подходе для каждого гиперпараметра пользователю необходимо вручную указать список значений, которые алгоритм сможет опробовать. Далее модель обучается, используя каждую комбинацию гиперпараметров, и возвращает комбинацию, которая даёт оптимальный результат. Этот подход может быть довольно затратным в вычислительном отношении.
✔️Случайный поиск
Этот подход похож на Grid Search, но отличается тем, что вместо указания того, какие значения следует проверять для каждого гиперпараметра, даётся верхняя и нижняя граница значений для каждого гиперпараметра. Затем с равномерной вероятностью выбираются случайные значения в пределах этих границ. Далее пользователю возвращается лучшая комбинация.
✔️Байесовская оптимизация
Этот подход основан на теореме Байеса. Эта теорема описывает вероятность наступления события на основе имеющейся информации. При Байесовской оптимизации строится вероятностная модель из набора гиперпараметров, который оптимизирует определённый показатель. Также используется регрессионный анализ для итеративного выбора наилучшего набора гиперпараметров.

#junior
#middle
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.

В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги

👉Подписаться👈
В чём разница между жёстким и мягким голосованием в ансамблях?

▪️ Жёсткое голосование называют ещё голосованием большинством. В этом случае общее предсказание ансамблем метки класса, например, выбирается по принципу «большинство классификаторов предсказали эту метку».

Например, если прогноз для определённой выборки такой:

- классификатор 1 -> класс 1
- классификатор 2 -> класс 1
- классификатор 3 -> класс 2

То ансамблевый классификатор определит объект как «класс 1».

Жёсткое голосование часто используется, когда все классификаторы считаются равноценными.

▪️В мягком голосовании общее предсказание ансамблем метки класса определяется через argmax суммы всех предсказанных вероятностей. Каждому классификатору можно присвоить определённые веса с помощью weights параметра. Когда веса предоставлены, прогнозируемые вероятности классов для каждого классификатора собираются, умножаются на вес классификатора и усредняются. Выбирается метка класса, у которой самая высокая средняя вероятность.

#junior
#middle
This media is not supported in your browser
VIEW IN TELEGRAM
Что вы знаете про метод k-средних (англ. k-means)?

Этот метод кластеризации, в основе которого лежит повторение двух действий: распределение объектов по кластерам и пересчёт центров кластеров.

Сначала центры кластеров выбираются случайно — их просто «разбрасывают» в пространстве признаков. Каждый объект относят к тому кластеру, к центру которого он оказался ближе всего. После этого центры кластеров пересчитывают как среднее арифметическое векторов признаков всех вошедших в кластер объектов. Затем объекты перераспределяются заново. Процесс повторяется до тех пор, пока центры кластеров не перестанут значительно меняться.

По сути, алгоритм k-means работает на уменьшение среднего квадрата евклидова расстояния от объектов до центров их кластеров.

#junior
#middle
Что вы знаете про нормальное распределение? Зачем оно нужно в Data Science?

Многие величины имеют нормальное распределение, которое также называют распределением Гаусса. Чаще всего, если на какую-то величину влияет много слабых независимых факторов, то эта величина будет иметь близкое к нормальному распределение.

У нормального распределения есть два параметра: математическое ожидание (среднее) и дисперсия. Распределение, у которого эти параметры соответственно равны нулю и единице, называют стандартным.

Также у нормального распределения есть несколько свойств:
▪️Симметричность относительно своего среднего значения.
▪️ График нормального распределения имеет характерную форму колокола.
▪️ Правило трёх сигм: около 68% значений лежат в пределах одного стандартного отклонения от среднего, около 95% — в пределах двух стандартных отклонений, и около 99.7% — в пределах трёх стандартных отклонений.

Многие статистические методы предполагают или опираются на нормальное распределение данных. К примеру, t-тест эффективен только тогда, когда данные соответствуют нормальному распределению. Кроме того, некоторые алгоритмы машинного обучения предполагают, что входные данные распределены нормально.

#junior
Что такое линейный дискриминантный анализ (LDA)?

Это статистический метод, используемый для классификации. Основная цель LDA — найти линейную комбинацию признаков, которая лучше всего разделяет пространство объектов на необходимое число классов.

Для LDA делаются некоторые ключевые предположения о данных: нормальное распределение признаков в каждом классе, однородность ковариационных матриц, независимость признаков.

Для нахождения гиперплоскости, которая оптимально делит пространство объектов, решается вспомогательная задача. Нужно найти ось, проекция на которую максимизирует отношение общей дисперсии выборки к сумме дисперсий внутри
отдельных классов. Результатом работы алгоритма будет вектор, который является нормалью к искомой гиперплоскости.

#junior
Зачем может понадобиться преобразование Бокса-Кокса?

Преобразование Бокса-Кокса — это метод трансформации данных. Применяется, когда переменные имеют явно выраженные асимметричные распределения. Метод помогает приблизить распределение к виду нормального, а это является важным условием для некоторых статистических тестов.

Для решения задачи нужно найти оптимальное значение λ, чтобы преобразованные данные были как можно ближе к нормальному распределению.

Можно пользоваться, например, методом boxcox из модуля scipy.stats.

#junior
#middle
Объясните разницу между эпохой и итерацией в машинном обучении

Здесь также стоит ввести понятие «батч». Батч — это партия данных, величину которой вы определяете сами.

✔️Эпоха — это полный проход модели через весь обучающий набор данных, то есть через все батчи.
✔️ Итерация — это количество обновлений параметров модели. Это обычно происходит после обработки каждого батча.


Пример: можно разделить датасет из 2000 объектов на батчи размером 500 объектов. Тогда для завершения одной эпохи потребуется четыре итерации.

#junior
#middle
Что такое стемминг и лемматизация?

Это методики, которые используются при обработке текста в задачах NLP (обработки естественного языка).

Как правило, тексты содержат разные грамматические формы одного и того же слова. Для модели же важно рассматривать их как одно и то же слово. Для приведения словоформ к единой форме применяются стемминг и лемматизация.

▪️Стемминг — грубый процесс «обрезания» слов. Выполняется на основе эвристик, без учёта контекста, словарей и морфологии. Его проще внедрить и он работает быстрее.
▪️Лемматизация — более сложный и тонкий метод. Приводит слово к его начальной форме (лемме), используя морфологический анализ и знания об особенностях конкретного языка.

#junior
#middle
В чём разница между CHAR и VARCHAR в SQL?

CHAR и VARCHAR — это типы данных для хранения символьных строк.

✔️CHAR: предназначен для хранения строк фиксированной длины. Если помещаемая в него строка короче заявленной длины, то она дополняется пробелами. Например, если был определён столбец с типом CHAR(5), то при внесении в него строки «cat», она дополнится двумя пробелами в конце.
✔️VARCHAR предназначен для хранения строк переменной длины. Никакие пробелы не добавляются.

CHAR более эффективен для хранения и обработки строк, длина которых всегда одинакова. Он всегда использует столько памяти, сколько выделено для него.

#junior
#middle
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
В каких ситуациях лучше не применять обобщённые линейные модели (generalized linear models, GLM)?

К ним относятся, в частности, линейная и логистическая регрессии.

1️⃣ Если отношения между переменными сильно нелинейные. В таких случаях лучше рассмотреть другие модели, которые могут это учесть.
2️⃣ Обобщённые линейные модели в идеале предполагают соблюдение некоторых условий: нормальность остатков, гомоскедастичность и отсутствие мультиколлинеарности. В противном случае, результаты модели могут быть ненадёжными.
3️⃣ GLM могут быть чувствительны к выбросам или экстремальным значениям.

#junior
#middle
Что такое метрика BLEU?

Метрика BLEU (Bilingual Evaluation Understudy) — это один из методов оценки качества машинного перевода. Основная идея BLEU заключается в сравнении переведённого моделью текста с эталонными переводами, выполненными человеком.

Оценки вычисляются для отдельных переведённых сегментов текста, чаще всего предложений. Затем эти оценки усредняются по всему тексту, чтобы получить оценку общего качества перевода.

Алгоритм, если коротко, такой: для каждой длины n-граммы (от 1 до 4) подсчитывается точность. Точность — это отношение количества совпавших с эталонными n-грамм в машинном переводе к общему количеству n-грамм в этом переводе. Затем эти точности комбинируются. Есть также штраф за краткость. Более подробно можно прочесть здесь.

#middle
-35% на самый хардкорный курс по вышмату

🎄 Новый год начинается с подарков, а хороший подарок для себя — новые знания со скидкой 35%!

🌟«Математика для Data Science» — 19 490 ₽ (вместо 29 990 ₽)

Полугодовая программа от преподавателей МГУ, которая включает в себя все необходимые знания по математике для работы в Data Science.

Вас ждет развернутая обратная связь по всем домашним заданиям, а также ссылки на полезные дополнительные материалы.

У вас не будет шансов не усвоить какие-то темы курса👌

🔥 Переходите и активируйте вводные занятия курсаhttps://proglib.io/w/4468ec03
Какие проблемы есть у рекуррентных нейронных сетей (RNN)?

RNN — это нейронные сети для работы с последовательностями (текстами, временными рядами). Они имеют механизм для запоминания предыдущих входных данных. Тем не менее они подвержены некоторым проблемам:

▪️Взрывающийся градиент.
Это ситуация, при которой градиент экспоненциально растёт вплоть до полной потери стабильности RNN. Если градиент становится бесконечно большим, нейросеть проявляет проблемы с производительностью.
▪️Исчезающий градиент.
Это ситуация, обратная предыдущей. В этом состоянии градиент приближается к нулю, что приводит к потере RNN способности эффективно обучаться по предложенным данным. Для рекуррентных нейронных сетей характерен высокий риск исчезающего или взрывающегося градиента при обработке длинных последовательностей данных.
▪️Медленное обучение.
В целом, для RNN требуются огромные вычислительные мощности, большой объём памяти и много времени, если речь идёт о значительном количестве текстов.

#junior
#middle
В чём разница между косинусным сходством и косинусным расстоянием?

▫️Косинусное сходство (или близость)
Измеряет косинус угла между двумя векторами в пространстве. Это мера того, насколько вектора «похожи» друг на друга. Значение косинусного сходства варьируется от -1 до 1, где -1 означает, что вектора абсолютно непохожи, 0 — что нет корреляции, 1 — что похожи.
▫️Косинусное расстояние
Измеряет степень различия между двумя векторами. Рассчитывается по формуле едицина минус косинусное сходство. Значение варьируется от 0 до 2. 0 означает полное сходство, а 2 — полную противоположность.

#middle
2024/09/30 20:26:59
Back to Top
HTML Embed Code: