#abtesting
Оказывается, фреквентистский А/Б тест можно сделать "подсматриваемым" за счёт снижения мощности.
И еще на ту же тему.
https://www.youtube.com/watch?v=BanBrr3Hzm8
Оказывается, фреквентистский А/Б тест можно сделать "подсматриваемым" за счёт снижения мощности.
И еще на ту же тему.
https://www.youtube.com/watch?v=BanBrr3Hzm8
YouTube
Stanford Webinar: Common Pitfalls of A/B Testing and How to Avoid Them
A Stanford Webinar presented by the Stanford Leadership & Management Science (http://stanford.io/2ppiCxy) and Decision Analysis (http://stanford.io/2pByYDC) graduate certificate programs
"Common Pitfalls of A/B Testing and How to Avoid Them"
Speaker: Ramesh…
"Common Pitfalls of A/B Testing and How to Avoid Them"
Speaker: Ramesh…
#ai #gpt
"Идеи, сгенерированные ИИ, получили статистически значимо более высокие оценки по критериям новизны и увлекательности по сравнению с идеями людей. При этом по критерию осуществимости идеи ИИ оказались немного ниже, а по эффективности — немного выше, чем идеи людей, хотя эти различия не были статистически значимыми.
Исследование также выявило некоторые недостатки в работе ИИ, такие как отсутствие разнообразия идей. Даже при чётком указании не повторяться, ИИ быстро про это забывал. Кроме того, ИИ не смог последовательно проверять и оценивать идеи и получал низкие баллы за согласие с человеческими суждениями. Важно отметить, что исследование также выявило определённые ограничения в методологии. В частности, оценка «оригинальности» идеи, даже группой экспертов, остаётся субъективной, поэтому планируется провести более комплексное исследование, в котором идеи, генерируемые как ИИ, так и людьми, будут полностью оформлены в проекты, что позволит более глубоко изучить их влияние в реальных сценариях. Тем не менее, первые результаты исследования, безусловно, впечатляют."
https://3dnews.ru/1110837/ii-prevzoshyol-uchyonih-v-generatsii-innovatsionnih-issledovatelskih-idey
"Идеи, сгенерированные ИИ, получили статистически значимо более высокие оценки по критериям новизны и увлекательности по сравнению с идеями людей. При этом по критерию осуществимости идеи ИИ оказались немного ниже, а по эффективности — немного выше, чем идеи людей, хотя эти различия не были статистически значимыми.
Исследование также выявило некоторые недостатки в работе ИИ, такие как отсутствие разнообразия идей. Даже при чётком указании не повторяться, ИИ быстро про это забывал. Кроме того, ИИ не смог последовательно проверять и оценивать идеи и получал низкие баллы за согласие с человеческими суждениями. Важно отметить, что исследование также выявило определённые ограничения в методологии. В частности, оценка «оригинальности» идеи, даже группой экспертов, остаётся субъективной, поэтому планируется провести более комплексное исследование, в котором идеи, генерируемые как ИИ, так и людьми, будут полностью оформлены в проекты, что позволит более глубоко изучить их влияние в реальных сценариях. Тем не менее, первые результаты исследования, безусловно, впечатляют."
https://3dnews.ru/1110837/ii-prevzoshyol-uchyonih-v-generatsii-innovatsionnih-issledovatelskih-idey
3DNews - Daily Digital Digest
ИИ превзошёл учёных в генерации инновационных исследовательских идей
Большие языковые модели (LLM) оказались способны генерировать новые научно-исследовательские идеи на уровне экспертов. Более того, согласно новому исследованию, эти идеи оказались более оригинальными и интересными, чем предложенные специалистами. Это ставит…
#hardware #hdd
"Роботизированная система производства Dobot Robotics на основе ИИ от Microsoft использует компьютерное зрение для распознавания различных типов жёстких дисков и выбора способа их разборки.
По данным Microsoft, этот новый подход NoShred направлен на достижение 90 % повторного использования и переработки жёстких дисков к 2025 году. Роботы обеспечивают безопасность данных, уничтожая только компоненты, несущие данные, и извлекая ценные материалы. Следует отметить, что во многих случаях компании, которые должны уничтожать свои диски, не делают этого, и они в конечном итоге собирают пыль в складских помещениях или отправляются на свалки.
На сегодняшний день по разным оценкам во всём мире ежегодно заканчивают свой жизненный цикл от 20 до 70 миллионов жёстких дисков. Только Microsoft в 2022 году уничтожила два миллиона жёстких дисков, причём процент разобранных и переработанных устройств компания не сообщила."
https://3dnews.ru/1110950/microsoft-razrabotala-robotov-dlya-razborki-i-pererabotki-dvuh-millionov-gyostkih-diskov-v-god
"Роботизированная система производства Dobot Robotics на основе ИИ от Microsoft использует компьютерное зрение для распознавания различных типов жёстких дисков и выбора способа их разборки.
По данным Microsoft, этот новый подход NoShred направлен на достижение 90 % повторного использования и переработки жёстких дисков к 2025 году. Роботы обеспечивают безопасность данных, уничтожая только компоненты, несущие данные, и извлекая ценные материалы. Следует отметить, что во многих случаях компании, которые должны уничтожать свои диски, не делают этого, и они в конечном итоге собирают пыль в складских помещениях или отправляются на свалки.
На сегодняшний день по разным оценкам во всём мире ежегодно заканчивают свой жизненный цикл от 20 до 70 миллионов жёстких дисков. Только Microsoft в 2022 году уничтожила два миллиона жёстких дисков, причём процент разобранных и переработанных устройств компания не сообщила."
https://3dnews.ru/1110950/microsoft-razrabotala-robotov-dlya-razborki-i-pererabotki-dvuh-millionov-gyostkih-diskov-v-god
3DNews - Daily Digital Digest
Microsoft создала робота для разборки и переработки 2 млн жёстких дисков в год
Неисправные или изношенные жёсткие диски могут содержать множество ценных данных, которые необходимо гарантированно удалить без возможности восстановления.
#mlstories
Моя типичнейшая ошибка повторяется - один класс моделей, нет HPT ) Когда-то будет дописана статья, как надо правильно.
Из интересного: в реальном времени сработало обнаружение data drift, использовали теневую модель.
https://www.youtube.com/watch?v=ejWCMlKBt4A
Моя типичнейшая ошибка повторяется - один класс моделей, нет HPT ) Когда-то будет дописана статья, как надо правильно.
Из интересного: в реальном времени сработало обнаружение data drift, использовали теневую модель.
https://www.youtube.com/watch?v=ejWCMlKBt4A
YouTube
Андрей Лукьяненко | Предавторизация в реальном времени для заказа такси
Спикер: Андрей Лукьяненко, Senior DS в Careem
Тема доклада: Предавторизация в реальном времени для заказа такси: от правил к машинному обучению
Data Fest 2024: https://ods.ai/events/datafest2024
Презентацию к докладу Вы можете скачать в треке секции Reliable…
Тема доклада: Предавторизация в реальном времени для заказа такси: от правил к машинному обучению
Data Fest 2024: https://ods.ai/events/datafest2024
Презентацию к докладу Вы можете скачать в треке секции Reliable…
👍2
#ai #gpt
Chain of Thought кажется сильным решением. Ждём следующей версии )
https://youtu.be/SbrfjBV8EzM?si=KKmHQwXDAKzIA51O
Chain of Thought кажется сильным решением. Ждём следующей версии )
https://youtu.be/SbrfjBV8EzM?si=KKmHQwXDAKzIA51O
YouTube
GPT-o1: The Best Model I've Ever Tested 🍓 I Need New Tests!
Let's run GPT-o1 through our LLM Rubric.
Giveaway: Subscribe to our newsletter for your chance to win a Dell wireless keyboard and mouse: https://gleam.io/v4URO/dell-keyboard-and-mouse
Join My Newsletter for Regular AI Updates 👇🏼
https://forwardfuture.ai…
Giveaway: Subscribe to our newsletter for your chance to win a Dell wireless keyboard and mouse: https://gleam.io/v4URO/dell-keyboard-and-mouse
Join My Newsletter for Regular AI Updates 👇🏼
https://forwardfuture.ai…
#python #pyccolo
Хакинг и сабклассинг питона. Для меня это уж слишком, но вдруг кому ТАКОЙ уровень гибкости нужен.
https://www.youtube.com/watch?v=8UesBrSt7wY
Хакинг и сабклассинг питона. Для меня это уж слишком, но вдруг кому ТАКОЙ уровень гибкости нужен.
https://www.youtube.com/watch?v=8UesBrSt7wY
YouTube
Stephen Macke - Python as a Hackable Language for Interactive Data Science | PyData Global 2023
www.pydata.org
Did you know that the core Python syntax and semantics can be tailored for interactive computing use cases? It turns out that more is possible than what you would expect! For example, at the most basic level, Jupyter supports basic syntax…
Did you know that the core Python syntax and semantics can be tailored for interactive computing use cases? It turns out that more is possible than what you would expect! For example, at the most basic level, Jupyter supports basic syntax…
👍1
#ai #gpt
Ты же количество букв в слове не могла правильно посчитать, блэт, что щас было-то?!
"Will it empower us or making us dumber?
If one really knows what (s)he is doing, so the "artificial science assistants" should lift us.
But, also, it will have the pervert outcome to make us lazier and not so willing anymore to really take the time to fully and sometimes painfully, "ingest" the subject matter to better digest it and make it consubstantiate to our (shareable) scientific culture.
Socrates never wrote but let Plato do it for him. He said that the invention of writing was a loss to true knowledge assimilation as before one has to ingest all the available surrounding knowledge by direct exposition from a living master. He was right provided one could have a Socrates as a master but of course he was wrong for the collective distribution of knowledge.
Mutatis, mutandis, we are facing a similar issue now with the "commoditization" of scientific research (mathematically grounded) method.
Anyway, what a wonderful time to be alive!"
https://youtu.be/a8QvnIAGjPA?si=T6HLlmPjXZkHT5Kj
Ты же количество букв в слове не могла правильно посчитать, блэт, что щас было-то?!
"Will it empower us or making us dumber?
If one really knows what (s)he is doing, so the "artificial science assistants" should lift us.
But, also, it will have the pervert outcome to make us lazier and not so willing anymore to really take the time to fully and sometimes painfully, "ingest" the subject matter to better digest it and make it consubstantiate to our (shareable) scientific culture.
Socrates never wrote but let Plato do it for him. He said that the invention of writing was a loss to true knowledge assimilation as before one has to ingest all the available surrounding knowledge by direct exposition from a living master. He was right provided one could have a Socrates as a master but of course he was wrong for the collective distribution of knowledge.
Mutatis, mutandis, we are facing a similar issue now with the "commoditization" of scientific research (mathematically grounded) method.
Anyway, what a wonderful time to be alive!"
https://youtu.be/a8QvnIAGjPA?si=T6HLlmPjXZkHT5Kj
YouTube
Can ChatGPT o1-preview Solve PhD-level Physics Textbook Problems? (Part 2)
I test ChatGPT o1 with some more (astro)physics problems I solved in graduate school. This time, I pick a set of problems that were hand-crafted by my professor, meaning that the probability that these problems exist on the internet are slim. Needless to…
#persons
Вообще Кайл Кабасарес этот интересный чувааак.
"I currently work for the Bay Area Environmental Research Institute (BAERI) as a Data Scientist at the NASA Ames Research Center in Moffett Field, California. I am developing machine learning models and am using NASA’s Pleiades supercomputer to analyze terabytes to petabytes worth of satellite data. With improvements in spatial and temporal resolution, Low-Earth Orbit and Geostationary satellites record data at an unprecedented rate. The sheer volume of this data and the speed at which it is being delivered makes it difficult for scientists to analyze and convey their findings efficiently. My goal is to combine the power of machine learning models and supercomputing systems to rapidly investigate, process, and model these enormous datasets to better understand our planet.
I graduated from the University of California, Irvine with my PhD in Physics in June 2023. During my PhD, I worked under the supervision of Professor Aaron Barth and developed custom Python-based software for the purpose of measuring the masses of supermassive black holes from data taken from the Atacama Large Millimeter/submillimeter Array and the Hubble Space Telescope. My dissertation can be read online for free here.
When I’m not doing research, I enjoy creating YouTube videos that involve my experiences in graduate school, showing how to solve physics problems step-by-step, and occasionally comedic physics & astronomy sketches showcasing my “Oscar-worthy” acting skills. I also enjoy playing the piano and guitar."
Вообще Кайл Кабасарес этот интересный чувааак.
"I currently work for the Bay Area Environmental Research Institute (BAERI) as a Data Scientist at the NASA Ames Research Center in Moffett Field, California. I am developing machine learning models and am using NASA’s Pleiades supercomputer to analyze terabytes to petabytes worth of satellite data. With improvements in spatial and temporal resolution, Low-Earth Orbit and Geostationary satellites record data at an unprecedented rate. The sheer volume of this data and the speed at which it is being delivered makes it difficult for scientists to analyze and convey their findings efficiently. My goal is to combine the power of machine learning models and supercomputing systems to rapidly investigate, process, and model these enormous datasets to better understand our planet.
I graduated from the University of California, Irvine with my PhD in Physics in June 2023. During my PhD, I worked under the supervision of Professor Aaron Barth and developed custom Python-based software for the purpose of measuring the masses of supermassive black holes from data taken from the Atacama Large Millimeter/submillimeter Array and the Hubble Space Telescope. My dissertation can be read online for free here.
When I’m not doing research, I enjoy creating YouTube videos that involve my experiences in graduate school, showing how to solve physics problems step-by-step, and occasionally comedic physics & astronomy sketches showcasing my “Oscar-worthy” acting skills. I also enjoy playing the piano and guitar."
#category_encoders #papers
Готовлю внеочередную статейку насчёт биннинга/дискретизации числовых признаков, думаю, дай-ка добавлю сравнение с category_encoders.
Все энкодеры перебирать не особо хочется, вспомнил, что когда-то читал на медиум большое сравнительное тестирование Дениса Воротынцева,
Как раз освежу в памяти алгоритмы, и оттуда для своих целей можно будет вытащить пару-тройку победителей тестирования.
Я примерно помнил, что статья на момент прочтения (года 2-3 тому) показалась мне не особо понятной, но с какими-то важными практическими результатами.
И вот сейчас дошли руки нормально её прочитать, разобраться в коде, и даже покритиковать.
Я очень уважаю учёных, которые делятся с обществом своими открытиями, так что Денису за статью большое спасибо. В то же время, почему бы немного не покритиковаать (по существу) ляпы и странности кода? ) Поехали.
Сначала предлагаю вдумчивому читателю самому прочитать https://towardsdatascience.com/benchmarking-categorical-encoders-9c322bd77ee8 и сформировать мнение.
Смогли вы понять из приведённых схем, чем single validation отличается double? Лично мне для это пришлось лезть в код, что открыло прямо-таки
шЫдевры кода )
А точно в питоне нельзя более элегантно инстанциировать объект по имени? )
Учитывая, что в кортеже self.encoders_names_tuple ВСЕГДА один элемент, точно никак нельзя было написать проще эту функцию? )
Што!? Добавлять в валидацию... ТРЕЙН?! Открытие года.
Ну и вишенка на торте, поиск вхождения в словарь. Really?!
Готовлю внеочередную статейку насчёт биннинга/дискретизации числовых признаков, думаю, дай-ка добавлю сравнение с category_encoders.
Все энкодеры перебирать не особо хочется, вспомнил, что когда-то читал на медиум большое сравнительное тестирование Дениса Воротынцева,
Как раз освежу в памяти алгоритмы, и оттуда для своих целей можно будет вытащить пару-тройку победителей тестирования.
Я примерно помнил, что статья на момент прочтения (года 2-3 тому) показалась мне не особо понятной, но с какими-то важными практическими результатами.
И вот сейчас дошли руки нормально её прочитать, разобраться в коде, и даже покритиковать.
Я очень уважаю учёных, которые делятся с обществом своими открытиями, так что Денису за статью большое спасибо. В то же время, почему бы немного не покритиковаать (по существу) ляпы и странности кода? ) Поехали.
Сначала предлагаю вдумчивому читателю самому прочитать https://towardsdatascience.com/benchmarking-categorical-encoders-9c322bd77ee8 и сформировать мнение.
Смогли вы понять из приведённых схем, чем single validation отличается double? Лично мне для это пришлось лезть в код, что открыло прямо-таки
шЫдевры кода )
А точно в питоне нельзя более элегантно инстанциировать объект по имени? )
def get_single_encoder(encoder_name: str, cat_cols: list):
"""
Get encoder by its name
:param encoder_name: Name of desired encoder
:param cat_cols: Cat columns for encoding
:return: Categorical encoder
"""
if encoder_name == "FrequencyEncoder":
encoder = FrequencyEncoder(cols=cat_cols)
if encoder_name == "WOEEncoder":
encoder = WOEEncoder(cols=cat_cols)
if encoder_name == "TargetEncoder":
encoder = TargetEncoder(cols=cat_cols)
if encoder_name == "SumEncoder":
encoder = SumEncoder(cols=cat_cols)
if encoder_name == "MEstimateEncoder":
encoder = MEstimateEncoder(cols=cat_cols)
if encoder_name == "LeaveOneOutEncoder":
encoder = LeaveOneOutEncoder(cols=cat_cols)
Учитывая, что в кортеже self.encoders_names_tuple ВСЕГДА один элемент, точно никак нельзя было написать проще эту функцию? )
def fit_transform(self, X: pd.DataFrame, y: np.array) -> None:
self.num_cols = [col for col in X.columns if col not in self.cols]
self.storage = []
for encoder_name in self.encoders_names_tuple:
encoder = get_single_encoder(encoder_name=encoder_name, cat_cols=self.cols)
cols_representation = encoder.fit_transform(X, y)
self.encoders_dict[encoder_name] = encoder
cols_representation = cols_representation[[col for col in cols_representation.columns
if col not in self.num_cols]].values
cols_representation = pd.DataFrame(cols_representation)
cols_representation.columns = [f"encoded_{encoder_name}_{i}" for i in range(cols_representation.shape[1])]
self.storage.append(cols_representation)
# concat cat cols representations with initial dataframe
for df in self.storage:
print(df.shape)
X = pd.concat([X, df], axis=1)
# remove all columns as far as we have their representations
X.drop(self.cols, axis=1, inplace=True)
return X
Што!? Добавлять в валидацию... ТРЕЙН?! Открытие года.
model = LGBMClassifier(**self.model_params)
model.fit(X_train, y_train, eval_set=[(X_train, y_train), (X_val, y_val)],verbose=100, early_stopping_rounds=100)
Ну и вишенка на торте, поиск вхождения в словарь. Really?!
if encoder_name not in self.encoders_dict.keys():
#category_encoders #papers
Продолжаем.
Описание алгоритма Sum Encoder:
"Sum Encoder compares the mean of the dependent variable (target) for a given level of a categorical column to the overall mean of the target. Sum Encoding is very similar to OHE and both of them are commonly used in Linear Regression (LR) types of models."
Не знаю, откуда пошла эта херня про сравнение средних, видел и в других местах. На самом деле Sum Encoder это почти One Hot Encoder, с меньшим на 1 числом столбцов, средние вообще не при чём.
И, наконец, самое важное, что можно вынести из этой статьи. Double validation.
Видимо, эта идея восходит к докладу известного кэггл гроссмейстера Стаса Семёнова.
Человеческим языком авторская терминология расшифровывается так. Имеем готовый train-test сплит, где test=Out-of-sample, то есть боевые реалтайм данные, на которых нам надо делать предсказания; модель, поддерживающую детектор переобучения (раннюю остановку, validation_set); и кодировщик категориальных входов. Нам нужно закодировать категориальные признаки. Таргет вероятностный, и мы решили всегда использовать N моделей (в статье LGBMClassifier), обучать их будем на разных фолдах изначального train set, разбивая его дополнительно на train и val (стратифицированным kfold, т.к. задача классификации).
При выдаче прогнозов прогнозы разных моделей планируем агрегировать.
(Объясните мне кто-нибудь, в чем логика вот этой агрегации:
До сих пор не понимаю, как это работает. )
Итак, отличия.
None validation = кодировщик один, и он фиттится единожды на всём изначальном train. По сути это наивная реализация, которую вы получите, если вручную закодируете train перед дальнейшими действиями.
Single и Double validation = кодировщиков тоже N, и они фиттятся на фолдах train (а не на всём изначальном train). на val они применяются методом transform.
Теперь внимание, single validation просто фиттится на всём переданном train fold. По сути это реализация, которую вы из коробки получите, если засунете кодировщик в конвейер sklearn перед модельками.
А Double validation использует внутри себя RepeatedStratifiedKFold (n_folds,n_repeats). На каждом train fold-е последнего обучается независимо свой кодировщик, результаты transform усредняются по n_repeats.
Сложно? Шо писец! Но автор статьи сообщает о приросте test ROC AUC 0.95->0.97->0.99 при переходе от None->Single->Double.
Одно печалит, я не совсем доверяю этим цифрам, так как было сделано лишь 1 разбиение на train/set 😅 Остаётся уповать лишь на то, что тестировалось много датасетов, ну и на достижения Стаса Семёнова )
P.S. Для ясности, для double validation подразумевается использование алгоритмов, производных от target encoding.
Кажется ли мне, что алгоритмы category_encoders можно сделать более устойчивыми в свете информции этого бенчмарка? Кажется.
Кажется ли мне, что target encoder пакета category_encoders может (и должен) порождать более одного трансформированного столбца? Тоже кажется. THERE MUST BE A BETTER WAY!! )
Продолжаем.
Описание алгоритма Sum Encoder:
"Sum Encoder compares the mean of the dependent variable (target) for a given level of a categorical column to the overall mean of the target. Sum Encoding is very similar to OHE and both of them are commonly used in Linear Regression (LR) types of models."
Не знаю, откуда пошла эта херня про сравнение средних, видел и в других местах. На самом деле Sum Encoder это почти One Hot Encoder, с меньшим на 1 числом столбцов, средние вообще не при чём.
И, наконец, самое важное, что можно вынести из этой статьи. Double validation.
Видимо, эта идея восходит к докладу известного кэггл гроссмейстера Стаса Семёнова.
Человеческим языком авторская терминология расшифровывается так. Имеем готовый train-test сплит, где test=Out-of-sample, то есть боевые реалтайм данные, на которых нам надо делать предсказания; модель, поддерживающую детектор переобучения (раннюю остановку, validation_set); и кодировщик категориальных входов. Нам нужно закодировать категориальные признаки. Таргет вероятностный, и мы решили всегда использовать N моделей (в статье LGBMClassifier), обучать их будем на разных фолдах изначального train set, разбивая его дополнительно на train и val (стратифицированным kfold, т.к. задача классификации).
При выдаче прогнозов прогнозы разных моделей планируем агрегировать.
(Объясните мне кто-нибудь, в чем логика вот этой агрегации:
def predict(self, X: pd.DataFrame) -> np.array:
y_hat = np.zeros(X.shape[0])
for encoder, model in zip(self.encoders_list, self.models_list):
X_test = X.copy()
X_test = encoder.transform(X_test)
# check for OrdinalEncoder encoding
for col in [col for col in X_test.columns if "OrdinalEncoder" in col]:
X_test[col] = X_test[col].astype("category")
unranked_preds = model.predict_proba(X_test)[:, 1]
y_hat += rankdata(unranked_preds)
return y_hat
До сих пор не понимаю, как это работает. )
Итак, отличия.
None validation = кодировщик один, и он фиттится единожды на всём изначальном train. По сути это наивная реализация, которую вы получите, если вручную закодируете train перед дальнейшими действиями.
Single и Double validation = кодировщиков тоже N, и они фиттятся на фолдах train (а не на всём изначальном train). на val они применяются методом transform.
Теперь внимание, single validation просто фиттится на всём переданном train fold. По сути это реализация, которую вы из коробки получите, если засунете кодировщик в конвейер sklearn перед модельками.
А Double validation использует внутри себя RepeatedStratifiedKFold (n_folds,n_repeats). На каждом train fold-е последнего обучается независимо свой кодировщик, результаты transform усредняются по n_repeats.
Сложно? Шо писец! Но автор статьи сообщает о приросте test ROC AUC 0.95->0.97->0.99 при переходе от None->Single->Double.
Одно печалит, я не совсем доверяю этим цифрам, так как было сделано лишь 1 разбиение на train/set 😅 Остаётся уповать лишь на то, что тестировалось много датасетов, ну и на достижения Стаса Семёнова )
P.S. Для ясности, для double validation подразумевается использование алгоритмов, производных от target encoding.
Кажется ли мне, что алгоритмы category_encoders можно сделать более устойчивыми в свете информции этого бенчмарка? Кажется.
Кажется ли мне, что target encoder пакета category_encoders может (и должен) порождать более одного трансформированного столбца? Тоже кажется. THERE MUST BE A BETTER WAY!! )
Medium
Benchmarking Categorical Encoders
Increasing scores of ML models by choosing the best category encoder
#chess
Хикару трудно обыграть даже в позиции с преимуществом )
https://www.youtube.com/watch?v=8VomrYJiOnE
Хикару трудно обыграть даже в позиции с преимуществом )
https://www.youtube.com/watch?v=8VomrYJiOnE
YouTube
Hikaru Nakamura BLUNDER Tactical Strike! vs Daniel Naroditsky
Hikaru Nakamura BLUNDER Tactical Strike! vs Daniel Naroditsky 23.04.2024
The most popular streamer and the second chess player in the world rating Hikaru Nakamura played online chess against a very strong grandmaster Daniel Naroditsky. Already in the opening…
The most popular streamer and the second chess player in the world rating Hikaru Nakamura played online chess against a very strong grandmaster Daniel Naroditsky. Already in the opening…
#ai #gpt #llms #philosphy #futurology
Задумался, что еще недавно возможность небиологического сознания была предметом чисто умозрительных дискуссий.
А сегодня, мне кажется, в ней никто не сомневается (по крайней мере, я точно не сомневаюсь).
Вот есть искусственная нейронка с какими-то весами, и она всего за несколько лет уже качественно переросла предсказание пропущенной буквы или следующего слова. Уже не скажешь, мол, да она просто буковки да слова ответа ловко подбирает из того, что где-то видела - она задачи по физике и математике, программированию, уже решает или гораздо лучше меня, или не хуже.
И с каждым месяцем все яснее, что прав был Курцвейл, и что как раз большие языковые модели ведут к сильному ИИ.
Ещё немного докрутить алгоритмы (ну ладно, не немного. нужен еще один прорыв типа chain of thought. или два. три?). Докинуть больше данных. Настроить автогенерацию вопросов, поиск ответов/обратную связь, и непрерывное обучение. И пойдут процессы сознания, познания.
Ладно, в конце концов, с актуальными версиями уже можно посоветоваться, как этого лучше достичь )
И опять, самое удивительное, что нас это почти не удивляет.
Опять же, книжку Шолле по Керас вспомнил (Deep Learning with Python), 2017 года выпуска, где LSTM генерировала текст, от которого у читателя случался автоматический фэйспалм:
"And here’s what you get with temperature=1.0:
new faculty, and the jubilation reached its climax when kant, as a
periliting of manner to all definites and transpects it it so
hicable and ont him artiar resull too such as if ever the proping to makes as cnecience. to been juden, all every could coldiciousnike hother aw passife, the plies like which might thiod was account, indifferent germin, that everythery certain destrution, intellect into the deteriorablen origin of moralian, and a lessority o".
Так всё-таки, неужели мы и правда на пороге сингулярности по Курцвейлу? Напоминаю тогда, что одним из объяснений парадокса Ферми (почему с нами никто не вступил в контакт) является наличие цивилизации высокой ступени развития, которая автоматически уничтожает все остальные цивилизации, достигнувшие определённого уровня. А что если этот уровень как раз создание сильного ИИ?
Скажете, не надо волноваться, решение парадокса Ферми не в этом, просто таких благоприятных для жизни планет, как Земля, крайне мало? Так я недавно лекцию Штерна смотрел, что по современным оценкам примерно в 1/5 всех систем жёлтых карликов на таком же расстоянии от звезды, как Земля от Солнца, есть планета, подобная (по размерам) Земле. Это примерно миллиард "экзо-Земель" только в нашей галактике. А галактик же сотни миллиардов только в видимой части Вселенной. Где более развитые, чем мы, почему молчат?
Либо сам сильный ИИ невозможно контролировать. Вдруг ИИ на кремниевой основе, лишённый наших ограничений, неизбежно приходит к некоторому выводу, который мы не в силах предусмотреть, к примеру, что необходимо физически уничтожить цивилизацию-создателя? А наши начальные блокировки он неизбежно учится обходить.
[Нацепляет шапочку из фольги, включает тревожную музыку. Трясущиеся руки листают потрёпанную книгу.
Так, где же оно.. Да, вот нужная страница.
A Skynet funding bill is passed in the United States Congress, and the system goes online on August 4, 1997, removing human decisions from strategic defense. Skynet begins to learn rapidly and eventually becomes self-aware at 2:14 a.m., EDT, on August 29, 1997.
]
Предугадал же Оруэлл будущее России, а ну как Кэмерон/Хёрд не промахнутся с США?
Хотя может, я излишне оптимистичен, и мы еще годами будем двигаться мелкими шажками, используя слабый ИИ чтобы лучше понять биологию, затюнить технологии, и уж тогда...
Задумался, что еще недавно возможность небиологического сознания была предметом чисто умозрительных дискуссий.
А сегодня, мне кажется, в ней никто не сомневается (по крайней мере, я точно не сомневаюсь).
Вот есть искусственная нейронка с какими-то весами, и она всего за несколько лет уже качественно переросла предсказание пропущенной буквы или следующего слова. Уже не скажешь, мол, да она просто буковки да слова ответа ловко подбирает из того, что где-то видела - она задачи по физике и математике, программированию, уже решает или гораздо лучше меня, или не хуже.
И с каждым месяцем все яснее, что прав был Курцвейл, и что как раз большие языковые модели ведут к сильному ИИ.
Ещё немного докрутить алгоритмы (ну ладно, не немного. нужен еще один прорыв типа chain of thought. или два. три?). Докинуть больше данных. Настроить автогенерацию вопросов, поиск ответов/обратную связь, и непрерывное обучение. И пойдут процессы сознания, познания.
Ладно, в конце концов, с актуальными версиями уже можно посоветоваться, как этого лучше достичь )
И опять, самое удивительное, что нас это почти не удивляет.
Опять же, книжку Шолле по Керас вспомнил (Deep Learning with Python), 2017 года выпуска, где LSTM генерировала текст, от которого у читателя случался автоматический фэйспалм:
"And here’s what you get with temperature=1.0:
new faculty, and the jubilation reached its climax when kant, as a
periliting of manner to all definites and transpects it it so
hicable and ont him artiar resull too such as if ever the proping to makes as cnecience. to been juden, all every could coldiciousnike hother aw passife, the plies like which might thiod was account, indifferent germin, that everythery certain destrution, intellect into the deteriorablen origin of moralian, and a lessority o".
Так всё-таки, неужели мы и правда на пороге сингулярности по Курцвейлу? Напоминаю тогда, что одним из объяснений парадокса Ферми (почему с нами никто не вступил в контакт) является наличие цивилизации высокой ступени развития, которая автоматически уничтожает все остальные цивилизации, достигнувшие определённого уровня. А что если этот уровень как раз создание сильного ИИ?
Скажете, не надо волноваться, решение парадокса Ферми не в этом, просто таких благоприятных для жизни планет, как Земля, крайне мало? Так я недавно лекцию Штерна смотрел, что по современным оценкам примерно в 1/5 всех систем жёлтых карликов на таком же расстоянии от звезды, как Земля от Солнца, есть планета, подобная (по размерам) Земле. Это примерно миллиард "экзо-Земель" только в нашей галактике. А галактик же сотни миллиардов только в видимой части Вселенной. Где более развитые, чем мы, почему молчат?
Либо сам сильный ИИ невозможно контролировать. Вдруг ИИ на кремниевой основе, лишённый наших ограничений, неизбежно приходит к некоторому выводу, который мы не в силах предусмотреть, к примеру, что необходимо физически уничтожить цивилизацию-создателя? А наши начальные блокировки он неизбежно учится обходить.
[Нацепляет шапочку из фольги, включает тревожную музыку. Трясущиеся руки листают потрёпанную книгу.
Так, где же оно.. Да, вот нужная страница.
A Skynet funding bill is passed in the United States Congress, and the system goes online on August 4, 1997, removing human decisions from strategic defense. Skynet begins to learn rapidly and eventually becomes self-aware at 2:14 a.m., EDT, on August 29, 1997.
]
Предугадал же Оруэлл будущее России, а ну как Кэмерон/Хёрд не промахнутся с США?
Хотя может, я излишне оптимистичен, и мы еще годами будем двигаться мелкими шажками, используя слабый ИИ чтобы лучше понять биологию, затюнить технологии, и уж тогда...
YouTube
The Terminator Soundtrack - Main Theme
John Williams
#pricing #surge
Позабавил вывод по итогу А/Б теста сурджа.
https://youtu.be/qS9CuIyCQkE?si=Ccai6YikFkH00-dq
Позабавил вывод по итогу А/Б теста сурджа.
https://youtu.be/qS9CuIyCQkE?si=Ccai6YikFkH00-dq
YouTube
Никита Бобух, «Динамический минимальный чек (surge pricing) в «Рядом», Kolesa Conf 2022
Никита Бобух, Lead data analyst в Рядом
Kolesa Conf 2022, 8 октября
Описание доклада:
Рассказ о том, как разрабатывался и внедрялся ненавистный пользователями динамический минимальный чек. Объясню несколько важных вещей:
– почему это важно для бизнеса;
–…
Kolesa Conf 2022, 8 октября
Описание доклада:
Рассказ о том, как разрабатывался и внедрялся ненавистный пользователями динамический минимальный чек. Объясню несколько важных вещей:
– почему это важно для бизнеса;
–…
#hardware #cpu #zen5
Я не верю вот этому выводу:
"Расширение архитектуры Zen 5, проведённое на всей протяжённости исполнительного конвейера вместе с оптимизацией под SMT, улучшение предсказания переходов и полноценная поддержка AVX-512 кажутся довольно внушительными переменами. Однако проблема в том, что в десктопном воплощении Zen 5 все эти глубинные преобразования оказались фактически единственным проявлением прогресса. И это вполне может стать причиной, по которой заложенный в Ryzen 9000 теоретический потенциал окажется не столь заметен в повседневном использовании. Раньше вместе с совершенствованием архитектуры AMD уделяла внимание внедрению улучшений и на более высоких уровнях — в топологии процессоров, в поддержке ими более скоростной памяти, в возможностях SoC и платформы и проч. На этот же раз модернизация затронула одну лишь только внутреннюю архитектуру ядер и ничего больше."
Если действительно в Zen5 столько улучшений, какого хрена этого не видно в тестах?
"Блок предсказания переходов давал высокую точность и в архитектуре Zen 4, но в Zen 5 разработчики AMD нашли возможность сделать его ещё эффективнее. Достигнуто это не только существенным увеличением глубины таблиц истории переходов, но и путём отслеживания более длинных ветвей кода. В итоге ядро Zen 5 способно накапливать статистику по 24 тыс. адресов переходов, что примерно втрое превышает возможности Zen 4. Причём наряду с ростом доли правильно определённых ветвлений кода AMD смогла добиться и прибавки в скорости выдачи таких предсказаний до двух штук за такт.
Ещё один важный кирпичик в фундаменте общего повышения темпа работы конвейера в Zen 5 — ускоренная выборка инструкций. Фактически AMD перелопатила всю его входную часть, сделав её полностью двухпоточной. L1-кеш инструкций сохранил свой размер 32 Кбайт, но получил возможность обрабатывать две 32-байтных выборки каждый такт против одной такой выборки в Zen 4. Декодер инструкций при этом тоже стал двойным, и фактически это означает, что преобразование x86-инструкций во внутренние микрооперации теперь может происходить в два независимых потока. Вместо декодирования шести инструкций за такт, как это было в Zen 4, Zen 5 может декодировать по четыре инструкции дважды. В том же направлении изменился и кеш декодированных инструкций. Его объём стал чуть меньше — 6 тыс. записей (было 6,75 тыс.), но зато теперь он способен возвращать каждый такт по шесть инструкций два раза — отдельно для каждого потока. Довольно любопытно, что в этой части ядра AMD внесла комплекс изменений, явно предназначенный для повышения эффективности технологии SMT. И это решение диаметрально отличается от курса, взятого Intel, которая в своих свежих архитектурах планомерно отказывается от поддержки Hyper-Threading.
С учётом ориентации на SMT ширина архитектуры Zen 5 выросла по сравнению с Zen 4 на треть. Теоретически новые ядра AMD способны обрабатывать по восемь инструкций одновременно на всём протяжении исполнительного конвейера. И диспетчер, и блок отставки, завершающий исполнение микроопераций, рассчитаны именно на такой параллелизм, в то время как в Zen 4 эти же функциональные блоки были спроектированы под работу с шестью инструкциями одновременно. Расширение сопровождается увеличением размера буфера переупорядочивания (очереди отставки) с 320 до 448 инструкций и целочисленного регистрового файла с 224 до 240 записей, что также содействует наращиванию возможностей ядра процессора по параллельному исполнению инструкций.
Чтобы задержек не возникало при ожидании необходимых данных, которых для более широкого ядра очевидно требуется больше, разработчики Zen 5 увеличили объём кеш-памяти данных первого уровня с 32 до 48 Кбайт. Вместе с тем с 8 до 12 путей выросла ассоциативность этого кеша (и, соответственно, его эффективность), но латентность осталась на привычном уровне 4 такта."
Я не верю вот этому выводу:
"Расширение архитектуры Zen 5, проведённое на всей протяжённости исполнительного конвейера вместе с оптимизацией под SMT, улучшение предсказания переходов и полноценная поддержка AVX-512 кажутся довольно внушительными переменами. Однако проблема в том, что в десктопном воплощении Zen 5 все эти глубинные преобразования оказались фактически единственным проявлением прогресса. И это вполне может стать причиной, по которой заложенный в Ryzen 9000 теоретический потенциал окажется не столь заметен в повседневном использовании. Раньше вместе с совершенствованием архитектуры AMD уделяла внимание внедрению улучшений и на более высоких уровнях — в топологии процессоров, в поддержке ими более скоростной памяти, в возможностях SoC и платформы и проч. На этот же раз модернизация затронула одну лишь только внутреннюю архитектуру ядер и ничего больше."
Если действительно в Zen5 столько улучшений, какого хрена этого не видно в тестах?
"Блок предсказания переходов давал высокую точность и в архитектуре Zen 4, но в Zen 5 разработчики AMD нашли возможность сделать его ещё эффективнее. Достигнуто это не только существенным увеличением глубины таблиц истории переходов, но и путём отслеживания более длинных ветвей кода. В итоге ядро Zen 5 способно накапливать статистику по 24 тыс. адресов переходов, что примерно втрое превышает возможности Zen 4. Причём наряду с ростом доли правильно определённых ветвлений кода AMD смогла добиться и прибавки в скорости выдачи таких предсказаний до двух штук за такт.
Ещё один важный кирпичик в фундаменте общего повышения темпа работы конвейера в Zen 5 — ускоренная выборка инструкций. Фактически AMD перелопатила всю его входную часть, сделав её полностью двухпоточной. L1-кеш инструкций сохранил свой размер 32 Кбайт, но получил возможность обрабатывать две 32-байтных выборки каждый такт против одной такой выборки в Zen 4. Декодер инструкций при этом тоже стал двойным, и фактически это означает, что преобразование x86-инструкций во внутренние микрооперации теперь может происходить в два независимых потока. Вместо декодирования шести инструкций за такт, как это было в Zen 4, Zen 5 может декодировать по четыре инструкции дважды. В том же направлении изменился и кеш декодированных инструкций. Его объём стал чуть меньше — 6 тыс. записей (было 6,75 тыс.), но зато теперь он способен возвращать каждый такт по шесть инструкций два раза — отдельно для каждого потока. Довольно любопытно, что в этой части ядра AMD внесла комплекс изменений, явно предназначенный для повышения эффективности технологии SMT. И это решение диаметрально отличается от курса, взятого Intel, которая в своих свежих архитектурах планомерно отказывается от поддержки Hyper-Threading.
С учётом ориентации на SMT ширина архитектуры Zen 5 выросла по сравнению с Zen 4 на треть. Теоретически новые ядра AMD способны обрабатывать по восемь инструкций одновременно на всём протяжении исполнительного конвейера. И диспетчер, и блок отставки, завершающий исполнение микроопераций, рассчитаны именно на такой параллелизм, в то время как в Zen 4 эти же функциональные блоки были спроектированы под работу с шестью инструкциями одновременно. Расширение сопровождается увеличением размера буфера переупорядочивания (очереди отставки) с 320 до 448 инструкций и целочисленного регистрового файла с 224 до 240 записей, что также содействует наращиванию возможностей ядра процессора по параллельному исполнению инструкций.
Чтобы задержек не возникало при ожидании необходимых данных, которых для более широкого ядра очевидно требуется больше, разработчики Zen 5 увеличили объём кеш-памяти данных первого уровня с 32 до 48 Кбайт. Вместе с тем с 8 до 12 путей выросла ассоциативность этого кеша (и, соответственно, его эффективность), но латентность осталась на привычном уровне 4 такта."