• Расстановка элементов на плате. Как реализовать с помощью генетических алгоритмов?

    @imageman
    Генетическим алгоритмом примерно так:
    Сначала Разрабатываем способ кодировки. Например [Номер элемента, координаты, расположение].

    Запускаем алгоритм, и он выдает кучку чисел "генетического кода", который мы превращаем в фетотип: на пустую плату последовательно помещяем все [Номер элемента, координаты, расположение].

    Пытаемся соединить в нужном порядке все элементы.

    После этого считаем коллизии: пересечения элементов (не хватило места), недопустимые пересечения связей и т.п. баги. В качестве ответа для ГА выдается число коллизий данного генома. Алгоритм пытается найти такую последовательность, что бы коллизий были меньше (разные коллизии могут иметь разные веса).

    P.S. никто не запрещает анализировать геном на выявление явных багов (к примеру один и тот же элемент 5 раз или координаты за пределами платы и т.п.) и исправление (под "исправлением" понимается любое действие, которое пытается улучшить ситуацию, чаще всего рандомное). Чем больше таких эвристик будет, тем (потенциально) быстрее будет сходится алгоритм.
    Ответ написан
    Комментировать
  • Можно ли закодировать string что бы уменьшить его вес?

    @imageman
    https://facebook.github.io/zstd/ - Zstandard is a real-time compression algorithm

    Есть реализации для разных языков (вижу Javascript (emscripten) Yoshihito + node.js)

    В этом алгоритме есть специальный режим (с предварительным составлением словаря), который хорошо сжимает короткие однотипные строки.
    Ответ написан
    Комментировать
  • Возможно ли применение принципов голографии в распределенном хранении данных?

    @imageman
    Все основные видеокодеки для сжатия используют следующие принципы:
    1. По предыдущим (иногда и по следующим) кадрам пытаемся предсказать, какой будет текущий кадр.
    2. Смотрим, какие данные можно выкинуть, что бы визуально картинка не испортилась.
    3. Сжимаем обычными методами.

    Как правило в пределах одной сцены (2-6 сек) данные неделимы.

    Потенциально мы можем перепрыгивать к разным сценам, но в пределах сцены либо всё, либо ничего. Если есть начало и конец сцены и пропущена середина, то на экран выведется только начало, дальше будет каша.

    Поэтому в рамках текущих кодеков (h264, h265 и др.) шардирование не получается. Потенциально, да, придумать кодек можно. Только степень сжатия будет ужасная (битрейт будет запредельный).

    Опять-таки есть другое решение: многие хостинги хранят несколько версий видео - от совсем маленьких файлов, до полного качества. Есть плееры, которые автоматом подхватывают нужный файл (https://ru.wikipedia.org/wiki/HLS).
    Ответ написан
    Комментировать
  • Как увеличить выборку для обработки нейронной сетью?

    @imageman
    Ну, во-первых, все-таки можно попробовать учить и на всём массиве доступных данных (пусть и перекошенном в сторону Б). Если хотите, можете тупо размножить класс А.

    Второе - посмотрите в сторону других классификаторов. Например дерево (или лес) решений.

    Если задача уже решена, то можете рассказать как решили?
    Ответ написан
    Комментировать
  • Как лучше изменить нейронную сеть?

    @imageman
    > 437 бинарных признаков. Есть обучающая выборка на ~400 случаев.

    Это означает, что нейросеть у вас будет переобучена. Для любого машинного обучения число строк обучения должно быть намного больше числа колонок. Если будете сокращать число колонок, это (по моему) в данном случае ничего кардинально не изменит.

    В нейросети лучше минимум один скрытый слой, если есть возможность то увеличивайте число скрытых слоев. Пробуйте различные конфигурации слоев ("бочка", "рюмка", "прямоугольник"). Выходной слой можно пробовать дискретное число (номер класса), а можно пробовать в выходном слое число выходов = числу классов (все нули, кроме одной единицы напротив нужного класса).
    Ответ написан
    1 комментарий
  • Сталкивался ли кто-нибудь с пропаданием иконок в трее при перезагрузке в Windows 7?

    @imageman
    Не встречался.

    Попробуй в настройках Винды отключить все красивости. Пробуй отключить все лишние программы, особенно которые внедряют Dll (типа punto switcher).
    Ответ написан
    Комментировать