Aspiring Data Science – Telegram
Aspiring Data Science
386 subscribers
465 photos
12 videos
12 files
2.15K links
Заметки экономиста о программировании, прогнозировании и принятии решений, научном методе познания.
Контакт: @fingoldo

I call myself a data scientist because I know just enough math, economics & programming to be dangerous.
Download Telegram
#trading #ml #chan

Любопытный подход к отбору признаков: сначала схожие фичи группируются в кластера, дальнейший отбор ведётся FS-алгоритмом уже по кластерам. Видимо, это сразу решает проблему колллинеарности.

https://www.youtube.com/watch?v=2-5HYJ0HhyQ
👍1
#yandex #ml #recommenders #transformers

Лучшие результаты для рекомендации Яндекс музыки дал трансформер сразу с 3+ лоссами.
Слишком большая история оказалась вредной.

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

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

https://www.youtube.com/watch?v=bk7J1oZGw6A&
#numpy

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

A = np.array([1,2,3,4,5])

np.pad(A, (2, 3), 'constant')
# array([0, 0, 1, 2, 3, 4, 5, 0, 0, 0])
1
#irobot #news

Насосали.

"Предложенная компанией Amazon сделка по покупке за $1,7 млрд фирмы iRobot, занимающейся производством роботов-пылесосов, была полностью одобрена антимонопольным ведомством Великобритании. Положительное решение регулятора привело к резкому росту акций iRobot до начала торгов, пишет издание Bloomberg."

https://3dnews.ru/1088520/velikobritaniya-odobrila-sdelku-po-pogloshcheniyu-irobot-kompaniey-amazon
#trading #erema

Немного новостей по торговому боту. Пытаясь начать проект без МЛ (была у меня идейка, покупать дёшево и продавать дорого), потратил несколько недель и понял, что без МЛ, за счёт простого перебора параметров, не получается, это путь в никуда. Работу над биржевыми данными высокого разрешения вел около месяца, попутно улучшая свою библиотечку для временных рядов.

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

Прогресс существенный:

1) благодаря библиотеке AlorPy настроил сбор стриминговых данных от брокера и сохранение в базу. Прилетают просто сотни изменений стаканов в секунду.

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

3) сегодня несколько усложнил модель с использованием своей достаточно богатой библиотечки статпризнаков над 3 группами торговых факторов. Офигел от количества требуемых расчётов. На 16 ядрах 1 торговый день будет обсчитываться около часа. И это я ещё урезал хотелки. На первых порах домашний сервер сойдёт, но для серьёзной работы только облако, только Dask/Spark. Благо бэк сервиса поиска дешёвых серверов у меня готов и работает уже 2 недели без сбоев.

На сегодня план дописать многопоточный расчёт признаков. В течение недели:
1) обсчитать хотя бы месяц торгов и построить пару моделек с разными таргетами
2) написать простой бэктестер и потестить несколько торговых политик, основанных на прогнозах
3) научиться применять лучшую модель на живом потоке рыночных данных
4) запустить робота с лучшей политикой в работу

Всё это хотел сделать за выходные к сегодняшнему утру вообще-то, но теперь не уверен, хватит ли даже недели.
🔥3🆒2❤‍🔥1
#parallel #heapq #codegems

Часто, если мне надо распределить работу между узлами, я просто использую np.array_split(job_elements, ncores). Но что делать, если элементы работы содержат разное количество инструкций? Тогда на практике часто складывается ситуация, что большинство узлов завершили свои вычисления, и все дружно ждут, пока пыхтит неудачливый узел, получивший самый большой кусок работы. Давно этот вопрос не давал мне покоя, тем более, что предстоит сделать много расчётов, и я бросился изучать книги по алгоритмам гуглить. Лучшее решение очень элегантно и использует модуль heapq.

import heapq

def distribute_work(workload: Sequence, nworkers: int) -> tuple:
"""Distribute array workload into nworkers chunks of approximately same total size."""
planned_work_per_worker = [[] for _ in range(nworkers)]
workload_indices_per_worker = [[] for _ in range(nworkers)]
totals = [(0, i) for i in range(nworkers)]
heapq.heapify(totals)
for i, value in enumerate(workload):
total, index = heapq.heappop(totals)
planned_work_per_worker[index].append(value)
workload_indices_per_worker[index].append(i)
heapq.heappush(totals, (total + value, index))
return planned_work_per_worker, workload_indices_per_worker

Пример распределения вычислений по 27 тикерам с разным количеством сделок на 5 ядер:

work_by_ticker = np.array([187109,153572,128916,107183,97039,72846,60048,59418,48540,43701,41435,39218,38058,36390,31703,31466,28101,27052,23557,17699,14327,12416,12158,11787,11464,11136,3643])

sol, sol_indices = distribute_work(work_by_ticker, nworkers=5)
print(sol)
for subarr in sol:
subarr = np.array(subarr)
print(subarr.sum(), subarr.size)

[[187109, 39218, 28101, 12158], [153572, 48540, 36390, 23557, 11136], [128916, 59418, 38058, 27052, 12416, 3643], [107183, 60048, 43701, 31703, 17699, 11464], [97039, 72846, 41435, 31466, 14327, 11787]]

266586 4
273195 5
269503 6
271798 6
268900 6

https://stackoverflow.com/a/61648403/4334120
1🤯1
Forwarded from Dealer.AI
В своём прошлом посте говорил о слухах, что AMD будет поддерживать вычисления DL моделей на GPU и колабиться с PyTorch

И вот свершилось!

Лиза Су, также продемонстрировала, что на новой gpu для Deep learning AMD MI300X влезает фулл LLM класса Falcon40B. Звучит многообещающе. Да и в целом, конкуренция это хорошо.

З. Ы. Да я в курсе, что Лиза Су дальняя родственница Хуанга из NVIDIA. Но вы наверняка и не знали, что интел и NVIDIA были долго кормовой базой для AMD, пока правительство не врубило антимонопольные штучки и позволило уйти в свободный полёт AMD. Опять же конкуренция важная штука для капитализма.
#trading #erema

Итак, волнительный момент ) почти неделя напряжённой работы близка к завершению, на данный момент есть 2 модельки, и можно 1 вызовом получить от брокера актуальные рыночные данные по акции, и прогнозы роста/падения по ней от моделей. Хорошо бы сделать бэктест торговой политики, но очень уж хочется влезть в рынок, запустить конвейер, пусть и (поначалу) ценой качества. Есть сомнения, что формат живых данных точно совпадает с тем, на чём модели обучались... Ну да ладно, увидим в процессе.

В общем, решил не гнать лошадей ) Сверю форматы данных, проведу небольшой бэктест сегодня. А завтра уже попробуем сделки.
❤‍🔥3🔥1
#music #deutsch #gpt #poetry

Решил послушать песенку, в ютубе её сопроводили английским переводом вместо видеоряда. Перевод буквальный и некрасивый. Попросил ChatGpt перевести с немецкого, потом сделать текст поэтичным. Просто охренел от качества, мне кажется, далеко не каждый native speaker так сможет.

"Hark, little maiden, the night is young,
Be virtuous, compliant, let silence be sung.
I'll guide you to paths shrouded in mystery,
Enchanted realms where only I hold the key.
The moon's gentle face peers from high above,
The sovereign observer, ruling with love.
Look up, behold the man in the moon's might,
A celestial monarch in majestic flight.

The night, an expanse of clarity untamed,
Where dreams and fairy tales eternally framed.
Stars shimmer, a wind's gentle sigh,
I'll unveil where lost children lie.
The man in the moon, the one to revere,
In regal splendor, he governs, austere.
Raise your gaze, witness his celestial might,
The man in the moon, a luminous light.

Together, we'll soar, unbound and free,
On ethereal winds, a wondrous decree.
The night's wings embrace, come, follow my lead,
My child, we'll ride clouds, swift as a steed.
Can you hear the whispers, the cosmic call?
Above us, a watcher, one standing tall.
The man in the moon, abode beyond the sky,
In tranquil seclusion, his watchful eye.

A final act awaits, our parting decree,
Farewell, little one, embark, journey with glee.
No tears need be shed, no pain shall befall,
Step into the snow, answer destiny's call.
With tender leaves, I'll gently caress,
As branches serenade, a song to address.
Now, my darling, find eternal rest,
While the man in the moon watches, ever blessed.

There he resides, the man in the moon,
Gaze skyward, witness his ethereal commune.
Above the clouds, his celestial domain,
The ruler of all, his sovereign reign.
The lonely sentinel, the man in the moon,
Bathed in morning's glow, his visage a maroon.
Man in the man in the moon, a poetic tune,
In verses and rhythms, forever immune."

оригинал:

"Komm, kleines Mädchen, die Nacht ist jung
Sei brav, ganz artig, am besten stumm
Ich zeig dir Wege, die niemand kennt
Verwunschene Orte
Die nur ich beim Namen kenn
Der Mann im Mond
Schau hoch, der Mann im Mond
Er ist's, der über allem thront
Schau hoch, der Mann im Mond
Die Nacht ist klar, der Blick reicht weit
Am Himmel schlummert ein Märchenreich
Die Sterne funkeln, es rauscht der Wind
Ich zeig dir, wo alle kleinen Kinder sind
Der Mann im Mond da ist der Mann im Mond
Er ist's, der über allem thront
Schau hoch, der Mann im Mond
Wir können alle fliegen
Wir sind frei wie der Wind
Die Nacht verleiht uns Flügel, komm mit mir
Mein Kind wir reiten auf den Wolken
Hörst du nicht den Ruf?
Und fern am Himmel über uns
Schaut nur einer zu
Der Mann im Mond da ist der Mann im Mond
Der über den Wolken wohnt
Schau hoch, der Mann im Mond
Ein letztes bleibt für uns noch zu tun
Nimm Abschied, Kleines
Dann steig in die Truh
Du musst nicht weinen, es tut nicht weh
Tritt an die Reise, tritt in den Schnee
Ich deck dich zärtlich mit Blättern zu
Die Äste singen sacht ein Lied dazu
Nun, mein Engel, find für immer Ruh
Und der Mann im Mond schaut leise zu
Da ist der Mann im Mond
Schau hoch, der Mann im Mond
Der über den Wolken wohnt
Da ist der Mann im Mond der Mann im Mond
Der über uns allen thront
Wacht einsam, der Mann im Mond
Das Morgenlicht färbt ihn rot
Mann im, Mann im Mond."

https://www.youtube.com/watch?v=UylS9xYwBlQ
#poetry #gpt #yoma

"The lanterns weep, their tears iodine deep,
In shadows dance, dreams and undead seep.
Yoma treads through deserted yards so vast,
Peering through windows, its snowy eyes cast.

With each step, rain-soaked bones it does maim,
Wires and curbstones, its path left aflame.
Yellow claw taps, seeking those who don't rest,
Yoma's relentless pursuit, the sleepless pest.

Through grand entrances and dim-lit domains,
Earth's blood glistens, copper tracks it retains.
Wrap your head in blankets, hope to evade,
Yoma's gaze passing by, a chance cascade.

Hear the staff's rhythmic, enigmatic beat,
As Yoma fades into eternal retreat.
But salvation arrives far too late,
In her shoulder bag, my destined fate.

Mother's words pleaded, "Obey, be still,
Close your eyes, surrender to goodwill."
Yet doubts held me tight, my disbelief strong,
Now frost carries me, a journey so long.

Through stones and roots, dreams and branches we soar,
Fear subsides, clarity replaces the core.
For bundled in horror's shroud of embrace,
There's naught to fear, just warmth in its grace.

Across swamps and cities, fields and abode,
Yoma carries me on, through pathways unknown.
A cold expanse, foreign and vast,
What lies beyond, a mystery that lasts."

оригинал:

"Фонари стекают в почву йодом,
в те́ни копошатся сны и нежить.
Ходит по дворам пустынным Ёма,
смотрит в окна глазом белоснежным.

Мнёт шагами кости ливнестоков,
нити проводов, бордюры-спицы.
Жёлтым коготком стучится в стёкла,
ищет Ёма тех, кому не спится.

Ходит по парадным и подвалам,
кровь земли в следах сверкает медью.
С головой накройся одеялом, –
может, обойдёт и не заметит.

Слушай, как постукивает посох,
как уходит Ёма в вечный вечер.

…а меня уже спасать-то поздно,
я и так в мешке её заплечном.

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

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

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

А что будет дальше –
неизвестно.

К. Вернер"
#poetry #gpt

"He pleads, "Set me free, my love, so lone,
Unfathomable are thy ways unknown,
Sealed within my chest, the rocket's beat,
A pulsing rhythm, fate's secretive feat.

He speaks of mirages, dense and grand,
Beneath my feet, colors of thy land,
He longs to live, to traverse the vast,
Exploring galaxies, future's forecast.

She whispers of lilies, at dawn they rise,
Her hair, gentle tendrils, a sweet disguise,
Embedding in stones, for miles untold,
Her blossoms bloom, a sight to behold.

Ripe cherries she mentions, with flavors intense,
Neon replaces chords, a visual pretense,
"Hush, my love, despair not in this hour,
In silence we'll find solace, heart's power."

Neon's strength shatters the helmet's embrace,
Reality fractures, stretches with grace,
He recalls Lem's tales and the inaugural flight,
A voyage of wonder, a celestial delight.

Tiny tendrils and bristles, they crawl and creep,
From needles, azure slime begins to seep,
"Forgive me, oh Lord, grant me redemption,
Save me from anguish, offer thy exemption."

With tender tongues, her jaws gently part,
Deep within, sapphires kindle, a fiery start,
"Here, my beloved, crystal eyes so bright,
Receive this kiss, a token of pure light."

Oh, God, grant the search, the grip of the blow,
Behold her hands, weathered, the wonders they sow,
Like a radar's plea for coordinates divine,
Yet silence befalls, no answer aligns."

оригинал:

"он говорит отпусти меня моя милая одинокая
неисповедимы твои решения и пути
запечатан пульс ракетного дока
у меня в груди

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

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

она говорит как вызревшие плоды вишни
неон вместо связок - цвет вместо звучания
/тише любимый тише
не надо отчаянья/

сила ее неона разрывает забрало шлема
все двоится растягивается невыносимо плывет
он вспоминает романы Лема
и первый полет

стелятся жгутики и ворсинки, ползут по-сороконожьи
капает с игл синевато-прозрачная слизь
говорит прости меня боже
и дай спастись

с нежными язычками размыкается пасть
в глубине полыхают сапфиры и ляпис-лазурь
/вот тебе любимый в хрусталики глаз
от меня поцелуй/

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

Angedomax Rhapsody"
#gpt #poetry

"Fields, three circles scorched by flame,
Radio towers silent, no voice to claim.
What lengths will you go, to stay alive?
What depths will you delve, to survive?
What sacrifices will you contrive?

Light gestures upon bed and frame,
I bind anew, wounds that bear no name,
Elbow strained, resisting the pain.
"The Battle for Pearlwort," a forgotten tale,
Lost to the pages, the stories frail.

What lengths will you go, to stay alive?

My brother's fever, three days aflame,
A trembling spoon, in his hand, a game.
Mother's shoulders quiver, like mist in fall,
Her eyes glisten, tears, like pearls, enthrall.
Embroidered sorrow, etched upon her soul,
Aching heartache, beyond her control.

What lengths will you go, to stay alive?

In countless tales of anguish and strife,
Brother's plea for father, the cries rife,
Breathing labored, in whispers, scarce and weak.
Mother places a plate, her voice does speak,
"Listen, dear Misha," her words impart,
"Our ceiling can't mend, our broken heart.
In the South, perhaps, solace will be found,
Take your father's Saiga, safe and sound.
Pearlwort awaits, and secret refuge we'll share,"
Yet in her falsehood, a desperate snare.

Her voice, a crescendo, filled with dread,
What lengths will you go, to stay ahead?"

оригинал:

"Поля на три круга выжжены.
Молчание радиовышек.
На что ты пойдёшь, чтоб выжить?
На что ты пойдёшь, чтоб выжить?
На что ты готов, чтоб выжить?

Жестит свет кровать и рамы.
По новой бинтую рану,
с трудом разгибая локоть.
«Сражение за перловку»
не станет листами книжек.

На что ты пойдёшь, чтоб выжить?

У брата – жар третьи сутки.
Дрожит в руке ложка супа.
И плечи дрожат у мамы
осенней грядой тумана.
В глазах – бисер слёз.
Как вышивка.

На что ты пойдёшь, чтоб выжить?

Как в сотнях плохих историй
брат папу зовёт и стонет,
дыша тяжело и редко.
Мать ставит на стол тарелку
и шепчет мне:

- Слушай, Миша...

На что ты пойдёшь, чтоб выжить?

- …родной потолок не лечит.
На Юге должно быть легче.
Возьми вон «сайгу» отцову.
Перловка же есть, засовы.
Протянем, -

лжёт.

Голос выше.

На что ты пойдёшь, чтоб выжить?
На что ты пойдёшь, чтоб выжить?
На что ты пойдёшь, чтоб выжить?

К. Вернер"
#poetry #gpt

"At midnight's hour, through vale I strayed,
With another's wife, my path was laid,
In innocence I hoped she'd dwell,
Beneath the moonlit Santiago's spell.

Agreeing lights in district's night,
Faded away, as if taking flight,
Fireflies shimmered, their dance so grand,
As secrets whispered in enchanted land.

Her bosom, drowsy, I gently grazed,
Along the lane, our steps retraced,
Passion bloomed, like jasmine fair,
In the heat of night, a clandestine affair.

Her starched skirt rustled, a melodic sound,
Echoing ears as it brushed the ground,
A silken web, 'neath daggers' glare,
Enveloped secrets we were bound to share.

Within the moonless realm, trees murmured low,
While distant dogs pursued our shadowed glow,
We sought solace by the sleepy thorn,
Where reeds caressed, a clandestine morn.

Her fragrant tresses, like resin's embrace,
In ivory sands, their imprint we trace,
I untied the cravat, a silk so fine,
She shed her attire, a lover's design.

No plum or silk could rival the hue,
Of that cerulean moonlit view,
Her trembling thighs, like captive trout,
Bathed in coolness, then blazed without doubt.

On the finest road, 'til the morning's bird,
We embarked on a journey, fervently stirred,
Like an atlas mare, she carried me free,
Through realms of passion, a clandestine decree.

A man must guard the secrets shared,
Whispered vows in the midnight air,
In grains of sand, in kisses sweet,
She bid farewell as sunrise did greet.

The wind chased us, with trefoil's blade,
As treacherous lilies wilted, betrayed,
In the misty vale, deception's shroud,
She, a married soul, with innocence vowed."

оригинал:

""И в полночь на край долины
увел я жену чужую,
а думал - она невина..

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

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

За ежевикою сонной
у тростникового плеса
я в белый песок впечатал
ее смоляные косы.
Я сдернул шелковый галстук.
Она наряд разбросала.
Я снял ремень с кобурою,
Она - четыре корсажа.
Такой белизны не ведать
шелкам и цветущим сливам;
стеклу под луной не вспыхнуть
таким голубым отливом.

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

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

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

Ф. Г. Лорка"