Задать вопрос
  • Какой порядок использования криптографических методов и средств для обеспечения секретности, подлинности, цел-ти и неотказуемости от авторства?

    mayton2019
    @mayton2019
    Bigdata Engineer
    для обеспечения секретности, подлинности, цел-ти и неотказуемости от авторства


    1. Секретность обеспечивается симметричным шифрованием (AES, Blowfish, Twofish, GOST-28147-*)
    2. Подлинности, цел-ти и неотказуемости от авторства - тут варианты. Может быть HMAC или Digital Signature. Разница - в тонких нюансах. Может быть неотказуемость - это не свойство "шмяка". Зато шмяк работает быстро и им удобно подписывать мессенджинговые системы и REST. Accимметричка (цифровые сигнатуры) - более дорогая в ресурсах. DS бывают классические - RSA (Ривеста-Шамира-Адельмана) и новые эллиптические (EDSA). У них - сотни версий с разной длиной ключей и прочее. Для правильной работы ЭЦП и сертификатов к сожалению нужен некий довериельный орган который будет централизовано подписывать и раздавать сертификаты.

    Очень часто все средства работают в одном приложении (твой браузер в данный момент использует и проверку подлинности сертификата сайта и траф шифруется симметрично).

    UPD: поправил опечатку. Ассиметричка.
    Ответ написан
    Комментировать
  • Как лучше хранить много свойств в бд?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если это просто сет документов - то и надо брать документно-ориентированные БД.
    MongoDb например или CouchDb.
    Ответ написан
  • Почему нельзя использовать разные версии движка при разработке игры?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ничего непонятно кроме того что был бардак в механизмах CI/CD.
    Найдите нормального девопса. Он вам настроит механизмы единого билда.

    Что-то там у кого-то не тянул комп? Детский сад какой-то. Купите ему больше комп.
    А то получается что токарь пришел на завод со своим токарным станком. Бред...
    Ответ написан
    Комментировать
  • Влияет ли тип ключа на скорость поиска по таблице?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да влияет потому что физический размер индекса будет больше и на 1 PAGE влезает меньше ключей такой длины. GUID индекс будет требовать больше IOPS на поиск ключа т.к. быстрее заполнится 1 и 2 уровни дерева. В то время как у 1-2-3 индекса будет еще запас по росту.
    Ответ написан
    Комментировать
  • Большая БД, лучше разместить данные в другой базе или таблице?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тут - невозможно ответить лучше или хуже. Если в базе нет проблем от ее
    размера - то пускай себе исторические данные лежит в основной базе.

    Если трудно делать backup - то можно поместить в другую БД. Но тогда нужно придумать
    новое техническое задание на поиск в друх базах сразу.

    Если просто медленно работает поиск - то можно сделать partitioning по периодам (годы, кварталы или месяцы)
    и попросить программистов сделать настройку запросов с учотом partitioning.
    Ответ написан
    Комментировать
  • Как найти окружности на изображении opencv python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если синий космический корабль всегда лежит в центре большой окружности - то я-бы искал его. Его паттерн - проще. А большой круг такой слабый что преобразование хафа наверное его видит как рандомный шум. Надо как-то усилить контраст или threashold чтобы она проявилась.
    Ответ написан
    Комментировать
  • Как получить список всех классов во время выполнения?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Как-то мне надо-было посмотреть какие зависимости использует реал-тайм одного бизнес-процесса.

    Я запускал логгирование действий класслоадера. И потом анализировал лог.

    $ java -verbose:class -jar application-1.0.jar
    Ответ написан
    5 комментариев
  • Сколько нейронов и связей у нейросети Stable Diffusion или ChatGPT?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это скорее всего неправильно поставленный вопрос. У него такой-же полезный смысл как например спросить сколько молекул вещества в автомобиле. Вы сможете почерпнуть какую-то пользу из этого? Я - нет. Мы ничегошеньки не узнаем о свойствах автомобиля и его устройстве.

    Более ценно узнать архитектуру GPT. Памятуя а том что классические НС работают с вещественными числами (ага!) то нам нужно нечто, что работает с natural languages. Без этого input невозможен.
    Ответ написан
  • Как находить исходное однокоренное слово без суффикса?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Насчет корней не знаю. Есть алгоритм Snowball https://snowballstem.org/demo.html#Russian
    Он делает примерно то что нужно. Например сводит облако-облак. Сводит разные слова к основе.
    А то что не смог свести ты можешь попробовать сам дописать в справочник или добавить свои суффиксы.

    И у него есть несколько готовых реализаций на C#/Java. Я думаю что кто-то уже делал реализацию для PHP.
    Ответ написан
  • Как получить из pdf файла информацию о character spacing и word spacing?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Судя по описанию Pymupdf (Python) использует MuPdf (C) https://mupdf.com/ следовательно все ответы на вопросы надо искать там.

    Сам вопрос звучит странно
    character spacing и word spacing

    автор хочет узнать из PDF документа есть ли информация о межбуквенном расстоянии прочее.

    Это расстояние может быть не свойством документа а неким дефолтным свойством шрифта например.
    Ответ написан
  • Как сократить данный код?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тут нужна одна функция. На вход получает месседж-текст. И объекты markup и bot.
    Вот и все. Остально зарефакторится и схлопнется.
    Ответ написан
    Комментировать
  • Где ошибка в коде переворота двумерного массива?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ну и хомутов ты тут повесил. Проверь что она переворачивается два раза.
    Ответ написан
    3 комментария
  • Можно ли изучать математику через языки программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Думаю можно. Я изучал алгебру векторов и матриц только из-за того что она используется в компьютерной графике. Тоесть изначально мотиватором было просто понять как вращать полигон вокруг какой-то точки. Я тогда писал на Borland C++ какой-то свой редактор. Ненаписал. Но суть не в том. А в том что программирование - это наука практическая. Она идет от задач.

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

    Так было в криптографии например. Все долго не верили что тройной DES небезопасен до тех пор пока не была проведена демонстрация его уязвимости на конкретном железе и софте.

    Берите Python и опровергайте. Только это - не вся математика.

    Вся - гораздо шире. И интереснее для мозга.
    Ответ написан
  • Какую граф библиотеку python можно использовать, чтобы смоделировать устройство, как на картинкe?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Любой векторный редактор подходит. Можно нарисовать этот чертеж. Потом сохранить в какой-нить формат, максимально переносимый между средами, платформами. SVG например. Ну и дальше искать поддержку SVG в своем уютненьком Питоне или Шарпе.
    Ответ написан
  • Как делать страшное лицо как в этом видео https://www.youtube.com/watch?v=c_LNJToB74Q а еще мне интересно как сделать такой голос?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Голос проще всего сделать. Кажется этот эффект называется pitch или pitcher. Звуковушки раньше типа CreativeLabs комплектовались софтом всегда. Ну если нет то можно поискать всякие Nuendo с плагинами. Могут стоить денег. Вообще весь качественный звуковой софт стоит денег.

    По поводу лица - ХЗ. Наверное тут еще поболее денег надо заплатить. Пока таких приложух в бесплатном доступе я не видел.
    Ответ написан
    1 комментарий
  • Какая из книг лучшая для изучения java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    подскажите одну книгу,которую буду читать и не жалеть о том что теряю время в пустую

    Просьба очень странная. Даже невозможно нормального ответить.
    Авторов обычно трое. Шилдт. Эккель. И Хорстман. Все пишут про Java. Примерно
    одно и тоже. Но поскольку ты очень занятой и тебе времени не хватает - то я тебе
    не советую читать ничего. Работай и задавай вопросы здесь. Когда появится желание
    читать - выбери жестко одну тему. Например рефлексия. И читай только про нее.
    Вот так.
    Ответ написан
    1 комментарий
  • Как реализовать удалённую БД с подключением через C#?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Держать удалённую БД имеет смысл только если ей пользуется много людей одновременно. Если для себя - ну поставь SQLite или Express на ноутбук и живи себе припевающи.

    Раз в недельку делай backup на свой удаленный диск чтоб не потерять.
    Ответ написан
    Комментировать
  • Теория графов и нейронные сети в распознавании объектов - в чем преимущество графов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я попробую рассказать своё видение проблемы. Я не уверен что я прав но напишу как мне кажется.

    Есть две модели представления нейронных сетей.

    1) Матрицы (иногда называют тензоры). Имеют аппаратную реализацию в новых TPU (Tensor processor unit). Кажется Гугл сейчас продает услугу аренды таких сетей для задач обучения. Подходят для плотного заполнения нейронных слоём когда нейроны связаны каждый-с-каждым. При этом даже если связи нет (коэффициентик равен 0.0) тем не менее пространство все равно используется и этот ноль участвует в расчете.
    Расчет обучения (как я его себе понимаю) должен сводится к перемножению входного векртора на всю полседовательность матриц. И также к применению функции активации между слоями. Имеено за счет функции активации и идет обучение (там есть своя доказательная база) и идет декомпозиция на слои. Если бы функции не было - тогда можно было-бы все слои (константы) схлопнуть в 1 большую матрицу. Вот так и бегает умножение туда-сюда. Обучение - проверка ошибок. Коррекция. И снова обучение.

    2) Графы. Это вырожденный вариант матриц когда нулей оооочень много то чтоб зря не меремножать нули можно модель вычислений представить в виде графов. Математически это дает экономию в виде пропуска ненужных вычислений. И должна быть экономия в виде памяти для коэффициентов каждого слоя. На практике представить граф компактно очень сложно. Если кто из вас делал свои графы - то вы знаете что жрут они память как в не в себя, и никогда не угадаешь сколько надо выделить под вершину или под ребро чтоб не было пере-аллокаций и потерь.

    Если вы хоть раз открывали учебники по НС типа Каллана или Хайкина то там с первых страниц идет описание
    персептрона или 1-слойного нейрона в виде рисунка со стрелочками. Это и есть граф. Таки рисунки любят преподаватели в универах и всякие теоретики.

    В старых математических пакетах (еще в 80х годах) есть целые мат-библиотеки которые работают с разреженными матрицами (sparsed matrices). Это - тоже наивные попытки создать экономию. Такая дырявая матрица как раз отражает граф где вершины - это столбцы и строки а рёбра - это ненулевые коэффициенты.
    Реализаций их - целая куча. Математики любят решать системы дифуров в таких структурах. Там своя специфика. Тоже есть много нулей. Тоесть между графом и дырявой матрицей есть полиморфизм.

    Есть поддержка таких дырявых структур (Vector.sparse) и в биг-дате (Spark). Тоже для нужд ML.

    Тоесть если ваш нейрончик дырявый - то он полюбит графы и дырявые матрицы. Если он - плотняк
    заполнен коэффициентами - то берите обычные матрицы.

    Все что я написал это просто моё чортово ИМХО. И не стоит это воспринимать за правду.
    Ответ написан
    2 комментария
  • Как считывать текст с .dat файла и выводить в консоль? Как это можно провернуть?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Посмотри в этот dat-файл через любой hex редактор. Шапка должна быть похожа на это.

    00000000  53 51 4c 69 74 65 20 66  6f 72 6d 61 74 20 33 00  |SQLite format 3.|
    00000010  10 00 01 01 00 40 20 20  00 00 00 01 00 00 02 3d  |.....@  .......=|
    00000020  00 00 00 00 00 00 00 00  00 00 00 01 00 00 00 04  |................|


    Если да - то делай
    $ sqlite3 file.dat
    Потом можно посмотреть список таблиц и делать запросы
    sqlite> .tables
    employees
    Ответ написан
    Комментировать