• Кодирование с изъятием информации. Часть 2-я, математическая

      Введение


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


      image

      Позвольте немного расскажу откуда вообще взялась эта тема. Давным-давно от одного хорошего человека- ivlad взял почитать и вот пока никак не отдам (прости пожалуйста) интересную книжку [1], где, написано: «в свою очередь криптография сама может быть разделена на два направления, известные как перестановка и замена».

      Соответственно почти сразу появились следующий вопросы:


      • т.к. перестановка и замена сохраняют количество информации, то можно ли сделать так, чтобы обойти это ограничение, и передавать информации меньше чем есть в сообщении, — отсюда (из «а не слабо ли») родилась первая часть;
      • если задача выглядит решаемой, то есть ли само решение и хотя бы толика математического смысла в нём – этот вопрос и есть тема этой части;
      • есть ли во всём этом практический смысл – вопрос пока открыт.
      Читать дальше →
    • Атрибуция с использованием цепи Маркова

        Бизнес задача


        Один из наших клиентов активно использовал маркетинговые каналы трафика для продвижения своих услуг и товаров. Через какое-то время данные по всем маркетинговым каналам выгрузили в хранилище BigQuery, и решили, что пришло время сделать с ними что-нибудь интересное. Например, расширять и модифицировать свои аналитические модули для оптимизации маркетинговых расходов. В частности, реализовать возможность использовать более сложную атрибуцию каналов с помощью цепочек Маркова, которой не было Google Analytics на тот момент, а возможно и сейчас нет.


        Мы рассказывали в своем блоге о некоторых общих проблемах атрибуции рекламных каналов. Здесь же речь пойдет исключительно об использовании цепочек Маркова.


        Читать дальше →
      • Программирование генератора случайных чисел на Ethereum

          image


          При разработке смарт-контрактов на Ethereum обычно считается что полагаться на хеш блока как источник рандомности ненадежно, так как майнер может влиять на результат, подбирая хеш блока (см. Private Information and Randomness, How do you get a random number in a contract?)


          Насколько в действительности велика возможность для майнера увеличить свои шансы на выигрыш в игре в которой нужно угадать хеш блока c определенным номером (или некое число производимое от хеша блока)?

          Читать дальше →
        • Взломать шифр Хилла? Легко

          Цель: взломать шифр Хилла


          Доброго времени суток, уважаемые читатели! Сегодня я хотел поделиться способом, который помог мне вскрыть текст, зашифрованный методом Хилла. Что такое метод Хилла описывать не буду: до меня уже постарались опытные умельцы донести особенности данного способа. Ссылка на пост.

          Что имеем?


          Скажу сразу, что на руках не имелось ни открытого текста, ни ключа. Было известно, что текст длинной 6286 символов был зашифрован матрицей 7 х 7. Поэтому для нашего же удобства, мы разобьем текст на 898 строчек по 7 символов. В тексте не содержатся буквы 'ё' и 'ъ'. В целях благоразумства, я не буду приводить весь зашифрованный текст, а лишь его часть:

          тчгяцмекещэнлжсвтйджтчгсмнежздыщзяотьдрпюмимаадрх...

          На вид бессмысленная ерунда, пока что…

          Как будем ломать?


          Рассмотрим атаку «грубой силой». Выше было оговорено, что из алфавита исключены две буквы, поэтому все линейные комбинации при шифровании (как и при дешифровке) берутся по mod 31 (учитывая, что это простое число, текст становится чуть более безопасным).
          Если рассматривать перебор обратных матриц-ключей, то всего нам придется перебрать $inline$31^{49} $inline$ комбинаций (это число примерно умещается в 75 знаков). Поэтому такой способ исключается моментально, хотя! Если из этого множества можно было бы каким-нибудь более-менее быстрым способом перебрать подмножество невырожденных матриц, то возможно задача облегчилась бы. К сожалению я такого способа не знаю и не уверен, что такой вообще существует!
          Читать дальше →
        • Ричард Хэмминг: «Учитель должен готовить ученика к будущему ученика, а не к прошлому учителя»

          • Перевод
          «В этих лекциях я пытаюсь передать студентам то, чего не передашь словами — суть стиля в науке и инженерном деле.»

          imageПривет, Хабр.
          Помните офигенную статью «Вы и ваша работа» (+219, 2041 в закладки, 328k прочтений)?

          Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

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

          Мы уже перевели 3 главы (правда, в порядке субъективных интересов):


          Сегодня — Предисловие и Введение.
          (За перевод спасибо Savva Sumin, который откликнулся на мой призыв в «предыдущей главе».)

          Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

          Предисловие


          Спустя много лет давления и поддержки со стороны друзей, я решил изложить в форме записей содержание курса по инженерному делу, который я преподавал студентам Аспирантуры Университета Морской Пехоты в Монтеррее, Калифорния. В первую очередь, я сосредоточился на тех деталях, которые, по моему мнению, подлежали дальнейшей обработке, вместо того, чтобы оставить материал в виде несколько разобщённых лекций. В лектории содержание чаще следовало за интересом студентов, а многие из более поздних лекций стали результатом предложенных ими тем. Также, содержание лекций менялось от года к году, вместе с развитием соответствующих дисциплин. А нынешняя зависимость инженерного дела от связанных с ним научных областей склоняет меня к отождествлению этих терминов.
          Читать дальше →
          • +20
          • 16,6k
          • 4
        • Математические модели релейно-импульсных регуляторов



            Введение

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

            Практика промышленного использования микропроцессорных регулирующих приборов (МРП) показала, что “идеальные алгоритмы” физически не реализуемы. Синтезированная на их основе АСР не отражает поведение реальной системы [1].

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

            Релейно-импульсные регуляторы применяются в микропроцессорных регулирующих приборах, где наблюдается следующая тенденция. Например, в публикации [2] описаны возможности применения протокола modbus для создания собственной Scada системы на базе Python.
            В публикации [3] описано использование Python для работы с Arduino. Продолжаю эту тенденцию и я в надежде, что Python окончательно овладеет этой новой областью применения.
            Читать дальше →
            • +11
            • 3,1k
            • 5
          • AdBlock похитил этот баннер, но баннеры не зубы — отрастут

            Подробнее
            Реклама
          • Линейная регрессия с помощью Go

            • Перевод

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


            Но в конце концов я решил подойти к этому иначе. Мало-помалу я буду пытаться воссоздавать в коде разные концепции, начиная с основ и постепенно переходя к более сложным, стараясь охватить как можно больше базовых вещей. В качестве языка я выбрал Go, это один из моих любимых языков, к тому же я не знаком с традиционными для машинного обучения языками вроде R или Python.

            Читать дальше →
          • Сверточная сеть на python. Часть 3. Применение модели


              Это заключительная часть статей о сверточных сетях. Перед прочтением рекомендую ознакомиться с первой и второй частями, в которых рассматриваются слои сети и принципы их работы, а также формулы, которые отвечают за обучение всей модели. Сегодня мы рассмотрим особенности и трудности, с которыми можно столкнуться при тестировании вручную написанной на python сверточной сети, применим написанную сеть к датасету MNIST и сравним полученные результаты с библиотекой tensorflow.
              Читать дальше →
              • +60
              • 11,9k
              • 8
            • Вывод формулы n-ного члена для рекуррентной последовательности на примере задачи из квеста Амнезия

                Пеленгский фермер Бух'ерик разводит хрякоплюхов. Эти животные размножаются так быстро, что их поголовье ежедневно возрастает в 3 раза. Но, начиная со второго дня, на ферму повадилась нападать стая страшных зверей долбогрызов, каждый вечер пожирающих вдвое больше хрякоплюхов, чем их было в предыдущий день. Сколько хрякоплюхов будет у фермера на 7-й вечер, если вначале их было 10?


                Вы спросили у гаальца, что он думает по поводу этой задачки. После некоторого размышления тот ответил:
                — В начале было 10 хрякоплюхов. В первый день они размножились, и к началу второго дня их стало 30. Во второй день они опять размножились (их стало 90), но вечером пришли долбогрызы и съели вдвое больше хрякоплюхов, чем было вчера (в первый день), т.е. 20 штук. Итого, в начале третьего дня получаем 70 хрякоплюхов. Мне кажется, что, продолжая решать таким образом, можно вычислить число хрякоплюхов в любой день.

                Это задача из игры «Космические Рейнджеры 2», квест Амнезия.
                Попробуем вывести формулу для количества хрякоплюхов на n-ный день, и посчитать для примера количество хрякоплюхов на 32-й день.
                Читать дальше →
              • Ричард Хэмминг: «Есть мысли, о которых вы не можете думать»

                • Перевод
                «Есть запахи, которые вы не можете ощущать, длины волн света, которые вы не видите, звуки, которые вы не можете услышать,… есть мысли, о которых вы не можете думать.»

                imageПривет, Хабр.
                Помните офигенную статью «Вы и ваша работа» (+219, 1928 в закладки, 328k прочтений)?

                Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

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

                Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

                Глава 24. Квантовая механика

                (за перевод спасибо Нате Блянкинштейн)

                Большинство физиков в настоящее время считают, что у них есть базовое описание Вселенной [хотя в настоящее время они признают, что 90-99% Вселенной находится в форме «темной материи», о которой они не знают ничего кроме того, что она испытывает гравитацию]. Вы должны понимать, что во всей науке есть только описания того, как что-то происходит, и ничего о том, почему это происходит. Ньютон дал нам формулу, выражающую как работает гравитация, и он не делал никаких гипотез ни о том, чем она является, ни через какую среду она работает, не говоря уже о том, почему она работает. На самом деле он даже не верил в «дальнодействие».

                Причины обсуждать квантовую механику, КМ, такие:

                1. это фундаментальная физика,
                2. она имеет много неожиданных интеллектуальных следствий и
                3. дает ряд моделей для работы.

                В конце XIX — начале XX века физика столкнулась с рядом проблем. Среди них были следующие:
                Читать дальше →
              Самое читаемое