🪁Продвинутый Python: оператор dot
Казалось бы, что может быть тривиальнее оператора dot?
Большинство из вас многократно пользовались этим оператором, не задаваясь вопросом, как именно он действует. Этот оператор очень удобен для решения повседневных задач. Вы обращаетесь к нему практически каждый раз, когда используете Python для чего-то большего, чем “Hello World”.
Именно поэтому вам наверняка хочется копнуть глубже, и я готов стать вашим гидом.
Начнем с банального вопроса: что такое оператор dot?
Вот пример:
Конечно, это пример простейшего “Hello World”, хотя я с трудом представляю, что кто-то начнет учить Python именно с этого примера. В любом случае, оператор dot — это часть “.” в строке hello.upper(). Вот более сложный пример:
Оператор dot может использоваться в нескольких случаях. Чтобы было легче представить общую картину, кратко опишем два случая его использования:
🟡 для доступа к атрибутам объекта или класса;
🟡 для доступа к функциям, заданным в определении класса.
Очевидно, что оба случая встречаются в нашем примере и кажутся интуитивно понятными и ожидаемыми. На самом деле все не так просто! Взгляните на этот пример повнимательнее:
📌 Смотреть
@data_analysis_ml
Казалось бы, что может быть тривиальнее оператора dot?
Большинство из вас многократно пользовались этим оператором, не задаваясь вопросом, как именно он действует. Этот оператор очень удобен для решения повседневных задач. Вы обращаетесь к нему практически каждый раз, когда используете Python для чего-то большего, чем “Hello World”.
Именно поэтому вам наверняка хочется копнуть глубже, и я готов стать вашим гидом.
Начнем с банального вопроса: что такое оператор dot?
Вот пример:
hello = 'Hello world!'
print(hello.upper())
# HELLO WORLD!
Конечно, это пример простейшего “Hello World”, хотя я с трудом представляю, что кто-то начнет учить Python именно с этого примера. В любом случае, оператор dot — это часть “.” в строке hello.upper(). Вот более сложный пример:
class Person:
num_of_persons = 0
def __init__(self, name):
self.name = name
def shout(self):
print(f"Hey! I'm {self.name}")
p = Person('John')
p.shout()
# Hey I'm John.
p.num_of_persons
# 0
p.name
# 'John'
Оператор dot может использоваться в нескольких случаях. Чтобы было легче представить общую картину, кратко опишем два случая его использования:
Очевидно, что оба случая встречаются в нашем примере и кажутся интуитивно понятными и ожидаемыми. На самом деле все не так просто! Взгляните на этот пример повнимательнее:
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4🔥2
🚀 Если вы хотите усовершенствовать свои навыки в области машинного обучения, ознакомьтесь с этими репозиториями
1️⃣ Многомесячный учебный план по машинному обучению
2️⃣ План подготовки к собеседованиям по Machine Learning
3️⃣ Машинное обучение с Tensorflow
4️⃣ Список примеров машинного обучения
5️⃣ Список замечательных фреймворков и библиотек машинного обучения
6️⃣ ML для начинающих от Microsoft
7️⃣ Изучение основ машинного обучения с помощью интуитивно понятных объяснений, чистого кода и визуализаций.
8️⃣ Машинное обучение своими руками
@data_analysis_ml
1️⃣ Многомесячный учебный план по машинному обучению
2️⃣ План подготовки к собеседованиям по Machine Learning
3️⃣ Машинное обучение с Tensorflow
4️⃣ Список примеров машинного обучения
5️⃣ Список замечательных фреймворков и библиотек машинного обучения
6️⃣ ML для начинающих от Microsoft
7️⃣ Изучение основ машинного обучения с помощью интуитивно понятных объяснений, чистого кода и визуализаций.
8️⃣ Машинное обучение своими руками
@data_analysis_ml
👍18🔥9❤6😢3❤🔥1🥱1
🔥 The Data Engineering Handbook бесплатно!
В этом справочнике собраны все ресурсы, необходимые для того, чтобы стать отличным инженером по данным!
В том числе проекты, которые вы сможете добавить в свое резюме.
📌Ссылка на справочник
@data_analysis_ml
В этом справочнике собраны все ресурсы, необходимые для того, чтобы стать отличным инженером по данным!
В том числе проекты, которые вы сможете добавить в свое резюме.
📌Ссылка на справочник
@data_analysis_ml
👍13❤3🔥3
🛠 Как создать первый проект по инженерии данных: инкрементный подход. Часть 1
При работе над реальным проектом вам дадут несколько месяцев обучаться всему, что необходимо для решения проблемы. Вы получите набор задач или формулировок проблемы. Проанализировав их, вы будете продумывать свои действия для их выполнения.
При таком подходе выражение “поди разберись, что к чему” часто становятся мантрой. Такова участь практически всех новичков.
Как часто вы чувствовали себя неуверенно даже после окончания курса? Вы были уверены в своих силах, пока следовали руководству, но как только получили набор задач, стали откладывать их выполнение?
Представляю метод инкрементной разработки проектов, который способен решить проблему снижения мотивации.
📌 Читать дальше
@data_analysis_ml
При работе над реальным проектом вам дадут несколько месяцев обучаться всему, что необходимо для решения проблемы. Вы получите набор задач или формулировок проблемы. Проанализировав их, вы будете продумывать свои действия для их выполнения.
При таком подходе выражение “поди разберись, что к чему” часто становятся мантрой. Такова участь практически всех новичков.
Как часто вы чувствовали себя неуверенно даже после окончания курса? Вы были уверены в своих силах, пока следовали руководству, но как только получили набор задач, стали откладывать их выполнение?
Представляю метод инкрементной разработки проектов, который способен решить проблему снижения мотивации.
📌 Читать дальше
@data_analysis_ml
❤8🔥4👍2
В реальных датасетах часто встречаются опечатки и ошибки, особенно в категориальных переменных, введенных вручную.
Чтобы объединить несколько вариантов одной и той же категории, используйте функцию
skrub - это библиотека Python, облегчающая подготовку таблиц для машинного обучения.
📌 Github
@data_analysis_ml
Чтобы объединить несколько вариантов одной и той же категории, используйте функцию
deduplicate
библиотеки skrub.skrub - это библиотека Python, облегчающая подготовку таблиц для машинного обучения.
pip install git+https://github.com/skrub-data/skrub.git
📌 Github
@data_analysis_ml
👍30🔥9❤3
This media is not supported in your browser
VIEW IN TELEGRAM
https://colab.research.google.com/github/mkshing/notebooks/blob/main/stable_video_diffusion_img2vid.ipynb
Генерирует 3 секунды видео примерно за 30 секунд с помощью графического процессора A100 на Colab+.
Генерация видео не контролируется никаким образом (пока), но, судя по всему, модель может самостоятельно применять разные творческие стили.
Прикрепляем сгенерированное видео.
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19👍5❤4👎1
Однако при работе с большими массивами данных она становится очень медленной и не хватает памяти!
Представляем Modin - библиотеку python, которая в 10 раз быстрее Pandas
Modin хорошо работает на больших массивах данных, там где pandas становится медленной или не хватает памяти.
Посмотрите на приведенный ниже пример: Pandas (слева) и Modin (справа) выполняют одни и те же операции pandas на наборе данных размером 2 ГБ.
Единственное различие между двумя примерами заключается в операторе import (картинки 1 и 2).
Как это возможно?
Pandas является однопоточным, что означает, что он не может задействовать несколько ядер вашей машины, в то время как Modin использует все ядра.
На 3 картинке вы можете посмотреть скорость работы различных функций в Pandas и Modin
▪ Github
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍40🔥13❤5👎1
🔥 Дайджест полезных материалов из мира Машинного обучения за неделю
Почитать:
— Как разбить видеокарту и поделиться с коллегами? Динамический шеринг GPU в Kubernetes с помощью MIG, MPS и TimeSlicing
— Обучение ИИ на синтетических данных: исследователи из MIT меняют правила игры
— Как базы данных выполняют SQL-запросы?
— Трюки и лайфхаки с Python кодом
— Большие языковые модели (LLM) в задачах
— DVC + Hydra: легко меняем и запускаем ML эксперименты
— Распознавание русского жестового языка: распознаём до 3+ жестов в секунду на обычном ПК без видеокарты
— Все, что нужно знать для разработки с использованием LLM
— Генеративный ИИ — это просто «замыленный JPEG интернета», который убедительно косит под интеллект
— ТОЛК: серия встреч про технологии будущего от red_mad_robot
— Новые чипы от Microsoft, Git для аналитиков и эволюция Data Platform
— Увядает ли ремесло программиста?
— RAGLog: Log Anomaly Detection using Retrieval Augmented Generation
— The Emergence of Autonomous Agents
— Why OpenAI Assistants is a Big Win for LLM Evaluation
— How to Use AI/ML Models for Your Projects
— No Code Machine Learning for Business Decision-Making
— Working through the fast.ai book in Rust - Part 5
— Smart HR: Embracing Cloud and Machine Learning for Effective Talent Management
— BakaLLM, part 12, 1 step backward, 4 steps forward: starting new experiment
— Markov Decision Processes(MDP) basic concept
— ⚡️⚡️ 7 Machine Learning repos used by the TOP 1% of Python developers 🐉
Посмотреть:
🌐 Thomas Scialom, PhD - Large Language Models: Past, Present and Future (⏱ 34:57)
🌐 Sarah Bird, PhD - Building and Using Generative AI Responsibly: Microsoft’s Journey (⏱ 30:10)
🌐 ODSC Webinar | Enhanced Fine-tuning of Open Source Pre-trained LLMs for Q&A and Summarization Tasks (⏱ 47:04)
🌐 Building an Optimized ML Pipeline: The builders behind Superbet’s profanity detection use case (⏱ 25:23)
Хорошего дня!
@data_analysis_ml
Почитать:
— Как разбить видеокарту и поделиться с коллегами? Динамический шеринг GPU в Kubernetes с помощью MIG, MPS и TimeSlicing
— Обучение ИИ на синтетических данных: исследователи из MIT меняют правила игры
— Как базы данных выполняют SQL-запросы?
— Трюки и лайфхаки с Python кодом
— Большие языковые модели (LLM) в задачах
— DVC + Hydra: легко меняем и запускаем ML эксперименты
— Распознавание русского жестового языка: распознаём до 3+ жестов в секунду на обычном ПК без видеокарты
— Все, что нужно знать для разработки с использованием LLM
— Генеративный ИИ — это просто «замыленный JPEG интернета», который убедительно косит под интеллект
— ТОЛК: серия встреч про технологии будущего от red_mad_robot
— Новые чипы от Microsoft, Git для аналитиков и эволюция Data Platform
— Увядает ли ремесло программиста?
— RAGLog: Log Anomaly Detection using Retrieval Augmented Generation
— The Emergence of Autonomous Agents
— Why OpenAI Assistants is a Big Win for LLM Evaluation
— How to Use AI/ML Models for Your Projects
— No Code Machine Learning for Business Decision-Making
— Working through the fast.ai book in Rust - Part 5
— Smart HR: Embracing Cloud and Machine Learning for Effective Talent Management
— BakaLLM, part 12, 1 step backward, 4 steps forward: starting new experiment
— Markov Decision Processes(MDP) basic concept
— ⚡️⚡️ 7 Machine Learning repos used by the TOP 1% of Python developers 🐉
Посмотреть:
🌐 Thomas Scialom, PhD - Large Language Models: Past, Present and Future (⏱ 34:57)
🌐 Sarah Bird, PhD - Building and Using Generative AI Responsibly: Microsoft’s Journey (⏱ 30:10)
🌐 ODSC Webinar | Enhanced Fine-tuning of Open Source Pre-trained LLMs for Q&A and Summarization Tasks (⏱ 47:04)
🌐 Building an Optimized ML Pipeline: The builders behind Superbet’s profanity detection use case (⏱ 25:23)
Хорошего дня!
@data_analysis_ml
🔥17❤3👍2
This media is not supported in your browser
VIEW IN TELEGRAM
🛠 Grist - это гибрид базы данных и электронной таблицы, то есть:
🔹 Столбцы работают так же, как и в базах данных: им присваиваются имена, и в них хранятся данные одного типа.
🔹Столбцы могут быть заполнены формулами в стиле электронных таблиц с автоматическим обновлением при изменении ссылающихся ячеек.
https://github.com/gristlabs/grist-core
@data_analysis_ml
🔹 Столбцы работают так же, как и в базах данных: им присваиваются имена, и в них хранятся данные одного типа.
🔹Столбцы могут быть заполнены формулами в стиле электронных таблиц с автоматическим обновлением при изменении ссылающихся ячеек.
https://github.com/gristlabs/grist-core
@data_analysis_ml
👍23🔥4❤3❤🔥1
🗣️ Large Language Model Course
Выгла вторая версия бесплатного LLM курса.
Это пошаговое руководство с курируемыми ресурсами, разделенное на три части: основы LLM, наука больших языковых моделей и инженерия (W.I.P.).
Идеально подходит как для новичков, так и для экспертов в области ML.
🖥 GitHub: https://github.com/mlabonne/llm-course
🔍 Course: https://mlabonne.github.io/blog/
@data_analysis_ml
Выгла вторая версия бесплатного LLM курса.
Это пошаговое руководство с курируемыми ресурсами, разделенное на три части: основы LLM, наука больших языковых моделей и инженерия (W.I.P.).
Идеально подходит как для новичков, так и для экспертов в области ML.
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥4❤1
🦾 Команда DeepSeek проделывает поистине выдающуюся работу.
Их последняя модель близка к GPT-4 по целому ряду эталонных бенчмарков и выглядит лучшим открытым вариантом.
DeepSeek LLM, продвинутая языковая модель, состоящую из 67 миллиардов параметров.
▪Github
▪Project
@data_analysis_ml
Их последняя модель близка к GPT-4 по целому ряду эталонных бенчмарков и выглядит лучшим открытым вариантом.
DeepSeek LLM, продвинутая языковая модель, состоящую из 67 миллиардов параметров.
▪Github
▪Project
@data_analysis_ml
👍27🔥3❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Одно из лучших репо-гайдов с тех пор, как
Karpathy
выпустил туториал по minGPT
🦾
GPT-Fast
: минималистичная реализация декодера на PyTorch с лучшими практиками: квантование int8/int4, декодирование, тензорный параллелизм и т.д. Увеличивает скорость LLM OS в 10 раз без изменения модели! Нам нужно больше minGPT и GPT-Fasts в мире открытого кода! Туториал создан разработчикои cHHillee из команды PyTorch.
pip install sentencepiece huggingface_hub
Блог: https://pytorch.org/blog/accelerating-generative-ai-2/
Код: https://github.com/pytorch-labs/gpt-fast
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥6❤1
🦾 Записанные хардкодом переменные без описания могут ухудшить читаемость кода.
Использование Enum в #Python позволяет присваивать переменным осмысленные имена, повышая читаемость кода.
@data_analysis_ml
Использование Enum в #Python позволяет присваивать переменным осмысленные имена, повышая читаемость кода.
from enum import Enum
# class syntax
class Color(Enum):
RED = 1
GREEN = 2
BLUE = 3
# functional syntax
Color = Enum('Color', ['RED', 'GREEN', 'BLUE'])
🔗Подробнее@data_analysis_ml
🔥22👍8❤3
Суммаризация текстов с использованием LLM и LangChain 🚀
Знаете ли вы, что можно создать собственное приложение для суммаризации текстов, используя
На картинке полный исходный код.
@data_analysis_ml
Знаете ли вы, что можно создать собственное приложение для суммаризации текстов, используя
huggingface
модели и LangChainAI
менее чем за 20 строк кода? На картинке полный исходный код.
@data_analysis_ml
👍18❤3🔥3
🧠 Впервые ИИ смог восстановить изображения по активности мозга с точностью более 75%.
Японские исследователи совершили значительный прорыв в области создания изображений с помощью искусственного интеллекта, достигнув рекордной точности в 75 % при восстановлении изображений по активности мозга.
Это значительное улучшение по сравнению с предыдущими методами, которые достигали точности всего 50,4 %. Процесс включает в себя запись активности мозга испытуемых во время просмотра изображений и последующее восстановление этих изображений.
Используя нейронный транслятор сигналов и генеративный ИИ, исследователи смогли восстановить эти изображения с высокой точностью.
Эта технология открывает новые возможности для понимания человеческого разума и может привести к появлению новых форм невербальной коммуникации.
▪ Почитать подробнее
@data_analysis_ml
Японские исследователи совершили значительный прорыв в области создания изображений с помощью искусственного интеллекта, достигнув рекордной точности в 75 % при восстановлении изображений по активности мозга.
Это значительное улучшение по сравнению с предыдущими методами, которые достигали точности всего 50,4 %. Процесс включает в себя запись активности мозга испытуемых во время просмотра изображений и последующее восстановление этих изображений.
Используя нейронный транслятор сигналов и генеративный ИИ, исследователи смогли восстановить эти изображения с высокой точностью.
Эта технология открывает новые возможности для понимания человеческого разума и может привести к появлению новых форм невербальной коммуникации.
▪ Почитать подробнее
@data_analysis_ml
🔥30👍9😱7❤4
🦾 Отличный набор моделей диффузии текста в изображение, лучшие модели на данный момент (8 конвейеров.).
https://huggingface.co/collections/sayakpaul/assorted-text-to-image-diffusion-models-64f99f2b3ef7ea04c262c4b4
@data_analysis_ml
https://huggingface.co/collections/sayakpaul/assorted-text-to-image-diffusion-models-64f99f2b3ef7ea04c262c4b4
@data_analysis_ml
❤🔥10👍3❤1🔥1
Media is too big
VIEW IN TELEGRAM
🔥 Ego-Exo4D - новый большой датасет и набор бенчмарков, ориентированных на квалифицированную человеческую деятельность, для поддержки исследований в области видеообучения и мультимодального восприятия.
Это крупнейший публичный набор данных такого рода.
🔥 Dataset: https://ego-exo4d-data.org/
📚 Paper: https://ego-exo4d-data.org/paper/ego-exo4d.pdf
🌟 Project: https://www.projectaria.com/
🥩 Blog: https://ai.meta.com/blog/ego-exo4d-video-learning-perception
@data_analysis_ml
Это крупнейший публичный набор данных такого рода.
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤3🔥1