Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Barlone, да, длину каждого заменяемого куска нужно будет вписывать в результирующий файл. Что несколько снизит степень сжатия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 13:13 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Ну вы хоть какие-то оценки пробовали делать? Вот какая вероятность найти хотя бы одну совпадающую последовательность битов длины M в двух последовательностях длины N, одна из которых случайная? Приблизительно (N-M)/(2^M). Не сожмется у вас ничего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 13:30 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Да, с первой попытки вряд ли сожмётся. Потому в заголовок и вынесено слово "ресурсоёмкий". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 13:41 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Формула, которую вы написали -- это не "хотя бы одну совпадающую последовательность", а "КОНКРЕТНУЮ совпадающую последовательность (хотя бы один раз)". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 13:43 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXS1. Находим битовую последовательность минимальной длины M, которая ни разу не встречается в Д. Назовём её "флаг" (Ф). 2. В цикле перебираем значения seed (s), используемые для инициации ГПСЧ: ГПСЧ(s). 3. Посредством ГПСЧ(s) генерируем случайную последовательность (СП) той же длины N. 4. Сравниваем побитово Д и СП. Все совпадающие - в Д и СП - последовательности битов, длиной больше М заменяем (в Д !) на флаг Ф. При этом следим, чтобы "на стыках" вставляемого флага и соседних исходных битов Д не возникали "паразитные флаги". ... Я вот что подумал - текст, как один из видов сжимаемых данных, не очень хорошо подходит для такого сжатия: 1. ГПСЧ старается генерить последовательность разных чисел, т.е. повторы достаточно редки. А у нас идут повторы букв и слогов. 2. ГПСЧ выдает значения из всего заданного диапазона, а в тексте используется только часть. ИМХО таким алгоритмом лучше всего будет белый шум сжиматься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 13:46 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 13:51 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
BarloneНу вы хоть какие-то оценки пробовали делать? Вот какая вероятность найти хотя бы одну совпадающую последовательность битов длины M в двух последовательностях длины N, одна из которых случайная? Приблизительно (N-M)/(2^M). Не сожмется у вас ничего. +1 Немного по-другому рассуждаю: ГСПЧ должен генерить последовательность всех возможных вариантов комбинаций по M байт или M*8 бит, Т.е. всего 2^(M*8). Таким образом для инициализации ГСПЧ потребуется значение размером M*8 бит. Плюс надо указывать размер сколько байт прочитать. В итоге имеем "архив" размером больше оригинала. Я понимаю что могут попасться последовательности длиннее М, но это редкий случай и им можно пренебречь. Поэтому считаю что "архив" почти всегда будет размером больше оригинала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 14:08 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima T, не могу понять, что вы написали. Зачем вообще скакать -- в рассуждении и изложении - с битов на байты и обратно? "ГПСЧ должен генерить" ... (псевдо-)случайную последовательность битов указанной длины. Всё, больше ничего от него не требуется. (Да, seed нужно будет тоже записать в создаваемый архив, я знаю.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 14:23 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSDima T, не могу понять, что вы написали. Зачем вообще скакать -- в рассуждении и изложении - с битов на байты и обратно? Незачем, полет мысли так шел, но сути это не меняет :) Иван FXS"ГПСЧ должен генерить" ... (псевдо-)случайную последовательность битов указанной длины. Всё, больше ничего от него не требуется. Я к тому что для инициализации ГПСЧ, который может выдать нужную последовательность в M-бит, потребуется не менее M-бит. Это в лучшем случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 14:42 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Еще раз, кратко, в битах: Нам надо M бит найти. Чтобы точно нашлось последовательность должна содержать 2^M комбинаций, т.е. все комбинации из M бит. Следовательно чтобы сохранить адрес нужной комбинации в последовательности (или инициализировать ГПСЧ) нам потребуется минимум М бит. Вывод: ничего не сожмется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 14:52 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima T, вы утверждаете, что предложенный метод не позволит ни разу сжать входную строку ни на один одинёшенек битик, пока мы не переберём всё(!) множество битовых строк длины М? Я готов принять это утверждение как гипотезу, но доказательства его пока не вижу ... (При том, что предложенный метод сжатия тоже не доказан, то есть гипотетичен ...) Давайте начнём с того, что среди "всего множества битовых строк длины М" присутствует просто сама строка Д, и на каком шаге она нам попадётся -- непредсказуемо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 14:53 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima T, а, сорри, я тут точно запутался в обозначениях длин (N и М) ... но и вы, кажется, тоже: что значит, например, ваше Dima TНам надо M бит найти? Мы сравниваем две строки и, если находим локальное совпадение, то у него есть длина (которую я обозначил М). У строк "11111111111111111111111111111111" и "00011111000000000000000000000000" - есть совдадение с М=5 начиная с 4-й позиции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:01 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
(ой, что-то я совсем забыл исходные обозначения ... далеко уже уехал.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:03 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSДа, с первой попытки вряд ли сожмётся. Потому в заголовок и вынесено слово "ресурсоёмкий".Ну да. Если под "ресурсоемкий" понимать "за триллион лет что-нибудь найдем", тогда конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:12 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
То, что я написал сегодня*, проистекает из этой (описанной в этом топике) задачки следующим образом. 1. Нам нужно сжать строку S (длины N). 2. Мы берём псевдослучайную строку Z (той же длины N) и проверяем, не поможет ли она нам сделать это (п.1). 3. В этом топике я описал конкретный способ такого сжатия. 4. А сегодня (в *) я говорю: давайте просто перекодируем строку S через строку Z в строку R. И попробуем сжать полученную строку R каким угодно архиватором. 5. Если получилось -- бинго! Если нет -- возвращаемся в п. 2. _____________________ * http://www.sql.ru/forum/1282108/ob-odnom-paradokse-informacionnoy-entropii ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:16 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSDima T, а, сорри, я тут точно запутался в обозначениях длин (N и М) ... но и вы, кажется, тоже: Есть такое, но я тебя понимаю :) Иван FXSчто значит, например, ваше Dima TНам надо M бит найти? Мы сравниваем две строки и, если находим локальное совпадение, то у него есть длина (которую я обозначил М). У строк "11111111111111111111111111111111" и "00011111000000000000000000000000" - есть совдадение с М=5 начиная с 4-й позиции. Ты рассматриваешь редкий частный случай, когда есть совпадение. Я рассматриваю вариант что в последовательности есть все комбинации для М=5. Т.к. если они не все, то запись будет еще неэффективнее, т.к. придется использовать более короткие подстроки. Давай чуть упростим задачу: есть строка М бит и какая-то последовательность. Без разницы откуда она берется (ГПСЧ, массив и т.д.). Чтобы случайная строка размером М гарантированно присутствовала в последовательности, необходимо последовательность размером 2^М строк, т.к. всего возможно 2^М комбинаций по М бит. Следовательно наша последовательность должна содержать все возможные комбинации. Для указания нужной комбинации надо переменную размером М бит. Или другими словами: чтобы идентифицировать нужную комбинацию из М бит надо хранить М бит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:24 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
А то что ты думаешь что в последовательности найдется чудесное место где за искомой строкой в М бит будет стоять строка, которую ты будешь искать на следующем шаге, то тут ты сильно заблуждаешься, т.к. вероятность такого события почти нулевая. Вывод: хоть сколько переборов делай, но в итоге "архив" будет больше исходного файла. За исключением некоторых частных случаев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:34 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima TДавай чуть упростим задачу это мне кажется, или вы в самом деле (пока) обсуждаете только один (служебный) пункт -- выбор "флага" (для конкретной входной строки)? Просто я перечитал (наконец) свои собственные обозначения в задаче. М - это длина флага. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:45 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
BarloneИван FXSДа, с первой попытки вряд ли сожмётся. Потому в заголовок и вынесено слово "ресурсоёмкий".Ну да. Если под "ресурсоемкий" понимать "за триллион лет что-нибудь найдем", тогда конечно."триллион", маловато, имхо. всего-то 10 в степени 12 нулей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 15:49 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSDima TДавай чуть упростим задачу это мне кажется, или вы в самом деле (пока) обсуждаете только один (служебный) пункт -- выбор "флага" (для конкретной входной строки)? Просто я перечитал (наконец) свои собственные обозначения в задаче. М - это длина флага. Это только кажется. У тебя же на каждой итерации какая-то одна конкретная строка (или флаг) конкретной длины М бит. По моим рассуждениям на каждой итерации будет записано не менее М бит. И не влияет что на разных итерациях у М разные значения. Алгоритм не рабочий. Не будет он жать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:02 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima Tна каждой итерации какая-то одна конкретная ... флаг)нет, флаг выбирается один раз -- для исходной строки. Если она: "101010111001110101011111100111001111111111", то флаг "000" и точка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:09 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Иван FXSDima Tна каждой итерации какая-то одна конкретная ... флаг)нет, флаг выбирается один раз -- для исходной строки. Если она: "101010111001110101011111100111001111111111", то флаг "000" и точка. Я не совсем понял суть флага. Он для чего? Объясняю как понял: есть ГПСЧ и данные, т.е. то что сжимаем. В результате данные надо привести к такому виду: Код: plaintext где seed i инициализация ГПСЧ len i сколько бит прочитать из ГПСЧ В итоге ищем результат, имеющий наименьшую длину. Правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:20 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Понял про флаг. Ты немного другим путем пошел. Имеем Данные. Придумываем флаг чтобы не было внутри данных. Подбираем: подстроку данных (М бит) и seed, так чтобы ГПСЧ(seed) выдавал эти М бит. Заменяем подстроку на {флаг, seed, М} в том случае если они меньше M, т.е. получаем пожатые Данные. Правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:31 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
нет. Если исходная строка - Код: plaintext Если случайная строка, внезапно, получилась Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:34 |
|
||
|
Об одном способе ресурсоёмкого сжатия данных
|
|||
|---|---|---|---|
|
#18+
Dima TЗаменяем подстроку на {флаг, seed, М} в том случае если они меньше M, т.е. получаем пожатые Данные. Если так, то не найдется таких комбинаций, т.к. для хранения seed потребуется места столько же сколько занимает исходная подстрока, это я выше доказал. За исключением редких частных случаев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2018, 16:38 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39581697&tid=1340187]: |
0ms |
get settings: |
15ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
180ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 276ms |
| total: | 564ms |

| 0 / 0 |
