Задать вопрос
  • Как получить конкретный атрибут приложенный в обьект?

    Maksim_64
    @Maksim_64
    ML Engineer
    Твоя задача, однозначно решается по другому и вряд ли твой или мой код имеет хоть какой то практический смысл.

    Когда ты наследуешься, то ты наследуешь в том числе атрибуты класса. То есть вот это условие у тебя не выполняется
    if not hasattr(cls, 'Команды'): просто return смысла не имеет ты там должен делать что то с классом который наследовался от твоего. Дальше без комментариев, смысла в твоих действиях нет.

    Вопрос стоит так, возможно ли запретить наследование по определенному атрибуту, для дочернего класса. Ответ нет нельзя. В целом в питоне можно обойти практически любые запреты.

    class Система:
        """Группа команд."""
    
        Команды = {}
    
        def __init__(self, *args, **kwargs):
            pass
    
        def пользовательИмеетДоступ(self, bot, event):
            return True
    
        def __init_subclass__(cls, *args, **kwargs):
            super().__init_subclass__(**kwargs)
            if any("Команды" in base.__dict__ for base in cls.__mro__[1:]) and "Команды" not in cls.__dict__:
                setattr(cls, "Команды", None)
    
    class Another(Система):
        # Команды = {"Команда 1": 'тест'}
        pass
    
    print(getattr(Another, 'Команды'))


    Вот так мы получим следующее поведение, твоя строка будет возвращать None, как ты и хотел. Если же ты переопределишь, в дочернем классе, то команда вернет его значение.
    Ответ написан
    Комментировать
  • Ошибка IndexError: string index out of range в написании реализации системы Линденмайера – от чего происходит и как исправить?

    Maksim_64
    @Maksim_64
    ML Engineer
    Пытался самостоятельно реализовать код для рисования фрактальных фигур с помощью системы Лиденмайера
    А почему элементарно дебажить не пробовал, посмотреть как изменяется длинна self.axiom и j?

    если для тебя новость, что длинна self.axiom не постоянна, то посмотри ты же его переопределяешь после match case.
    Ответ написан
    1 комментарий
  • Сервер с GPU предназначен ли для запуска фронтенда/бэкенда или он для вычислений?

    Maksim_64
    @Maksim_64
    ML Engineer
    Здесь, вопрос про целесообразность, оплачивания gpu сервера, если у тебя нет gpu-bound операций.

    Докер, ставишь, ngnix также при чем в докер, а не в систему. Современные ml архитектуры подразумевают, развертывания, как бэкенда так и фронта (mlflow, airflow и т.д.) все имеют веб интерфейсы, которые сильно облегчают жизнь.
    Ответ написан
    2 комментария
  • Как влияет сложность пет-проекта на старт в IT?

    Maksim_64
    @Maksim_64
    ML Engineer
    В целом пет проект это лучше чем ничего, увеличение шансов в пределах статистической погрешности. Добавь к этому мизерное количество вакансий для начинающих и тем более начинающих на Го.
    Ответ написан
    Комментировать
  • Какой язык программирования выбрать после изучения GML?

    Maksim_64
    @Maksim_64
    ML Engineer
    Лет 15 назад, ещё в универе

    Тебе 35+ и ты только начинаешь. Шансы минимальные будут найти работу.

    Если для себя, как навык, саморазвитие, то бери питон, но для входа в IT шансы будут минимальные с любым.
    Ответ написан
    7 комментариев
  • Как искать работу DevOps c резюме frontend?

    Maksim_64
    @Maksim_64
    ML Engineer
    1. В оглавлении резюме пишешь DevOps

    2. Перечисляешь навыки (включая DevOps стек)

    3. Перечисляешь компании где занимался frontend-разработкой.

    На первичном собесе с эйчаром, говоришь занимался фронтом, но в какой то момент в компании переключился на DevOps, затем проходишь/не проходишь технический собес.
    Ответ написан
    2 комментария
  • Стоит ли бежать со стартапа?

    Maksim_64
    @Maksim_64
    ML Engineer
    С твоих слов 300+, при чем даже если твои отдельные навыки хромают, только за то что все на тебе.

    Искать? Я бы такую работу уже давно сменил, а ждать никого и ничего не надо.
    Ответ написан
    Комментировать
  • С помощью чего проанализировать данные и построить свою нейронную сеть для бана пользователей?

    Maksim_64
    @Maksim_64
    ML Engineer
    1. Размечаешь датасет вся информация о действиях пользователя и метка хороший/нехороший

    2. Арендуешь сервер с gpu

    3. Разворачиваешь Базу в которой будут хранится размеченные данные. (плюс mlflow и airflow требуют коннекта к бд)

    4. Разворачиваешь в докере mlflow для трекинга результатов экспериментов.

    5. Разворачиваешь в докере airflow для управления тасками (композиции пайплана тренировки определенной архитектуры нейронной сети и оценки результатов)

    6. Возможно понадобится векторная база тоже поднимаешь в докере (в зависимости от архитектуры нейронной сети), ты можешь создать эмбеддинги "плохих пользователей" (портреты так сказать) и потом транслировать поведение пользователей которые заходят на сайт в эмбеддингии искать ближайшие (тех кто похож).

    7. Здесь можно и нейронки и классификатор с xgboost/catboost попробовать, что не отменяет необходимость трекировать эксперименты.

    8. В целом либо классическая архитектура нейрокна получает на вход информацию в определенном представлении и выдает вероятность пользователя быть "нехорошим" либо вариант с созданием эмбеддинга либо и то другое.

    Это если реально интересен результат продакшен уровня, а не просто пойграться с нейронками и их параметрами.
    Ответ написан
    1 комментарий
  • Как учиться и практиковаться?

    Maksim_64
    @Maksim_64
    ML Engineer
    1. Возьми небольшой проект на гитхабе, как ориентир.
    2. Практика и еще раз практика.
    Ответ написан
  • Дашборд. Какую методу сбора данных и платформу выбрать для разработки?

    Maksim_64
    @Maksim_64
    ML Engineer
    1. База данных, например постгре (развернутая в докере), как основное хранилище.

    2. airflow для управлениями тасками (развернутый в докере)

    3. Metabase (развернутый в докере) для множества дашбордов, доступных по паролям ролям и т.д.

    В metabase подключаешь бд, одним кликом. Затем пишешь параметризованные sql запросы, параметры задает конечный пользователь из интерфейса дашборда, настраиваешь визуализацию и готово. Сами дашборды обновляются динамически. То есть либо при каждом доступе к странице, либо по заданному календарю.

    airflow будет нужен, для организации работы скриптов (А мой совет докер контейнеров), выгрузки, очистки данных и т.д. то есть весь пайплайн загрузки в базу.
    Ответ написан
    Комментировать
  • Целесообразно ли использование двух RTX 5080 для обучения нейросетей?

    Maksim_64
    @Maksim_64
    ML Engineer
    Может быть, такое, что и одна практически в холостую будет работать. Все зависит, от архитектуры нейронной сети и от архитектуры пайплайна.
    Ответ написан
    3 комментария
  • DevOps риски, фабрика или скам?

    Maksim_64
    @Maksim_64
    ML Engineer
    Сомневаешься не делай, делаешь не сомневайся.

    Ты не сможешь развиваться, работать, и т.д., если ты заведомо сильно сомневаешься в работодателе.

    Если тебя сильно что-то смущает и интуиция говорит, не связываться - значит не связывайся.
    Ответ написан
    1 комментарий
  • Почему Soup.find возвращает None?

    Maksim_64
    @Maksim_64
    ML Engineer
    формально, если скопировать твой пример то все работает, значит что-то со строкой. Может там русские, английские символы, может специальные символы какие и т.д.

    Используй регулярки, для "стандартизации" строки по которой ищешь.
    Ответ написан
    9 комментариев
  • Что мешает создать сугубо инженерную генеративную нейросеть?

    Maksim_64
    @Maksim_64
    ML Engineer
    Нет фундаментального трансформера, который сведет, CAD диаграмму к векторному представлению. Как только сделают, тогда, будут появляется модели, которые будут внедрять в софт.

    Пространства изображений не достаточно, для работы со специфическими диаграммами.
    Ответ написан
    1 комментарий
  • Требуется ли junior deep learning инженеру знание математики?

    Maksim_64
    @Maksim_64
    ML Engineer
    Все зависит от компании, нет никаких общих требований. Собеседование это лотерея, советую не тратить время в попытке удовлетворить, все требования, а делать проекты и получать опыт.
    Ответ написан
    Комментировать
  • Reverse engineering black box ML-модели?

    Maksim_64
    @Maksim_64
    ML Engineer
    1. Нет нельзя.
    2. Тоже нельзя.

    Без параметров, и детальной архитектуры ML - модели, ловить нечего.

    Для первого случая вообще нет исключений, даже если твой black-box это простая линейна регрессия, такой же выхлоп, может давать куда более сложная модель.

    Для второго, в качестве исключения на примитивных взаимоотношениях да.
    Ответ написан
    Комментировать
  • Не копятся ли строки в памяти при работе с python?

    Maksim_64
    @Maksim_64
    ML Engineer
    Нет при такой конструкции, не копятся.

    У каждого объекта в памяти есть счетчик указателей, когда он равен нулю, объект уничтожается. По тому что нет возможности к нему обратится. Упрощенное правило, если ты не можешь обратится к объекту он будет уничтожен.

    html (упрощенно это именованный указатель на адресс в памяти) = myData.text (сам объект)
    html - это выполнится потом = myData.text - сначала выполнится эта часть кода. счетчик = 1
    html = html.replace('rub', 'руб') сначала выполнится эта часть кода. счетчик = 1 при этом myData.text - счетчик для этого объекта стал 0, он уже навсегда потерян.

    del html - сам по себе не удаляет объект, а понижает счетчик на один, что в свою очередь, если у объекта, только один именованный указатель приведет к удалению.

    Это упрощенно, у этого есть свои нюансы, связанные с оптимизацией. Плюс в первую очередь для понимания поведения объектов надо учитывать мутабельность/не мутабельность.
    Ответ написан
    Комментировать
  • Как получить детальные данные по лицу с фото?

    Maksim_64
    @Maksim_64
    ML Engineer
    То что ты описываешь называется эмбеддинг. Затем эти самые эмбеддинги используются для распознавания, нахождение ближайших эмбеддингов.

    https://pypi.org/project/deepface/
    Это набор моделей с простым интерфейсом не оптимизированным под GPU. Можно даже эмоции извлекать, можно координаты где лицо или лица на фото, пол, и т.д.
    Ответ написан
    Комментировать
  • Извлечение таблиц со спецификациями из PDF чертежей металлоконструкций - решаемо? Или я встрял?

    Maksim_64
    @Maksim_64
    ML Engineer
    Было дело работал с российскими нормативными документами гостами. По сталям и фиттингам для трубопроводов.

    1. Качество pdf очень важная история. Если совсем плохое парсер не возьмет (нужно искать в интеренте) есть открытые нормативные базы.
    2. парсеры (tabula, camelot) с множеством настроек, в зависимости от того, как настроишь зависит практически все.
    3. Ну и pandas обе библиотеки вернут список с дата фреймами, где фрейм это каждая таблица. Обычно требует много пост процессинга, например две таблицы на странице а их конкатенировать одна на одну, таблицы имеют "многоуровневую шапку" column multi index на языке пандаса и т.д.

    После пункта три, до желаемого результата одна строчка кода.
    Ответ написан
    Комментировать
  • Как указать модификатор S в re.sub python?

    Maksim_64
    @Maksim_64
    ML Engineer
    показал, бы что именно не сработало, ошибка или нет желаемого результата.

    Напрмер,
    re.findall(pattern, string, flags=0)

    re.sub(pattern, repl, string, count=0, flags=0)

    В первом случае ты указываешь именованный параметр flags, как позиционный, и он оказывается на правильной позиции, во втором случае его позиция на два больше. То есть при вызове метода sub нужно указывать flags как именованный парметр.
    Ответ написан
    1 комментарий