Search
Write a publication
Pull to refresh
64
1.4
Send message

Проблемы интерпретации голосового ввода — как это работает у нас

Reading time4 min
Views7.6K
По стопам публикаций «Распознавание русской речи для колл-центров и параноиков» и «Елена, «электронная девушка» из службы поддержки», а так же комментариев к ним, я решил рассказать, как мы решаем проблему интерпретации голосового ввода в нашей диалоговой системе.

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



Хотелось бы отметить, что система не требует какой-либо предварительной подготовки – из ролика, надеюсь, очевидно, что я создаю и тестирую диалог «на лету».
Читать дальше →

Получение RSS ленты из twitter после обновления API 1.1

Reading time4 min
Views12K
В связи с обновлениями twitter API с версии 1.0 до версии 1.1 перестали работать запросы не получение RSS ленты в старом стиле, вроде:



Это связано с окончанием поддержки twitter-ом XML, RSS и Atom стандартов вывода. Разработчики прокомментировали их мотивы при принятии подобного решения тезисом о том, что доля подобных запросов мала и может быть безболезненно для пользователей отключена.

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

Это уже было в «Симпсонах»


Существует масса решений этой проблемы. Наверное, наиболее адекватное — это создание виджета в своем аккаунте твиттера с последующей пересылкой данных в google apps script для последующего формирования самой RSS ленты. Это решение описано здесь.
Но ведь не у всех есть свой твиттер-аккаунт, а среди тех, у кого его нет, вполне могут найтись и те, кто хочет просто читать чужие твиты.

Строго говоря, то решение, которое я предложу ниже, есть не совсем чтение чьего-то твиттера, это просто поиск всех упоминаний имени пользователя.
Читать дальше →

THL T11 — бюджетный вариант известного флагмана T100S

Reading time10 min
Views25K
Прошло уже больше года, с того момента, как я впервые познакомился с телефонами компании THL, а именно с моделью THL W7s. Эта модель произвела на меня положительное впечатление и хорошо показала себя с эксплуатационной точки зрения. Стало интересно, что нового может предложить, чем удивить и чего достигла компания THL за этот период в бюджетном секторе.
Оказалось, что им есть чем порадовать. В этом обзоре хочу рассказать о бюджетном смартфоне THL T11, построенном на новом 8-ядерном процессоре MTK6592 Octa Core с частотой 1.7GHz. Доподлинно известно, что прародителем этой модели стал нашумевший флагман THL T100s.



По размеру и габаритам модели не отличаются, за исключением некоторых мелких элементов дизайна (металлические рамки). THL T11 — это младшая и более дешевая модель, в ней разрешение экрана уменьшено с 1920х1080 до 1280x720 пикселей, при той же диагонали экрана (5"). Также основная 13 Мп камера заменена на 8 Мп. В обзоре подробные фотографии, примеры съемки камерой, тесты и мои впечатления от эксплуатации.
Читать дальше →

Гибкое мускульное передвижение для двуногих существ

Reading time1 min
Views43K
На конференции SIGGRAPH ASIA 2013 Thomas Geijtenbeek, Michiel van de Panne и Frank van der Stappen представили метод симуляции физики двуногих существ на основе мускульного контроля с оптимизацией перемещения мышц и других контролируемых параметров. В результате был получен метод управления передвижением для множества двуногих существ. Все приводящие в действие силы являются результатом работы симулированных 3D-мускул и модели нейронных задержек, включенных в цепи ответных реакций. Перечисленные контроллеры генерируют вращающие движения, которые учитывают биомеханические ограничения. Контроллеры находят различные походки на основе требуемой скорости, могут учитывать неровные поверхности и внешние возмущения, способны следовать в задаваемом направлении.

Алгоритм cтабилизации видео с помощью 3D-моделирования сцены

Reading time1 min
Views16K
Исследователи из Microsoft Research разработали алгоритм для автоматической стабилизации видео «от первого лица», снятого с помощью наголовной или другой видеокамеры во время путешествия по маршруту. Например, при езде на велосипеде или скалолазании.



Примеры стабилизированных видеороликов можно посмотреть здесь, там же оригинальные (необработанные) видеоролики, для сравнения. Опубликован исходный код и пояснения по работе алгоритма. Скоро разработчики выпустят приложение для Windows, чтобы каждый мог попробовать технологию на собственных видеороликах.
Читать дальше →

Визовая политика

Reading time1 min
Views15K
Лето на исходе, а в отпуске еще не был. Решил посмотреть, куда можно поехать, не напрягаясь получением виз. Хотелось чего-то простого и наглядного. Не нашел. Пришлось сделать. JavaScript + LeafLetJS + из википедии загрузил данные для граждан Украины и России. Если кто-то знает хороший ресурс для Белоруссии, Грузии и других русскоязычных регионов — дайте знать — добавлю.
Читать дальше →

Новая технология подстраивает изображение на дисплее для людей с нарушениями зрения

Reading time2 min
Views7.9K
display crrects instead of glasses Get Ready to Say Goodbye to Using Reading Glasses on Computers, Tablets, Smartphones

На днях в Сети появилась интересная информация о совместной разработке MIT и Университета Беркли. Объединенная команда разработчиков создала прототип дисплея, который будет автоматически подстраиваться под уровень зрения человека.

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

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

Читать дальше →

Делаем настольное устройство для изготовления печатных плат в один клик

Reading time5 min
Views279K
В очередной раз отмывая раковину от рыжих пятен хлорного железа, после травления платы, я подумал, что пришло время автоматизировать этот процесс. Так я начал делать устройство для изготовления плат, которое уже сейчас можно использовать для создания простейшей электроники.

image

Ниже я расскажу о том, как делал этот девайс.
Читать дальше →

Как заставить работать бинарный классификатор чуточку лучше

Reading time6 min
Views48K
Disclaimer: пост написан по мотивам данного. Я подозреваю, что большинство читателей прекрасно знает, как работает Наивный Байесовский классификатор, поэтому предлагаю лишь мельком хотя бы глянуть на то, о чём там говорится, перед тем как переходить под кат.

Решение задач с помощью алгоритмов машинного обучения давно и прочно вошло в нашу жизнь. Это произошло по всем понятным и объективным причинам: дешевле, проще, быстрее, чем явно кодить алгоритм решения каждой отдельной задачи. До нас, обычно, доходят «черные ящики» классификаторов (вряд ли тот же ВК предложит вам свой корпус размеченных имен), что не позволяет ими управлять в полной мере.
Здесь я бы хотел рассказать о том, как попробовать добиться «лучших» результатов работы бинарного классификатора, о том какие характеристики бинарный классификатор имеет, как их измерять, и как определить, что результат работы стал «лучше».
Читать дальше →

Метапрограммирование с примерами на JavaScript

Reading time15 min
Views43K
Эта статья, еще одна попытка переосмысления метапрограммирования, которые я периодически предпринимаю. Идея каждый раз уточняется, но в этот раз удалось подобрать достаточно простых и понятных примеров, которые одновременно очень компактны и иллюстративны, имеют реальное полезное применение и не тянут за собой библиотек и зависимостей. В момент публикации я буду докладывать эту тему на ОдессаJS, поэтому, статью можно использовать, как место для вопросов и комментариев к докладу. Формат статьи дает возможность более полно изложить материал, чем в докладе, слушатели которого, не освобождаются от прочтения.

UPD: Обновленная видеоверсия статьи на Youtube (лекция записана в Киевском политехническом институте 18 апреля 2019 года в рамках курса «100 видео-лекций по программированию»):

Читать дальше →

Изобретая велосипед или поиск отсутствующего значения ID в MySQL таблице

Reading time2 min
Views35K
Разработчики и администраторы систем основанных на sql данных, наверняка, сталкивались с задачей — получить отсутствующее (пропущенное) значение в ряде id записей таблицы. Например номер договора, порядковый номер документа, телефонный номер, айпи-адрес и т.п. При работе с MySQL эта тривиальная задача непропорционально ресурсоемка.
Читать дальше →

Критическая уязвимость OpenVZ

Reading time1 min
Views15K
image

Обход ограничений контейнера simfs OpenVZ — CVE-2014-3519.

Существует возможность получить доступ к файлам за пределами своего контейнера.

Функция open_by_handle_at () позволяет получить доступ к файлам на смонтированной файловой системе используя file_handle структуру.

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

Подробнее:

OpenVZ simfs container filesystem breakout

CU-2.6.32-042stab090.5 Parallels Virtuozzo Containers 4.7 Core Update

UPD: http://twitter.com/_openvz_/status/481475202304339969

«Правильное» ограничение скорости в Nginx. Миф или реальность?

Reading time3 min
Views35K


Вот уже много лет пользователей Nginx мучает один и тот же вопрос: «Как можно ограничить скорость в целом для IP адреса независимо от числа сессий (соединений)? Почему Nginx этого не умеет? Почему разработчики Nginx так упорно не хотят реализовать этот простой функционал?» И ответить мне им нечего, о чём думают разработчики Nginx — не понятно и известно, наверное, только господу богу.

Бороться с этим можно по разному, кто-то использует скрипты на подобие htb.init, кто-то пишет скрипты шейпинга самостоятельно и делится удачным опытом на Хабре, а некоторые и вовсе используют PHP для ограничения скорости отдачи файлов. Только представьте себе, каким будет оверхед и расход памяти, при использовании PHP в подобных целях.
Читать дальше →

Защита подъезда методом организации разумного видеонаблюдения без консьержа

Reading time13 min
Views261K
Так получилось, что какой бы ни был аккуратный микрорайон, он всегда с чем-нибудь соседствует, плюс всегда есть праздношатающиеся, непраздношатающиеся и «этождети». Это если забыть про наркоманов, целенаправленных воров и разбойников. Твой дом — твоя крепость. Подъезд твоего дома — тоже твой дом. (Да, этот пункт многие не понимают, но учиться никогда не поздно). Классические методы защиты подъезда — установка укреплённых дверей; установка домофона; инсталляция консьержки; организация видеонаблюдения над входами.

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

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

Обзор планшета iconBIT NetTAB SKY 3G QUAD: талант с ГЛОНАСС и двумя «симками»

Reading time10 min
Views20K
Далеко не всегда рынок мобильных устройств расширяется за счет существенных инноваций. Нередко очередной тренд становится результатом комбинаций текущих наработок индустрии. Примерно такая ситуация сложилась с двухсимочными 7-дюймовыми планшетами с поддержкой GPS. Да, важный момент – именно бюджетными моделями, которые по совокупности выглядят заманчивым вариантом и как «первый планшет», и в роли «всеядного» аппарата для маршрута дом-машина-работа-дом (путешествия, отдых и т.д.). IconBIT NetTAB SKY 3G QUAD как раз из такой породы. Данная модель показалась мне интересной по двум причинам. Во-первых, она основана на «непопсовом» 4-ядерном Broadcom BCM23550, а во-вторых, содержит гибридный приемник ГЛОНАСС/GPS.

Читать дальше →

Как IPv6 помогает роутеры ломать

Reading time5 min
Views129K
image

Предисловие


Проснулся я сегодня с мыслью, что огромное количество инструкций по настройке NAT советуют использовать строку вида:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Многие понимают проблемы этой конструкции, и советуют добавлять:
iptables -A FORWARD -i ppp0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

Но, зачастую, забывают задать таблице FORWARD действие DROP по умолчанию, или добавить правило REJECT в конец таблицы.
На первый взгляд, вроде бы, все кажется нормальным. Однако, это далеко не так. Дело в том, что если не запретить маршрутизировать трафик из WAN-порта в WAN-порт, кто-нибудь из вашей WAN-сети (предположим, что провайдер садит весь подъезд в одну /24) может маршрутизировать трафик через вас, просто прописав ваш IP в качестве шлюза. Все современные SOHO роутеры это учитывают, а вот неопытный администратор, который делает роутер под обычным linux, может не знать или забыть об этом. В подсети моего провайдера таких роутеров не оказалось, и мой план по захвату мира провалился. Однако, статья совсем не об этом.

Магические двоеточия


Как вы, может быть, знаете, многие современные программы и сервисы биндятся на IP :: (два двоеточия), а не на 0.0.0.0, как было раньше. IPv6 адрес :: значит то же самое, что и IPv4 0.0.0.0, т.е. «слушаем все интерфейсы». Многие считают, что если программа слушает ::, то этот сокет может принимать только IPv6-соединения, однако это далеко не так.
В IPv6 есть так называемое отображение IPv4-адресов в IPv6 диапазон. Если программа слушает сокет ::, а к ней обращаются из IPv4-адреса 1.2.3.4, то программа получит соединение с адреса ::ffff:1.2.3.4. Этого можно избежать, сделав:
sysctl -w net.ipv6.bindv6only=1

Но это нужно далеко не всегда, т.к. обычно удобно, что программа слушает один сокет, а получать соединения может по двум протоколам сразу. Практически во всех дистрибутивах, IPv6-сокеты ведут себя именно так, т.е. bindv6only=0.
Читать дальше →

Головка 3Д-принтера. Три составные части и три источника. На пути к совершенству

Reading time5 min
Views35K
Небольшой обзор по материалам применяемым для изготовления головок 3Д-принтеров и самих головок, чтобы было яснее, почему их так делают, J-Head, Makerbot, Ultimaker.

Это вторая моя статья из цикла-эпопеи о принтерных головках. Шутка — но ещё есть что сказать. Первая статья здесь. Как и все материалы по RepRap — принтерам относится к open-source, значит если нужны какие-то подробности обращайтесь.

Хотэнд — горячая часть головки обычно состоит из трёх частей:

— собственно головка, сопло, nozzle;
— термобарьер, ещё называют nozzle holder, может быть в одном флаконе с радиатором;
— радиатор.

Требования к материалам этих частей существенно разные. Впрочем, я видел в Сети людей, которые всё эти части делали из алюминия. И у них ничего хорошего не получалось. А вот Прюша — тот самый, знаменитый, по имени которого названа модель принтера Prusa, сделал всё из нержавейки. Об этом тоже будет написано.


головка Prusa Nozzle
Читать дальше →

Часть 4.2 Возвращаем зрение. От очков до эксимерного лазера

Reading time11 min
Views251K
Пацаны, есть лазер. Он вгрызается в ваш глаз. Но раньше, чтобы лазер мог начать работу, надо было аккуратно зачистить глаз скальпелем. Скальпель со временем становился меньше, а лазер — круче. Поэтому давайте посмотрим на эволюцию методов.

Эпиграф от Milfgard



Заключительная часть цикла, посвященная непосредственно оставшимся методам коррекции зрения. В этой части мы рассмотрим ортокератологию, все варианты лазерной коррекции зрения, замену хрусталика и несколько других методов. Если вы не читали цикл с самого начала, я очень рекомендую ознакомиться с частями 2 и 4.1, в которых подробно рассматриваются те проблемы, с которыми сталкивается современный офтальмохирург. В этой статье я постараюсь развеять уже поднадоевший страх, связанный с фильмом «Пункт назначения 4» и сошедшим с ума лазером. Также я постараюсь ответить на заданные вопросы читателей, как и обещал.

Предыдущие части


Часть 1. Unboxing VisuMax — фемто-лазера для коррекции зрения
Часть 2. Сколько мегабит/с можно пропустить через зрительный нерв и какое разрешение у сетчатки? Немного теории
Часть 3. Знакомьтесь — лазер по имени Amaris. Переезды и первое пробуждение VisuMax
Часть 4.1 Возвращаем зрение. От очков до эксимерного лазера
Читать дальше →

250 миллионов международных событий в одном месте

Reading time1 min
Views12K

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

Каждая запись набора имеет 58 атрибутов. А сам набор делится на 300 различных категорий. На настоящий момент каталог имеет объем 100 Гб, а хостером является Goolge.
Читать дальше →

Зд-принтер: Взгляд со стороны головы

Reading time15 min
Views90K
Общий взгляд — как их использовать, родные аналогии. Скромная реальность. Только FDM, только домашний, живьём — зато изнутри и подробно. Хотэнд? В разрезе, с зонами и графиком температур. Достоинства и недостатки, свойства различных решений при конструировании печатающих головок. Особенности печати триммерной леской, и опыты по получению таблиц оптимальных настроек скоростной печати капроном(нейлоном). Выводы из них. Об организации хорошей подачи капронового прутка в экструдере. Всё очень захватывающе и драматично.

Про 3Д-принтеры сейчас пишут много, пишут с восторгом, описывается множество моделей и технологий, а так же множество их умений. И вот, стою я перед Вами, простой русский мужик из Литвы (С), с 3Д-принтером. Конечно, собрал его сам. Не из набора — полтора года назад наборов было мало, и они были дороги. Всё планировал и выбирал сам, ориентируясь исключительно на Интернет. Но я не об этом хочу рассказать, я хочу рассказать о том, что было потом — после его постройки, и думается вопросы — Зачем это? — Что он может делать? — Почему его покупают? — задают себе многие люди увлечённые техникой.

Давайте по-порядку: сначала я его строил. Это было очень интересно, в том плане, что приходилось постоянно решать множество технических вопросов, находить причины нештатной работы — путём вычисления, зачастую по косвенным признакам. Этакая игра в технические загадки. Заработало. Налаживал. Увидел порядочно возможных усовершенствований. Сделал несколько — с большим удовольствием. Потом разработал реально удобный узел концевого датчика для принтера. Его я даже один раз продал. Ну, комплект датчиков — на этом не разбогатеешь, но зато, какое удовольствие я получил от искренней благодарности покупателя. Повозившись с печатающей головкой — убедился, что она, несмотря на хорошее качество изготовления ( брэндовая MK IV) имеет и ряд недостатков. Да и была она только одна — а покупать ещё, дорого. Разработал свою — будете смеяться, с первого раза что-то получилось, хоть и не идеально. Правда, я ведь не так слепил, а внимательно изучил, что имелось, почитал, что пишут, и только тогда сделал. Потом стал разбираться. Ставить опыты. Был долгий перерыв — разочарование и депрессия, но это не связано с принтерами, так, соломинка подломившая спину слону. Сейчас у меня 4 головки, разных диаметров и принтер печатает в три раза быстрее, чем считается нормальным и печатает слоем 150 микрон. Причём печатает не дорогим импортным филаментом, а дешёвой леской для триммеров. Получается очень-очень прочно, хотя и не без хитростей.

Читать дальше →

Information

Rating
2,686-th
Registered
Activity