Верно. Если нужно 100% требование открыть сообщение в будущем, метод не подходит. Но можно достичь любой вероятности ниже 100%, увеличив сложность. Собственно, именно так в Биткоине и происходит, блоки в среднем раз в 10 минут выпускаются. Биткоин существует более 10 лет, планета так и не была переработана в процессоры, так что "отправить сообщение в будущее на 10 минут с помощью POW" можно назвать вполне робастным, так сказать.
А чтобы не считали на счётах, надо внутрь сообщения $xxxx крипты положить :)
Верно. Если нужно 100% требование открыть сообщение в будущем, метод не подходит. Но можно достичь любой вероятности ниже 100%, увеличив сложность. Собственно, именно так в Биткоине и происходит, блоки в среднем раз в 10 минут выпускаются.
Если предположить, что скорость вычислений хоть как-то предсказуема (даже с учётом закона Мура), то можно, например, подобрать ключ так, чтобы его брутфорс закончился к нужному времени. Ведь тот же Биткоин именно так и работает -- на каждые 10 минут в будущем подбирается новый ключ, который заранее не известен.
Танец пчёл -- это фейк, Карл Фриш выдавал желаемое за действительное. Вот здесь можно почитать подробнее "Веннер, Уэллс: Анатомия научного противостояния. Есть ли "язык" у пчел?" (книгу можно легко найти в свободном доступе).
"Не все могут в ртом" -- имеется ввиду, что нет тренировки осмысленного общения. Часто люди даже не знают, что "а что, так можно было?". В книжке (а ещё лучше в конспекте в этой статье) представлен ряд полезных техник.
Просто когда голова болит, а датчик показывает 500 ppm, такие случаи не запоминаются. Мозг думает, что голова болит от другого и в памяти не фиксируется эта связь ;)
Ясно, что в первом случае автор хотел продемонстрировать работу предсказателя переходов, но в данном случае задача решается ещё проще: надо посчитать количество нечётных и вычесть это число из длины массива. У нечётных установлен последний бит, так что просто суммируем эти биты:
int oddCount = 0;
for (int i = 0; i < array.Length; ++i) oddCount += (array[i] & 1);
return array.Length - oddCount
Наверняка, это ещё и компилятором в SIMD'ы какие-нибудь свернутся.
В данном случае динамическое программирование совершенно избыточно.
Достаточно посчитать количество вхождений букв, затем взять одну из букв с меньшей частотой, она будет центром палиндрома. А теми буквами, количество вхождений которых больше одного, "нарастить" палиндром.
Рассмотрим ваш пример "коловорот". В нём 4 буквы "о" и остальные встречаются по одному разу. Берём одну из них, пусть это будет "к", и окружаем его "о", получится "оокоо".
Или "aabbbbccddd". Тут минимальное вхождение у "a", их две, поэтому они образуют центр "аа". Дальше окружаем слева и справа буквами "b": "bbaabb", затем буквами "c": "cbbaabbc", затем "d" (последнюю, нечётную, выкидываем): "dcbbaabbcd".
Итого два прохода: первый по исходной последовательности, второй — по частотам.
1. На фразе «для большинства задач либо не существует глубинной нейросети,… » мне резко вспомнилась теорема Колмогорова, дающая обратное вашему утверждение.
Теоремы утверждают существование, но не приводят конструктивного способа построить глубинную нейросеть по набору примеров.
Так что всё правильно написано. Пусть и в «популярном», а не строгом математическом смысле.
Что RNN Тьюринг-полны, понятно. А есть конструктивный способ получить нужную RNN-сеть по спецификации?
Автор, наверное, имел ввиду RNN-сети И методы их обучения. Есть ли на сегодняшний день методы обучения RNN-сетей, которые бы позволяли получить сети по спецификциям? Нет. Нужны другие методы.
> которые приведены после этой фразы, можно вообще не читать
Наверное, достаточно подождать N тактов: если программа не выдала результат, то она отбрасывается.
Понятно, что N может как-то зависеть от спецификации. Например, если сети нужно сгенерировать функцию сортировки, то N может быть пропорционально квадрату размера входа.
Модификация с целью соответствия новым данным разве не есть обновление?
> и не меняют полностью
То-то соверменники так тяжело воспринимают это «расширения и дополнения».
Если б было так, то изменения пошли бы проще. А указанные мной теории (+квантмех)
всё-таки привели к парадигмальному сдвигу: пространство-время не статично и взаимодействует с материей (ОТО/СТО), материя это не шарики-атомы, а вообще «непонять что» (квантмех). Как-то это
не похоже на «расширение и дополнение».
> И вдобавок, у вас как-то маловато точек, чтобы говорить про „раз примерно в сто лет“.
Три точки. Если добавить квантовую механику, то и все четыре. ОТО/СТО и квантмех — теории последних ста лет. А сколько, по Вашему, точек надо, чтобы говорить «раз в сто лет меняется представление о Вселенной»?
Так ведь теории раз в примерно 100 лет обновляются (теория гравитации, ОТО/СТО, суперструны), и совершенно меняют представление о Вселенной (бесконечный Ньютонианский мир, сжимающийся ОТО-мир, потом инфлатон, потом «мир как голограмма»)…
Ну и лет так через 50 появится теория-X, по которой выяснится, что и Большой Взрыв, и инфлатрон — очередные заблуждения древности. А будет, ну как там у Пелевина, «Как известно, наша вселенная находится в чайнике некоего Люй ДунБиня, продающего всякую мелочь на базаре в Чаньани». ;)
В Vim для этого есть плагин easymotion. В нём перемещение к тексту состоит из двух-трёх нажатий на клавиши: 's' (перейти в режим поиска), далее символ, к которому нужно переместиться. Эти символы на экране подсвечиваются. После этого надо нажать последнюю клавишу, чтобы переместиться к этому символу. Например, перемещение к первому на экране определению C++-функции: 's{a'. Это быстрее, чем нашарить мышь, спозиционировать курсор и щёлкнуть, вернуть руки на место.
Ох, наконец-то нейросетевая картинка в тему!
Верно. Если нужно 100% требование открыть сообщение в будущем, метод не подходит. Но можно достичь любой вероятности ниже 100%, увеличив сложность. Собственно, именно так в Биткоине и происходит, блоки в среднем раз в 10 минут выпускаются. Биткоин существует более 10 лет, планета так и не была переработана в процессоры, так что "отправить сообщение в будущее на 10 минут с помощью POW" можно назвать вполне робастным, так сказать.
А чтобы не считали на счётах, надо внутрь сообщения $xxxx крипты положить :)
Верно. Если нужно 100% требование открыть сообщение в будущем, метод не подходит. Но можно достичь любой вероятности ниже 100%, увеличив сложность. Собственно, именно так в Биткоине и происходит, блоки в среднем раз в 10 минут выпускаются.
Если предположить, что скорость вычислений хоть как-то предсказуема (даже с учётом закона Мура), то можно, например, подобрать ключ так, чтобы его брутфорс закончился к нужному времени. Ведь тот же Биткоин именно так и работает -- на каждые 10 минут в будущем подбирается новый ключ, который заранее не известен.
Танец пчёл -- это фейк, Карл Фриш выдавал желаемое за действительное. Вот здесь можно почитать подробнее "Веннер, Уэллс: Анатомия научного противостояния. Есть ли "язык" у пчел?" (книгу можно легко найти в свободном доступе).
"Не все могут в ртом" -- имеется ввиду, что нет тренировки осмысленного общения. Часто люди даже не знают, что "а что, так можно было?". В книжке (а ещё лучше в конспекте в этой статье) представлен ряд полезных техник.
Приведите ещё, пожалуйста, статистику -- а сколько нанято программистов?
Т.е. неплохой способ убрать конкурента -- это натравить на его канал ботов?
Просто когда голова болит, а датчик показывает 500 ppm, такие случаи не запоминаются. Мозг думает, что голова болит от другого и в памяти не фиксируется эта связь ;)
Ясно, что в первом случае автор хотел продемонстрировать работу предсказателя переходов, но в данном случае задача решается ещё проще: надо посчитать количество нечётных и вычесть это число из длины массива. У нечётных установлен последний бит, так что просто суммируем эти биты:
Наверняка, это ещё и компилятором в SIMD'ы какие-нибудь свернутся.
Да, точно. "Подпоследовательность — это символы из последовательности с исходным порядком".
В данном случае динамическое программирование совершенно избыточно.
Достаточно посчитать количество вхождений букв, затем взять одну из букв с меньшей частотой, она будет центром палиндрома. А теми буквами, количество вхождений которых больше одного, "нарастить" палиндром.
Рассмотрим ваш пример "коловорот". В нём 4 буквы "о" и остальные встречаются по одному разу. Берём одну из них, пусть это будет "к", и окружаем его "о", получится "оокоо".
Или "aabbbbccddd". Тут минимальное вхождение у "a", их две, поэтому они образуют центр "аа". Дальше окружаем слева и справа буквами "b": "bbaabb", затем буквами "c": "cbbaabbc", затем "d" (последнюю, нечётную, выкидываем): "dcbbaabbcd".
Итого два прохода: первый по исходной последовательности, второй — по частотам.
Теоремы утверждают существование, но не приводят конструктивного способа построить глубинную нейросеть по набору примеров.
Так что всё правильно написано. Пусть и в «популярном», а не строгом математическом смысле.
Автор, наверное, имел ввиду RNN-сети И методы их обучения. Есть ли на сегодняшний день методы обучения RNN-сетей, которые бы позволяли получить сети по спецификциям? Нет. Нужны другие методы.
> которые приведены после этой фразы, можно вообще не читать
Так что продолжаем чтение ;)
Понятно, что N может как-то зависеть от спецификации. Например, если сети нужно сгенерировать функцию сортировки, то N может быть пропорционально квадрату размера входа.
Модификация с целью соответствия новым данным разве не есть обновление?
> и не меняют полностью
То-то соверменники так тяжело воспринимают это «расширения и дополнения».
Если б было так, то изменения пошли бы проще. А указанные мной теории (+квантмех)
всё-таки привели к парадигмальному сдвигу: пространство-время не статично и взаимодействует с материей (ОТО/СТО), материя это не шарики-атомы, а вообще «непонять что» (квантмех). Как-то это
не похоже на «расширение и дополнение».
> И вдобавок, у вас как-то маловато точек, чтобы говорить про „раз примерно в сто лет“.
Три точки. Если добавить квантовую механику, то и все четыре. ОТО/СТО и квантмех — теории последних ста лет. А сколько, по Вашему, точек надо, чтобы говорить «раз в сто лет меняется представление о Вселенной»?
Ну и лет так через 50 появится теория-X, по которой выяснится, что и Большой Взрыв, и инфлатрон — очередные заблуждения древности. А будет, ну как там у Пелевина, «Как известно, наша вселенная находится в чайнике некоего Люй ДунБиня, продающего всякую мелочь на базаре в Чаньани». ;)