Pull to refresh
10
Karma
0
Rating

Сбер выложил русскоязычную модель GPT-3 Large с 760 миллионами параметров в открытый доступ

Сбер corporate blog SberDevices corporate blog Machine learning *Artificial Intelligence Natural Language Processing *
Последнее десятилетие в области компьютерных технологий ознаменовалось началом новой «весны искусственного интеллекта». Впрочем, ситуацию в индустрии в наши дни можно, наверное, охарактеризовать уже не как весну, а полноценное «лето ИИ». Судите сами, за последние неполные 10 лет только в области обработки естественного языка (Natural language processing, NLP) произошли уже две настоящие технологические революции. Появившаяся в результате второй из них модель GPT-3 произвела настоящий фурор не только в технологических медиа, но стала знаменитой далеко за пределами научного сообщества. Например, GPT-3 написала для издания «The Guardian» эссе о том, почему ИИ не угрожает людям. GPT-3 сочиняет стихи и прозу, выполняет переводы, ведёт диалоги, даёт ответы на вопросы, хотя никогда специально не училась выполнять эти задачи. До недавних пор все возможности GPT-3 могли по достоинству оценить лишь англоязычные пользователи. Мы в Сбере решили исправить эту досадную оплошность. И сейчас расскажем вам, что из этого получилось.


Источник изображения
Читать дальше →
Total votes 165: ↑160 and ↓5 +155
Views 140K
Comments 241

Что такое LLVM и зачем он нужен?

Huawei corporate blog C++ *System Programming *Compilers *C *

Всем привет! Думаю, у многих сразу возник другой вопрос — а зачем вообще нужна ещё одна статья про LLVM, ведь на хабре их и так больше сотни? Моей задачей было написать "введение в тему" for the rest of us — профессиональных разработчиков, не планирующих создавать компиляторы и совершенно не интересующихся особенностями устройства LLVM IR. Насколько я знаю, подобного ещё не было.


Главное, что интересует практически всех — и о чём я планирую рассказать — вынесено в заголовок статьи. Зачем нужен LLVM, когда есть GCC и Visual C++? А если вы не программируете на C++, вам стоит беспокоиться? И вообще, LLVM это Clang? Или нет? И что эти четыре буквы на самом деле означают?

Читать дальше →
Total votes 129: ↑124 and ↓5 +119
Views 49K
Comments 135

У меня нулевая текучка

Personnel Management *Reading room
🔥 Technotext 2020
Однажды на заводе, где я работал ИТ-директором, готовили отчетность к какому-то очередному мероприятию. Надо было рассчитать и предоставить показатели по выданному перечню, среди них затесалась текучесть кадров. И тут оказалось, что у меня она равна нулю.

Из руководителей я был такой один, тем самым привлек к себе внимание. Ну и сам удивился – оказывается, когда от тебя не уходят сотрудники, это странно и необычно.

В сумме я работал руководителем лет 7-10 (точно не знаю, какие периоды сюда включать), но нулевая текучка сохранилась. Никто никогда от меня не уходил, никого никогда я не выгонял. Только набирал.

Нулевая текучка, как показатель, никогда не была моей самоцелью. Но я стараюсь делать так, чтобы вложенные в людей усилия не пропадали даром. Сейчас расскажу примерно, как я руковожу так, что люди не уходят – вдруг что полезное для себя найдете. На полноту раскрытия темы не претендую, т.к. основываюсь только на личном опыте. Вполне возможно, что я всё делаю неправильно.
Читать дальше →
Total votes 317: ↑283 and ↓34 +249
Views 177K
Comments 534

Профилирование кода с LLVM

Open source *C++ *Compilers *C *
Translation

Проклятие недетерминизма



Моя первая попытка написать проход LLVM — люблю эти сегфолты

Недавно я столкнулся с интересной задачей — мне понадобился детерминированный и кросплатформенный способ определения времени выполнения кода С++. Под словом «детерминированный» я подразумеваю, что один и тот же код будет выполняться за одно и то же количество единиц времени. Под кроссплатформенностью я понимаю, что один и тот же код под Windows и под Ubuntu будет выполняться за одно и то же количество единиц времени.

Естественно, измерение времени на CPU не удовлетворяет этим условиям. Машинный код меняется в зависимости от архитектуры и операционной системы, и один и тот же код займёт различное количество времени при выполнении. Даже на одной и той же машине, такие факторы, как промахи кэша, будут играть большую роль — достаточную для того, чтобы исказить результаты измерения времени выполнения одного и того же кода. Мне нужно было что-либо более умное…
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views 6.5K
Comments 20

Создание языка программирования с использованием LLVM. Часть 1: Введение и лексический анализ

Compilers *
Translation
Добро пожаловать в учебник «Создание языка программирования с LLVM». Этот учебник знакомит вас с созданием простейшего языка программирования, и при этом показывает, каким оно может быть легким и интересным, а также даёт вам начальные знания, которые вы затем сможете применить на других языках программирования. Код в этом учебнике также может быть использован в качестве стартовой площадки для ваших творений с помощью LLVM.

Целью данного учебника является постепенное представление нашего языка, описание его пошагового создания. Это позволит нам охватить достаточно широкий спектр вопросов проектирования языков и использования LLVM, попутно показывая и объясняя код без огромного количества ненужных деталей.
Читать дальше →
Total votes 65: ↑61 and ↓4 +57
Views 52K
Comments 28

Обзор LLVM

Programming *
LLVM (Low Level Virtual Machine) — это универсальная система анализа, трансформации и оптимизации программ или, как её называют разработчики, «compiler infrastucture».

LLVM — не просто очередной академический проект. Его история началась в 2000 году в Университете Иллинойса, а теперь LLVM используют такие гиганты индустрии как Apple и Adobe. В частности, на LLVM основана подсистема OpenGL в MacOS X 10.5, а iPhone SDK использует GCC с бэкэндом на LLVM. Apple является одним из основных спонсоров проекта, а вдохновитель LLVM — Крис Латтнер — теперь работает в Apple.

В основе LLVM лежит промежуточное представление кода (intermediate representation, IR), над которым можно производить трансформации во время компиляции, компоновки (linking) и выполнения. Из этого представления генерируется оптимизированный машинный код для целого ряда платформ, как статически, так и динамически (JIT-компиляция). LLVM поддерживает генерацию кода для x86, x86-64, ARM, PowerPC, SPARC, MIPS, IA-64, Alpha.

LLVM написана на C++ и портирована на большинство *nix-систем и Windows. Система имеет модульную структуру и может расширяться дополнительными алгоритмами трансформации (compiler passes) и кодогенераторами для новых аппаратных платформ. Пользовательский фронтенд, как правило, линкуется с LLVM и использует C++ API для генерации кода и его преобразований. Однако LLVM включает в себя и standalone утилиты.

Для тех, кто не без оснований считает C++ не лучшим языком для написания компиляторов, с недавних пор в LLVM включена обертка API для OCaml.

Чтобы понять, что можно сделать с помощью LLVM, и на каком уровне придётся работать, давайте разберёмся,
что из себя представляет LLVM IR.
Total votes 52: ↑51 and ↓1 +50
Views 80K
Comments 25

Космики. 7 лет

JavaScript *Game development *GPGPU *Machine learning *Popular science
Здравствуй, Хабр!

В 2012 году я написал пост о своем увлечении — Космики: моделирование эволюции многоклеточных организмов


С того момента прошло без малого 7 лет, в течение которых я работал над развитием этого проекта. Сегодня я хочу рассказать немного о том, что научился делать, и как планирую развивать проект дальше.
Читать дальше →
Total votes 107: ↑107 and ↓0 +107
Views 15K
Comments 25

Архитектура Android-приложений. Часть I — истоки

Development for Android *
Translation
В этой статье мы рассмотрим архитектуру Android-приложений.

Откровенно говоря, официальную статью Google по этой теме я считаю не очень полезной. Детально отвечая на вопрос «как», она совсем не объясняет «что» и «почему». Итак, вот моя версия, и, я надеюсь, она внесёт некоторую ясность. Да, кстати, я полностью одобряю чтение статей Google, поскольку они содержат полезную информацию, повторять которую я не собираюсь.
Читать дальше →
Total votes 86: ↑80 and ↓6 +74
Views 107K
Comments 53

Что такое сознание

Artificial Intelligence Brain


Одним из самых главных научных вопросов Человечества, считается вопрос: «Что такое сознание?». Как Человек думает, принимает решения, как происходит мышление, анализ и интерпретация различных внешних раздражителей и т.д. Ответы на эти вопросы, а также что такое сознание, главный вопрос жизни, вселенной и всего такого под катом.
Total votes 26: ↑22 and ↓4 +18
Views 103K
Comments 163

Жизнь на частицах

Programming *Game development *Algorithms *Mathematics *
Sandbox
Всем привет! Сегодня я расскажу о своих экспериментах с системами частиц. Основной целью было нахождение простых правил, которые бы порождали интересное поведение.

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

Под катом много мегабайт гифок.

Читать дальше →
Total votes 269: ↑267 and ↓2 +265
Views 51K
Comments 66

Генерация произвольных реалистичных лиц с помощью ИИ

Open source *Image processing *Machine learning *
Translation
Контролируемый синтез и редактирование изображений с использованием новой модели TL-GAN


Пример контролируемого синтеза в моей модели TL-GAN (transparent latent-space GAN, генеративно-состязательная сеть с прозрачным скрытым пространством)

Весь код и онлайн-демо доступны на странице проекта.
Читать дальше →
Total votes 61: ↑61 and ↓0 +61
Views 45K
Comments 12

C выходом Chrome 70 тысячи сайтов, защищенных сертификатами Symantec, станут недоверенными

GlobalSign corporate blog Information Security *
image

Недавно Google объявил о прекращении доверия всем SSL-сертификатам, выданным до 1 декабря 2017 г. удостоверяющими центрами Symantec, Thawte, GeoTrust и RapidSSL. Изменения вступят в силу 16 октября этого года с выходом нового юбилейного браузера Google Chrome 70.
Читать дальше →
Total votes 17: ↑14 and ↓3 +11
Views 14K
Comments 36

Договоры бывают разные, или на что вы подписались

Start-up development Legislation in IT
Sandbox
Периодически отслеживаю на тостере вопросы по юриспруденции. И не раз сталкивался с тем, что у людей возникают проблемы из-за непонимания разницы между подрядом и услугами. Казалось бы, какая разница в этих ваших правовых дефинициях? Есть же контракт! А вот и нет, подходы отличаются весьма существенно. В некоторых случаях настолько кардинально, что лучше заранее понимать, на что подписываешься.

image

Что это вообще, блин, такое?


Читать дальше →
Total votes 69: ↑67 and ↓2 +65
Views 19K
Comments 76

Наиболее востребованные языки программирования – 2018

HeadHunter corporate blog Research and forecasts in IT IT career Statistics in IT
Очередная статистика от hh.ru под катом. Вкратце — очень хотелось посчитать, на каких языках чаще всего пишут отечественные разработчики и какие языки чаще других ищут работодатели. Итого — посчитал, что указывали в вакансиях и в резюме в первом полугодии 2018 и 2017 годов. Получилось что получилось.


Читать дальше →
Total votes 74: ↑68 and ↓6 +62
Views 197K
Comments 93

Создание «искусственной жизни» на компьютере

Abnormal programming *Programming *Algorithms *Popular science Biotechnologies
Tutorial
Всем привет. В статье хочу описать свой эксперимент по созданию «искусственной жизни» на компьютере.

Как это выглядит?

картинка кликабельна

На компьютере создаётся виртуальная среда со своими правилами и выпускается первая простейшая живность. Буду называть их ботами. Боты могут погибнуть или выжить и дать потомство. Потомок может слегка отличаться от предка.

Ну а дальше за работу принимается эволюция и естественный отбор.

А мне остаётся только наблюдать за развитием мира.

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

Поведением ботов управляет код, записанный в них.

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

Внутреннее устройство кода — это самое интересное в проекте.

Код должен быть простым и выдерживать различные модификации (случайное изменение любого элемента в коде) над собой без синтаксических ошибок.
Читать дальше →
Total votes 214: ↑210 and ↓4 +206
Views 101K
Comments 393

Курс о Deep Learning на пальцах

Image processing *Machine learning *Robotics Artificial Intelligence
Я все еще не до конца понял, как так получилось, но в прошлом году я слово за слово подписался прочитать курс по Deep Learning и вот, на удивление, прочитал. Обещал — выкладываю!

Курс не претендует на полноту, скорее это способ поиграться руками с основными областями, где deep learning устоялся как практический инструмент, и получить достаточную базу, чтобы свободно читать и понимать современные статьи.

Материалы курса были опробованы на студентах кафедры АФТИ Новосибирского Государственного Университета, поэтому есть шанс, что по ним действительно можно чему-то научиться.


Читать дальше →
Total votes 117: ↑117 and ↓0 +117
Views 165K
Comments 31

Секвенирование ДНК в домашних условиях: как на коленке собрать прибор за 10 миллионов

Biotechnologies DIY
Sandbox
Всем привет, меня зовут Александр Соколов, и я хочу рассказать, как сделал дома секвенатор – прибор для расшифровки ДНК. Рыночная цена такого прибора составляет около 10 миллионов рублей.

image
Читать дальше →
Total votes 265: ↑263 and ↓2 +261
Views 142K
Comments 190

Эволюция спасает животных от катастроф типа «убей победителя»

Popular science
Translation

Специалисты по компьютерному моделированию находят доказательства того, что комбинация конкуренции, хищничества и эволюции должна подталкивать экосистемы к разнообразию видов в любой части Вселенной



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

На встрече Американского сообщества натуралистов в 1960 году известный британский эколог Дж. Эвелин Хатчинсон описал "парадокс планктона". Если рассмотреть колбу морской воды, то она окажется заполненной различными представителями планктона, соревнующимися за одни и те же жизненно важные элементы и питательные вещества. При этом естественный отбор утверждает, что со временем одну экологическую нишу должен занять один вид – эта концепция известна под названием "принцип конкурентного исключения". То, что верно для планктона, верно и для многих простейших, растений, птиц, рыб и других организмов. Как же в экосистемах может находиться так много конкурирующих видов в стабильном сосуществовании?
Читать дальше →
Total votes 37: ↑35 and ↓2 +33
Views 20K
Comments 11

История одного искусственного виртуального мира

Artificial Intelligence

Предисловие


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

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



В конце-концов я решил: зачем думать и мечтать, если можно просто попробовать? С этого началось создание моего мира.

Читать дальше
Total votes 164: ↑149 and ↓15 +134
Views 3.4K
Comments 131

Покажем себя Вселенной: маяки, которые останутся после нашей цивилизации

Popular science Artificial Intelligence Brain
Translation
Из блога Стивена Вольфрама — британского физика, математика, программиста, писателя. Разработал систему компьютерной алгебры Mathematica и систему извлечения знаний WolframAlpha.

Суть задачи


Допустим, мы можем расставить по нашей солнечной системе (и за её пределами) маяки, способные выжить несколько миллиардов лет и записать все достижения нашей цивилизации. Какими они должны быть?

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

И всё же один мой приятель недавно занялся этой проблемой всерьёз – он делает маленькие кварцевые диски, и хочет разбросать их по солнечной системе при помощи космических кораблей. Сначала я говорил, что эти попытки тщетны, но в итоге всё же согласился побыть советником проекта, и, по крайней мере, попытаться решить, что мы можем с этим сделать.

Хорошо, так в чём проблема? По сути, она состоит в передаче знаний или смысла изнутри нашего культурного и интеллектуального контекста наружу. Чтобы понять, что это трудно, достаточно вспомнить об археологии. Для чего несколько тысяч лет назад какие-то камни были выстроены в определённой конфигурации? Иногда мы можем ответить на такой вопрос, поскольку он оказывается близким к нашей современной культуре. Но большую часть времени сказать это очень сложно.
Читать дальше →
Total votes 35: ↑33 and ↓2 +31
Views 17K
Comments 42
1

Information

Rating
Does not participate
Registered
Activity