Pull to refresh
7
0
Екатерина Крылова @krylovoi

Системный аналитик в ООО «ЦРТ»

Send message

Введение в задачу распознавания эмоций

Reading time6 min
Views22K

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


В этом году компания ЦРТ посвятила этой теме свою летнюю школу по машинному обучению. В этой статье я постараюсь дать краткий экскурс в проблему распознавания эмоционального состояния человека и расскажу и подходах к ее решению.


image
Читать дальше →
Total votes 6: ↑5 and ↓1+4
Comments0

Сжатие видео на пальцах: как работают современные кодеки?

Reading time13 min
Views30K


Затраты на хранение данных зачастую становятся основным пунктом расходов при создании системы видеонаблюдения. Впрочем, они были бы несравнимо больше, если бы в мире не существовало алгоритмов, способных сжимать видеосигнал. О том, насколько эффективны современные кодеки, и какие принципы лежат в основе их работы, мы и поговорим в сегодняшнем материале.
Читать дальше →
Total votes 24: ↑20 and ↓4+16
Comments4

Распознавание лиц на RASPBERRY PI

Reading time7 min
Views13K

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

С каждым годом расширяется область применения таких систем. Например, пользователи могут приобрести у Google систему Nest — Nest Cam IQ Indoor, стоимостью 349 долларов с интеграцией в умный дом и возможностью распознавания лиц по подписке (за 10 долларов в месяц). И отечественных аналогов для частного пользования немало. Различные СКУД (системы контроля и управления доступом) от Ростелекома, HikVision, VisionLabs и других фирм. Описание зачастую мутное, опыт работы в реальных условиях можно найти на YouTube по запросу «Умный домофон не пускает мужчину домой».

Читать далее
Total votes 7: ↑5 and ↓2+3
Comments11

Современные системы видеонаблюдения — от концепций до воплощения. Часть 2

Reading time17 min
Views9.4K

Добрый день, уважаемые коллеги.

В части 1 мы начали краткий обзор вариантов построения современных систем видеонаблюдения, место серверов и регистраторов в них.

По отзывам мы поняли, что тема актуальная. Развитие идет дальше, и сегодня лидеры в области ПО для видеонаблюдения сами обсуждают преимущества и недостатки систем на софте (на базе серверов) и систем с регистраторами. В итоге понимают, что надежность регистраторов выше, но серверные системы более гибкие и позволяют решать более сложные задачи. Сервера и регистраторы уже имеют ПО на основе нейросетей, но это ПО требует обучения на конкретной местности с ветром, растительностью и облаками. А это «ахиллесова пята» нейросетей, поскольку обучение производители доверяют только своим за деньги сертифицированным специалистам.

Вероятно, а так уже было с IP-видеосистемами (видеокамерами, регистраторами и оптикой для них), скоро цены на нейромодули упадут, и с адаптацией на конкретном объекте пакетных решений смогут справляться квалифицированные инсталляторы с техническим образованием. Заграница в лице Китая нам поможет.

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

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

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

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

Итак, вспомним концовку 1 части.

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

Почему на объекте? Для того, чтобы снизить нагрузку на тракт передачи данных (СПД), особенно если он беспроводной.

В статьях мы рассмотрим подробно такие сервера, обсудим:

- тонкости их подбора;

- условия эксплуатации и монтажа;

- особенности настройки;

- их недостатки;

- варианты их проводного и беспроводного подключения по Wi-Fi и GSM.

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

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments2

Raspberry Pi: Кодируем H.264 видео в реальном времени

Reading time7 min
Views38K
В одном из проектов компании Itseez, связанных с компьютерным зрением, мы используем Raspberry Pi для обработки видео потока с веб-камеры, и недавно столкнулись с проблемой записи видео на флеш-карту. Трудность состояла в том, что ресурсы ЦП съедались другими более важными задачами, однако сохранять видео все же было нужно. Причем предпочтений, каким кодеком сжимать и какой формат использовать, не было, лишь бы это никак не сказывалось на fps (количестве кадров в секунду). Перепробовав большое число программных кодеков от RAW до H.264 (использовалась обертка OpenCV над FFmpeg), пришли к выводу, что ничего из этого не выйдет, т.к. при высокой нагрузке fps проседал с 20 до 5 кадров в секунду, при том что картинка – черно-белая с разрешением 320x240. Немного погуглив, выяснили, что в процессоре Raspberry Pi есть аппаратный кодер с поддержкой стандарта H.264 (насколько мне известно, лицензия приобретена только для него). Плюсом ко всему было то, что взаимодействие с кодером реализовано по стандарту OpenMAX, поэтому было решено взяться за написание кода с использованием OpenMAX, и посмотреть, что из этого получится. Получилось, кстати, очень даже недурно!
Читать дальше →
Total votes 43: ↑40 and ↓3+37
Comments15

Тестируем многопоточную раздачу видео на игровых GPU

Reading time6 min
Views5K

При работе с потоковым видео качество и скорость воспроизведения играют ключевую роль. Можно ли настроить многопоточную трансляцию без покупки дорогостоящего «железа»? Попробуем разобраться.

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

Глянуть решение
Total votes 5: ↑4 and ↓1+3
Comments10

5 диаграмм, необходимых для документирования архитектуры решений

Reading time8 min
Views71K

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

Читать далее
Total votes 28: ↑27 and ↓1+26
Comments3

Бесплатные образовательные курсы: тестирование

Reading time5 min
Views284K
image

Ошибки и баги могут возникнуть в любых программах, поэтому тестировщиков нанимают многие крупные компании, которые разрабатывают программное обеспечение. А еще — небольшие фирмы, которые предоставляют услуги тестирования на аутсорс. Сегодня мы публикуем подборку из 14 бесплатных курсов по тестированию из нашего раздела Образование. Да, они, скорее, помогут вам получить базовые знания или освежить то, что вы уже и так знали, чем прокачаться до уровня синьора или лида. Но это не умаляет их полезности! Если вы видели что-то интересное, чего нет в этом выпуске — делитесь ссылками в комментариях.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments4

Покажи мне свой Git, и я скажу, кто ты

Reading time15 min
Views37K

Можно ли с помощью GitHub анализировать работу, не заглядывая в монитор сотрудника — без скриншотов и тайм-трекеров?

Я Александр Кириллов, технический директор компании Evrone. Больше 20 лет я посвятил разработке. В этой статье поделюсь с вами опытом, который собрал за время работы с распределенными командами. Расскажу о том, как, не нарушая приватность разработчиков, следить за качеством работы на проектах и отслеживать нежелательные паттерны с помощью метрик в Jira и Git.

Читать далее
Total votes 73: ↑63 and ↓10+53
Comments26

Что находится между идеей и кодом? Обзор 14 диаграмм UML

Reading time8 min
Views170K


Аве Кодер!

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

Этот цикл статей будет посвящен полезному, но порой ускользающему от молодой поросли знанию — диаграммам UML. И начну я его с обзора существующих диаграмм, поговорим немного об истории и зачем диаграмм должно быть так много.
Total votes 12: ↑12 and ↓0+12
Comments18

Опыт составления HLD-документации по нотации C4

Reading time7 min
Views19K

Привет! Меня зовут Алина, я работаю техническим писателем в компании Quadcode. В этой статье хочу поделиться опытом верхнеуровневого описания архитектуры системы с использованием структуры C4. Небольшая оговорка: предпринятые шаги включают в себя определенные отходы от канонической нотации в угоду удобству и особенностям системы.

Для справки:

HLD (high-level design) – верхнеуровневое описание архитектуры системы, где представлены основные компоненты и их взаимодействия. 

LLD (low-level design) – низкоуровневое детальное описание каждого из компонентов системы.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments1

Яндекс выложил YaLM 100B — сейчас это крупнейшая GPT-подобная нейросеть в свободном доступе. Вот как удалось её обучить

Reading time10 min
Views117K

Больше примеров — в конце поста

В последние годы большие языковые модели на архитектуре трансформеров стали вершиной развития нейросетей в задачах NLP. С каждым месяцем они становятся всё больше и сложнее. Чтобы обучить подобные модели, уже сейчас требуются миллионы долларов, лучшие специалисты и годы разработки. В результате доступ к современным технологиям остался лишь у крупнейших IT-компаний. При этом у исследователей и разработчиков со всего мира есть потребность в доступе к таким решениям. Без новых исследований развитие технологий неизбежно снизит темпы. Единственный способ избежать этого — делиться с сообществом своими наработками.

Год назад мы впервые рассказали Хабру о семействе языковых моделей YaLM и их применении в Алисе и Поиске. Сегодня мы выложили в свободный доступ нашу самую большую модель YaLM на 100 млрд параметров. Она обучалась 65 дней на 1,7 ТБ текстов из интернета, книг и множества других источников с помощью 800 видеокарт A100. Модель и дополнительные материалы опубликованы на Гитхабе под лицензией Apache 2.0, которая допускает применение как в исследовательских, так и в коммерческих проектах. Сейчас это самая большая в мире GPT-подобная нейросеть в свободном доступе как для английского, так и для русского языков.

В этой статье мы поделимся не только моделью, но и нашим опытом её обучения. Может показаться, что если у вас уже есть суперкомпьютер, то с обучением больших моделей никаких проблем не возникнет. К сожалению, это заблуждение. Под катом мы расскажем о том, как смогли обучить языковую модель такого размера. Вы узнаете, как удалось добиться стабильности обучения и при этом ускорить его в два раза. Кстати, многое из того, что будет описано ниже, может быть полезно при обучении нейросетей любого размера.
Читать дальше →
Total votes 166: ↑165 and ↓1+164
Comments139

Нескучный туториал по NumPy

Reading time19 min
Views221K
Меня зовут Вячеслав, я хронический математик и уже несколько лет не использую циклы при работе с массивами…

Ровно с тех пор, как открыл для себя векторные операции в NumPy. Я хочу познакомить вас с функциями NumPy, которые чаще всего использую для обработки массивов данных и изображений. В конце статьи я покажу, как можно использовать инструментарий NumPy, чтобы выполнить свертку изображений без итераций (= очень быстро).

Не забываем про

import numpy as np

и поехали!
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments19

Как мы подходим к поддержке ML-моделей в синтезе речи

Reading time10 min
Views2.6K

Всем привет! Меня зовут Александра Сорока, я занимаюсь синтезом речи в Тинькофф. А это — мой текст о том, зачем вообще думать о долгосрочной поддержке кода и ML-моделей. Я расскажу, почему мы отказались от опенсорсных решений, как работаем с датасетами и разными версиями моделей и как замеряем их качество. Статья может оказаться полезной для всех, кто хочет знать, как ничего не поломать.

Читать далее
Total votes 10: ↑8 and ↓2+6
Comments2

Как мы слушаем и разбираем каждый звонок в банк

Reading time9 min
Views8.1K


Сначала DSS LAB делает голос-текст, потом LSTM-классификаторы, сущности Spacy + Yargy (Natasha), лемматизация Pymorphy2, правки Fasttext и Word2Vec, 3 разных суммаризатора и наши решения. Мы можем анализировать ваш голос не только для того, чтобы понимать, о чём ведётся диалог, но и для того, чтобы искать места улучшений банковских продуктов после диалога.

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

Пример:

На входе: «…почему мне откапывает банкомат с переводом в другой банк».
Коррекция: «почему мне отказывает банкомат с переводом в другой банк».
Выделенное ключевое сообщение: «отказывает банкомат».
Действие: оператору предлагается маршрутизация звонка, звонок классифицируется для статистики.

Само распознавание устроено следующим образом:

  1. Голос раскладывается на фонемы. Фонемы собираются в слова тем же решением.
  2. Из собираемых данных удаляются различные клиентские данные: номера карт, кодовые слова и так далее.
  3. Затем полученный поток слов снабжается пунктуацией (точками и запятыми) и заглавными буквами: это нужно для нейросетей, очень чувствительных к такому. Исправляются опечатки, корректируются термины (география).
  4. И на выходе получаются текстовые диалоги, как в чате: их анализирует уже нейросеть, пытающаяся привязать смысл в реальном времени.
  5. После окончания звонка тексты также анализируются нейросетями, отвечающими за сбор разных метрик по голосовой и чат-поддержке.

Давайте покажу реальные (обезличенные) примеры диалогов, чтобы было понятнее.
Читать дальше →
Total votes 34: ↑27 and ↓7+20
Comments24

RPC, Messaging, REST: Терминология

Reading time4 min
Views85K

RPC, Messaging, REST: Терминология



Цель данной статьи — обсудить терминологию. Статья — не о том, как и для чего, а только исключительно об использовании терминологии. Статья отражает мнение автора и не претендует на научность.

RPC, Messaging, REST- Terminology - RPC, Messaging, REST- Терминология

Вступление



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

Проблема возникает, когда встречаются люди, использующие разные технологии, и когда эти люди начинают технические разговоры. При этом часто возникает взаимное недопонимание, обусловленное терминологией. Я здесь попытаюсь свести воедино терминологии, используемые в разных контекстах.
Читать дальше →
Total votes 17: ↑11 and ↓6+5
Comments20

От микросервисного монолита к оркестратору бизнес-сервисов

Reading time6 min
Views38K
Когда компании решают разделить монолит на микросервисы, в большинстве случаев они последовательно проходят четыре этапа: монолит, микросервисный монолит, микросервисы, оркестратор бизнес-сервисов.


Если вы определите, на каком из этапов находитесь сейчас, это поможет вам понять плюсы и минусы текущего этапа, оценить стоит ли идти на следующий этап и, если стоит, увидеть шаги необходимые для перехода.
Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments58

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

Reading time13 min
Views96K


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

Если вы не аудиофил и подбор аппаратуры не является для вас смыслом жизни, то самый простой путь — уверенно ориентироваться в технических характеристиках звукоусилительной аппаратуры и научиться извлекать полезную информацию между строк паспортов и инструкций, критически относясь к щедрым обещаниям. Если вы не ощущаете разницы между dB и dBm, номинальную мощность не отличаете от PMPO и желаете наконец узнать, что такое THD, также сможете найти интересное под катом.


Я надеюсь что материалы данной статьи будут полезны для понимания следующей, которая имеет намного более сложную тему — «Перекрёстные искажения и обратная связь, как один из их источников».
Нашли что-то интересное в содержании? Добро пожаловать под кат
Total votes 54: ↑54 and ↓0+54
Comments97

Inductive bias и нейронные сети

Reading time17 min
Views17K

В этой статье я расскажу, что такое inductive bias, зачем он нужен и где встречается в машинном обучении. Спойлер: везде. Любая нейросеть имеет inductive bias (даже та, что в человеческом мозге, хе-хе)

Также вы узнаете:

- почему inductive bias — это очень хорошо

- способы внедрить inductive bias в модели машинного обучения

- какой inductive bias в сверточных нейросетях и как успех архитектуры Image Transformer связан с inductive bias

Ну что, поехали:
Total votes 43: ↑42 and ↓1+41
Comments19
1

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity