Класс set
(множество) — это одна из ключевых структур данных в Python. Она представляет собой неупорядоченную коллекцию уникальных элементов. Класс set
, в некоторой степени, соответствует математическому множеству. Многие широко используемые математические операции, применимые к множествам, существуют и в Python. Часто вычисления, производимые над множествами, оказываются гораздо быстрее, чем альтернативные операции со списками. В результате, для того чтобы писать эффективный код, Python-программисту просто необходимо уметь пользоваться множествами. В этой статье я расскажу об особенностях работы с классом set
в Python.
Пользователь
Бесшовность 2.0: как работает шардирование в Сбере
Если у вас не просто большая компания, а целая экосистема с разными сервисами, IT-инфраструктура должна обеспечивать бесшовность. Клиенты и сотрудники могут входить в систему с разных устройств, но изменение информации в одном канале должно отображаться в других, а целостность данных сохраняться, даже если вход совершен в двух каналах параллельно. И в идеале — так, чтобы клиент не видел «внутренней кухни».
Меня зовут Владимир Паршин, я ведущий ИТ-инженер в СберТехе. Расскажу, как выстроена работа с бесшовностью в Сбере.
В статье будет про драматичное прошлое, Джастина Бибера и балансировку нагрузки. А главное — про то, какие решения СберТеха под капотом банка сейчас обеспечивают обработку данных огромного числа клиентов и сотрудников.
Создаем изометрические уровни игры с помощью Stable Diffusion
Всем привет. Сегодня я покажу вам, как можно создавать 2.5D уровни в изометрии с помощью быстрого прототипирования техникой grayboxing, и генеративного искусственного интеллекта, а именно Stable Diffusion. Практически весь процесс, описываемый в статье, довольно легко автоматизируется.
Если интересно, добро пожаловать под кат.
Нейросетевой синтез речи своими руками
Некоторое время назад в область синтеза речи, как и во многие другие области, пришло машинное обучение. Выяснилось, что целый ряд компонентов всей системы можно заменить на нейронные сети, что позволит не просто приблизиться по качеству к существующим алгоритмам, а даже значительно их превзойти.
Я решил попробовать сделать полностью нейросетевой синтез своими руками, а заодно и поделиться с сообществом своим опытом. Что из этого получилось, можно узнать, заглянув под кат.
Как устроено пространство, в котором думают языковые модели?
С момента выхода первой статьи «Attention is All You Need» я с жадностью и любопытством, присущими любому исследователю, пытаюсь углубиться во все особенности и свойства моделей на базе архитектуры трансформер. Но, если честно, я до сих пор не понимаю, как они работают и почему так хорошо обучаются. Очень хочу разобраться, в чём же причина такой эффективности этих моделей, и есть ли предел их возможностей?
Такому изучению трансформеров «под микроскопом» и посвящена наша научная работа, только что представленная на конференции EACL 2024, которая проходила на Мальте — «The Shape of Learning: Anisotropy and Intrinsic Dimensions in Transformer-Based Models». В этой работе мы сфокусировались на наблюдении за пространством эмбеддингов (активаций) на промежуточных слоях по мере обучения больших и маленьких языковых моделей (LM).
Теоретические основы всех популярных алгоритмов машинного обучения и их реализация с нуля на Python
В данной статье в виде ссылок представлены все популярные алгоритмы классического машинного обучения с их подробным теоретическим описанием и немного упрощённой реализацией с нуля на Python, отражающей основную идею. Помимо этого, в конце каждой темы указаны дополнительные источники для более глубокого ознакомления, а суммарное время прочтения статей ниже составляет более трёх часов!
Метод K-ближайших соседей (KNN). Принцип работы, разновидности и реализация с нуля на Python
К-ближайших соседей (K-Nearest Neighbors или просто KNN) — алгоритм классификации и регрессии, основанный на гипотезе компактности, которая предполагает, что расположенные близко друг к другу объекты в пространстве признаков имеют схожие значения целевой переменной или принадлежат к одному классу.
Художественные приемы и профессиональные термины для создания изображений с ИИ. Всё, что нужно знать
В этой статье собраны все основные понятия для написания текстовой подсказки для генерации изображений с помощью нейросети.
Если вы хотите создавать качественные изображения, нужно понимать (или просто запомнить) некоторые профессиональные термины и приемы, используемые художниками и фотографами.
В этой статье мы разберем такие ключевые факторы, как высокая детализация, освещение, стиль изображения и другое.
Дилемма ИИ: когда обучение больших языковых моделей заходит в тупик
ИИ готовится заменить сотни тысяч должностей не только в разработке ПО, но и во множестве других областей: в журналистике, творческой работе, общении с покупателями и так далее. Это та же самая мантра, которую мы слышим по поводу каждой технологической инновации: «Компьютер полностью заменит людей». Старая история из фильмов про терминаторов.
Хотя я уже перечислил некоторые возможные последствия для ПО в своей статье «Мы снова в кризисе ПО, но в ближайшее время ИИ никого не заменит», мне бы хотелось рассмотреть, что произойдёт, если большие языковые модели (Large Language Model, LLM) полностью заменят человеческий труд. Содержание дилеммы будет практически одинаковым для всех областей, но я сосредоточусь на разработке ПО, потому что самые громкие заявления об LLM звучат как раз в её сторону.
Они хотят, чтобы мы забыли, как выглядят фильмы
Самая гротескная категория видео на YouTube — это старые киноплёнки, пропущенные через ИИ-апскейлер. Иногда видео придаётся цвет, иногда их интерполируют до 60 кадров в секунду. Если вы понимаете, как должно выглядеть видео, то все они кажутся одинаково ужасными, размазанными и кричащими. Но, похоже, этого не понимают в том числе и люди, отвечавшие за недавний апскейлинг фильма «Правдивая ложь» (и в меньшей мере «Чужих», «Титаника» и «Бездны»).
Таких фильмов уже миллион, и все они выглядят одинаково отвратительно.
Если вы никогда не смотрели фильм «Правдивая ложь», то вам, скорее всего, меньше тридцати. В нём Арнольд Шварценеггер играет роль агента правительственной контртеррористической организации, сражающегося со злодеями и хранящего этот опасный образ жизни втайне от своей непримечательной жены, которую играет Джейми Ли Кёртис. Это дурашливая крупнобюджетная комедия-экшн (ремейк французского фильма «Тотальная слежка») с фантастическими сценами, невероятным актёрским составом и несколькими прекрасными эпизодами. Сегодня он смотрится именно так, как должен смотреться незамысловатый экшн 1994 года. Вероятно, в карьере Джеймса Кэмерона это самый странный фильм, если не считать «Пиранья 2: Нерест».
Backblaze: надёжность жёстких дисков падает год от года. Это актуально для HDD большинства производителей
Компания Backblaze, провайдер облачных сервисов, регулярно публикует отчёты о выходе из строя жёстких дисков, находящихся у неё в эксплуатации. HDD — сотни тысяч, поэтому статистика получается интересной. Правда, обычно такие отчёты выглядят более-менее одинаково: какие-то модели дисков выходят из строя чаще, какие-то реже.
А вот сейчас ситуация иная: согласно данным провайдера за 2023 г., надёжность жёстких дисков разных моделей от любых производителей снизилась. Есть и исключения, но в целом это так. Подробности — под катом.
Локальные нейросети (генерация картинок, локальный chatGPT). Запуск Stable Diffusion на AMD видеокартах
Многие слышали про Midjourney, но про то, что есть локальная Stable Diffusion, которая может даже больше, знает уже куда меньше людей, или они не знают, что она локальная. И если они пробовали её онлайн, то быстро приходили к выводу, что она сильно хуже чем Midjourney и не стоит обращать на неё более внимания. И да, SD появился раньше Midjourney. Для запуска хватит и cpu или 4гб видеопамяти.
Аналогично с chatGPT, про попытку сделать его локальную версию, не требующую супер компьютер, тоже мало кто слышал и знает, несмотря на то, что выходило несколько статей.
InstantID: Создание персонализированных изображений по одному фото. И лучший бесплатный генератор нейро-аватарок
Друзья, всем привет, вышла в свет новая удивительная технология, на гите она подписана как InstantID : Zero-shot Identity-Preserving Generation in Seconds. Но по факту это самый крутой генератор аватарок в мире, который по одной лишь вашей фотографии может создать персонализированное изображение с вашим лицом в любом стиле по текстовому запросу используя SDXL модели Stable Diffusion. Так что к концу этой статьи, у вас так же как и у меня будет десяток новых аватарок и совершенно бесплатно.
В статье много красивых и тяжелых картинок.
Telegram WebApps. Как встроить веб-приложения в чат-бота?
Относительно недавно команда Telegram выпустила обновление, с которым появилась возможность встраивать в мессенджер веб-приложения. Эта статья — обзор основных моментов внедрения веб-приложениий в телеграм-ботов.
Блокировки MySQL: виды, проблемы и способы обнаружения
Рано или поздно любой разработчик или администратор СУБД, имеющий дело с MySQL, сталкивается с проблемой блокировок. Всё дело в природе MySQL как системы с конкурентным доступом на чтение/запись. Я расскажу о видах блокировок в MySQL, их преимуществах и недостатках, о проблемах, которые они вызывают, а также дам полезные советы по обнаружению и способам борьбы с блокировками.
Где купить Windows в условиях санкций?
В данный момент с лицензиями на Windows сложилась интересная ситуация. С одной стороны, Microsoft ушла с российского рынка. С другой стороны, официально поддерживает старых клиентов и продлевает им лицензии.
То есть Microsoft формально ушла, но по факту продолжает продажи. Более того, есть способы получить лицензию Windows и новым клиентам тоже, вопреки официально заявленной позиции вендора. Такая двойственная политика, кажется, устраивает всех. Главное, чтобы никто не поднимал шума…
А в маркетплейсах вовсю расцвела торговля пиратками. Ведь правообладатель уже ни на кого не подаст в суд. Потихоньку в РФ начинается полный беспредел и наплевательство на законы.
Обход графа: поиск в глубину и поиск в ширину простыми словами на примере JavaScript
Представляю вашему вниманию перевод статьи «Algorithms on Graphs: Let’s talk Depth-First Search (DFS) and Breadth-First Search (BFS)» автора Try Khov.
Что такое обход графа?
Простыми словами, обход графа — это переход от одной его вершины к другой в поисках свойств связей этих вершин. Связи (линии, соединяющие вершины) называются направлениями, путями, гранями или ребрами графа. Вершины графа также именуются узлами.
Двумя основными алгоритмами обхода графа являются поиск в глубину (Depth-First Search, DFS) и поиск в ширину (Breadth-First Search, BFS).
Несмотря на то, что оба алгоритма используются для обхода графа, они имеют некоторые отличия. Начнем с DFS.
Простое объяснение алгоритмов поиска пути и A*
Часть 1. Общий алгоритм поиска
Введение
Поиск пути — это одна из тех тем, которые обычно представляют самые большие сложности для разработчиков игр. Особенно плохо люди понимают алгоритм A*, и многим кажется, что это какая-то непостижимая магия.
Цель данной статьи — объяснить поиск пути в целом и A* в частности очень понятным и доступным образом, положив таким образом конец распространённому заблуждению о том, что эта тема сложна. При правильном объяснении всё достаточно просто.
Учтите, что в статье мы будем рассматривать поиск пути для игр; в отличие от более академических статей, мы опустим такие алгоритмы поиска, как поиск в глубину (Depth-First) или поиск в ширину (Breadth-First). Вместо этого мы постараемся как можно быстрее дойти от нуля до A*.
Ликбез по вхождению в Data Science: что для этого нужно и стоит ли пытаться?
Всем привет! Меня зовут Надя, и сейчас я выступаю в роли ментора на программе Mentor in Tech и помогаю людям «войти» в Data Science. А несколькими годами ранее сама столкнулась с задачей перехода в DS из другой сферы, так что обо всех трудностях знаю не понаслышке.
Порог для входа в профессию очень высокий, так как DS стоит на стыке трех направлений: аналитики, математики и программирования. Но освоить специальность — задача выполнимая (хоть и непростая), даже если ты гуманитарий и списывал математику у соседа по парте.
В этой статье я собрала несколько рекомендаций на основе моего личного опыта (как поиска работы, так и найма людей), а также исходя из рассказов знакомых.
Дообучение saiga2_7b_lora
Дообучение 7-миллиардной модели Saiga2 под свои задачи, используя сгенерированный датасет с помощью GPT. В данной статье есть все необходимые ссылки и код для предобработки и запуска обучения модели, а также квантования модели.
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность