#kaggle #tricks #ml #titericz #featureengineering
Before FE, calculate corr coeff of raw features & the target; наверное, лучше всё-таки брать половину сета, чтобы не оверфитить совсем уж. С оценкой корреляций (нелинейных) и "интеракций", кстати, очень может помочь Диоген.
Combine numerical features: log(A)*log(B), A*exp(B), Rank(A)+Rank(B), sin(A)+cos(B) etc;
Use binary flag for NAs;
Do N-way nested OOF Target Encoding;
Try aggregations of one feature by another;
Try extensive target transformations (TT), as y^1/2, y^1/4,log(10+y), 10/y etc;
Try several clustering algos to create new categorical or numerical features based on cluster IDs or distances;
Trees leaves indices as weak features to the linear models (incl. factorization machines);
LOFO feature selection;
Adversarial Validation to tell train apart from test;
https://www.youtube.com/watch?v=RtqtM1UJfZc
Before FE, calculate corr coeff of raw features & the target; наверное, лучше всё-таки брать половину сета, чтобы не оверфитить совсем уж. С оценкой корреляций (нелинейных) и "интеракций", кстати, очень может помочь Диоген.
Combine numerical features: log(A)*log(B), A*exp(B), Rank(A)+Rank(B), sin(A)+cos(B) etc;
Use binary flag for NAs;
Do N-way nested OOF Target Encoding;
Try aggregations of one feature by another;
Try extensive target transformations (TT), as y^1/2, y^1/4,log(10+y), 10/y etc;
Try several clustering algos to create new categorical or numerical features based on cluster IDs or distances;
Trees leaves indices as weak features to the linear models (incl. factorization machines);
LOFO feature selection;
Adversarial Validation to tell train apart from test;
https://www.youtube.com/watch?v=RtqtM1UJfZc
YouTube
Kaggle Tips for Feature Engineering and Selection | by Gilberto Titericz | Kaggle Days Meetup Madrid
Gilberto Titericz, Kaggle GrandMaster and top-1 in Kaggle Competitions Ranking for years, talks about two important topics in Machine Learning: Feature Engineering and Feature Selection
25 November 2019, Madrid - Part II
25 November 2019, Madrid - Part II
🔥1
#trading #erema
Добавил в свою "экспериментальную платформу" бэйзлайны (не знаю хорошего русского эквивалента этому слову.. блэт, я даже не знаю хорошей русской замены для слова эквивалент. не считать же таковой слово аналог?).
Также добавил простые ансамбли (4 вида средних).
Добавил отдельный отчёт МЛ-метрик в разбивке по дням (в отличие от всего test set).
Добавил локальное сохранение обученных моделек, прогресс не теряется теперь даже если нода перезагружается.
Некоторые вещи успростил, т.к.
1) mlflow плохо работает с большой вложенностью (иногда вылезают глюки, плюс нет кнопки expand all, а почти все питоновские веб-сервера тормозят из-за отстутствия client-side скриптов
2) время для перебора опций конвейреа требуется на текущих объёмах (десятки и сотни миллионов строк) простно неподъёмное. зря я на это замахнулся, это применимо тоько для небольших датасетов, или для командной работы в компаниях где много железа
Нейросети пока убрал из списка моделей, хотя для TF уже готов код. Смутил только факт, что нерадивые разработчики TF не очищают память GPU, и в сетапах с несколькими моделями это неприменимо. После моего сообщения в гитхабовском чате проблемы вроде начались какие-то движения, может, всё же починят, проще пока немного выждать.
У меня сейчас выбран 1 горизонт, и на нём есть 6 таргетов (классификации). Также есть 3 рынка, на каждом 1-2 десятка инструментов.
Фичерсет один, состоит из 5 групп признаков.
Попытаюсь с минимальной креативностью и максимально быстро проскорить, а где же лучшая предсказуемость (таргет, рынок, инструмент). Никаких опций конвейера, только FS. ES=True, 2 бустинга с обучением на GPU. Миссинги и категорийку на откуп моделям. Никакого CV, на это не хватит времени. SHAP-важность признаков не оценивать, только нативную. На HPT, конечно же, времени опять нет.
Хочется получить что-то минимально работающее уже, а то в стремлении к совершенству я потратил 2 месяца непонятно на что (
Пока модельки будут обучаться, попробую независимо улучшить торговую политику на этих таргетах.
Добавил в свою "экспериментальную платформу" бэйзлайны (не знаю хорошего русского эквивалента этому слову.. блэт, я даже не знаю хорошей русской замены для слова эквивалент. не считать же таковой слово аналог?).
Также добавил простые ансамбли (4 вида средних).
Добавил отдельный отчёт МЛ-метрик в разбивке по дням (в отличие от всего test set).
Добавил локальное сохранение обученных моделек, прогресс не теряется теперь даже если нода перезагружается.
Некоторые вещи успростил, т.к.
1) mlflow плохо работает с большой вложенностью (иногда вылезают глюки, плюс нет кнопки expand all, а почти все питоновские веб-сервера тормозят из-за отстутствия client-side скриптов
2) время для перебора опций конвейреа требуется на текущих объёмах (десятки и сотни миллионов строк) простно неподъёмное. зря я на это замахнулся, это применимо тоько для небольших датасетов, или для командной работы в компаниях где много железа
Нейросети пока убрал из списка моделей, хотя для TF уже готов код. Смутил только факт, что нерадивые разработчики TF не очищают память GPU, и в сетапах с несколькими моделями это неприменимо. После моего сообщения в гитхабовском чате проблемы вроде начались какие-то движения, может, всё же починят, проще пока немного выждать.
У меня сейчас выбран 1 горизонт, и на нём есть 6 таргетов (классификации). Также есть 3 рынка, на каждом 1-2 десятка инструментов.
Фичерсет один, состоит из 5 групп признаков.
Попытаюсь с минимальной креативностью и максимально быстро проскорить, а где же лучшая предсказуемость (таргет, рынок, инструмент). Никаких опций конвейера, только FS. ES=True, 2 бустинга с обучением на GPU. Миссинги и категорийку на откуп моделям. Никакого CV, на это не хватит времени. SHAP-важность признаков не оценивать, только нативную. На HPT, конечно же, времени опять нет.
Хочется получить что-то минимально работающее уже, а то в стремлении к совершенству я потратил 2 месяца непонятно на что (
Пока модельки будут обучаться, попробую независимо улучшить торговую политику на этих таргетах.
✍1
#featureselection #rfe
Понравилась идея recursive feature elimination, решил добавить этот метод в сравнение. Идея с фиксированным количеством фичей, как в RFE, мне кажется странной. Конечно же, оптимальное число можно определить только на кросс-валидации. И тут sklearn опять обделался. RFECV не работает с датафреймами и тем более категориальными фичам. В этом фреймворке вообще хоть что-то есть для реальной жизни и рабочих нагрузок?
Бюджета времени нет. Девелоперам предлагается, видимо, на глазок манипулировать параметром min_features_to_select, или просто забить на SLA. Ну а как реализован поиск оптимального количества признаков? Лезем в код:
# Build an RFE object, which will evaluate and score each possible
# feature count, down to self.min_features_to_select
Полный перебор! А это ТОЧНО оптимальный метод, когда мы оптимизируем функцию от 1 переменной с 1 глобальным экстремумом? Нет, серьёзно, блять, в 2023-м? Да какой нам искусственный интеллект. У нас же "натурального" нету. Пишу свой RFECV, короче.
Понравилась идея recursive feature elimination, решил добавить этот метод в сравнение. Идея с фиксированным количеством фичей, как в RFE, мне кажется странной. Конечно же, оптимальное число можно определить только на кросс-валидации. И тут sklearn опять обделался. RFECV не работает с датафреймами и тем более категориальными фичам. В этом фреймворке вообще хоть что-то есть для реальной жизни и рабочих нагрузок?
Бюджета времени нет. Девелоперам предлагается, видимо, на глазок манипулировать параметром min_features_to_select, или просто забить на SLA. Ну а как реализован поиск оптимального количества признаков? Лезем в код:
# Build an RFE object, which will evaluate and score each possible
# feature count, down to self.min_features_to_select
Полный перебор! А это ТОЧНО оптимальный метод, когда мы оптимизируем функцию от 1 переменной с 1 глобальным экстремумом? Нет, серьёзно, блять, в 2023-м? Да какой нам искусственный интеллект. У нас же "натурального" нету. Пишу свой RFECV, короче.
😁1
#music #wynardtage
We shall let go
Stars in front
Everything is new
We act in trance
With hungry eyes
This sound is true
https://www.youtube.com/watch?v=Dfs0r2LGvoQ
We shall let go
Stars in front
Everything is new
We act in trance
With hungry eyes
This sound is true
https://www.youtube.com/watch?v=Dfs0r2LGvoQ
YouTube
Wynardtage - The Grey Line
Wynardtage - The Grey Line aus dem neuen Album "The Grey Line"
#trading #dl #cnn #autoencoder #agent #similation #balch
https://youtu.be/1XS57JCeePI?si=hoYMtcWlWjrnhS6e
https://youtu.be/1XS57JCeePI?si=hoYMtcWlWjrnhS6e
YouTube
AI Research at J.P. Morgan
Tucker Balch, Managing Director, JP Morgan AI Research
Abstract:
J.P. Morgan has established a new group to focus on fundamental problems at the intersection of AI and Finance. In this talk, I will review a few of the projects underway, including advances…
Abstract:
J.P. Morgan has established a new group to focus on fundamental problems at the intersection of AI and Finance. In this talk, I will review a few of the projects underway, including advances…
#featureselection #multicollinearity
"This difference has an impact on a corner case in feature importance analysis: the correlated features. Imagine two features perfectly correlated, feature A and feature B. For one specific tree, if the algorithm needs one of them, it will choose randomly (true in both boosting and Random Forests™).
However, in Random Forests™ this random choice will be done for each tree, because each tree is independent from the others. Therefore, approximatively, depending of your parameters, 50% of the trees will choose feature A and the other 50% will choose feature B. So the importance of the information contained in A and B (which is the same, because they are perfectly correlated) is diluted in A and B. So you won’t easily know this information is important to predict what you want to predict! It is even worse when you have 10 correlated features…
In boosting, when a specific link between feature and outcome have been learned by the algorithm, it will try to not refocus on it (in theory it is what happens, the reality is not always that simple). Therefore, all the importance will be on feature A or on feature B (but not both). You will know that one feature has an important role in the link between the observations and the label. It is still up to you to search for the correlated features to the one detected as important if you need to know all of them."
https://cran.r-project.org/web/packages/xgboost/vignettes/discoverYourData.html
"This difference has an impact on a corner case in feature importance analysis: the correlated features. Imagine two features perfectly correlated, feature A and feature B. For one specific tree, if the algorithm needs one of them, it will choose randomly (true in both boosting and Random Forests™).
However, in Random Forests™ this random choice will be done for each tree, because each tree is independent from the others. Therefore, approximatively, depending of your parameters, 50% of the trees will choose feature A and the other 50% will choose feature B. So the importance of the information contained in A and B (which is the same, because they are perfectly correlated) is diluted in A and B. So you won’t easily know this information is important to predict what you want to predict! It is even worse when you have 10 correlated features…
In boosting, when a specific link between feature and outcome have been learned by the algorithm, it will try to not refocus on it (in theory it is what happens, the reality is not always that simple). Therefore, all the importance will be on feature A or on feature B (but not both). You will know that one feature has an important role in the link between the observations and the label. It is still up to you to search for the correlated features to the one detected as important if you need to know all of them."
https://cran.r-project.org/web/packages/xgboost/vignettes/discoverYourData.html
cran.r-project.org
Understand your dataset with XGBoost
#xgboost #categoricals #featureatureimportance
Попробовал поработать в xgboost с категориальными признаками, это полный факап.
model = XGBClassifier(iterations=1000, random_seed=0, enable_categorical=True, tree_method="approx")
Категорийки, не связанные с таргетом, получают в нём САМУЮ высокую важность из всех фичей. В плане метрик результаты на порядок хуже LightGM и CatBoost. А вы найдите сейчас реальную задачу без категориек. У кого похожий опыт?
https://stats.stackexchange.com/questions/396986/feature-selection-meaning-of-importance-type-in-get-score-function-of-xgbo/625653
Попробовал поработать в xgboost с категориальными признаками, это полный факап.
model = XGBClassifier(iterations=1000, random_seed=0, enable_categorical=True, tree_method="approx")
Категорийки, не связанные с таргетом, получают в нём САМУЮ высокую важность из всех фичей. В плане метрик результаты на порядок хуже LightGM и CatBoost. А вы найдите сейчас реальную задачу без категориек. У кого похожий опыт?
https://stats.stackexchange.com/questions/396986/feature-selection-meaning-of-importance-type-in-get-score-function-of-xgbo/625653
Cross Validated
(Feature Selection) Meaning of "importance type" in get_score() function of XGBoost
I'm trying to use a build in function in XGBoost to print the importance of features. My code is like
import xgboost as xgb
...
clf_xgboost = xgb.XGBClassifier(...)
clf_xgboost.fit(X, y)
for type ...
import xgboost as xgb
...
clf_xgboost = xgb.XGBClassifier(...)
clf_xgboost.fit(X, y)
for type ...
#bayesian #optimization #python #gaussianprocess
https://medium.com/@okanyenigun/step-by-step-guide-to-bayesian-optimization-a-python-based-approach-3558985c6818
https://medium.com/@okanyenigun/step-by-step-guide-to-bayesian-optimization-a-python-based-approach-3558985c6818
Medium
Step-by-Step Guide to Bayesian Optimization: A Python-based Approach
Building the Foundation: Implementing Bayesian Optimization in Python
#imbalanced #smote
Кристофер не боится смелых заявлений.
"Don’t use SMOTE if you use state-of-the-art classifiers. Don’t use SMOTE if you care about calibration."
https://mindfulmodeler.substack.com/p/dont-fix-your-imbalanced-data
Кристофер не боится смелых заявлений.
"Don’t use SMOTE if you use state-of-the-art classifiers. Don’t use SMOTE if you care about calibration."
https://mindfulmodeler.substack.com/p/dont-fix-your-imbalanced-data
Substack
Don't "fix" your imbalanced data
Why SMOTE doesn't work for most cases.
❤1👍1
#voting
"First formulated in Arrow’s doctoral dissertation (published as the monograph Social Choice and Individual Values [Arrow 1951], Arrow’s Impossibility Theory can be stated as follows:
When voters have three or more alternatives, there is no voting method that can convert the ranked preferences of individuals into a community-wide transitive ranking of those alternatives, while also meeting a pre-specified set of fairness conditions in every election.
The study of specific voting methods and their drawbacks actually dates back well before Arrow’s twentieth-century work. Indeed, Iain McLean has remarked that “the theory of voting has in fact been discovered four times and lost three times” [McLean 1990, p. 99]. Arrow, of course, was responsible for the fourth discovery. McLean’s 1990 article examines the first discovery, made at the hands of two medieval thinkers, Ramon Lull (c. 1235–1315) and Nicolas of Cusa (1401–1464), within the context of ecclesiastical elections. More recently, McLean [2019] has written about the third discovery by Charles Dodgson (1832–1898), the British mathematician more widely known as Lewis Carroll, who was motivated to write on the topic as a result of certain election decisions made by the faculty at Christ Church, Oxford. Yet, as those familiar with today’s treatment of voting theory will know, none of the names of Lull, Cusa or Dodgson/Carroll are generally associated with the topic.
In contrast, the second time that this discovery was made involved two late eighteenth-century French mathematicians for whom certain key ideas of voting theory are now named: Jean Charles, Chevalier de Borda (1733–1799) and Marie-Jean-Antoine-Nicolas de Caritat, Marquis de Condorcet (1743–1794)."
https://maa.org/book/export/html/2361819
"First formulated in Arrow’s doctoral dissertation (published as the monograph Social Choice and Individual Values [Arrow 1951], Arrow’s Impossibility Theory can be stated as follows:
When voters have three or more alternatives, there is no voting method that can convert the ranked preferences of individuals into a community-wide transitive ranking of those alternatives, while also meeting a pre-specified set of fairness conditions in every election.
The study of specific voting methods and their drawbacks actually dates back well before Arrow’s twentieth-century work. Indeed, Iain McLean has remarked that “the theory of voting has in fact been discovered four times and lost three times” [McLean 1990, p. 99]. Arrow, of course, was responsible for the fourth discovery. McLean’s 1990 article examines the first discovery, made at the hands of two medieval thinkers, Ramon Lull (c. 1235–1315) and Nicolas of Cusa (1401–1464), within the context of ecclesiastical elections. More recently, McLean [2019] has written about the third discovery by Charles Dodgson (1832–1898), the British mathematician more widely known as Lewis Carroll, who was motivated to write on the topic as a result of certain election decisions made by the faculty at Christ Church, Oxford. Yet, as those familiar with today’s treatment of voting theory will know, none of the names of Lull, Cusa or Dodgson/Carroll are generally associated with the topic.
In contrast, the second time that this discovery was made involved two late eighteenth-century French mathematicians for whom certain key ideas of voting theory are now named: Jean Charles, Chevalier de Borda (1733–1799) and Marie-Jean-Antoine-Nicolas de Caritat, Marquis de Condorcet (1743–1794)."
https://maa.org/book/export/html/2361819
#featureselection #diogenes
Итак, проект Диоген разделился на 2 модуля, filters, куда попал весь прежний mRMR код, и wrappers, где создан каркас своего RFECV.
В планах такие блоки:
1) поиск top_n features методами:
полного перебора по сетке (он будет полным, но не сплошным, а с переменным шагом)
случайного полного перебора
суррогатной модели: гауссов процесс, катбуст с оценкой неопределённости. разветвление на несколько методов выбора следующей точки: expected improvement, ucb, expected probability, exploration-exploitation
локальной оптимизации scipy (Brent)
глобальной оптимизации scipy (посоветовали direct, differential_evolution, shgo. пока ещё не пробовал)
2) кастомные процедуры чтения важности признаков из базовой модели
3) early stopping для базовых моделей
4) обновление рейтингов переменных с каждой итерацией. объединение рейтингов по фолдам с помощью votenrank (https://github.com/pragmaticslab/vote_and_rank).
5)автобэйзлайны для nfeautures=0: Dummy вместо 0.
Ожидается функциональность:
остановка по бюджету времени (для этого и нужна опция перебора по сетке)
график поиска наилучших top_n features, с выводом реальных точек, где произошла оценка, и прогнозов+неопределённости там, где использовалась модель
совместимость с Dask
Итак, проект Диоген разделился на 2 модуля, filters, куда попал весь прежний mRMR код, и wrappers, где создан каркас своего RFECV.
В планах такие блоки:
1) поиск top_n features методами:
полного перебора по сетке (он будет полным, но не сплошным, а с переменным шагом)
локальной оптимизации scipy (Brent)
глобальной оптимизации scipy (посоветовали direct, differential_evolution, shgo. пока ещё не пробовал)
2) кастомные процедуры чтения важности признаков из базовой модели
3)
5)
график поиска наилучших top_n features, с выводом реальных точек, где произошла оценка, и прогнозов+неопределённости там, где использовалась модель
совместимость с Dask
GitHub
GitHub - PragmaticsLab/vote_and_rank
Contribute to PragmaticsLab/vote_and_rank development by creating an account on GitHub.
Forwarded from New Yorko Times (Yury Kashnitsky)
О математике в искусстве Эшера
#random #math
В Нидерландах этот год – год Эшера. Если ни разу не слышали это имя, то представьте “невозможную фигуру” - вот это Мауриц Эшер, нидерландский художник-график, создатель миров, головоломок и визуализатор математических идей. Именно последнее – повод написать про творчество Эшера тут.
Парень ненавидел математику в школе, не только ее, а вообще учебу. Кое-как закончил среднюю школу, из технического училища Делфта был выгнан, потом закончил-таки высшую школу в Харлеме. Но все равно учиться терпеть не мог. И что же потом?
После некоторых экспериментов с оптикой и иллюзиями Эшер приходит к самой что ни на есть математике. Он изображает фракталы еще до того, как сам термин был предложен Мандельбротом. Эшер приобрел всемирную известность после выставки в музее современного искусства Stedelijk в Амстердаме, которая проходила параллельно со Всемирным математическим конгрессом в 1954, а Мандельброт ввел термин “фрактал” в 1975.
Увлечения мавританскими узорами привели Эшера к проблеме замощения плоскости (tessellation), a.k.a. к задаче о паркете. Это когда повторяешь одну фигуру “бесконечно” так, что она без зазоров замощает плоскость. Очевидно, замостить плоскость можно тривиально правильными треугольниками, четырёхугольниками и шестиугольниками, а вот с неправильными пятиугольниками - уже интересная история (только в 2017 году доказали, что есть ровно 15 видов пятиугольных “паркетов”, там одна американская домохозяйка с пхд штук 7 нашла, Савватеев любит про это рассказывать). У Эшера замощения просто дикие – ящерицы, рыбы, клоуны, перетекающие друг в друга. В самой известной его работе Metamorphosis II одни виды замощений перетекают в другие.
Человек, который ненавидел математику в школе, берет, ботает статью про гиперболические замещения плоскости и создает целую серию этюдов, из них моя любимая гравюра – Ангелы и Демоны.
Изучая замощения, симметрию и регулярность (и якобы прочитав пару трудов по теории групп; тут мнения разошлись. В тех источниках, что я читал, противоречивая информация о том, вникал ли Эшер собственно в формулы и теоремы). Эшер общается с кристаллографами и между делом выступает с лекцией о симметрии на международной кристаллографической конференции в Кембридже.
“Хотя я абсолютно несведущ в точных науках, мне иногда кажется, что я ближе к математикам, чем к моим коллегам-художникам”
Неудивительно, что Эшер был любимцем ученых-математиков, те делились с ним идеями, присылали работы. “Как жаль, что я ничего, абсолютно ничего не понимаю в этом” – признавался художник.
Если еще и учесть, что большинство произведений Эшера – литографии, то его головоломки дополнительно усложняются. Не вдаваясь в суть процесса литографии (вики): при рисовании надо учитывать инверсию, после оттиска с камня на бумагу рисунок отзеркалится по вертикали.
Если вас дорога приведет в Гаагу, посмотрите работы Эшера (причем не только в его именном музее, но и в Kunstmuseum. Кто в Нидерландах, спешите - выставка до 10 сент.). Если вы любите математику, невозможно не полюбить и Эшера.
#random #math
В Нидерландах этот год – год Эшера. Если ни разу не слышали это имя, то представьте “невозможную фигуру” - вот это Мауриц Эшер, нидерландский художник-график, создатель миров, головоломок и визуализатор математических идей. Именно последнее – повод написать про творчество Эшера тут.
Парень ненавидел математику в школе, не только ее, а вообще учебу. Кое-как закончил среднюю школу, из технического училища Делфта был выгнан, потом закончил-таки высшую школу в Харлеме. Но все равно учиться терпеть не мог. И что же потом?
После некоторых экспериментов с оптикой и иллюзиями Эшер приходит к самой что ни на есть математике. Он изображает фракталы еще до того, как сам термин был предложен Мандельбротом. Эшер приобрел всемирную известность после выставки в музее современного искусства Stedelijk в Амстердаме, которая проходила параллельно со Всемирным математическим конгрессом в 1954, а Мандельброт ввел термин “фрактал” в 1975.
Увлечения мавританскими узорами привели Эшера к проблеме замощения плоскости (tessellation), a.k.a. к задаче о паркете. Это когда повторяешь одну фигуру “бесконечно” так, что она без зазоров замощает плоскость. Очевидно, замостить плоскость можно тривиально правильными треугольниками, четырёхугольниками и шестиугольниками, а вот с неправильными пятиугольниками - уже интересная история (только в 2017 году доказали, что есть ровно 15 видов пятиугольных “паркетов”, там одна американская домохозяйка с пхд штук 7 нашла, Савватеев любит про это рассказывать). У Эшера замощения просто дикие – ящерицы, рыбы, клоуны, перетекающие друг в друга. В самой известной его работе Metamorphosis II одни виды замощений перетекают в другие.
Человек, который ненавидел математику в школе, берет, ботает статью про гиперболические замещения плоскости и создает целую серию этюдов, из них моя любимая гравюра – Ангелы и Демоны.
Изучая замощения, симметрию и регулярность (и якобы прочитав пару трудов по теории групп; тут мнения разошлись. В тех источниках, что я читал, противоречивая информация о том, вникал ли Эшер собственно в формулы и теоремы). Эшер общается с кристаллографами и между делом выступает с лекцией о симметрии на международной кристаллографической конференции в Кембридже.
“Хотя я абсолютно несведущ в точных науках, мне иногда кажется, что я ближе к математикам, чем к моим коллегам-художникам”
Неудивительно, что Эшер был любимцем ученых-математиков, те делились с ним идеями, присылали работы. “Как жаль, что я ничего, абсолютно ничего не понимаю в этом” – признавался художник.
Если еще и учесть, что большинство произведений Эшера – литографии, то его головоломки дополнительно усложняются. Не вдаваясь в суть процесса литографии (вики): при рисовании надо учитывать инверсию, после оттиска с камня на бумагу рисунок отзеркалится по вертикали.
Если вас дорога приведет в Гаагу, посмотрите работы Эшера (причем не только в его именном музее, но и в Kunstmuseum. Кто в Нидерландах, спешите - выставка до 10 сент.). Если вы любите математику, невозможно не полюбить и Эшера.
❤2
#gpt #nvidia #tensorrt
"По оценкам NVIDIA, применение TensorRT-LLM позволяет вдвое увеличить производительность ускорителя H100 в тесте GPT-J 6B (входит в состав MLPerf Inference v3.1). При использовании модели Llama2 прирост быстродействия по сравнению с А100 достигает 4,6x. TensorRT-LLM уже включает полностью оптимизированные версии многих популярных LLM, включая Meta✴️ Llama 2, OpenAI GPT-2 и GPT-3, Falcon, Mosaic MPT, BLOOM и др."
https://servernews.ru/1092785
"По оценкам NVIDIA, применение TensorRT-LLM позволяет вдвое увеличить производительность ускорителя H100 в тесте GPT-J 6B (входит в состав MLPerf Inference v3.1). При использовании модели Llama2 прирост быстродействия по сравнению с А100 достигает 4,6x. TensorRT-LLM уже включает полностью оптимизированные версии многих популярных LLM, включая Meta✴️ Llama 2, OpenAI GPT-2 и GPT-3, Falcon, Mosaic MPT, BLOOM и др."
https://servernews.ru/1092785
ServerNews - все из мира больших мощностей
Сила оптимизации ПО: NVIDIA вдвое ускорила исполнение языковых моделей на H100 с помощью TensorRT-LLM
Компания NVIDIA анонсировала программное обеспечение TensorRT-LLM с открытым исходным кодом, специально разработанное для ускорения исполнения больших языковых моделей (LLM). Платформа станет доступна в ближайшие недели.
#crypto #law
"Турецкий суд приговорил Фарука Фатиха Озера, основателя одной из крупнейших турецких криптобирж Thodex, а также его брата и сестру к 11 196 годам 10 месяцам и 15 суткам лишения свободы, признав их виновными в мошенничестве с использованием информационных систем, руководстве преступным сообществом и отмывании денег, пишет Bloomberg. Прокуратура запрашивала для Озера до 40 тысяч 462 лет тюремного заключения, но суд назначил более мягкий срок."
https://3dnews.ru/1092789/publikatsiya-1092789
"Турецкий суд приговорил Фарука Фатиха Озера, основателя одной из крупнейших турецких криптобирж Thodex, а также его брата и сестру к 11 196 годам 10 месяцам и 15 суткам лишения свободы, признав их виновными в мошенничестве с использованием информационных систем, руководстве преступным сообществом и отмывании денег, пишет Bloomberg. Прокуратура запрашивала для Озера до 40 тысяч 462 лет тюремного заключения, но суд назначил более мягкий срок."
https://3dnews.ru/1092789/publikatsiya-1092789
3DNews - Daily Digital Digest
Основателя рухнувшей криптобиржи Thodex приговорили к 11 196 годам тюрьмы
Турецкий суд приговорил Фарука Фатиха Озера, основателя одной из крупнейших турецких криптобирж Thodex, а также его брата и сестру к 11 196 годам 10 месяцам и 15 суткам лишения свободы, признав их виновными в мошенничестве с использованием информационных…
#python #development
Написал большую программу на питоне, сижу, весь день вылавливаю баги. Чтобы дойти снова до момента последнего отловленной ошибки, требуется минут 40 (пока загрузятся данные, обучатся модели, потом ансамбли, создадутся прогнозы и залогятся метрики). Я одного не пойму, почему Питон называют языком быстрого прототипирования и разработки? Да, мол, он медленный и некомпилируемый, но зато разрабатывать на нём быстро. Да ни хрена не быстро. Ещё 20 лет назад Visual Basic позволял в случае ошибки исполнения спокойно поправить код на ходу и продолжать дальше, не перезапуская программу. Это казалось очень логичным, ведь это же скриптовый язык. Я сначала думал, что я чего-то не знаю, и гуру питона как-то этот вопрос решают. Но, похоже, никто его не решает. Что за деградация программирования, и, главное, почему все притворяются, что это нормально? Я подозреваю, что такой функционал какое-то время назад в питоне реализовать можно было, пока его не стали "оптимизировать", пытаясь хоть как-то спасти репутацию этого медленного говна, вместо того, чтобы сделать нормальный компилятор (взяв зв основу numba, к примеру).
Написал большую программу на питоне, сижу, весь день вылавливаю баги. Чтобы дойти снова до момента последнего отловленной ошибки, требуется минут 40 (пока загрузятся данные, обучатся модели, потом ансамбли, создадутся прогнозы и залогятся метрики). Я одного не пойму, почему Питон называют языком быстрого прототипирования и разработки? Да, мол, он медленный и некомпилируемый, но зато разрабатывать на нём быстро. Да ни хрена не быстро. Ещё 20 лет назад Visual Basic позволял в случае ошибки исполнения спокойно поправить код на ходу и продолжать дальше, не перезапуская программу. Это казалось очень логичным, ведь это же скриптовый язык. Я сначала думал, что я чего-то не знаю, и гуру питона как-то этот вопрос решают. Но, похоже, никто его не решает. Что за деградация программирования, и, главное, почему все притворяются, что это нормально? Я подозреваю, что такой функционал какое-то время назад в питоне реализовать можно было, пока его не стали "оптимизировать", пытаясь хоть как-то спасти репутацию этого медленного говна, вместо того, чтобы сделать нормальный компилятор (взяв зв основу numba, к примеру).