Как стать автором
Обновить
38
0
Maxim Antonov @maxidler

Пользователь

Отправить сообщение

Bash-скрипты: начало

Время на прочтение 11 мин
Количество просмотров 1.7M
Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

Сегодня поговорим о bash-скриптах. Это — сценарии командной строки, написанные для оболочки bash. Существуют и другие оболочки, например — zsh, tcsh, ksh, но мы сосредоточимся на bash. Этот материал предназначен для всех желающих, единственное условие — умение работать в командной строке Linux.


Читать дальше →
Всего голосов 69: ↑61 и ↓8 +53
Комментарии 123

Transformer в картинках

Время на прочтение 14 мин
Количество просмотров 109K

В прошлой статье мы рассматривали механизм внимания (attention) – чрезвычайно распространенный метод в современных моделях глубокого обучения, позволяющий улучшить показатели эффективности приложений нейронного машинного перевода. В данной статье мы рассмотрим Трансформер (Transformer) – модель, которая использует механизм внимания для повышения скорости обучения. Более того, для ряда задач Трансформеры превосходят модель нейронного машинного перевода от Google. Однако самое большое преимущество Трансформеров заключается в их высокой эффективности в условиях параллелизации (parallelization). Даже Google Cloud рекомендует использовать Трансформер в качестве модели при работе на Cloud TPU. Попробуем разобраться, из чего состоит модель и какие функции выполняет.


Впервые модель Трансформера была предложена в статье Attention is All You Need. Реализация на TensorFlow доступна как часть пакета Tensor2Tensor, кроме того, группа NLP-исследователей из Гарварда создали гид-аннотацию статьи с реализацией на PyTorch. В данном же руководстве мы попробуем максимально просто и последовательно изложить основные идеи и понятия, что, надеемся, поможет людям, не обладающим глубоким знанием предметной области, понять данную модель.

Читать дальше →
Всего голосов 16: ↑16 и ↓0 +16
Комментарии 4

Что такое MLOps? Самый подробный текст про работу с ML-системами, который вы найдете в интернете

Время на прочтение 25 мин
Количество просмотров 20K


В этом материале мы подробно разбираем концепцию MLOps. Более того, делаем это тремя способами. Сначала теоретически — через самую толковую, на наш взгляд, схему MLOps. Затем — концептуально, через артефакты, которые заложены в подходе. И наконец, через понимание MLOps как информационной системы.

Сохраняйте текст в закладки, потому что на данный момент это, возможно, самое полное описание MLOps на русском языке (и не перевод очередной англоязычной статьи!). Подарим мерч Selectel тому, кто пришлет ссылку на более развернутое описание концепции в комментариях.
Читать дальше →
Всего голосов 43: ↑43 и ↓0 +43
Комментарии 12

Парсим Википедию, фильтруя, для задач NLP в 44 строки кода

Время на прочтение 6 мин
Количество просмотров 3.1K

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

Читать дальше →
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 0

Управляем генерацией ruGPT-3: библиотека ruPrompts

Время на прочтение 7 мин
Количество просмотров 12K

Наше семейство моделей ruGPT-3 уже нашло множество применений у сообщества: кто-то генерирует гороскопы, кто-то — факты о лягушках, статьи нейроуголовного кодекса, нейроновости и прочее. Модели накопили в себе массу знаний о нашем мире и способны подстроиться практически под любую задачу. Тем не менее, в данный момент подобная подгонка (fine-tuning) часто требует значительных вычислительных затрат, что не всегда позволяет использовать достаточно большие модели. В этом посте мы предлагаем сообществу новый инструмент для того, чтобы дообучать ruGPT-3 под свои нужды и делиться своими результатами с другими.

Читать далее
Всего голосов 24: ↑23 и ↓1 +22
Комментарии 13

GPT для чайников: от токенизации до файнтюнинга

Время на прочтение 13 мин
Количество просмотров 87K

К моему удивлению, в открытом доступе оказалось не так уж много подробных и понятных объяснений того как работает модель GPT от OpenAI. Поэтому я решил всё взять в свои руки и написать этот туториал.

Читать далее
Всего голосов 31: ↑30 и ↓1 +29
Комментарии 8

Как считается Load Average

Время на прочтение 7 мин
Количество просмотров 95K

Постановка вопроса


Недавно, во время собеседования в одну крупную компанию мне задали простой вопрос, что такое Load Average. Не знаю, на сколько правильно я ответил, но лично для себя пришло осознание, что точного ответа я на самом деле и не знаю.

Большинство людей наверняка знают, что Load Average — это среднее значение загрузки системы за некоторый период времени (1, 5 и 15 минут). Так же можно узнать некоторые подробности из данной статьи, про то, как этим пользоваться. В большинстве случаев этих знаний достаточно для того, что бы по значению LA оценивать загрузку системы, но я по специальности физик, и когда я вижу «среднее за промежуток времени» мне сразу становится интересна частота дискретизации на данном промежутке. А когда я вижу термин «ожидающие ресурсов», становится интересно, каких именно и сколько времени надо ждать, а так же сколько тривиальных процессов надо запустить, что бы получить за короткий промежуток времени высокий LA. И главное, почему ответы на эти вопросы не дает 5 минут работы с гуглом? Если вам данные тонкости так же интересны, добро пожаловать под кат.
Читать дальше →
Всего голосов 64: ↑63 и ↓1 +62
Комментарии 34

Планшет в качестве второго экрана под linux

Время на прочтение 5 мин
Количество просмотров 91K


Решил попробовать для расширения рабочего пространства, сенсорного ввода и удаленного управления использовать планшет как дополнительный экран к своему ноутбуку c Linux.
Нашлось 2 способа сделать это. Чем и делюсь.
Читать дальше →
Всего голосов 115: ↑109 и ↓6 +103
Комментарии 48

12 лучших фреймворков для разработки приложений под Android

Время на прочтение 2 мин
Количество просмотров 126K
image

Android – прекрасная платформа для мобильных устройств, она работает на миллионах смартфонов в 200 странах по всему миру. В этом посте я собрал несколько популярных фреймворков для разработки приложений под Android, из числа популярных среди разработчиков.

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

1) Corona SDK


Богатый инструментарий для создания игр и приложений за рекордно короткое время

image

Обеспечивает возможность очень быстрой разработки. Элегантный API упрощает добавление сложных функций, технологический процесс позволяет сразу же видеть внесённые изменения, сама же разработка идёт на Lua – простом для изучения языке. Всё это приводит к рекордной скорости разработки.

Самый популярный фреймворк, часто используется разработчиками игр, но подходит для любого рода приложений. Уже более миллиона разработчиков пользуются API, поддержкой нативного интерфейса, встроенным движком и рекламной платформой.
Читать дальше →
Всего голосов 31: ↑21 и ↓10 +11
Комментарии 24

SSH-туннели — пробрасываем порт

Время на прочтение 2 мин
Количество просмотров 428K
Не всегда есть возможность, да и не всегда надо, строить полноценный туннель с интерфейсной парой адресов. Иногда нам нужно лишь «прокинуть» вполне определённые порты.

Тут важно понимать, что туннель можно организовать как изнутри сети, к ресурсам которой вы хотите получить доступ, на внешний ssh-сервер. Также можно организовать туннель с хоста в Интернете на пограничный ssh-сервер сети, чтобы получить доступ к внутренним ресурсам.
Читать дальше →
Всего голосов 93: ↑68 и ↓25 +43
Комментарии 80

То, чего еще никто не писал про Нокиа, Элопа и горящую платформу

Время на прочтение 40 мин
Количество просмотров 547K
Взявшись за этот пост, автор полностью отдает себе отчет. И в том что «набило оскомину». И что «только ленивый не кинул камень». И про то что «хватит уже, достали». Однако, вдоволь начитавшись доморощенных и не очень аналитиков, автор решил все-таки выразить собственное мнение, которое отличается от того общепринятого, что с некоей мазохистской истомой доселе перепечатывалось здесь и тут различными авторами, интерпретаторами и переводчиками. Вероятно кому-то будет интересно его прочитать.

Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:

  • Будучи долгое время лидером на рынке, Нокиа сильно расслабилась и загадила свою внутреннюю инфраструктуру бюрократией, чрезмерным аутсорсингом и огромным количеством бесполезной «менеджерской прослойки».
  • Будучи долгое время лидером, Нокиа просрала потратила много денег на ненужные операционные расходы, поглощения никому не нужных фирм и на невменяемую модель аутсорсинга.
  • Полностью оторвавшись от реальности с уходом Йормы Оллилла, Нокиа, под управлением гениального юриста CEO Олли-Пекки Каласвуо, потратила кучу денег и усилий на создание бесполезной и неконкурентоспособной сервисной инфраструктуры Ovi. В результате этого, помимо денег, Нокиа потеряла уйму полезного времени, которое можно и нужно было потратить на развитие основного бизнеса — телефонов, софта и т.д.
  • Бюрократия и непотопляемая менеджерская прослойка в Нокиа, последовательно мигрировала из одного передового проекта в другой, в составе одних и тех же групп лиц, самореплицируясь в виде кучи формальных дебилопроцессов комитетов и управленческих групп, немного перетасовываемых с учетом специфики. В итоге именно эта бюрократия убила и Symbian, и Ovi, и MeeGo и остальные попытки догнать уходящий поезд своими силами.
  • Борьба с бюрократией и прослойкой в Нокиа зашла в полный тупик.
  • У великого CEO Элопа просто не было другого выхода кроме как прибить всю старую, неповоротливую и прогнившую организацию, путем создания альянса с Майкрософтом и переходом на Windows Phone. Тем самым все старые процессы, компетенции, технологии и самое главное — люди резко стали, что называется, «не в тему». И следовательно тем самым можно было под благовидным предлогом прибить этот табун менеджеров, бесконечно рисующих фэнтезийные роадмапы с единорогами и перекладывающих бумаги с левого края стола на правый.
  • Новая Нокиа, после 2011 года и старая Нокиа до 2011 года – это две РАЗНЫЕ организации. Их объединяет только общее название и операционка S40 для телефонов Asha.
  • Горящая платформа, это не Symbian и не MeeGo. Горящая платформа, это то состояние в которое Нокиа загнали годы расслабленного лидерства и тупоголовые амбиции предыдущего CEO – Олли-Пекки Каласвуо с кликой подкаркивающих вице-президентов.
  • С бюрократией и бизнес процессами, имеющимися на 2010 год, Нокиа не спас бы ни Андроид, ни половина населения Бангалора, пишущих на Qt под MeeGo. Даже если бы Apple бесплатно передал Нокиа iOS и все сервисы, то они бы выродились руками всяких Requirement Managerов в типичные Нокийские дизайн-химеры и в итоге загнулись через какое-то время.
  • То, что сделал великий CEO Элоп – было единственно возможным разумным решением, дающим хоть какие-то шансы на выживание. Вопрос «каким образом он это сделал?», остается открытым, равно как и вопрос «поможет ли это Нокиа?» в итоге. Не следует забывать, что нынешняя Нокиа — это совершенно новая организация, поэтому глупо предполагать, что она разом вернет себе лидерство. Как и всем новым организациям ей придется за это лидерство долго бороться.
  • Без ошибок и побед Нокиа никогда не было бы ни Андроида, ни Айфона. И Google и Apple тщательно проанализировали достоинства и недостатки более старших конкурентов перед тем как шагнуть вперед.

Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
Читать дальше →
Всего голосов 548: ↑505 и ↓43 +462
Комментарии 330

Как загружается ARM

Время на прочтение 6 мин
Количество просмотров 19K
Прошлый мой топик был полностью теоретическим, этот же будет практическим. Практика будет довольно хардкорной (я сам занялся этим вопросом только через год работы с ARMами) — инициализация процессора и памяти. Иными словами: что нужно сделать с процессором, чтобы попасть в функцию main(). Первая часть статьи посвящена инструментам сборки и отладки. Вторая — обработке векторов исключений, третья — инициализации стеков и памяти.
Но сначала хочу сделать одно уточнение. Многие почему-то считают, что ARM — это обязательно монстр со внешней памятью, кучей обвязки, работающий на частоте не менее 600Mhz, и т.д. Это правда лишь отчасти (если говорить об ARM9 и более поздних семействах). Тот чип, с которым я обычно работаю (AT91SAM7X512), не намного сложнее знакомых многим AVR. Ему для работы нужны только кварц и питание (можно и без кварца, но тогда будет совсем грустно). Всё. Но возможностей у него, конечно, больше, много больше, чем у AVR. Но об этом позже. Сегодняшняя статья никак не будет привязана к конкретному железу.
Читать дальше →
Всего голосов 62: ↑60 и ↓2 +58
Комментарии 35

Заметки об NLP (часть 7)

Время на прочтение 6 мин
Количество просмотров 4.2K
(Первые части: 1 2 3 4 5 6). Как и обещал вчера, продолжаем обсуждать XDG и движемся к следующим темам. Возможно, мы двигаемся слишком быстро, и действительно имело бы смысл публиковать одну статью раз в два-три дня, чтобы оставалось время всё обсудить. Но, наверно, пока «бензин есть», я буду продолжать писать. А потом можно будет вернуться и обговорить ранее освещённые вопросы. Мне кажется, что в компьютерной лингвистике разные темы настолько тесно связаны друг с другом, что разговор об одной из них без связи с другими малопродуктивен. А мы ещё не обо всём беседовали, так что лучше охватить взглядом как можно больше аспектов компьютерного анализа текста, а потом уже рассуждать о конкретике в рамках общей картины происходящего.
Читать дальше →
Всего голосов 39: ↑29 и ↓10 +19
Комментарии 17

База данных GMail Offline. Экспорт

Время на прочтение 2 мин
Количество просмотров 4.1K
Здравствуй, Хабрасообщество!

Давно хотел вытащить историю джаббера из GMail (впринципе достаточно удобно, но хочется без дополнительных преград пользоваться)
Когда на глаза попался топик Скачиваем историю сообщений из GTalk'a себе на компьютер, я, было, возрадовался, но, узрев громоздкость и усилия, прилагаемые для извлечения, решил что игра не стоит свеч.

Поэтому решил пойти другим путем, и разобраться в Google Gears \ GMail Offline.
Что получилось
Всего голосов 42: ↑37 и ↓5 +32
Комментарии 15

Как активировать режим Бога в Windows 7

Время на прочтение 1 мин
Количество просмотров 578K
Знаете ли вы, что вы тоже можете стать Богом!? Ну, по крайней мере, на Windows 7 (по сообщениям пользователей это так же работает и на Windows Vista).

Этот режим позволит вам управлять всеми настройками Windows из удобного графического меню. Вот как его активировать:

1. Щелкните правой кнопкой мыши на любом пустом пространстве рабочего стола.
2. Перейдите в меню Создать и создайте новую папку.
Читать дальше →
Всего голосов 276: ↑221 и ↓55 +166
Комментарии 356

Психологическая деформация программистов. Взгляд с обеих сторон баррикад

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

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

И что же них такого деформированного?
Всего голосов 461: ↑436 и ↓25 +411
Комментарии 558

Руководство по созданию стартапов, часть 8: нанимаем, управляем, повышаем и увольняем исполнительных директоров

Время на прочтение 10 мин
Количество просмотров 30K
Часть 7



Одна из самых важных вещей, которые должен сделать основатель стартапа – создание первосортной команды управляющих. По этой теме можно книгу написать, но в статье я дам основные советы по поводу найма, управления, повышения и увольнения ИД в стартапе, основанные на моих наблюдениях и опыте.

Определения: ИД – это лидер. Тот, кто выполняет функцию и несёт ответственность за систему внутри компании, которая вносит свой вклад в успех или неудачу. Разница между ИД и менеджером в том, что область деятельности ИД обширнее в плане организации, принятия решений и их исполнения. Менеджер может спросить, что ему делать. ИД должен знать это сам.
Читать дальше →
Всего голосов 27: ↑21 и ↓6 +15
Комментарии 5

Вся правда о венчурных инвесторах, часть 2

Время на прочтение 4 мин
Количество просмотров 9.4K
Часть 1

Выбираем инвестиционные компании и инвесторов внутри компаний


Подыскивая инвестиционную компанию, помните – они сильно разнятся по стилю и качеству. К примеру, некоторые компании очень любят предпринимателей. Другие относятся к ним жёстко. Что интересно, финансовый успех в сфере инвестиций никак не связан с отношением к предпринимателям. Индивидуальные инвесторы внутри компаний также сильно отличаются по стилю, личности, знаниям, опыту, возможности помочь, энергичности и этике. Я бы рекомендовал выбирать правильного партнёра внутри фирмы, а не правильную фирму.

Это противоречит интуиции, да и качество фирмы, конечно, важно. Но партнёр – это человек, с которым вы будете работать. Остальных членов фирмы вы увидите пару раз за всю жизнь. Лучше, конечно, выбрать хорошую фирму и хорошего партнёра в ней, но даже в лучших фирмах встречаются слабые партнёры.
Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Комментарии 3

Блокировки и уровни изоляции транзакций InnoDB в MySQL

Время на прочтение 5 мин
Количество просмотров 78K
Здравствуй, Хабр!
Предлагаю всем желающим вспомнить или познать суть блокировок движка InnoDB в MySQL.


КДПВ: deadlock в исполнении тропической фауны

Читать дальше →
Всего голосов 40: ↑37 и ↓3 +34
Комментарии 26

Что такое качество кода и зачем его измерять

Время на прочтение 5 мин
Количество просмотров 44K

Измеримость и определение качества кода это вечная тема в мире программирования. Думаю все специалисты которые уже имеют опыт с большими проектами с многолетней историей не сомневаются в необходимости поддерживать код в качественном состоянии. Но не всегда достаточно времени для того чтобы выяснить какие характеристики важны именно в этом проекте. В этой статье не будет описано как нужно писать и оформлять код и нужны ли пробелы вокруг скобок. Сегодня я постараюсь выделить самые важные аспекты которым стоит уделять внимание и на что они могут повлиять, а какие допустимые пределы и как за ними следить решать Вам.
Читать дальше →
Всего голосов 23: ↑17 и ↓6 +11
Комментарии 6

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность