Pull to refresh
34
0.5

User

Send message

Why I need RSS 3.0

Level of difficulty Easy
Reading time 6 min
Views 861

In the past 5 years, I moved across 3 countries and 2 continents. It was not a short tourist travel or vacation, but a full immigrant experience with 1+ year experience minimum. I had to adapt to new cultures, new languages, new people, new food, new weather, new everything. One of the pains was to adopt new online services and information sources.

The problems I have faced were not obvious and interesting at the same time. I tried to analyze what was missing and required to make life easier.

Read more
Total votes 2: ↑2 and ↓0 +2
Comments 1

Building a GPT-like Model from Scratch with Detailed Theory and Code Implementation

Reading time 14 min
Views 33K

Unlock the power of Transformer Neural Networks and learn how to build your own GPT-like model from scratch. In this in-depth guide, we will delve into the theory and provide a step-by-step code implementation to help you create your own miniGPT model. The final code is only 400 lines and works on both CPUs as well as on the GPUs. If you want to jump straight to the implementation here is the GitHub repo.

Transformers are revolutionizing the world of artificial intelligence. This simple, but very powerful neural network architecture, introduced in 2017, has quickly become the go-to choice for natural language processing, generative AI, and more. With the help of transformers, we've seen the creation of cutting-edge AI products like BERT, GPT-x, DALL-E, and AlphaFold, which are changing the way we interact with language and solve complex problems like protein folding. And the exciting possibilities don't stop there - transformers are also making waves in the field of computer vision with the advent of Vision Transformers.

Read more
Total votes 25: ↑25 and ↓0 +25
Comments 1

Создаем GAN с помощью PyTorch

Reading time 8 min
Views 15K

Генеративно-состязательные сети (Generative Adversarial Networks — GAN), предложенные Goodfellow и др. в 2014 году, произвели революцию в области создания изображений в компьютерном зрении — никто не мог поверить, что эти потрясающие живые изображения на самом деле создаются машинами с нуля. И даже больше — люди раньше думали, что задача генерации невозможна, и были поражены мощью GAN, потому что традиционно в этой области просто не существует каких-либо эталонных данных, с которыми мы могли бы сравнить наши сгенерированные изображения.

В этой статье представлена ​​простая идея, лежащая в основе создания GAN, за которой следует реализация сверточной GAN с помощью PyTorch и процедура ее обучения.

Читать далее
Total votes 14: ↑12 and ↓2 +10
Comments 1

Какой язык программирования учить в 2020-м?

Reading time 13 min
Views 176K

Статей с подобными заголовками существует уже множество. Но в них постоянно какая-то дичь! Смотрите, Google ещё до основных результатов советует такое:



HCL, Карл! Язык, который не просто очень далёк от «Самых Популярных», но ещё и создан для конфигурации, так что его вообще странно ставить в один ряд с языками общего назначения. Страшно представить приключения новичка, который решит строить карьеру по таким советам. Начнём с того, что по запросу «как выучить HCL» вместо туториалов по языку вылезают тексты о соляной кислоте.


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

Читать дальше →
Total votes 146: ↑131 and ↓15 +116
Comments 487

Как я искал пацанский движок для блога

Reading time 8 min
Views 42K


Я много пишу в интернетах и мне захотелось завести свой личный стэндалон блог, куда можно писать мелкие заметки и статьи, не подходящие для других площадок. Главная проблема личного блога — мне лень оформлять посты. Чтобы черкануть пару строк в каком-нибудь Wordpress, нужно слишком много телодвижений. Я попробовал несколько разных движков и каждый раз ловил себя на ощущении, что мне не хочется ими пользоваться, намного быстрее и проще писать в записную книжку вроде Evernote или Notion. Так я стал искать идеальный движок для блога, отвечающий всем моим потребностям.

Мои требования к идеальному движку:


  • Желательно self-hosted — я пережил много закрытий сервисов, от narod.ru до google+ и точно знаю, что рано или поздно все протухает, поэтому надежнее всего держать контент у себя. Также посты могут удалять по каким-то фейковым жалобам или по DMCA, как это происходит на Medium и LiveJournal.
  • Возможность подключения своего домена — мне нужен сайт-визитка со всеми проектами и ссылками в одном месте, где можно разместить портфолио, резюме, контакты.
  • Минимум телодвижений и интерфейса — в идеале интерфейса CMS вообще не должно быть видно, админская панель не нужна, посты должны редактироваться, создаваться и просматриваться в одном месте.
  • Полноценный WYSIWYG редактор — поддержка разметки Markdown и обработка её в реальном времени, подсветка кода, вставка картинок из буфера обмена.
  • Нормальные комментарии — возможность оставлять анонимные комментарии и авторизовываться через максимум соц. сетей для персонифицированных комментариев.
  • Минималистичный внешний вид — я не хочу заниматься версткой и темами, подходящее оформление должно быть из коробки.


Внутри я рассказываю какой вижу идеальную CMS, редактор постов и комментарии, почему большинство существующих движков устарели на десять лет, и сравниваю между собой разные движки.
Total votes 94: ↑87 and ↓7 +80
Comments 80

Учим нейросети в Google Таблицах

Reading time 5 min
Views 11K

Хочу с вами зачелленджить одну интересную штуку: попробовать обучить нейросеть в Google Таблицах. Безо всяких макросов и прочих хаков, на чистых формулах.


Читать дальше →
Total votes 33: ↑33 and ↓0 +33
Comments 2

Неблокирующая отрисовка и обновление графиков с помощью bokeh

Reading time 3 min
Views 3.1K
image

Есть у меня один Python-скрипт с расчётами. Там был цикл примерно на 2000 итераций, каждая из которых считалась несколько минут.

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

Проще всего проделать это с помощью bokeh. Точнее, с помощью bokeh-сервера для отрисовки графиков. Как — сейчас расскажу.

Читать дальше →
Total votes 9: ↑8 and ↓1 +7
Comments 5

Манипуляция сознанием. Почему так просто?

Reading time 20 min
Views 128K


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

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

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

Я не рассматриваю элементарные воздействия такие, как подкуп, шантаж и запугивание. В этой статье меня интересуют лишь атаки, заставляющие нас жить в иллюзии.

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

Это не статья по психологии и не статья по философии, хотя бы потому, что в этой статье не будет приведено ни одной ссылки.
Читать дальше →
Total votes 114: ↑96 and ↓18 +78
Comments 485

Презентация как код, или Почему я больше не пользуюсь Powerpoint-ом

Reading time 8 min
Views 70K

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

Читать дальше →
Total votes 129: ↑122 and ↓7 +115
Comments 115

Всё, что вы знали о word2vec, неправда

Reading time 4 min
Views 13K
Классическое объяснение word2vec как архитектуры Skip-gram с отрицательной выборкой в оригинальной научной статье и бесчисленных блог-постах выглядит так:

while(1) {
   1. vf = vector of focus word
   2. vc = vector of focus word
   3. train such that (vc . vf = 1)
   4. for(0 <= i <= negative samples):
           vneg = vector of word *not* in context
           train such that (vf . vneg = 0)
}

Действительно, если погуглить [word2vec skipgram], что мы видим:


Но все эти реализации ошибочны.
Читать дальше →
Total votes 57: ↑54 and ↓3 +51
Comments 6
Иннополис — новый IT-город в 40 километрах от Казани, амбициозный проект властей Татарстана, центр притяжения айтишников и источник многочисленных дискуссий на форумах и в соцсетях. Громкие названия программ обучения в университете и компаний — резидентов технопарка словно зазывают — приезжай. На сайте города много вакансий для продвинутых разработчиков. А что делать молодым специалистами? Что город может им дать? Как им попасть в город? Что они приобретут и чего лишатся в Иннополисе? Пройдемся по городу вместе с победителем розыгрыша турпоездки в Иннополис.
Узнать как это было
Total votes 46: ↑34 and ↓12 +22
Comments 282

Экспорт истории сообщений из Skype 4.*

Reading time 3 min
Views 124K
Прочитав новость об уязвимости в Skype, позволяющей угнать любой аккаунт, в процессе чтения комментариев и постов по теме наткнулся на новую для себя информацию: оказывается, начиная с версии 4.* Skype хранит информацию о пользователе в базе sqlite. Это и навело меня на мысль о том, что информацию из базы можно легко и непринужденно получить.
Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Comments 40

Данные из Google Таблиц на вашем сайте

Reading time 2 min
Views 58K


Привет!

Для тех, кто пользуется Google Таблицами, есть хорошая новость — ниже описано решение, которое позволит импортировать данные из таблицы на ваш сайт.

Поехали.

1. Открываем Таблицу Google


Для примера, я возьму таблицу, в которую падают результаты из Google Формы.
Читать дальше →
Total votes 32: ↑31 and ↓1 +30
Comments 15

Transformer — новая архитектура нейросетей для работы с последовательностями

Reading time 7 min
Views 79K

Необходимое предисловие: я решил попробовать современный формат несения света в массы и пробую стримить на YouTube про deep learning.


В частности, в какой-то момент меня попросили рассказать про attention, а для этого нужно рассказать и про машинный перевод, и про sequence to sequence, и про применение к картинкам, итд итп. В итоге получился вот такой стрим на час:



Я так понял по другим постам, что c видео принято постить его транскрипт. Давайте я лучше вместо этого расскажу про то, чего в видео нет — про новую архитектуру нейросетей для работы с последовательностями, основанную на attention. А если нужен будет дополнительный бэкграунд про машинный перевод, текущие подходы, откуда вообще взялся attention, итд итп, вы посмотрите видео, хорошо?


Новая архитектура называется Transformer, была разработана в Гугле, описана в статье Attention Is All You Need (arxiv) и про нее есть пост на Google Research Blog (не очень детальный, зато с картинками).


Поехали.

Читать дальше →
Total votes 64: ↑61 and ↓3 +58
Comments 7

Открытая трансляция из главного зала SmartData 2017: речь не про решения — речь про эволюцию

Reading time 5 min
Views 6.6K


Как мы уже неоднократно сообщали ранее, в этом году компания JUG.ru Group решила заглянуть в будущее и разобраться, какая необходимость двум серым ящикам взаимодействовать друг с другом впустить в наш мир дозу сакральных знаний по Big Data и машинному обучению — мы сделали конференцию SmartData 2017, которая пройдёт в Питере 21 октября.

Зачем мы собираем конференцию по Big Data и машинному обучению? Потому что не можем не собрать. И чтобы обратить в наше братство как можно большее количество разработчиков, мы традиционно открываем бесплатную онлайн-трансляцию из первого зала конференции.

Итак, бесплатная онлайн-трансляция из главного зала SmartData 2017 начнётся 21 октября 2017 года в 9:30 утра по московскому времени. Только вы, мы и будущее. В этот раз трансляция будет доступна в 2k — доставайте ваши 4k мониторы!



Ссылка на онлайн-трансляцию первого трека конференции SmartData 2017 и краткое описание докладов — под катом.
Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Comments 0

Веселые картинки для развития мышления ребенка

Reading time 8 min
Views 47K
image
Кто самый легкий?
(иллюстрация из журнала «Веселые картинки», 1983, №4)

В далеком 2004 году со мной случилась вполне обычная история. Прямо от лабораторных столов, загруженных ПЦР-машинами, центрифугами, пробирками и микроскопами, в горячем угаре написания статей по биоремедиации засоленных почв я попала в комнату с погремушками, книжками-малышками и маленьким ребенком.

Применение погремушек и сосок оказалось делом более-менее простым, но вот с «развивающими играми» все показалось намного интереснее. Можно ли на самом деле усиливать развитие мыслительных способностей у ребенка, и как это делать?

Чтобы ответить на этот вопрос, я оставила карьеру ученого и пошла работать педагогом дополнительного образования. То, что вы прочитаете дальше – результат, пардон, опытов над детьми (не волнуйтесь, ни один подопытный ребенок не пострадал).
Читать дальше →
Total votes 54: ↑54 and ↓0 +54
Comments 246

Как создать свою метроидванию

Reading time 16 min
Views 26K


Метроидвания: стиль игры (2D или 3D), в котором часто присутствует исследование и где управляемый игроком персонаж получает новые способности, позволяющие ему продвигаться дальше. Такие игры часто являются экшн-адвенчурами с пересечением маршрутов движения. В них используется система «роста», открывающая важные апгрейды, необходимые для прохождения игры. Название «метроидвания» произошло от смешения слов Metroid и Castlevania, однако существуют и другие игры, в которых используется та же фундаментальная философия дизайна. К этим играм можно отнести все игры франшизы Zelda, Shadow Complex и Cave Story. На самом деле нет значительной разницы в структуре игрового процесса между играми Zelda, Metroid или Castlevania: Symphony of the Night.

Эта статья предназначена для создателей игр, желающих взяться за трудную задачу написания игры в жанре «метроидвания». Если вы никогда раньше не делали игр, и ищете советов о том, как начать создавать игры, рекомендую познакомиться с такими инструментами, как Unity, Unreal Engine, Construct 2 или любыми другими инструментами игростроительства. Вам сначала стоит научиться делать игры, потому что я не буду учить их созданию с нуля.
Читать дальше →
Total votes 42: ↑41 and ↓1 +40
Comments 5

Полезные функции Google Таблиц, которых нет в Excel

Reading time 8 min
Views 332K
Cтатья написана в соавторстве с Ренатом Шагабутдиновым.

image

В этой статье речь пойдет о нескольких очень полезных функциях Google Таблиц, которых нет в Excel (SORT, объединение массивов, FILTER, IMPORTRANGE, IMAGE, GOOGLETRANSLATE, DETECTLANGUAGE)

Очень много букв, но есть разборы интересных кейсов, все примеры, кстати, можно рассмотреть поближе в Google Документе goo.gl/cOQAd9 (файл-> создать копию, чтобы скопировать файл себе на Google Диск и иметь возможность редактирования).
Читать дальше →
Total votes 37: ↑34 and ↓3 +31
Comments 21

Dropout — метод решения проблемы переобучения в нейронных сетях

Reading time 7 min
Views 82K


Переобучение (overfitting) — одна из проблем глубоких нейронных сетей (Deep Neural Networks, DNN), состоящая в следующем: модель хорошо объясняет только примеры из обучающей выборки, адаптируясь к обучающим примерам, вместо того чтобы учиться классифицировать примеры, не участвовавшие в обучении (теряя способность к обобщению). За последние годы было предложено множество решений проблемы переобучения, но одно из них превзошло все остальные, благодаря своей простоте и прекрасным практическим результатам; это решение — Dropout (в русскоязычных источниках — “метод прореживания”, “метод исключения” или просто “дропаут”).
Читать дальше →
Total votes 20: ↑18 and ↓2 +16
Comments 4

Советы для инженеров от менеджера Google

Reading time 8 min
Views 40K
Всем привет!

Меня зовут Лариса. Я работаю в Google и веду блог на larrr.com, где я изначально и опубликовала эту статью.

Сегодня я предлагаю вашему вниманию статью, которая изначально была написана исключительно для внутреннего пользования Google. Мне очень понравилась, так что я связалась с автором, с ее разрешения я ее немного переделала, и получила разрешение от Google Press на публикацию. Перевод мой.

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

Советы для инженеров

15 апреля 2013
Отредактировано 21 мая 2014
Переведено 31 августа 2015
Gretta Bartels, Software Engineering Manager at Google


Уважаемый читатель,

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

Один из моих более опытных коллег научил меня тому, что для менеджера очень важно быть предельно предсказуемым. У менеджера должен быть какой-то набор простых правил, о которых знают все его подчиненные, и которым они могут следовать даже когда менеджера рядом нет. Поэтому моя цель – чтобы программисты в моей команде могли задать сами себе вопрос “Что бы на это сказала мой менеджер?”, и сами себе на него правильно ответить. Тогда команда сможет работать практически самостоятельно, без моего руководства. А я буду сидеть дома и кушать пирожные :).

Вот список моих основных правил:
Читать дальше →
Total votes 63: ↑51 and ↓12 +39
Comments 57

Information

Rating
1,605-th
Registered
Activity