Aspiring Data Science
274 subscribers
347 photos
9 videos
5 files
1.14K links
Заметки экономиста о программировании, прогнозировании и принятии решений, научном методе познания.
Контакт: @fingoldo

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

"Каждый сегмент главного зеркала отлит из уникального стеклокерамического материала ZERODUR компании SCHOTT. Обсерватория стала крупнейшим заказчиком на этот материал с низким коэффициентом теплового расширения, поскольку в пустыне на высокогорном плато, где будет работать телескоп, происходят сильные суточные колебания температуры окружающего воздуха. Прежде чем приступить к отливу и подготовке сегментов главного зеркала, компания SCHOTT провела множество экспериментов на месте, чтобы убедиться в правильности выбора материала и технологий его обработки. Всего было произведено свыше 230 т материала.

На предприятии SCHOTT заготовка проходит первичную подготовку — термообработку медленным охлаждением и первичное шлифование. Финальное шлифование сегментов и их порезка на шестиугольники из круглой заготовки производится во Франции компанией Safran Reosc. Точность шлифовки не допускает неровностей свыше 10 нм. Кроме этих компаний, в изготовлении сегментов гигантского зеркала участвуют также голландская компания VDL ETG Projects BV (производство рамы для крепления сегмента в составе чаши зеркала), немецко-французский консорциум FAMES (разработка и производство 4500 датчиков, для отслеживания положения каждого сегмента в зеркале), немецкая компания Physik Instrumente (разработка и производство 2500 приводов для выравнивания положения каждого сегмента с точностью в пределах нескольких нанометров), а также датская DSV, которая перевозит сегменты за 10 тыс. км в Чили.

Уже в Чили на производстве недалеко от стройплощадки ELT сегменты зеркала покрываются серебром и укрываются на хранение до начала сборки."

https://3dnews.ru/1107380/izgotovlen-i-dostavlen-dlya-obrabotki-posledniy-segment-zerkala-dlya-samogo-bolshogo-v-istorii-teleskopa
#propensity #churn

Удивил тщательный подход Wrike к прогнозированию оттока клиентов. Для одного из ключевых аккаунтов 6-месячная модель оттока предсказала, что статус клиента не изменится, НО по сравнению с прошлой моделью поменялись SHAP-вклады предикторов в эту оценку, и Wrike уже на этом основании сделала выводы и предприняла упреждающие действия.

Также впервые вижу 2 прохода HPT: до и после отбора признаков. Это явно их находка. Штраф за дисперсию моделей на фолдах из той же категории - я только недавно у себя его реализовал, хотя много об этом думал ) А они тоже реализовали. Приятно встретить умных людей! )

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

https://www.youtube.com/watch?v=BzjweGE3748
#chess

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

https://www.youtube.com/watch?v=zT3TMZ9qWJY
#writing #thinking

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

"Writing is the “last mile” of your data science work. None of your stakeholders will read your SQL query or look at your Jupyter Notebook (a lot of engineers and data scientists would like believe the opposite but trust me, they likely won’t). If you want your work to be understood by others and influence decisions, then you need to do the final step of packaging it in an effective write-up. If you skip this step, it’s like leaving the package in the warehouse instead of delivering it to the customer."

https://towardsdatascience.com/the-most-undervalued-skill-for-data-scientists-e0e0d7709321
#wisdom

If writing down your ideas always makes them more precise and more complete, then no one who hasn’t written about a topic has fully formed ideas about it. And someone who never writes has no fully formed ideas about anything nontrivial.

— Paul Graham
#physics

"Принцип работы атомных часов основан на подсчёте колебаний атомов — это крайне предсказуемые события. Например, атомы цезия-133 совершают 9 192 631 770 колебаний в секунду, и с 1967 года это используется для официального определения секунды. Атомные часы на основе этого элемента сбиваются на одну секунду за 300 млн лет.

Учёные JILA построили атомные часы, которые намного точнее. Проект основан на нескольких разработках, которые исследователи создали за последние годы. В приборе используются атомы не цезия, а стронция, которые колеблются 429 трлн раз в секунду; а измерения производятся при помощи не микроволн, а видимого света, волна которого имеет более высокую частоту.

Десятки тысяч атомов стронция заключаются в мягкую «световую решётку», которая помогает значительно повысить точность атомных часов, потому что отсутствуют два источника ошибок: влияние лазерного излучения и столкновения атомов друг с другом. В результате точность прибора составляет 8,1 единицы к 10 квинтиллионам. Другими словами, такие часы дадут сбой на одну секунду, проработав 30 миллиардов лет — это более чем вдвое превосходит текущий возраст Вселенной.

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

https://3dnews.ru/1107518/postroeni-samie-tochnie-atomnie-chasi-oni-sbivayutsya-na-1-sekundu-za-30-milliardov-let
#security #pandas #cryptography #cryptpandas

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

"In CyberChef, we can also save the artifacts (refer to the aged-diskette icon) and it will save the file as a raw binary (sans the base64 encoding we tested it with). We then can throw that into Kali and run some tests on both the base64 version and the raw version and check to see what their entropy values are."

Вообще использование cryptpandas может быть хорошей идеей для облачных вычислений.

https://eforensicsmag.com/forensic-fun-with-cryptographic-dataframes-using-python/
#mlperf #aws #opticloud

Итак, планируем архитектуру скрипта с открытым исходным кодом, делающего замеры производительности железа в ML-задачах и сохранение результатов в облако.

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

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

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

Мне захотелось реализовать сервис mlperf в облаке AWS, так что пока архитектура выглядит как API Gateway->Lambda->ElastiCache/Redis->DocumentDB:

0) пользователь, желающий внести вклад в тестирование железа, запускает скрипт mlperf в командной строке или делает вызов benchmark(...) из питон-кода.
1) пользователь вводит код аутентификации от гугл (перейдя в браузере по ссылке, напечатанной скриптом)
2) скрипт выполняет тестирование и передаёт полезную инфу+код в json по https на url приложения mlperf.
3) запускается lambda-функция, проверяющая размеры переданной информации, извлекающая емэйл пользователя из auth кода.
4) попадание в рэйтлимиты проверяется с помощью развёрнутого ElastiCache/Redis (INCR/EXPIRE)
5) если проверки пройдены, инфа сохраняется в основную таблицу DocumentDB.
6) клиенту возвращается статус операции.

7) некий демон (Максвелла?) в виде очередной Lambda периодически отбрасывает аномалии и аггрегирует все результаты в лидерборд.

Предложения/замечания?
#mlperf #aws #opticloud

Что конкретно тестировать?

Основная идея была в тестировании 3 современных библиотек градиентного бустинга - CatBoost, LightGBM, XGBoost, причём только на задаче обучения и на одном датасете с фиксированным размером, гиперпараметрами и сидами. Даже нет, не 3 бустингов, а 1 - катбуста, т.к. казалось, что сравнительные результаты 2 остальных не будут отличаться.

Потом появилось понимание, что между библиотеками/реализациями могут быть нюансы. К примеру, катбуст может из коробки использовать несколько GPU. LightGBM вообще самый проблемный в плане использования GPU, там на *nix надо танцевать с бубнами.

В случае катбуста и мульти GPU пересылка данных может стоить слишком дорого и даже ухудшать результаты по сравнению с 1 GPU, так что, похоже, надо предусмотреть несколько вариантов размера данных. И при multigpu делать тесты начиная с одного устройства и далее 2, 4, 8...

Также пришла идея замерять инференс (возможно, опционально с интеловским ускорением). Опять же, некоторые либы поддерживают инференс на GPU (XGBoost точно).

Нужен ли RAPIDS, им кто-то вообще пользуется?

DL бенчмарки по идее можно раскопать, и я не думал их добавлять, но всё же... Надо ли кому-то? Скажем, Pytorch Lightning на CPU/GPU, с разными стратегиями шардирования и точностями (float 64/32/16 etc)? если добавлять нейросети, то тогда нужен тест архитектуры со свёртками, т.к. для свёрток сильно докидывают тензорные ядра.

Еще не совсем ясно, что делать, если у пользователя на момент запуска бенчмарка уже загружены некоторые ядра/видеокарты. Морду кирпичом и гнать тесты? Не запускать тесты, пока все не освободятся? Запускать, но с уменьшенным количеством ресурсов?

По поводу инфы о железе: думаю собирать полную, т.е. не только названия моделей CPU/GPU/RAM, но и частоты, характеристики.

С частотами неясно, как их лучше мониторить. Если замерять до запуска скрипта, на машинах с энергосбережением они ведь окажутся заниженными. Получается, надо в отдельном потоке как-то собирать каждую секунду и потом брать средние за время работы скрипта? Возможно, то же самое придётся делать с показателями nvidia-smi.

По софтовой части, обязательно фиксировать версии бустингов, cuda, runtime (python), os, opencl (?).
#news

"Многие аналитики не раз подчёркивали, что до сих пор от так называемого бума искусственного интеллекта с точки зрения капитализации выигрывала преимущественно Nvidia, тогда как выпускающая по её заказу чипы для ускорителей вычислений TSMC до сих пор оставалась в тени. На днях, однако, капитализация TSMC преодолела планку в $1 трлн."

https://3dnews.ru/1107070/catl-rasschitivaet-chto-eyo-akkumulyatori-pozvolyat-k-2027-godu-sozdat-samolyoti-preodolevayushchie-bez-podzaryadki-do-3000-km
#opticloud #mlperf #fun

Family: 179 😅