Pull to refresh
1
0
Send message

Тестирование документации к программным продуктам

Reading time6 min
Views37K
Когда-то в стародавние времена была у меня задача по тестированию документации к нескольким программным продуктам. Пользуясь гуглом, не удалось отыскать на раз-два информацию о том, какими качествами должна обладать документация и кому она нужна. Собирал все по крупицам. Давно принял решение написать об этом, и вот, пользуясь наличием праздничных дней, публикую.
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments19

«Письмо турецкому султану» или линейная регрессия на C# с помощью Accord.NET для анализа открытых данных Москвы

Reading time13 min
Views12K
Когда речь идет об освоении самых основ машинного обучения, чаще всего предлагается изучить соответствующие инструменты на Python или R. Мы не будем обсуждать их плюсы и минусы, а просто зададимся вопросом, что делать если вы знакомы только с экосистемой .NET, но при этом вам очень любопытно окунутся в мир науки о данных? Ответ прост, не отчаиваться и посмотреть в сторону F#, а если вы также, как и я из .NET знаете только азы C#, то попробовать изучить Accord.NET Framework.

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

Несмотря на то, что в заголовке статьи указан C#, мы попробуем собрать код и на VB.NET.

Мне осталось только пригласить вас под кат!


Читать дальше →
Total votes 21: ↑18 and ↓3+15
Comments4

ТАУ для самых маленьких: пример реализации ПИД-регулятора в Unity3D

Reading time24 min
Views87K

Вместо введения


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

Total votes 23: ↑23 and ↓0+23
Comments42

Пишем бота-кликера на Python для Lineage 2

Reading time7 min
Views167K


Предисловие


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


Когда-то в школьные годы был увлечен одной из популярных MMORPG — Lineage 2. В игре можно объединяться в кланы, группы, заводить друзей и сражаться с соперниками, но в общем игра наполнена однообразными действиями: выполнением квестов и фармом (сбор ресурсов, получение опыта).


В итоге решил, что бот должен решать одну задачу: фарм. Для управления будут использоваться эмулированные клики мыши и нажатия клавиш клавиатуры, а для ориентирования в пространстве — компьютерное зрение, язык программирования — Python.

Читать дальше →
Total votes 70: ↑67 and ↓3+64
Comments76

Нотной грамоте учат неправильно*

Reading time11 min
Views239K

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


Предполагается, что студент должен страдать самостоятельно освоить ноты, путем многократного повторения. И вообще, если «ниасилил», значит у тебя нет Таланта — иди мести двор.


Представьте что было бы, если бы обычной грамоте учили так же. Но мы, почему-то, в большинстве своем читать и писать таки научились.


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


* Дисклеймер

Прошу прощения, если заголовок статьи показался вам чересчур дерзким и провокационным. Таковым он, в общем-то, и является.


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


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


Эффективность я оценивал исключительно на себе, поскольку сей субъект оказался самым доступным для исследования.

Читать дальше →
Total votes 124: ↑123 and ↓1+122
Comments212

Начинающим на Arduino: Упаковываем конечный автомат в отдельный класс и библиотеку

Reading time9 min
Views33K

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


Папки с библиотеками

Читать дальше →
Total votes 15: ↑9 and ↓6+3
Comments59

История о появлении финансового учета в моей жизни

Reading time8 min
Views15K
В своей прошлой статье меня попросили поделиться своей историей в учете. Не откладывая в долгий ящик расскажу как финансовый учет пришел в мою жизнь.
Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments39

Долой таблички! Как выучить английские времена

Reading time5 min
Views253K


Времена в английском языке традиционно считаются одной из самых сложных тем в обучении. Они прочно ассоциируются с зазубриванием длинных малопонятных таблиц и запоминанием неочевидных правил. На самом деле, все не так. Рассказываем, как быстро овладеть временами и их аспектами, чтобы начать говорить по-английски, не спотыкаясь.
Читать дальше →
Total votes 77: ↑72 and ↓5+67
Comments97

Метод Уэлфорда и одномерная линейная регрессия

Reading time7 min
Views11K

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


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


Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments2

Точное вычисление средних и ковариаций методом Уэлфорда

Reading time7 min
Views23K

Метод Уэлфорда — простой и эффективный способ для вычисления средних, дисперсий, ковариаций и других статистик. Этот метод обладает целым рядом прекрасных свойств:


  • достигает отличных показателей по точности решений;
  • его чрезвычайно просто запомнить и реализовать;
  • это однопроходный онлайн-алгоритм, что крайне полезно в некоторых ситуациях.

Оригинальная статья Уэлфорда была опубликована в 1962 году. Тем не менее, нельзя сказать, что алгоритм сколь-нибудь широко известен в настоящее время. А уж найти математическое доказательство его корректности или экспериментальные сравнения с другими методами и вовсе нетривиально.


Настоящая статья пытается заполнить эти пробелы.


Читать дальше →
Total votes 53: ↑53 and ↓0+53
Comments9

Метод Уэлфорда и многомерная линейная регрессия

Reading time8 min
Views20K

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


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


Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments7

Разработан алгоритм, эффективно удаляющий из видео все «скучные» фрагменты

Reading time2 min
Views18K
Приходилось ли вам, перейдя по ссылке на интересный видеоролик на Youtube, обнаруживать, что ради нескольких секунд, где действительно происходит что-то интересное, вы только что потратили нескольк минут на созерцание совершенно бесполезного «мусора» только потому, что автор видео выложил целиком файл с видеорегистратора или смартфона? Количество видеокамер стремительно растёт, а количество людей, способных хотя бы обрезать пару лишних фрагментов, похоже, остаётся постоянным. И проблема не только в нескольких минутах убитого в интернете времени — ведь есть и более серьёзные случаи, например, десятки и сотни часов видео с камер наблюдения, которые иногда приходится просматривать, чтобы раскрыть преступление.

Учёные из университета Карнеги-Меллон разработали эффективный алгоритм выделения наиболее интересных фрагментов видео на основе машинного обучения. Новый алгоритм, названный ими «LiveLight» значительно превосходит аналоги по скорости и качеству работы. LiveLight выделяет характерные фрагменты видео и сотавляет их «словарь», а затем пытается предсказать на их основе следующий кадр. Если это удаётся с достаточной степенью точности, то это значит, что кадр не добавляет практически никакой новой информации и его можно исключить. В отличие от «механических» подходов, реагирующих на любое движение в кадре либо резкое изменение яркости, цвета или контраста, LiveLight достаточно универсален — он хорошо работает и на видео, снятым неподвижной камерой, и на любительской съемке трясущимся смартфоном.


Читать дальше →
Total votes 62: ↑53 and ↓9+44
Comments36
12 ...
11

Information

Rating
Does not participate
Registered
Activity