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

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

Я сильно верил во взаимную информацию, потому что сам много лет назад делал её расчёты, и у меня были прекрасные результаты. Но как же это понятие изгадили в sklearn... У меня просто глаза на лоб полезли от этой "реализации". Позапускайте несколько раз:

mutual_info_regression(
np.arange(10).reshape(-1, 1),
(np.arange(10) * 2).ravel(),
)
reported a bug
#ml #sklearn #quasitolerance #bollocks

Sklearn продолжает отжигать. В новой версии они удалили датасет Бостон из-за какой-то надуманной херни. А ведь на него завязана уже было куча примеров в сторонних либах. BorutaShap вообще при импорте сломался.

"load_boston has been removed from scikit-learn since version 1.2.

The Boston housing prices dataset has an ethical problem: as
investigated in [1], the authors of this dataset engineered a non-invertible variable "B" assuming that racial self-segregation had a
positive impact on house prices [2]. Furthermore the goal of the
research that led to the creation of this dataset was to study the
impact of air quality but it did not give adequate demonstration of the validity of this assumption.

The scikit-learn maintainers therefore strongly discourage the use of this dataset unless the purpose of the code is to study and educate about ethical issues in data science and machine learning."

Что на очереди? BreastCancer, потому что там нет данных мужиков и геев? А все ли цвета радуги есть в ирисах Фишера, может, лучше их тоже удалить во избежание?
#jupyter #bollocks

Мне вот интересно, кто это придумал в Юпитер ноутбуке, что появляется два курсора, когда ты печатаешь, и текст вводится твой сразу в 2 местах? Я даже технически себе не представляю, как этого добились, но ещё более удивляет, нахера вообще это сделали и оставили. Кто-то реально этим пользуется? Зачем?! Это даже хуже, чем тупые юпитеровские автоскобки, которые каждый раз удаляешь и вручную переставляешь, уже правильно.
#pandas #bugs #bollocks

Только решил поработать с финансовыми данными, так на них обосрался pandas. Ну как так-то, а? Он же такой медленный, такой проверенный временем и сотнями тысяч кодеров.

https://github.com/pandas-dev/pandas/issues/52505
#pandas #bollocks

Самая раздражающая штука в пандас - реализация проверки на пустой объект. Какой идиот принял такое решение, ломающее совместимость со всем остальным питоном? Постоянно на этом спотыкаюсь.

if features:
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py", line 1466, in __nonzero__
raise ValueError(
ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

P.S.:
То же самое в np.array, к сожалению
И ещё bool(np.nan)=bool(
pd.NA)=True
#profiling #optimisation #python #speed #sklearn #bollocks

Эскалёрновские волшебники-программисты в деле. Столкнулся с неприемлемо низкой скоростью построения отчёта классификационных метрик на 8M примеров. 15 секунд, ну куда это годится? Проверил кирпичики расчётов по нисходящей. Матрица ошибок считается за полторы секунды. Это чем же надо угандошить процессор, чтобы простое деление пары чисел и упаковка в словарь выполнялись больше 10 секунд и делали расчёты в ДЕСЯТЬ раз длиннее? Такое и специально не сразу сделаешь.
#docs #keras #bollocks

Пример плохо, по-мудацки написанной документации.
Вроде технически все опции описаны, но не сказано, в какой ситуации какую применять и зачем. Будущий юзер отрывает доку, читает, и не может понять, а нафига это всё нагородили вообще. Например: когда может понадобиться mask_token? Какая выгода от multi_hot? итд

https://keras.io/api/layers/preprocessing_layers/categorical/string_lookup/#stringlookup-class

Хреновая дока ведёт к тому, что люди постоянно задают на других ресурсах вопросы: а в чём различие, а какую опцию мне лучше использовать, а что это даст? типа этого. Особенно это касается специфичной для продукта функциональности, которая не является общеизвестной в области, или вообще является "уникальной фишкой". А всё потому, что разработчики поленились и не подумали объяснить концепции на высоком уровне в форме, понятной для пользователей. То же самое, кстати, чувствуется при чтении документации Catboost.
#towardsdatascience #bollocks

"Hi Anatoly,

Thank you for considering Towards Data Science. Our team has decided not to publish the post you shared with us, but we appreciate the chance to read your work."

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

"Dear TDS editorial team,
After trying to publish with you my 2 original articles, where I receive novel, original and valuable from a practical DS standpoint results, I came to conclusion that my work does not adhere to high quality standards of towardsdatascience. Since my work is obviously much worse than that of other authors, tens of thousands articles of whom have been accepted by you, I solemnly promise not to bother you with my submittals anymore.

Best regards, Anatoly."
#tensorflow #bollocks

Больше 2 лет юзеры просят мудаков из команды tensorflow предоставить способ освобождения памяти GPU без завершения процесса. Конечно же, я в 2023-м налетел на эту проблему.

https://github.com/tensorflow/tensorflow/issues/36465
#anaconda #windows #bollocks

Лесорубы-создатели установщика анаконды до сих пор не узнали, как прописывать пути в реестре винды. Обновился до питона 3.11, прописываю пути вручную.
#microsoft #bollocks

Шёл 2023-й год. Это флагманский продукт от мирового лидера с капитализацией триллион долларов.
#pandas #optimization #bollocks

Пытаюсь выяснить, как передать большой фрейм пандас для чтения в другие процессы с помощью joblib без сериализации и копирования памяти. С массивом нумпай это сделать можно с помощью memmapping, пример есть в доке joblib, и это реально работает (память выделяется 1 раз, сериализации нет. правда, приходится один раз сдампить массив на диск). А вот с фреймом не прокатывает. Вроде оказывается, фрейм вообще нельзя инициализировать из общей памяти без копирования.

Набрёл на дискуссию, где человек приводит аргументы, что копирование излишне и вызывает пенальти к производительности. А 2 мудака-разраба пандас ему затирают про premature optimizaion. Cмотрю, у одного мудака знакомый ник. jreback. И вспоминаю, что это же существо из ядерных разрабов панадаса и мне когда-то давно писало про premature optimization, когда я спрашивал, почему какая-то операция была реализована без inplace (у меня была забита вся память и операция присваиванием просто не проходила).

Отсюда 2 вопроса:
1) кто знает техническое решение, напишите
2) почему подобные мудаки идут разрабатывать библиотеки для работы с данными, в том числе, большими данными? и потом херят все разумные начинания. так вот почему пандас такой сука медленный. вовсе не потому, что высокий уровень абстракции, гибкость. Просто разрабы - мудаки, которые под предлогом no premature optimization делают no optimization at all.
#smartphones #cameras #bollocks

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

Но вот смотрим обзорчик с реальным сравнением фоток на этом pura ultra и нескольких других топчиках: в 2024 сука году до сих пор на научились инженеры, прогеры, дата сайентисты и кто там ещё правильно определять, скажем, баланс белого. Ну как может девайс за $1.5k желтить? Ну возьми ты, сука, в свои китайские ручки референсную качественную камеру, и свою смартфоновскую, и научи модельку сопоставлять цвета при разных уровнях освещённости, ну почему это такие сложности у вас всех сука вызывает? Ну железо ведь одинаковое используете. Либо это реально необъяснимо сложно, либо просто всем похер, и так сойдёт.

Ещё и селфи-камера не в фокусе... Морда владельца на видео-селфи получается расплывчатая, зато хорошая детализация дальних домов. Если бы я там менеджерил, вся продуктовая команда после такого релиза такого "флагмана" дружно пошла бы на мороз.

https://www.youtube.com/watch?v=dlGr2hQ2Km8

https://www.youtube.com/watch?v=TavTpHDT9bo