Интересное что-то
546 subscribers
2.77K photos
253 videos
140 files
4.57K links
Материалы и мысли, понадерганные отовсюду
Блог: https://t.iss.one/asisakov_channel
Чат: https://t.iss.one/youknowds_chat
Download Telegram
Forwarded from iggisv9t channel
https://mespadoto.github.io/proj-quant-eval/post/projections/

Ребята прогнали кучу снижалок размерности на куче датасетов.
Как делать (бес)толковые собрания

Пару месяцев назад побывал на регулярном митапе Vladimir TechTalks.
Рассказывал о типичных проблемах при организации встреч, созвонов, собраний, и о том, как их избегать.
Тема довольно актуальная и часто болящая. Так что надеюсь, что какие-то полезные мысли удастся донести, и работа станет немного легче и приятнее.

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

Ссылка на видео https://rutube.ru/video/a1a6c67f4e7b3dba91d30e8a57b58cba/
Мой доклад на 40-й минуте
А еще на 1ч 26-й минуте Виктор Корейша, известный вам по подкасту Кода кода, рассказывает про настолки и их потенциальную пользу для работы.
Forwarded from DevFM
Регулярные выражения в Python от простого к сложному

В статье рассказывается:
— о регулярных выражениях вообще
— их плюсах в виде крутого инструмента для решения задач
— их минусах в виде write-only кода и других нюансах
— о базовом синтаксисе
— о применении регулярок в питоне с кучей примеров
— о разных сложных конструкциях

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

Недавно мы предлагали удобный сервис для проверки регулярок regex101.
#python #skills
Embeddings — это числовые представления слов. Они позволяют машинам понимать значение человеческих слов и то, насколько близки слова друг к другу семантически (по смыслу).
OpenAI выпустила новую embedding модель text-embedding-ada-002

Несколько слов о новой модели:
- Она превосходит предыдущие модели OpenAI в большинстве тестовых задач.
- Можно использовать модель для задач поиска и сходства как по тексту, так и по коду.
- Работает с более длительными предложениями. Длина предложения увеличена в 4 раза - до 8 191 токенов (примерно ~10 страниц) по сравнению с 2 046 ранее.
- Дешевле в 10 раз: 0,0004 $ за 1 тыс. токенов (или примерно ~3000 страниц за доллар США), что является 10 % от цены ранее самой дешевой embeddings модели.

Новую модель можно начать использовать в несколько строк кода, используя официальную библиотеку.
import openai
response = openai.Embedding.create(
input="porcine pals say",
model="text-embedding-ada-002"
)

#news #openai #embeddings
Forwarded from Quant Valerian
Про карточные платежи

В четверг провел Вастрик.АМА, рассказал про то, как работают карточные платежи: в пластике, с телефона и онлайн. Получилось _очень_ много. Но пусть два с половиной часа вас не пугают -- можно смотреть кусками минут по 15-20, правда, желательно по порядку.
Некоторые вещи объяснил спутано (как-нибудь исправлюсь), скорее всего где-то ошибся, но в целом материал опробованный. Так или иначе всё это я уже рассказывал своим сотрудникам, а недавно решил оформить в красивую, цельную презентацию. Вот она:
https://youtu.be/yxtbtPRh9N8
Ставьте лайки, пишите комменты, задавайте умные вопросы, получайте глупые ответы, смотрите соседние видео.
Я старался.


Я, конечно, не для того 48 слайдов рисовал, чтобы вы их не смотрели, но если всё-таки предпочитаете подкасты, то вот
https://vas3kama.mave.digital/ep-54
Forwarded from Bear Market
The year of CTAs

Говоря про сбалансированный портфель, стоит упомянуть «звездочку» этого года - CTAs.

CTA (Commodity trading advisor) - это по сути тип хедж фондов, которые вкладывают в различные фьючерсные контракты. Не смотря на слово “commodity”, контракты могут быть и не сырьевыми. Например, фьючерс на рубль к доллару или на весь американский рынок акций (S&P500).

В целом, СТА не имеют высокого шарпа, поэтому мы, например, предпочитаем очень невысокий процент аллокации в них - отдавая вес стратегиям с более высокой концентрацией альфы.

Но для инвесторов с гигантскими портфелями или для тех, кому недоступны фонды с высокой альфой, простая трендовая стратегия на фьючерсах (то, что делают СТА) может служить хорошим диверсификатором.

В 2022 доходы СТА-ев доставили от 5% до 40%, тогда как рынок акций серьезно упал. Последний раз, СТА так хорошо послужили в портфеле в 2008 - во время housing crisis.

На приведенной картинке показаны позиции СТА-ев во фьючерсных контрактах на американский рынок ценных бумаг (S&P500). Как видите, они достаточно лихо разворачивались и вставали в правильные позиции (лонг или шорт) в этом году «катаясь» на роллеркостере S&P500. Конечно, любая трендовая стратегия теряет на развороте (особенно это хорошо видно в самом конце графика). Но если движения в одну сторону довольно длительные, то на них можно заработать. Ну и естественно, зарабатываем как на движениях вверх, так и на движениях вниз.

Главное же, похожий на рынок бумаг шарп (~0.5) и полная к нему ортогональность.

#пропортфель
Forwarded from DevFM
Ищем свой пароль в файле размером 37 Гб на Python

Статья Has your password been pwned? Or, how I almost failed to search a 37 GB text file in under 1 millisecond примечательна по нескольким причинам.

Автор начинает статью с упоминания известного сайта have i been pwned, где можно проверить наличие вашего пароля в слитых базах. И озвучивает интересную мысль: если до проверки пароля в базах не было, то после проверки он уже точно там есть.

Далее начинается захватывающее чтиво. Автор проявляет невероятную смекалку для достижения своей цели — локально проверить свой пароль в файле размером 37 Гб за 1 миллисекунду.

Но не всё так сразу. На первый взгляд, поставленная задача кажется вообще не решаемой. Поэтому подходить к решению нужно итеративно. Начинается всё с банального поиска в лоб. Этот способ, конечно, рабочий, но медленный. Следующий шаг, чтобы улучшить результат — погружение в специфику задачи. Автор применяет различные приемы: свойства хешей, алгоритмы поиска, структуры данных и в результате решает поставленную задачу!

Откровенно говоря, для понимания решения придётся очень вдумчиво посидеть.

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

Слона нужно есть по частям. Начинаем с простого, но работающего решения. Критически смотрим на полученное решение. Если что-то не устраивает, то ищем "бутылочное горлышко" и оптимизируем его.

И еще одна приятность статьи — в процессе повествования автор оставляет множество интересных ссылок для изучения.
#python
Forwarded from commit history
Как работают text2image модели и как получаются такие качественные изображения?

Короче, если кто-то хочет разобраться в работе text-to-image моделей (stable diffusion, dalle-2, midjourney) вот короткая подборка, в зависимости от вашего уровня знакомства c ML.

1. Простая интерактивная статья от WP. Как текст превращается в картинки и что такое диффузия? Статья подойдет всем.

2. Статья от Jay Alammar. Уже сложнее, надо понимать что такое embeddings, autoencoder, latent space, UNet. Зато подробные иллюстрации помогают понять архитектуру моделей и как происходит forward pass. А еще если вам больше нравится больше смотреть видео, чем читать статьи, там в конце список видео а-ля How does Stable Diffusion work?

3. Статья от Eugen Yan. Разбор основных идей, которые лежат в основе text-2-image. Плюс в конце есть ссылки на сами статьи, если кто-то захочет почитать сам. Вообще, Eugen Yan - крут. У него понятные разборы, которые сразу пачку статей покрывают + он автор репы https://github.com/eugeneyan/applied-ml.
Forwarded from commit history
Если у вас совсем нет времени, но вы знакомы с терминологией, то вот вам основные идеи, которые лежат в основе моделей. Супер-краткий пересказ статьи Eugen Yan.

+ Diffusion – добавляем гауссовский шум к данным и учимся его предсказывать. На инференсе сэмплим изображение из рандомного шума. (По сути вычитаем шум которые предсказали.) Такие модели могут просто генерить изображения в стиле данных, на котором обучались.
Статья: Denoising Diffusion Probabilistic Models (DDPM; 2020)

+ Text conditioning – добавляем conditioning (опору на текст), чтобы управлять генерацией и получать изображения из текста.
Сначала в Contrastive Language-Image Pre-training (CLIP; 2021) научились сопоставлять изображения и тексты в одно семантическое пространство: вектор текста “щенок лабрадора” и вектор фото щенка лабрадора будут расположены близко. Потом в DALL·E (2021) токенизровали изображение, токенизировали текст и конкатенировали их, получая text_token_1, …, text_token_n, image_token_1, …, image_token_n. Все закинули в трансформер. На инференсе начинали с текстовых токенов и авторегрессионно предсказывали визуальные токены. В DALL·E 2 (aka unCLIP, 2022) использовали conditioning эмбеддинг из CLIP и авторегрессионный процесс из Dalle. Теперь из вектора текста еще предсказывается clip embedding, а потом происходит финальное декодирование в изображение. В Imagen (2022) энкодеры из CLIP заменили на T5 для текста и UNet для изображений. Там сначала генерируют изображение 64x64, а потом делают super-resolution в 1024x1024.

+ Classifier guidance
– сильнее двигаем результат в сторону текста, считай управляем степенью влияния промта. В classifier-guidance paper (2021) добавили с определённым весом градиенты с классификатора обученного на шумном ImageNet, чтобы двигать изображение сильнее в сторону класса. Потом в classifier-free guidance (2021) реализовали conditional dropout, иногда заменяя текстовый Промт на Null токен. Изображение с промтом: guidance=1, без промта guidance=0. И теперь модель могла генерировать изображения с разной степенью conditioning (опоры на текст), управляя параметром guidance.

+ Latent space – шум добавляем не к пикселям изображений а к их эмбеддингам. На инференсе из шума сэмплим вектор, а потом декодируем его в изображение. Stable Diffusion (2021) Сначала векторизуем изображение, используя VAE. Потом удаляем шум из полученного вектора с помощью UNet и декодируем полученный вектор. В итоге Stable diffusion учиться и сэмплит быстрее, так как работает не с пикселями, а с сжатыми векторами.