Pull to refresh
2
0.1

CV Architect

Send message

Слово Божие — функциональное программирование как основа Вселенной

Level of difficulty Medium
Reading time 15 min
Views 38K

В одном из своих предыдущих постов под названием "Эйлер, Чёрч и Мандельброт — этюд о красоте и математике" я немного затронул тему рассмотрения функционального программирования в качестве основы реальности. Под тем постом было оставлено множество интересных комментариев, один из которых, написанный @nickolaym, вдохновил меня на развитие мысли в данном направлении. Так появился этот пост, в котором прямо как во времена пифагорейской школы и платоновской академии философия переплелась с математикой, а математика с философией.

Читать далее
Total votes 64: ↑54 and ↓10 +44
Comments 103

Чему я научился на своём горьком опыте (за 30 лет в разработке ПО)

Reading time 22 min
Views 117K
image

Это циничная, клиническая коллекция того, чему я научился за 30 лет работы в разработке программного обеспечения. Повторюсь, некоторые вещи весьма циничны, а остальное — результат долгих наблюдений на разных местах работы.
Читать дальше →
Total votes 187: ↑178 and ↓9 +169
Comments 128

Прогулка по заводу желаний

Reading time 36 min
Views 31K
Откуда приходят и куда исчезают желания?

Иногда трудно заставить себя делать что-то нужное: мыть посуду, делать зарядку, работу работать… В интернете есть много статей с рецептами преодоления нежелания, и каждый день добавляются новые. Я вижу во многих статьях одну и ту же проблему.

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

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

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

Или еще проще — проблемы нет, у вас воля слабая, отговорки ищете, возьми и сделай (just do it).

Позвольте усложнить.
Читать дальше →
Total votes 27: ↑26 and ↓1 +25
Comments 37

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

Reading time 7 min
Views 2.5K
— Что для тебя Программирование?
> Программирование? Я не могу ответить.
— Почему?
> Даже не знаю…
— Ты учился когда-нибудь?
> Конечно, но это было давно.
— Работу по найму Любишь?
> Сейчас уже нет.
— Зачем ты стал Предпринимателем, и неужели ты проработал более 17 лет «программистом» и «аналитиком» в ИТ-компаниях?

Кто Ты?

> Многолетние постоянные улучшения, постоянное сопровождение и настройка клиентских рабочих мест создавало ощущение управляемости процессом, но это не всегда так. Просто существовали процессы, управление которыми не входило в KPI тех компаний, где я работал, и поэтому я решил стать Предпринимателем.
— И? Уже ничего нельзя изменить?
Любопытно? Тогда жми за подробностями
Total votes 13: ↑12 and ↓1 +11
Comments 0

ML.NET 0.7 (Machine Learning .NET)

Reading time 4 min
Views 9.4K
Мы рады объявить о выпуске ML.NET 0.7 — последней версии кросс-платформенной и open source системы машинного обучения для разработчиков .NET (ML.NET 0.1 был выпущен на //Build 2018). Этот релиз направлен на расширение функциональности платформы. Подробнее под катом!

Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Comments 2

Болтай, извлекай: архитектура сложных чат-ботов

Reading time 13 min
Views 12K
Пользователи, пообщавшись с умными голосовыми ассистентами, ждут от чат-ботов интеллектуальности. Если вы разрабатываете бота для бизнеса, ожидания еще выше: заказчик хочет, чтобы юзер прошел по нужному, заранее прописанному сценарию, а юзер — чтобы робот толково и желательно человеческим языком ответил на поставленные вопросы, помог решить проблемы, а иногда просто поддержал светскую беседу.


Мы делаем англоязычные чат-боты, которые общаются с пользователями по разным каналам — Facebook Messenger, SMS, Amazon Alexa и веб. Наши боты заменяют службы поддержки, страховых агентов, и уметь просто поболтать. Каждая из этих задач требует своего подхода в разработке.

В этой статье мы расскажем, из каких модулей состоит наш сервис, как сделан каждый из них, какой подход мы выбрали и почему. Поделимся нашим опытом анализа разных инструментов: когда генеративные нейронные сети — не лучший выбор, почему вместо Doc2vec мы пользуемся Word2vec, в чем прелесть и ужас ChatScript и так далее.

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

10 интересных новостных IT сайтов, которые стоит добавить в закладки

Reading time 4 min
Views 38K
Наверняка вы все знаете о таких сайтах, как quora или stackoverflow, где можно найти много интересной и полезной информации. Сегодня же мы поговорим о тех сайтах, о которых еще не все знают, но которые точно стоит добавить в свои закладки. Сделать это можно не только ради англоязычного контента или учебных материалов, но и для того, чтобы найти для себя полезные новости и интересное чтиво.

А чтобы реально разобраться в тексте, советуем взять на заметку такие сайты:
Читать дальше →
Total votes 19: ↑9 and ↓10 -1
Comments 3

Google объявляет конкурс атак на алгоритмы машинного зрения

Reading time 3 min
Views 13K
Распознавание изображений с помощью нейросетей становится лучше, но до сих пор исследователи не побороли некоторые его фундаментальные недостатки. Там, где человек четко и ясно видит, например, велосипед, даже передовой натренированный ИИ может увидеть птицу.

Часто причина в так называемых «вредных данных» (или «соревновательных элементах», или «вредоносных экземплярах» или еще куче вариантов, поскольку «adversary examples» так и не получили общепринятого перевода). Это данные, которые обманывают классификатор нейросети, подсовывая ему признаки других классов — информацию не важную и не видную для для человеческого восприятия, но необходимую для машинного зрения.

Исследователи из Google опубликовали в 2015 году работу, где проиллюстрировали проблему таким примером:


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

В сферах, где машинное зрение должно быть предельно точным, а ошибка, взлом и действия злоумышленников могут иметь тяжелые последствия, вредные данные — серьезная помеха развитию. Прогресс в борьбе идет медленно, и компания GoogleAI (подразделение Google занимающееся исследованием ИИ) решила привлечь силы сообщества и устроить соревнование.
Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Comments 17

Мессенджеровские чтения профессора Ричарда Фейнмана

Reading time 1 min
Views 25K


Ещё в прошлом году мы начали перевод и озвучку Мессенджеровских лекций Нобелевского лауреата по физике Ричарда Фейнмана, которые он прочитал в Корнелльском университете в 1964 году.

В прошлом году нам удалось опубликовать 2 лекции из 7. И вот, благодаря нашим подписчикам, мы выпустили 3-ю лекцию, в которой Ричард Фейнман рассказывает о том, какие существуют законы сохранения, как они работают и какие у них есть сходства.

На случай, если кто не успел посмотреть, мы дублируем первые две лекции этого курса.
Приятного просмотра!
Total votes 21: ↑21 and ↓0 +21
Comments 8

Гарвардский курс CS50 «Основы компьютерных наук и искусства программирования»

Reading time 3 min
Views 56K


Вот уже несколько месяцев специально для JavaRush мы переводим и озвучиваем самый популярный в мире университетский курс о CS50 — «Основы компьютерных наук и искусства программирования» (трейлер). Его уже много лет очно читают для студентов Гарварда и для воспитанников Йельского университета, а в последнее время ещё и заочно для многомиллионной аудитории интернета.
Это перевод самой новой версии курса, который стартовал осенью 2015 года. В курсе 24 лекции и постепенно мы переведём их все. Намедни мы перевели 15-ю лекцию, её вы найдёте под катом в списке всех переведённых на сегодняшний день лекций.

Что вы узнаете, прослушав этот курс:

  • Основы компьютерных наук и программирования;
  • Концепции алгоритмов и алгоритмичности мышления. Какие задачи можно решать с помощью программирования и каким образом;
  • Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка;
  • Основы языка программирования C и Scratch;
  • Основы баз данных и SQL;
  • Веб-разработка: основы CSS, HTML, JavaScript и PHP;
  • Основы подготовки презентации проектов по программированию.

Читать дальше →
Total votes 30: ↑26 and ↓4 +22
Comments 11

6 альтернатив MacBook

Reading time 4 min
Views 73K
image

После презентации Apple появилось множество разочарованных комментариев: «только USB-C», устаревший процессор, отсутствие сенсорного экрана, и дикий ценник. Посмотрим, какие альтернативы предлагает рынок на новых процессорах Intel.
Читать дальше →
Total votes 32: ↑24 and ↓8 +16
Comments 212

Deep Learning: Сравнение фреймворков для символьного глубокого обучения

Reading time 5 min
Views 29K
Представляем вам перевод серии статей посвященных глубокому обучению. В первой части описан выбор фреймворка с отрытым кодом для символьного глубокого обучения, между MXNET, TensorFlow, Theano. Автор подробно сравнивает преимущества и недостатки каждого из них. В следующих частях вы узнаете о тонкой настройке глубоких сверточных сетей, а также о сочетании глубокой сверточной нейронной сети с рекуррентной нейронной сетью.


Читать дальше →
Total votes 28: ↑26 and ↓2 +24
Comments 12

Книга «Изучаем Python. Программирование игр, визуализация данных, веб-приложения»

Reading time 4 min
Views 54K
image Привет, Хаброжители! Недавно у нас вышла новая книга Эрика Мэтиза:

Цель этой книги — как можно быстрее ввести читателя в курс дела, чтобы тот начал писать на Python работоспособные программы (игры, визуализации данных и веб-приложения), и одновременно заложить основу в области программирования, которая пригодится ему на протяжении всей жизни. Книга написана для людей любого возраста, которые прежде никогда не программировали на Python или вообще никогда не программировали. Если вы хотите быстро изучить азы программирования, чтобы сосредоточиться на интересных проектах, а также проверить свое понимание новых концепций на содержательных задачах — эта книга для вас. Книга также прекрасно подходит для преподавателей, желающих предложить вводный курс программирования, основанный на проектах.
Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Comments 25

Размышления об алгоритмах и методах. Представление полного алгоритма порождения сочетаний + размещений с повторением

Reading time 7 min
Views 9K
Эта статья содержит ряд наблюдений, касающихся проблем алгоритмизации, минимизации ошибок, понимания и изучения чужого кода, а также рассуждения о полном представлении алгоритмов и небольшой эксперимент.
Читать дальше →
Total votes 4: ↑3 and ↓1 +2
Comments 21

Python для математических вычислений. Опыт Марка Андреева

Level of difficulty Easy
Reading time 4 min
Views 86K

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


Мы попытаемся найти в языке функции, которые обычно требуем от математических пакетов. Рассмотрим сильные и слабые стороны идеи использования python вместо MATLAB, Maple, Mathcad, Mathematica.

Читать дальше →
Total votes 27: ↑23 and ↓4 +19
Comments 30

Обзор курсов по Deep Learning

Reading time 11 min
Views 70K
Привет, Хабр! Последнее время все больше и больше достижений в области искусственного интеллекта связано с инструментами глубокого обучения или deep learning. Мы решили разобраться, где же можно научиться необходимым навыкам, чтобы стать специалистом в этой области.

image
Читать дальше →
Total votes 52: ↑48 and ↓4 +44
Comments 29

Нейронные сети для начинающих. Часть 1

Reading time 7 min
Views 1.5M
image

Привет всем читателям Habrahabr, в этой статье я хочу поделиться с Вами моим опытом в изучении нейронных сетей и, как следствие, их реализации, с помощью языка программирования Java, на платформе Android. Мое знакомство с нейронными сетями произошло, когда вышло приложение Prisma. Оно обрабатывает любую фотографию, с помощью нейронных сетей, и воспроизводит ее с нуля, используя выбранный стиль. Заинтересовавшись этим, я бросился искать статьи и «туториалы», в первую очередь, на Хабре. И к моему великому удивлению, я не нашел ни одну статью, которая четко и поэтапно расписывала алгоритм работы нейронных сетей. Информация была разрознена и в ней отсутствовали ключевые моменты. Также, большинство авторов бросается показывать код на том или ином языке программирования, не прибегая к детальным объяснениям.

Поэтому сейчас, когда я достаточно хорошо освоил нейронные сети и нашел огромное количество информации с разных иностранных порталов, я хотел бы поделиться этим с людьми в серии публикаций, где я соберу всю информацию, которая потребуется вам, если вы только начинаете знакомство с нейронными сетями. В этой статье, я не буду делать сильный акцент на Java и буду объяснять все на примерах, чтобы вы сами смогли перенести это на любой, нужный вам язык программирования. В последующих статьях, я расскажу о своем приложении, написанном под андроид, которое предсказывает движение акций или валюты. Иными словами, всех желающих окунуться в мир нейронных сетей и жаждущих простого и доступного изложения информации или просто тех, кто что-то не понял и хочет подтянуть, добро пожаловать под кат.
Читать дальше →
Total votes 70: ↑60 and ↓10 +50
Comments 64

Факторное моделирование с помощью нейронной сети

Reading time 16 min
Views 18K
В статье рассматривается факторное моделирование с помощью метода факторизации на базе нейронной сети и алгоритма обратного распространения ошибки. Этот метод факторизации является альтернативой классическому факторному анализу. Данный метод был усовершенствован для проведения факторного вращения и получения интерпретируемого решения. Факторная структура, полученная с помощью данного метода факторизации, находятся в соответствии с результатами факторного моделирования посредством других методов.
Читать дальше →
Total votes 19: ↑16 and ↓3 +13
Comments 1

Обзор топологий глубоких сверточных нейронных сетей

Reading time 18 min
Views 107K
Это будет длиннопост. Я давно хотел написать этот обзор, но sim0nsays меня опередил, и я решил выждать момент, например как появятся результаты ImageNet’а. Вот момент настал, но имаджнет не преподнес никаких сюрпризов, кроме того, что на первом месте по классификации находятся китайские эфэсбэшники. Их модель в лучших традициях кэгла является ансамблем нескольких моделей (Inception, ResNet, Inception ResNet) и обгоняет победителей прошлого всего на полпроцента (кстати, публикации еще нет, и есть мизерный шанс, что там реально что-то новое). Кстати, как видите из результатов имаджнета, что-то пошло не так с добавлением слоев, о чем свидетельствует рост в ширину архитектуры итоговой модели. Может, из нейросетей уже выжали все что можно? Или NVidia слишком задрала цены на GPU и тем самым тормозит развитие ИИ? Зима близко? В общем, на эти вопросы я тут не отвечу. Зато под катом вас ждет много картинок, слоев и танцев с бубном. Подразумевается, что вы уже знакомы с алгоритмом обратного распространения ошибки и понимаете, как работают основные строительные блоки сверточных нейронных сетей: свертки и пулинг.

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

Путь ASP.NET Core [уровень 1] Основы

Reading time 5 min
Views 100K
ASP.NET Core — новейший фреймворк для кроссплатформенной веб разработки. Пока его популярность (как и количество вакансий) только начинает набирать обороты самое время узнать о нем побольше. Ну а для того, чтобы все знания не испарились сразу после прочтения — добавим существенную практическую часть. Создадим простое приложение, для тестирования прочитанного.

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

Первая часть включает:

  • Что такое .NET Core и ASP.NET Core?
  • Основы создания приложения и его структура
  • Добавление новых элементов, скаффолдинг
  • Основы встроенного Dependency Injection
  • Деплоймент в Azure


Читать дальше →
Total votes 18: ↑14 and ↓4 +10
Comments 8
1

Information

Rating
2,670-th
Registered
Activity