Ответы пользователя по тегу Python
  • Алгоритм для кластеризации документов из нескольких частей?

    fastText
    ... Facebook объявила об открытии исходных текстов библиотеки fastText, предоставляющей средства для классификации текста с использованием методов машинного обучения
    (заметим: классификации, а не кластеризации)
    Классификация - это кода классы заранее известны и к ним нужно отнести все классифицируемые элементы.
    Каждый документ содержит взаимосвязанные по смыслу данные.

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

    Сперва нужно произвести нормализацию и фильтрацию данных. А текст - это сырые данные, негодные для машинного обучения, ибо машина - не человек, которые понимает значения слов (опять же, обычно не более 2-х разных языков).
    Ответ написан
  • Проблема "тормознутости" Ruby реальна в наше время?

    Скажем, логику игрового сервера можно реализовать в виде микро-сервисов на более легковесных фреймворках нежели Rails: Sinatra, Hanami и т.д. Самый простой вариант - использование JSON в качестве формата для входных/выходных данных.
    Или же при помощи MessagePack (есть gem) можно обмениваться с различными микро-сервисами, которые могут быть реализованы на других языках.

    В случае использования MessagePack (или аналогов) и микросервисов всегда можно впоследствии перейти на решения на других языках, если потребуется из-за узких мест в производительности.
    Ответ написан
    Комментировать
  • Как с помощью Wand-ImageMagick проверить, сплошное белое изображение или нет?

    Белый цвет выражается в RGB hex как FFFFFF. Остаётся лишь в цикле проверить нет ли хоть одного не белого цвета.
    Ответ написан
    Комментировать
  • Как распарсить большое количество логов?

    Если вопрос по коду, то в дополнение к neol могу добавить ещё
    d[Name] = Time почему-то присутствует в обеих ветвях if, else что неоптимально.

    Если вопрос по выбору подходящего инструмента, то альтернативой собственному скрипту можно также попробовать тот же Apache Spark.
    Ответ написан
    Комментировать
  • На чем писать back-end, в котором много математики?

    Предметную область по цифровой обработке сигналов лучше писать на высокопроизводительных языках, собирая в библиотеки. Затем из любого веб-фреймворка, скажем на Python, можно работать с библиотечными вызовами.
    В целом, для back-end подходят Fortran/Go/Java. На Fortran пишут, в основном, бородатые дядечки. А Go/Java - для нынешнего поколения.
    В качестве эксперимента могу предложить ещё язык Julia, который согласно разработчикам имеет скорость близкую к C. Причём этот язык под капотом использует вызовы к математическим библиотекам: FFTW, LAPACK, OpenBLAS, GMP и т.д.
    Ответ написан
    Комментировать
  • Как обрезать предмет в изображении, избавившись от белого фона?

    В случае простой замены цвета так ли сложно пройтись по матрице изображения с подобной проверкой:
    if (rgba(i,j) == rgba_color(255,255,255,1) {
      rgba(i,j) = rgba_color(0,0,0,0);
    }
    Ответ написан
  • Что должно происходить, когда пользователь заходит на сайт?

    Аутентификация - это проверка соответствия субъекта и того, за кого он пытается себя выдать, с помощью некой уникальной информации (отпечатки пальцев, цвет радужки, голос и тд.), в простейшем случае - с помощью имени входа и пароля.
    Авторизация - это проверка и определение полномочий на выполнение некоторых действий (например, чтение файла /var/mail/eltsin) в соответствии с ранее выполненной аутентификацией.


    Есть ресурсы, которые доступны только зарегистрированным пользователям. Для использования этих ресурсов пользователь должен предварительно идентифицироваться в системе при помощи формы аутентификации (имя/пароль). В зависимости от нужд программа может проверять, авторизован ли пользователь выполнять те или иные действия (проверка полномочий).

    Глава 7. Регистрация
    Аутентификация в Rails-приложениях с помощью Devis...
    Руководство Ruby On Rails по безопасности

    Добавлено
    При аутентификации пользователь отправляет POST запрос (использовать HTTPS для безопасности данных!) через форму с комбинацией имя/пароль. Программа на сервере создаёт хеш пароля и сравнивает его с хранящимся в БД для данного пользователя. Если совпадает, то пользователю высылаются куки с хешем сессии, согласно которому сервер будет определять аутентификацирован ли пользователь.

    Управление доступом на основе ролей

    Аутентификация и авторизация
    Ответ написан
    2 комментария
  • Существует ли сервис для data mining на python?

    Есть два способа решения проблемы:
    1. аппаратный: апгрейд железа, поиск подходящей под требования cloud computing platform и т.д.
    2. программный: улучшение алгоритма, применение специализированных библиотек, задействование аппаратных инструкций для ускорения и даже других языков.

    Хотя можно и
    3. совмещающий оба
    Ответ написан
  • С помощью чего создать веб интерфейс для программы распознавания лиц на OpenCV?

    Ваша задача разделяется на следующие:
    • Создание программы для извлечения лиц из заданного изображения. Если я верно понял, наработки для распознавания у вас уже есть, что уже очень хорошо. Можно оставить на том же языке. В случае необходимости, критичные для времени выполнения задачи можно (на/пере)писать на языке Go, с помощью средств которого можно распараллелить процесс обработки и таким образом ускорить работу со стороны сервера.
    • Поскольку распознавание является ресурсоёмкой задачей, в особенности если требуется её выполнить на многих изображениях, то критичным параметром является необходимость распознавания лиц интерактивно (сразу посли загрузки пользователем альбома изображений, допустим). Если нет такой необходимости (насколько понял из описания) и можно выполнить в оффлайне (спустя некоторое время или даже заранее), то задача упростится - тут всякие background job scheduler в помощь.
    • Со стороны сервера можно разделить операции на микросервисы, оформив в виде API серверов. Всё зависит от того какими технологиями вы владеете. Если знаете Python, то фреймворки облегчат ваш труд.
    • Со стороны фронтенда возможно потребуются drag&drop мышью. Посоветуйтесь с экспертом в UX. Возможно придётся хорошенько поработать с JavaScript'ом. Выберите любой подходящий CSS фреймворк, ну или сами всё руками, если круты...
    Добавлено позже
    И если вы не имеете опыта в веб-разработке, то стоит поручить это дело другим людям.
    Языки C/C++ в качестве серверного языка использовать не стоит. С Пайтоном будет проще и быстрее.

    Вот как работает ваша демка:
    web-face-detect-block-diagram.png
    face-detect.exe можно/нужно писать на языках Go/C/C++.
    Ответ написан
    Комментировать
  • Реализация long2ip(). Как конвертировать ip с long в string?

    Нужно получить октеты из 4-хбайтного числа, сконвертировать октеты в строковое представление в десятичной системе исчисления и соединить строки точками.
    Ответ написан
    Комментировать