Задать вопрос
  • Как находить исходное однокоренное слово без суффикса?

    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
    Ответ написан
    Комментировать
  • Как должна выглядеть UML диаграмма компонентов для функционального подхода?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Во первых. Функциональное программирование не запрещает дата-объекты. Вот к примеру если у вас есть таблица Employee из стандартного учебного набора Oracle то она может быть отражена таким образом в Haskell:

    data Employee = Employee {
     empno :: Integer,
     ename :: [Char],
     job :: [Char],
     mgr :: Maybe[Integer],
     hiredate :: Day,
     sal :: Integer,
     comm :: Maybe[Integer],
     deptno :: Integer
    }


    В том что Haskell это достаточно строгий язык который лежит в категории ФП я надеюсь никто не сомневается.

    А в мультипарадигменных языках типа Scala с объектами
    вообще нет проблем. Берите - делайте объекты сколько надо.

    Во вторых, UML проектирование - это такой-себе уровень абстракций, который удобно
    обсуждать с бизнесом и показывать на слайдах. Но он вовсе не обязан следовать буква-в-букву коду.
    Архитектура - это вообще не про код. Это про намерения, про взаимодействие, про стандарты и смыслы.

    Методы UML объектов вы можете сделать функциями. Я не вижу в этом чего-то нерешаемого.
    Рассматривайте метод как функцию где первый аргумент - это сам объект. Это такой легкий
    троллинг ООП. Типа ООП - это функции где первый аргумент == this.
    Ответ написан
    Комментировать
  • Это Объектно-Ориентированный код?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Да это ООП код.
    Ответ написан
    Комментировать
  • Как остановить контейнер Docker и записать его state при внешнем вторжении?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У тебя какое-то противоречие в задании. Сначала нам сообщается что есть "некая логика"
    которая прогнозирует вторжение.

    И тут-же ты спрашиваешь что пойти и куда посмотреть. Ну во первых твоя логика уже знает о триггерах безопасности.
    А во вторых нужно просто логгировать сетевые события. В идеале - писать трафик. Если это веб-сервер
    - то писать тело request-responce. И логи потом уже смотреть после смерти. Post-mortem.
    Ответ написан
  • Можно ли сделать дамп MySQL БД из консоли Linux, исключив из него определенные поля определенных таблиц?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Скорее всего такого готового функционала нет. Но любой думающий девопс или dba сможет
    сделать семейство скриптов которые делают полный экспорт во временную базу и потом
    в этой временной БД делают drop column ... или лучше update set = null. И еще раз полный
    экспорт в файлы.

    Эти скрипты вобщем делаются быстрее чем мы здесь сидим и обсуждаем. Поэтому
    не ждите. Начинайте делать.

    UPD:
    Ответ написан
    2 комментария
  • Почему все прекращают поддержку 32-битных систем?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Во первых - никто не прекращает. Есть огромный сегмент микропроцессоров малого энергопотребления которые так и останутся 32х битными. Микроконтроллеры и прочее. И операционки и прошивки и код вообще для них как писался так и пишется. И я думаю что такой класс оборудования будет существовать всегда. Нет смысла его каким-то образом хоронить.

    По поводу адресации 64х бит. Насколько я помню адресные линии современных процессоров материнских плат так и не достигли этого размера. Что такое вообще - полный объем памяти с 64х битами - это больше чем во всех датацентрах вместе взятых. Посчитайте сами. Простая арифметика. Каждый бит - удваивает количество железа на борту. Сколько щас Intel Core способен адресовать? Я не помню. Пускай знающие подскажут.

    Тоесть когда мы говорим 64 бит - то надо уточнять какие на самом деле биты имееются в виду. Доступная память для процесса? Ну да. Может быть.

    IBM в 20м веке выпускала железки с 128 битной адресацией но там смысл указателя был немного более сложный. Что-то вроде бесконечной виртуальной ленточной памяти.

    А 64х разрядные регистры были еще у первых Pentium MMX в 90х. Но это не имело отношения к адресации памяти.
    Ответ написан
    Комментировать
  • Как сделать из своего компьютера прокси-сервер (на Windows)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне надо шоб всё по-настоящему

    Поставь себе Linux. Потому что конфиги под Windows - это разочарование. Как с резиновой бабой.
    Вроде и было. Но в то-же время ощущения не те.
    Ответ написан
    1 комментарий
  • Когда в hashtable нужно хранить и ключ и значение?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Но если у нас вдруг совпадут хэши то возникнет коллизия, и тогда у нас есть 2 метода её обхода, 1 - открытая адресация 2 - связанный список.


    Да. В связном списке всегда хранятся и ключи и значения. В противном случае вы не докажете что нашли верно.

    UPD: Обновление. Поскольку я был неверно понят комментаторами - я обновляю цитату. Мой комментарий относится ко второму алгоритму. А точнее к структуре данных. В данном случае к связному списку который реализован в 99% хеш-таблиц в Java/DotNet.
    Ответ написан
    8 комментариев
  • Можно ли сжать файлы игры оставив игру работспособной?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В 2000-е на прилавках рынков мне как-то попался в руки CD диск (700Мб) где пираты вкатали аж 4 игры
    (кажется был Quake Ground Zero, KingPin, Blood ,,, и еще какаято).
    Веселое время было. И студии были такие как "Фаргус" и 1С и прочее. Переозвучкой игр занимались.
    Позже другие странные личности (паблишеры) делали такие вот релизы. Но интересно другое.
    В оригинале каждая игра занимала по сидюку. Вопрос- Как? Ответ простой - сжали аудио.
    Тогда игра занимала 100-150 Мб. А остальное - аудиотрек. Вот они взяли аудио (wav обычно или чистый трек)
    сжали в mp3. А при инсталляции - тупо запукалась утилита наподобие bladeencoder и прямо распаковывала
    музло на диск. Прям в логах было видно чем она занята. Вот такой трюк.

    С игрой в 13Гигов надо просто понять из чего эти гигабайты складываются. Если cinematics или музло - то
    иногда его можно удалить и игра себе идет нормально. А иногда и падает с ошибкой. В общем успех зависит
    на 99% как разработчик защитил игру. Бесплатные и indy-games обычно никак не защищаются. А дорогие
    имеют по 5 степеней защит.
    Ответ написан
    3 комментария
  • Какой жесткий диск выбрать для бэкапов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Два диска это хорошо. Пиши на них по очереди. Четные бекапы - на один. Нечетные на другой.

    Данные нужно разделить на классы надежности хранения. Например видеофайл спокойно переживает
    повреждение 1 битика внутри внутри видеопотока. На воспроизведении будет небольшой артифакт для одного кадра либо вообще ты ничего не заметишь. Тоесть видеопоток - восстанавливается.

    Хуже с архивами бинарей. Многие форматы (наподобие zip, gzip) полностью повреждаются начиная со сбойного
    участка. Тоесть могут оказаться полностью негодные. Я обычно такие файлы (бэкапы данных) оборачиваю кодами
    восстановления. Для linux это утилита par2 а для Windows - я не знаю. Надо искать. Но возможно какая-то комбинация ключей в WinRAR даст такой-же эффект надо поискать. Что на Маке я тоже невкурсе.
    Ответ написан