и они начинали сильно страдать от тысячи или 10 тысяч записей.
Я в это не верю. Обычно key-value dbms стоят на "острие атаки" перформанса. Ситуацию
с 10 тыс записей надо расследовать и понять что было причиной.
Исключение может быть в том случае когда вы их неправильно используете. Например
пытаетесь делать joins, aggregations. Уж для этого они точно не создавались. Key-Value
- это очень короткие и точечные транзакции.
Я чувсвтую себя очень странно, объясняя такие вещи.
Как будто ты - школьник а я учитель информатики.
Мне это не очень интересно. Идею я закинул.
Дальше думай сам.
Архивы - утечка. Цель - сбор каких то сведений. Скорее всего для маркетинга. И если
пользователь там не персонализирован то я-бы не стал беспокоиться. Кстати
доказывать достоверность самих данных - тоже сложно. Они могут быть синтетическими.
Как бредогенераторы.
Во первых технлогии PE (Portable Executable) это очень старый стандарт. И он был еще раньше чем
до платформы .Net, Для чего в современном .Net приложении понадобилось лазить в какие-то PE
секции и еще и каким-то инструментом? Непонятно.
Вобщем автор ты ходи к тому человеку который тебе это придумал и задай больше вопросов.
И я думаю что хабр тебе посоветует более простой путь. Потому что в таком виде ТЗ никто не дает.
Это - издевательство и невозможно придумать никаких критериев приемки.
Хм... плохо что они такой выбрали градиент. Непонятно можно ли по уровню яркости брать.
Вобщем желтому цвету пиксела соотвествует логический максимум. Допустим это 1.0
А темно синему - минимум. 0.0. Между ними - интерполяция. Придумай сам как ее сделать.
Получится примерно такой pipeline. Попробуем без нейросетей просто на операциях с векторами.
1) Берем картинки и преобразуем их в матрицы чисел.
2) Тоже самое с паттернами.
3) Нормируем все таким образом чтобы по ширине спектра они были одинаковые. Допустим
семпл собаки был снят с частотой 22050 Гц а оригинал записи 44100 - делаем прореживание
частоты так чтобы было ровно.
4) Ищем вхождение семпла в оригинал. Критерий - максимум скалярного произведения двух
матриц. Где одна из них - семпл. А вторая - под-матрица такой же размерности. И эту под-матрицу
надо будет двигать по всему временному интервалу где была запись.
Если будешь рисовать график скалярного произведения - в момент максимальной близости
семпла и реального лая собаки - там будет скачок графика вверх и будет заметен локальный максимум.
Вот эта точка и будет "Гавк".
Вот такой грубый и примитивный алгоритм и возможно он медленно работает но он простой
и в этом его преимущество.
В более сложном варианте можно добавить пороговый фильтр шумов и варпинг звуков с целью
сохранить их профиль но сократить длительность. Варпинг я никогда не делал. Но делал мой друг
на фактультете распознавания звуковых образов. У него дипломная была и он мне рассказал.
Еще у него была сильная квантизация. Он почти полностью ушел от вещественных чисел и
его алгоритм работал просто на булевых матрицах. А определял он команды управления
мобильным роботом. Ну... такие как "Стоп Вперед-назад", и эти голосовые семплы было удобно
делать в таком дискретном виде.