Pull to refresh
64
0
Денис Кулагин @kdenisk

Компьютерная лингвистика

Send message

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

Reading time3 min
Views14K


Машинный перевод с помощью нейросетей прошёл долгий путь с момента первых научных исследований на эту тему и до того момента, как компания Google заявила о полном переводе сервиса Google Translate на глубинное обучение.

Как известно, в основе нейронного переводчика механизм двунаправленных рекуррентных нейронных сетей (Bidirectional Recurrent Neural Networks), построенный на матричных вычислениях, который позволяет строить существенно более сложные вероятностные модели, чем статистические машинные переводчики. Однако всегда считалось, что нейронный перевод, как и статистический, требует для обучения параллельных корпусов текстов на двух языках. На этих корпусах обучается нейросеть, принимая человеческий перевод за эталонный.

Как теперь выяснилось, нейросети способны освоить новый язык для перевода даже без параллельного корпуса текстов! На сайте препринтов arXiv.org опубликованы сразу две работы на эту тему.
Читать дальше →

Вы работаете не в том месте (если у вас офис открытого типа)

Reading time6 min
Views48K

Что такое физическое пространство?


На последней работе всё самое лучшее я сделал дома. Я активно пытался избегать офиса насколько возможно. Дома у меня два стола и полный контроль над окружением. Альтернатива — отвлечения и помехи.


Мой домашний офис — крепость производительности

Когда я заходил в офис, окружение изменялось. Здесь постоянно всё отвлекало: другие сотрудники, лающие собаки (отмечу: маленькие собачонки не в счёт), импровизированные совещания и празднование дней рождения. Было очень сложно перейти в состояние потока и невероятно легко выйти из него. Среди всех мест, где я мог бы работать, стол в офисе, наверное, был худшим вариантом.

Когда я нахожусь в переполненном пространстве, мои мысли тоже переполняются. Я чувствую подавленность стимулами и неспособность их избежать. Для сравнения, когда есть пространство (ментальное и физическое), я способен разобраться и понять свои мысли и ментальные предпосылки. Качество мышления значительно возрастает.

Я осознал, что ненавижу офисы открытого типа.
Читать дальше →

Нет, у меня нет сторонних проектов, чтобы вам показать

Reading time3 min
Views74K
Я точно знаю момент, когда потерял шансы пройти собеседование в фирму по разработке шоппинг-приложения в центре Остина. Они хотели посмотреть примеры моего кода. Конечно, они понимали, что я не могу им показать код своего нынешнего или прошлых работодателей. Но это не должно быть проблемой. Ведь они разрешают показать код одного из моих многочисленных сторонних проектов, которые у меня без сомнения есть.

Но у меня нет сторонних проектов. У меня нет аккаунта на GitHub. У меня нет open-source проектов, которые я строгаю по вечерам. У меня ровно ноль пулл-реквестов в любой из последних модных проектов, в которых участвуют все крутые кодеры. Я не вожусь с упражнениями в Haskel. И я ненавижу хакатоны.

И когда я сказал, что не могу показать им сторонних проектов — для них это звучало так, что я не лучший. Я не увлечённый разработчик. Я не уделяю достаточно времени тому, чтобы поддерживать на высоком уровне своё образование и навыки. Программирование — это «просто работа».
Читать дальше →

Kotlin DSL: Теория и Практика

Reading time17 min
Views66K

Sql, RegExp, Gradle — что их объединяет? Всё это примеры использования проблемно-ориентированных языков или DSL (domain-specific language). Каждый такой язык решает свою узконаправленную задачу, например, запрос данных из БД, поиск совпадений в тексте или описание процесса сборки приложения. Язык Kotlin предоставляет большое количество возможностей для создания собственного проблемно-ориентированного языка. В ходе статьи мы разберемся, какие инструменты есть в арсенале программиста, и реализуем DSL для предложенной предметной области.


Весь синтаксис, представленный в статье, я объясню максимально просто, однако, материал рассчитан на практикующих инженеров, которые рассматривают Kotlin, как язык для построения проблемно-ориентированных языков. В конце статьи будут приведены недостатки, к которым нужно быть готовым. Используемый в статье код актуален для Kotlin версии 1.1.4-3 и доступен на GitHub.


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

Как работает метод главных компонент (PCA) на простом примере

Reading time10 min
Views301K


В этой статье я бы хотел рассказать о том, как именно работает метод анализа главных компонент (PCA – principal component analysis) с точки зрения интуиции, стоящей за ее математическим аппаратом. Максимально просто, но подробно.
Читать дальше →

Актуальные данные по телефонным кодам российских городов

Reading time4 min
Views5K
Многим приложениям требуются актуальные данные о телефонных кодах российских городов. Поиск в интернете приводит к следующим печальным итогам: есть масса сомнительных ресурсов, где выложены коды городов, но их актуальность и достоверность оставляет желать лучшего, либо неизвестно. Есть онлайн-сервисы, которые предоставляют коды по конкретному городу. Этим можно было бы воспользоваться, но проделывать несколько десятков тысяч запросов вручную — удовольствие доступное не каждому.

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

Материалы летней школы Deep|Bayes по байесовским методам в глубинном обучении

Reading time3 min
Views25K

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


Многие современные исследовательские статьи активно используют байесовский формализм в сочетании с глубокими нейросетями, приходя к интересным результатам. Мы – исследовательская группа BayesGroup с помощью наших друзей из Сколтеха, а так же при поддержке Высшей Школы Экономики, Сбербанка, Яндекса, Лаборатории Касперского, JetBrains и nVidia – решили поделиться накопленным опытом и устроить летнюю школу по байесовским методам в глубинном обучении Deep|Bayes, где подробно рассказать, что такое байесовские методы, как их комбинировать с глубинным обучением и что из этого может получиться.


Отбор на школу оказался весьма сложным занятием – мы получили более 300 заявок от сильных кандидатов, но вместить смогли только 100 (приятно, что среди участников были не только жители Москвы и Петербурга, но и студенты из регионов, а так же русскоговорящие гости из-за границы). Пришлось отказать многим сильным кандидатам, поэтому для смягчения этого прискорбного факта мы решили сделать доступными максимальное количество материалов, которыми и хотим поделиться с хабраюзерами.

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

Понимая Docker

Reading time7 min
Views1.1M
Уже несколько месяцев использую docker для структуризации процесса разработки/доставки веб-проектов. Предлагаю читателям «Хабрахабра» перевод вводной статьи о docker — «Understanding docker».

Что такое докер?


Докер — это открытая платформа для разработки, доставки и эксплуатации приложений. Docker разработан для более быстрого выкладывания ваших приложений. С помощью docker вы можете отделить ваше приложение от вашей инфраструктуры и обращаться с инфраструктурой как управляемым приложением. Docker помогает выкладывать ваш код быстрее, быстрее тестировать, быстрее выкладывать приложения и уменьшить время между написанием кода и запуска кода. Docker делает это с помощью легковесной платформы контейнерной виртуализации, используя процессы и утилиты, которые помогают управлять и выкладывать ваши приложения.
Читать дальше →

Почему нет русского Amazon, или где @ зарыта? Мифы, которые надо закрыть

Reading time8 min
Views45K


Много раз (с коллегами и без) изучал рынок e-commerce & онлайн-экономики в целом в России: и всякий раз поражался, на сколько же он переполнен артефактами (в значении — близком к этому).

И вот на прошлой-позапрошлой неделе стало известно сразу несколько важных вестей:

  1. ФАС дала «добро» на объединение «Техносилы» и «Эльдорадо»
  2. При этом сама Техносила опровергла перед этим слухи о своём (возможном) банкростве
  3. А СберБанк факторинг высудил у Юлмарта круглую сумму

Как связаны эти события?
Читать дальше →

Языковая проблема искусственного интеллекта

Reading time18 min
Views29K
imageДоводилось ли вам сталкиваться с системами искусственного интеллекта? Полагаем, ответ большинства хабравчан будет положительным. Ведь ИИ уже перестал быть «чем-то за гранью фантастики». Системы распознавания речи Siri, IBM Watson, ViaVoice, виртуальные игроки Deep Blue, AlphaGo и даже такие ранние системы, как MYCIN, разработанная в 1970-х годах в Стэнфордском университете и предназначенная для диагностирования бактерий, вызывающих тяжелые инфекции, а также для рекомендации необходимого количества антибиотиков — все это вариации на тему ИИ. Но, несмотря на то, что технологии стремительно набирают ход, современные системы все еще весьма «угловаты», и главная проблема, с которой сталкиваются исследователи, — это языковое обучение. Заставить систему говорить не сложно, но объяснить ей «физику» окружающего мира — то, что человек понимает на интуитивном уровне — пока не удавалось никому.

Тема языковой проблемы искусственного интеллекта широко раскрывается в статье Уилла Найта, главного редактора AI MIT Technology Review, которую специалисты PayOnline, системы автоматизации приема онлайн-платежей, старательно перевели для пользователей Хабрахабра. Ниже представляем сам перевод.

Примерно в середине крайне напряженной игры в Го, проходившей в южнокорейском Сеуле, участниками которой были один из лучших игроков всех времен Ли Седоль и созданный Google искусственный интеллект под названием AlphaGo, программа сделала загадочный шаг, продемонстрировавший пугающее преимущество над своим человеческим оппонентом.
Читать дальше →

Спросите Итана: могут ли звёзды сбежать из галактики, не повредив планеты?

Reading time4 min
Views15K
image

Хотя звёзды в нашей галактике будут жить миллиарды лет, иногда с какой-нибудь из них может произойти катастрофа, которая выкинет её со стабильной орбиты по галактике. Может ли быть так, что эта звезда не просто сойдёт с орбиты, но и насовсем покинет галактику? А если так, может ли быть, что она сможет удержать свои планеты, в результате чего появится обитаемый межгалактический мир, в котором ваше «солнце» (и возможно, несколько других планет) будут единственными видимыми светилами? Наш читатель на этой неделе спрашивает:

Может ли звезда вырваться из гравитационного притяжения галактики? Если да, то может ли она прихватить с собой планеты, движущиеся по орбите вокруг неё? Если так, и если вы окажетесь на такой планете и посмотрите в ночное небо, увидите ли вы созвездия, состоящие из галактик?

Ажиотаж вокруг майнинга вызвал дефицит видеокарт в России. Что делать, когда поезд еще не ушел

Reading time4 min
Views110K

В последнюю неделю мы заметили, что на наш склад в Делавэре приходит очень много видеокарт и комплектующих для компьютеров. Сначала мы обрадовались такой тенденции. Наконец-то, люди начинают понимать, насколько в Штатах дешевле! А потом, после очередной покупки трех карт за один раз, задумались. И полезли изучать вопрос. Оказалось, майнинг опять стал очень выгодным делом, и люди поднимают неслабые деньги, заказывая карты из Америки, а майня в России.



В России возник острый дефицит видеокарт. Майнеры криптовалют скупают их пачками – практически мгновенно и по любой цене. В Белоруссии проблема еще серьезнее: если российские дистрибьюторы получают новую партию из-за границы, до соседей она не доезжает, своих «шахтеров» хватает. Особой популярностью пользуются новые карты AMD, а также GTX 1060, 1070 и 1080.

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

Личный опыт: как ИТ-специалисту переехать на работу в США, надеясь только на себя

Reading time7 min
Views69K


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

Мой опыт не вписывается в эту схему и потому, как мне кажется, может оказаться полезным для других ИТ-специалистов — я переехал в США по визе O1, которая лишена некоторых недостатков традиционной американской рабочей визы.

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

Отжиг и вымораживание: две свежие идеи, как ускорить обучение глубоких сетей

Reading time4 min
Views16K


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


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

Big Data в Райффайзенбанке

Reading time6 min
Views23K
Всем привет! В этой статье мы расскажем про Big Data в Райффайзенбанке. Но прежде чем перейти к сути, хотелось бы внести ясность по поводу самого определения Big Data. Действительно, в последние несколько лет этот термин употреблялся во множестве контекстов, что привело к размытию границ самого термина и потере содержательной части. Мы в Райффайзенбанке выделили три направления, которые мы относим к Big Data:
Читать дальше →

Миграция с mysql на postgresql

Reading time1 min
Views40K
Привет уважаемому сообществу!

В какой-то момент времени встала потребность перенести базу приложения на django с mysql на postgresql. Первые два захода на эту проблему были неудачными, но позволили разобраться с целостностью данных, искоренить проблемы для manage.py syncdb и manage.py migrate.
Читать дальше →

Отношение «часть – целое» в темпоральной/событийной онтологии

Reading time8 min
Views21K
Исходная публикация цикла («Классы, множества, группы, системы») заканчивалась выводом, что традиционная классификация индивидов через приписывание их к тем или иным классам-множествам не может считаться однородной, и следует различать (1) включение индивидов как частей в сложный объект (целое) и (2) подпадание индивидов под понятия, которые можно разделить на концептуальные и реляционные. Во втором тексте («Концептуальное описание индивидов») была предложена оригинальная иерархия концептуальных понятий («категория – тип – концепт – род – вид – разновидность – индивид»). В текущей публикации речь пойдет о классификации отношений типа «часть –целое». В лингвистических тезаурусах и в онтологиях верхнего уровня (WordNet, РуТез, SUMO, CYC Ontology, DOLCE) описаны различные варианты выделения подвидов отношения «часть – целое». В тексте предлагается еще один способ классификации.

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

Поиск компонент сильной связности: алгоритм Косарайю

Reading time2 min
Views43K
На хабре нет ни одной статьи о поиске компонент сильной связности. Однако это интересная задача, имеющая приложения в самых разных сферах: системах рекомендаций, математической логике и, неожиданно, экологии. Ниже формулировка задачи и решение — алгоритм Косарайю.
Читать дальше →

Бизнес: как понять, что пора с этим завязывать

Reading time4 min
Views57K


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

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

И ещё одно. Провал — обычно не трагедия, а статистика. То есть он неминуемо случается у большей части проектов. Другое дело, что в случае вашего личного бизнеса ваш первый проект может стать единственным, поскольку денег на другое уже не будет.
Читать дальше →

Рекурентная нейронная сеть в 10 строчек кода оценила отзывы зрителей нового эпизода “Звездных войн”

Reading time11 min
Views160K
Hello, Habr! Недавно мы получили от “Известий” заказ на проведение исследования общественного мнения по поводу фильма «Звёздные войны: Пробуждение Силы», премьера которого состоялась 17 декабря. Для этого мы решили провести анализ тональности российского сегмента Twitter по нескольким релевантным хэштегам. Результата от нас ждали всего через 3 дня (и это в самом конце года!), поэтому нам нужен был очень быстрый способ. В интернете мы нашли несколько подобных онлайн-сервисов (среди которых sentiment140 и tweet_viz), но оказалось, что они не работают с русским языком и по каким-то причинам анализируют только маленький процент твитов. Нам помог бы сервис AlchemyAPI, но ограничение в 1000 запросов в сутки нас также не устраивало. Тогда мы решили сделать свой анализатор тональности с блэк-джеком и всем остальным, создав простенькую рекурентную нейронную сеть с памятью. Результаты нашего исследования были использованы в статье “Известий”, опубликованной 3 января.



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

Information

Rating
Does not participate
Location
Железнодорожный (Московск.), Москва и Московская обл., Россия
Registered
Activity