Pull to refresh
-28
0.2

Интересуюсь природой вещей

Send message

Ускорение Python в 2 раза с помощью multiprocessing, async и MapReduce

Level of difficultyMedium
Reading time16 min
Views13K

Python действительно может считаться относительно медленным языком программирования по сравнению с некоторыми другими языками, такими как C++ или Java. Однако, существуют различные библиотеки и инструменты, которые позволяют ускорить выполнение счетных задач в Python. Рассмотрим как можно ускорить анализ данных в 2 раза!

Читать далее

Я тебя с вертухи сломаю, если ещё раз заговоришь об ИИ

Level of difficultyEasy
Reading time15 min
Views53K

Последние инновации в сфере ИИ, наиболее примечательными из которых стали проекты наподобие GPT-4, очевидно, могут иметь далеко идущие последствия для общества: от утопического избавления от монотонного труда до антиутопического ущерба для работы художников в капиталистическом обществе, а также до экзистенциальных угроз самому человечеству.

Лично я получил формальное образование дата-саентиста, даже выиграв в высококонкурентном конкурсе по машинному обучению в одном из лучших университетов Австралии и написав магистерскую, для которой создал в MATLAB с нуля собственные библиотеки. Я не гений в этой сфере, но, очевидно, лучше большинства конкурентов, то есть практиков вроде меня; я не могу, сидя в пещере, создавать собственные библиотеки на C, но умею читать учебники, реализовывать готовые решения на языках высокого уровня и использовать библиотеки, написанные элитными организациями.

Поэтому с глубочайшим сожалением должен объявить, что следующий человек, который начнёт говорить мне о реализации ИИ, получит от меня сеанс живительных процедур над позвоночником; иными словами, я сломаю ему нафиг шею. Мне очень-очень жаль.

Читать далее

Почему я больше не делаю важные дела: и еще 3 правила как не потерять себя к 40 годам

Level of difficultyEasy
Reading time8 min
Views152K

До 30 лет кажется, что ты еще успеваешь завоевать мир. Кое-кто и вправду успевает. Но вскоре у многих появляются дети, а поясница с желудком потихоньку выходят из игры. Тогда-то и начинаешь понимать – жизнь чертовски быстро заканчивается. В этой статье поговорим о том, как не просрать ее окончательно.

Читать далее

26 техник, которыми геймдизайнеры манипулируют игроком в видеоиграх

Reading time13 min
Views21K

В области геймдизайна наджи (англ. nudge) или "подталкивания" — это такие тонкие элементы дизайна, стимулы, которые направляют игроков по намеченному геймдизайнером пути, улучшая их игровой опыт, но не навязывая им каких-либо действий напрямую. Ниже вашему вниманию представлен список таких техник подталкивания игрока с их описанием, применением и реальными примерами использования в видеоиграх.

Дисклеймер:

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

Надж сам по себе не несет никакой моральной окраски. Именно вы решаете, использовать ли его во благо или во вред игрока.

Читать далее

Сложная красота в простой формуле

Level of difficultyEasy
Reading time6 min
Views19K

Красота генеративного искусства состоит не только в неожиданных и сложных образах, порождаемых простыми алгоритмами, но и в том, что их можно изучить, понять и объяснить. Как известно, объяснение способно убить шутку, но настоящую красоту внутренняя логика делает только богаче.

Сегодня я предлагаю вспомнить один старый и простой алгоритм, рисующий красивые картинки, который когда-то вовлёк меня в программирование и увлёк математикой. А заодно мы немного разберёмся в том почему картинки получаются именно такими.

Читать далее

Как я проходил собеседование в Тинькофф

Level of difficultyEasy
Reading time10 min
Views66K

Привет %user_name%! Сегодня я хочу поделиться своим опытом, как я проходил собеседование в Тинькофф в несколько этапов. На просторах Хабра периодически встречаются статьи на тему HR и там либо рассказывают как успешно пройти собеседование и что нужно HR специалистам услышать, чтобы вас принять на работу или же совсем обратное где специалисты разного уровня и мастей жалуются на работу тех самых HR! Но сегодня будет не про это! И так если стало интересно, добро пожаловать подкат. Осторожно, много текста.

Я решил написать эту статью, потому что когда я сотрудничал с Нетологией и проводил курсы по DevOps самый частый вопрос мне был расскажите о собеседованиях. Все дело в том, что я не только участвую в них как респондент, но и сам активно их провожу набирая новых специалистов в штат. И сегодня я бы хотел поделиться своим опытом, советами и рекомендациями, а так же затронуть тему собеседований в несколько этапов и почему я такие собеседования не провожу.

Сейчас я больше года не преподаю в Нетологии, но продолжаю это делать в компании Отус, так вот сложилось так, что этот вопрос актуален для студентов и на этой площадке тоже. Скажу сразу у меня богатый опыт прохождения собеседований в несколько этапов, в Рамблер например я едел 3 или 4 раза, где меня собеседовало сразу около 4-5 человек. Чуть больше полугода назад я проходил собеседование в Яндекс, где успешно завалил алгоритмическое программирование, но прошел все остальные этапы, и даже пообщался с руководителем Яндекс Облака где поделился своим мнением по факту прохождения этапов. Все закончилось на том, что меня ждут ровно через пол года на алгоритмической секции и если я ее пройду, то дойдет дело до офера, но я не пошел. У меня нет желания решать задачи с LetCode для прокачки этого не нужного мне скила. 

Читать далее

Bare-metal Kubernetes — спускайся с облаков

Level of difficultyMedium
Reading time13 min
Views17K

Эта статья предназначена для тех, кто только начинает свой путь в мире Kubernetes и хочет понять, как развернуть кластер Kubernetes на собственных серверах с отказоустойчивым балансировщиком в виде MetalLB.

MetalLB — это решение для балансировки нагрузки в средах Kubernetes, которые не имеют доступа к встроенным балансировщикам, как в облачных провайдерах. Этот инструмент предлагает простой и эффективный способ добиться внешней доступности для сервисов в Kubernetes с помощью собственной инфраструктуры.

Связка MetalLB, Longhorn и Kubespray позволяет обойтись меньшим количеством виртуалок и построить закрытую, высокоэффективную систему, способную удовлетворить специфические потребности вашего бизнеса.

Пойдём разворачивать

Большие языковые модели гораздо линейнее, чем мы думали

Level of difficultyHard
Reading time4 min
Views19K

Хабр, привет! Это снова Антон Разжигаев, аспирант Сколтеха и научный сотрудник лаборатории Fusion Brain в Институте AIRI, где мы продолжаем углубляться в изучение языковых моделей. В прошлый раз мы выяснили, что эмбеддинги трансформеров-декодеров сильно анизотропны. На этот раз я бы хотел рассказать об их удивительной линейности, ведь нашу статью про обнаруженный эффект («Your Transformer is Secretly Linear») несколько дней назад приняли на международную конференцию ACL!

Читать далее

Распознавание именованных сущностей: механизм, методики, сценарии использования и реализация

Reading time13 min
Views6.2K

Естественные языки сложны. А когда на горизонте появляется контекст, они становятся ещё сложнее. Возьмём для примера фамилию Линкольн. Некоторые сразу подумают о шестнадцатом президенте США, выдающейся исторической фигуре. Однако для других это производитель автомобилей с тем же названием. Одно простое слово имеет разные значения.

Мы, люди, без проблем различаем значения и категории. Это свидетельствует о нашем интуитивном понимании окружающего мира. Но когда дело касается компьютеров, эта, казалось бы, простая задача превращается в неоднозначную проблему. Подобные трудности подчёркивают необходимость надёжного распознавания именованных сущностей (named entity recognition, NER) — механизма, при помощи которого мы учим машины понимать различные лингвистические нюансы.

В этой статье мы расскажем о том, что такое NER, о его принципах работы и о том, как оно используется в реальной жизни. Также в ней мы прольём свет на различные методики NER и способы реализации модели NER.
Читать дальше →

Единственное руководство, необходимое для успешной сдачи экзамена CKAD(Certified Kubernetes Application Developer)

Level of difficultyMedium
Reading time4 min
Views8.1K

12 июня 2022 года я сдал экзамен CKAD. Изначально объем знаний, необходимых для сдачи этого экзамена, был пугающим, но с правильной подготовкой я справился. В этой статье делюсь опытом, ресурсами и советами, которые помогут вам успешно подготовиться к экзамену CKAD.

Читать далее

Интуитивное понимание пространств и ядер в машинном обучении: Часть 1

Level of difficultyHard
Reading time9 min
Views12K

При изучении темы ядер (kernel) в ML/DS программы вузов, роадмэпы и видео на YouTube обычно рассматривают её через призму SVM, не говоря уже о всеми любимых курсах:). Казалось бы, это неплохо: вот тебе краткое объяснение и модель, которая использует ядра. Но, увы, в этих областях желательно понимать многие процессы интуитивно, так сказать — «тяжело в учении, легко в бою». К тому же, эта тема нечто большее, чем просто метод; она позволяет связать многие вещи в машинном обучении в единую картину через пространство, что я и хочу показать в этой статье.

Читать далее

Прощайте, базы данных, да здравствуют векторные базы данных

Level of difficultyEasy
Reading time11 min
Views94K

Революция в области искусственного интеллекта переформатирует все отрасли нашей жизни, с одной стороны обещая невероятные инновации, а с другой ー сталкивая нас с новыми вызовами. В безумном потоке изменений эффективная обработка данных становится приоритетом для приложений, на основе больших языковых моделей, генеративного ИИ и семантического поиска. В основе этих технологий лежат векторные представления (embeddings, дальше будем называть их Эмбеддинги), сложные представления данных, пронизанные критической семантической информацией.

Эти вектора, созданные LLMs, охватывают множество атрибутов или характеристик, что делает управление ими сложной задачей. В области искусственного интеллекта и машинного обучения эти характеристики представляют различные измерения данных, необходимые для обнаружения закономерностей, взаимосвязей и базовых структур. Для удовлетворения уникальных требований к обработке этих вложений необходима специализированная база данных. Векторные базы данных специально созданы для обеспечения оптимизированного хранения и запросов векторов, сокращая разрыв между традиционными базами данных и самостоятельными векторными индексами, а также предоставляя ИИ-системам инструменты, необходимые для успешной работы в этой среде нагруженной данными.

Читать далее

Об одном способе веб-скрапинга сайтов, защищенных Cloudflare

Level of difficultyMedium
Reading time10 min
Views30K

Сразу оговорюсь, что описанное ниже носит исключительно информационно-образовательный характер, и не имеет целью нанесение какого-либо ущерба компаниям, использующим защиту из заголовка статьи. По этим же причинам фокусировка статьи именно на том, как получить заветный html «как из браузера» в автоматизированном режиме, и здесь не будет идти речь о каких-то массовых распараллеливаниях через proxy и VPN, подкладываниях отпечатков (finger prints) браузеров и т. д.

Узнать о способе обхода защиты Cloudflare

На практике пробуем KAN – принципиально новую архитектуру нейросетей

Level of difficultyMedium
Reading time5 min
Views41K

На днях ученые из MIT показали альтернативу многослойному перцептрону (MLP). MLP с самого момента изобретения глубокого обучения лежит в основе всех нейросетей, какими мы их знаем сегодня. На его идее в том числе построены большие языковые модели и системы компьютерного зрения.

Однако теперь все может измениться. В KAN (Kolmogorov-Arnold Networks) исследователи реализовали перемещение функций активации с нейронов на ребра нейросети, и такой подход показал блестящие результаты.

Читать далее

Кто убивает мое производство одежды?

Level of difficultyEasy
Reading time8 min
Views29K

11 лет мое производство шьет спецодежду для врачей и стюардесс, жилеты для неотапливаемых складов Вайлдберриз, и другую униформу. 10 человек на 150 кв.м в Подмосковье отшивают одежды на 1,5 млн в месяц. Сегодня мы переживаем не самые лучшие времена, как и вся отрасль, и вот почему.

В статье расскажу, как я не понял языка откатов, чем страшен женский алкоголизм, сколько можно заработать, когда одеваешь завод, и какие проблемы вас ждут на швейном производстве, если вы не Коко Шанель.

Читать далее

Построение логических элементов на транзисторах

Level of difficultyMedium
Reading time3 min
Views22K

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

Такая логика называется РТЛ (резисторно-транзисторная логика).

Велосипед я не изобрёл, просто собрал  кучу разного материала, плюс сам экспериментировал. Схемы примера собирал в программе Multisim и тестировал на настоящих транзисторах PN2222A. И вот что у меня вышло.

Читать далее

Принципы SOLID, только понятно

Level of difficultyEasy
Reading time6 min
Views109K

Когда я только знакомился с принципами SOLID, я искал понятные статьи на Хабр. При этом пришлось прочитать не одну статью, и полное понимание пришло сильно позже. Хотелось бы, чтобы новички на более простых примерах смогли почувствовать, о чем эти принципы.

Изучить принципы

Питер Норвиг: автор лучшего в мире учебника по ИИ

Level of difficultyEasy
Reading time5 min
Views20K


Питер Норвиг (Peter Norvig) — выдающийся учёный, один из отцов современной ИИ-разработки. После сингулярности ИИ точно оставит его в живых в знак благодарности.

Норвиг не только хороший программист, но и теоретик программирования, учёный и преподаватель, в длинном резюме перечислено 58 статей, а количество цитирований на сегодняшний день составляет 78 830.

Основное признание Норвиг получил как автор учебника «Искусственный интеллект: современный подход», который в наше время считается самым популярным учебником по ИИ в вузах. Эта фундаментальная работа претерпела уже четыре переиздания.
Читать дальше →

Похоже, я придумал свой алгоритм поиска кратчайшего пути (upd: меня опередили...)

Level of difficultyMedium
Reading time17 min
Views38K

Всем привет! Я реализовал, похоже, собственный алгоритм поиска кратчайшего пути с отрицательными ребрами графа.

Почему собственный? Я искал подобное решение, но не нашел, возможно, оно уже было реализовано, просто плохо поискал. Жду Нобелевскую премию =)

Додумался я до него путем модификации классического Дейкстры. Прошу адекватно отнестись к содержимому, ибо это моя первая статья, и, возможно, я ничего не придумывал и, вообще, этот алгоритм не работает вовсе (но по многочисленным тестам он работает правильно).

Читать далее

Пишем поиск семантически похожих текстов (или товаров) за полчаса на Go и Postgres (pgVector)

Reading time5 min
Views11K


Казалось бы, в посгресе и так есть неплохой полнотекстовый поиск (tsvector/tsquery), и вы из коробки можете проиндексировать ваши тексты, а потом поискать по ним. Но на самом деле это не совсем то, что нужно — такой поиск работает лишь по чётким совпадениям слов. Т.е. postgres не догадается, что "кошка гонится за мышью" — это довольно близко к "котёнок охотится на грызуна". Как же победить такую проблему?


TLDR:


  1. Преобразовываем наши тексты в наборы чисел (векторы) при помощи API openAI.
  2. Сохраняем векторы в базе с помощью pgvector.
  3. Легко ищем близкие друг к другу векторы или ищем их по вектору-запросу.
  4. Ускоряем индексами.
Читать дальше →

Information

Rating
4,228-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity