# Optimize both metricsoptimal_solution = optimize(accuracy, cost)
Только мне кажется, что точность нужно повышать, а стоимость понижать? Это в разные стороны нужно двигать. Ну и, предполагаю, лучше это взвешивать вручную (иногда точность важна даже дорогой ценой).
А вообще статья ни о чём. Предлагаю её на переделку отправить (хоть это и перевод).
Очень повезло ... технолог который смог рассказать принцип работы
А у кого-то язык поворачивается называть технологом человека, который не знает досконально процесс? Такое на производствах часто бывает? Я только встречался с тем, что технолога нет вообще (что грустно) [но у меня очень маленькая выборка].
В этом контексте «РКС» скорее всего означает «рабочая кабельная схема» – то есть распечатанная схема подключения (иногда её ещё называют рабочей конструкторской схемой), которую используют для проверки состояния входов и выходов контроллера, а также для оперативной справки при замене или ремонте оборудования.
Тоже пользуюсь иногда, особенно когда что-то старое нужно почитать и натыкаюсь на ошибку "нет файла", "нет страницы" (статьи, программы, инструкции). Зачастую "старыми" оказываются страницы из 2019 года (я уж не говорю про 2009 или 1999). А иногда просто посмотреть что писал хабр 1 апреля лет пять назад.
Не заглядывал в лосс функцию, но хотелось бы узнать что именно вы ставили себе целью. MSE - это хорошо (т.к. она "не придумывает", а пытается честно восстановить что можно). Но MSE визуально прирост даст совсем маленький (коррекция цвета, контраст, незначительное восстановление резкости, может аберрации уменьшит). VGG-19 несколько устарела, но может использоваться (для одного из слагаемых loss) - визуально даёт увеличение качества, но подталкивает нейросеть "делать красиво" (плевать, что придумано). В частности при работе с волосами нейросеть может прорисовать каждый волосок, но он будет не в том месте (и не в том количестве). Одним из способов проконтролировать - посмотреть как нейросеть восстанавливает снимки с мелким текстом.
Мы видим, что точность на тренировке растёт, а точность на тесте стоит на месте - явный признак переобучения. "добавить различный и несложный орнамент" - если есть возможность, то почему бы нет? Должно помочь. Но тут нужно помнить, что чем больше и сложнее нейросеть, тем больше нужно примеров, что бы нейросеть не свалилась в переобучение. Лет 20 назад было эмпирическое правило - на каждую нейронную связь 10 обучающих примеров (это с некоторым запасом).
Я понимаю, что сейчас считается немодным менять параметры слоёв (число блоков, число каналов и т.п.). Но в вашем случае это просто напрашивается. Или хотя бы dropout попытаться подобрать. Судя по всему нейросети слишком "жирные". Но начать с аугментации обучающих данных нужно. Для второго набора данных это особенно актуально.
Сравнительный анализ без результатов? В конце опишите хотя бы коротко что за задача у вас была, какую точность достигли, какие размерности сети попробовали, какая скорость обучения (число эпох, время) и запуска у каждой нейросети. Хотя бы коротко.
Для типовых, но редких задач инструкции по пунктам самое то (к примеру техническая проверка станка раз в месяц). Как только мы хотим описать не типовые задачи, инструкция теряет линейность и становится запутанной, а это никуда не годится. Как вариант, сделать 50 типовых инструкций и сделать еще инструкцию как искать инструкции? (ирония и сарказм)
В другом месте: "Обычно я использую 784x560 с 113 кадрами, 48 шагов, используя SageAttention. Это требует 664 секунды, а мой VRAM составляет 23,3 ГБ." (Видимо речь о RTX 4090 и почти наверняка квантованная версия.) Я погонял Хуньян и WAN 2.1 на задачах замены лица (картинка-в-видео и видео-в-видео). Хуньян дает предсказуемый хороший результат (кастомная лора), то очень маленький размер картинки. WAN со всякими ограничениями (пока лору не везде можно натренировать), мне тоже не подошел.
Тут надо учесть, что разными ухищрениями (квантизацией) иногда уменьшают потребление памяти в 4 раза и более.
Флоренце у меня тоже не завелась (вроде что-то там с одной библиотекой питорч у меня не срослось). Я завел moondream2, вот отрывок из кода: from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "vikhyatk/moondream2"
revision = "2024-08-26"
model = AutoModelForCausalLM.from_pretrained( model_id, trust_remote_code=True, revision=revision, device_map='cuda' )
Глубоко копаешь, молодец. А зачем? Может поможет почитать на тему "затухание градиента". Попробуй функции активации по типу Leaky ReLU, ELU; добавь residual connections в структуру сети. Раз тебе такое нравится, не пройди мимо, глянь сюда https://habr.com/ru/companies/skbkontur/articles/849966/
https://phyphox.org/ еще одна любопытная программа в тему экспериментов (там расстояние можно мерить звуком). (Программа Phyphox использует датчики смартфона для физических экспериментов. Она позволяет измерять ускорение, давление, освещенность, магнитное поле, местоположение, частоту вращения (гироскоп) и другие параметры.
Также доступны функции для анализа звуков (частота, амплитуда, спектр, эффект Доплера), измерения расстояний (сонар, LiDAR), наклона, центростремительного ускорения, энергии столкновений и поведения маятника. В повседневной жизни можно использовать её для оценки звуков, анализа движения лифта или измерения времени с помощью различных таймеров.)
Вдруг тут мне ответят. Недалеко от меня есть магазин с большой автостоянкой. Проходя мимо очень часто слышу прерывистый высокочастотный звук, который повторяется раз в несколько секунд (частота, скорее всего, выше 10 кГц). Что это может быть? Аналогичное бывает и в других местах рядом с [дорогими] автомобилями.
Обычно если я "выкаю", то человек мне не нравится, если я говорю "ты", то ставлю его на одном уровне со мной (ни выше, ни ниже). Извините, не хотел обидеть.
The image features a heart-shaped arrangement of pink roses with golden stems against a backdrop of a cloudy sky with a warm glow from the top right corner.
Нейронка выдала следующее описание: The image presents a digital illustration of a heart-shaped arrangement of pink roses. The roses are the central focus, with three of them standing out prominently. The background is a sky filled with clouds, painted in shades of blue and purple. The sun is shining brightly, casting a warm glow on the scene and highlighting the pink color of the roses. The image is a digital illustration, which suggests the use of advanced technology and software to create the image. Промпт к moondream2 был какой-то обще-стандартный типа "подробно опиши изображение". Изменением промпта на "сделай короткое описание" можно уменьшить ответ. Просто описательный ответ мне был достаточен. Как я говорил, в большинстве случаев править ничего не нужно.
Локальный запуск позволяет не зависеть от всяких там VPN, банковских карт или пятен на солнце. Из минусов - требуется видеокарта; нужно уметь настроить; качество, видимо, похуже чем у GPT 4o.
так проэкспериментируй :-) Стандартный ответ: "Конечно". Вопрос нужно по другому было задавать: "Какие промпты и техники лучше всего заходят под мою задачу" :-)
Я скажу интереснее, можно воспользоваться свободной нейросеткой https://huggingface.co/onnx-community/Florence-2-large (Флоренце одна из лучших, но не единственная, есть еще vikhyatk/moondream2). Они тоже позволяют давать описание картинок. Только важно помнить, что распознавание на уровне 98%, т.е. банальные сцены будут распознаны, но будут картинки или полностью или частично не распознанные.
Цель уже стоит: ответить человеку любой ценой так, что бы он "похвалил" (понизил loss). Ограничения человек ставит, насколько ему хватает сообразительности. В мире разработки игр известен случай, когда программисты создали самообучающегося бота для игры, и тот начал использовать скрытую возможность проходить сквозь стены (где-то были нарушения геометрии, стыки в текстурах?).
В моей практике был случай, когда мне захотелось точки описать суммой синусоид. Каково было моё удивление, когда простой алгоритм подобрал такую комбинацию коэффициентов, что невязка оказалось очень маленькой, но при попытке визуализировать функцию быстро выяснилось что график как гигантская пила - слишком большие частоты, слишком большие амплитуды. Зато через точки график проходит. И в мире машинного обучения на такое часто натыкаешься.
С учетом, что сейчас несколько стран (фирм) пытаются сделать группировки аппаратов для интернета? Запуск тысяч спутников улучшит безопасность в космосе? А под воду не обязательно очень далеко от берега (можно как в заливе, так и в озере или речушке).
Только мне кажется, что точность нужно повышать, а стоимость понижать? Это в разные стороны нужно двигать. Ну и, предполагаю, лучше это взвешивать вручную (иногда точность важна даже дорогой ценой).
А вообще статья ни о чём. Предлагаю её на переделку отправить (хоть это и перевод).
А у кого-то язык поворачивается называть технологом человека, который не знает досконально процесс? Такое на производствах часто бывает? Я только встречался с тем, что технолога нет вообще (что грустно) [но у меня очень маленькая выборка].
Скрытый текст
В этом контексте «РКС» скорее всего означает «рабочая кабельная схема» – то есть распечатанная схема подключения (иногда её ещё называют рабочей конструкторской схемой), которую используют для проверки состояния входов и выходов контроллера, а также для оперативной справки при замене или ремонте оборудования.
Если что, то это ответ ЧатГПТ
Тоже пользуюсь иногда, особенно когда что-то старое нужно почитать и натыкаюсь на ошибку "нет файла", "нет страницы" (статьи, программы, инструкции). Зачастую "старыми" оказываются страницы из 2019 года (я уж не говорю про 2009 или 1999). А иногда просто посмотреть что писал хабр 1 апреля лет пять назад.
Не заглядывал в лосс функцию, но хотелось бы узнать что именно вы ставили себе целью. MSE - это хорошо (т.к. она "не придумывает", а пытается честно восстановить что можно). Но MSE визуально прирост даст совсем маленький (коррекция цвета, контраст, незначительное восстановление резкости, может аберрации уменьшит). VGG-19 несколько устарела, но может использоваться (для одного из слагаемых loss) - визуально даёт увеличение качества, но подталкивает нейросеть "делать красиво" (плевать, что придумано). В частности при работе с волосами нейросеть может прорисовать каждый волосок, но он будет не в том месте (и не в том количестве). Одним из способов проконтролировать - посмотреть как нейросеть восстанавливает снимки с мелким текстом.
Мы видим, что точность на тренировке растёт, а точность на тесте стоит на месте - явный признак переобучения. "добавить различный и несложный орнамент" - если есть возможность, то почему бы нет? Должно помочь. Но тут нужно помнить, что чем больше и сложнее нейросеть, тем больше нужно примеров, что бы нейросеть не свалилась в переобучение. Лет 20 назад было эмпирическое правило - на каждую нейронную связь 10 обучающих примеров (это с некоторым запасом).
Я понимаю, что сейчас считается немодным менять параметры слоёв (число блоков, число каналов и т.п.). Но в вашем случае это просто напрашивается. Или хотя бы dropout попытаться подобрать. Судя по всему нейросети слишком "жирные". Но начать с аугментации обучающих данных нужно.
Для второго набора данных это особенно актуально.
Сравнительный анализ без результатов?
В конце опишите хотя бы коротко что за задача у вас была, какую точность достигли, какие размерности сети попробовали, какая скорость обучения (число эпох, время) и запуска у каждой нейросети. Хотя бы коротко.
Для типовых, но редких задач инструкции по пунктам самое то (к примеру техническая проверка станка раз в месяц).
Как только мы хотим описать не типовые задачи, инструкция теряет линейность и становится запутанной, а это никуда не годится. Как вариант, сделать 50 типовых инструкций и сделать еще инструкцию как искать инструкции? (ирония и сарказм)
обзор очень поверхностный, даже примеры видео не приведены.
В одном месте исследуя Хуньян встретил такие слова (подозреваю, что длина видео менее 10 секунд):
https://blog.segmind.com/hunyuan-video-guide-features-tips-and-how-to-use-it/ Set your quality settings based on available VRAM:
45 GB+ VRAM: Maximum quality (1024x576)
32 GB VRAM: Medium quality (768x432)
24 GB VRAM: Basic quality (512x288)
В другом месте: "Обычно я использую 784x560 с 113 кадрами, 48 шагов, используя SageAttention. Это требует 664 секунды, а мой VRAM составляет 23,3 ГБ." (Видимо речь о RTX 4090 и почти наверняка квантованная версия.)
Я погонял Хуньян и WAN 2.1 на задачах замены лица (картинка-в-видео и видео-в-видео). Хуньян дает предсказуемый хороший результат (кастомная лора), то очень маленький размер картинки. WAN со всякими ограничениями (пока лору не везде можно натренировать), мне тоже не подошел.
Тут надо учесть, что разными ухищрениями (квантизацией) иногда уменьшают потребление памяти в 4 раза и более.
похоже ты запускаешь в режиме Object detection - <OD>. А тебе нужно
task=
<MORE_DETAILED_CAPTION>
https://huggingface.co/microsoft/Florence-2-large/blob/main/sample_inference.ipynbФлоренце у меня тоже не завелась (вроде что-то там с одной библиотекой питорч у меня не срослось). Я завел moondream2, вот отрывок из кода:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "vikhyatk/moondream2"
revision = "2024-08-26"
model = AutoModelForCausalLM.from_pretrained( model_id, trust_remote_code=True, revision=revision, device_map='cuda' )
tokenizer = AutoTokenizer.from_pretrained(model_id, revision=revision)
image = Image.open(filename)
enc_image = model.encode_image(image)
title = model.answer_question(enc_image, "Detailed image description.", tokenizer)
Глубоко копаешь, молодец. А зачем?
Может поможет почитать на тему "затухание градиента". Попробуй функции активации по типу Leaky ReLU, ELU; добавь residual connections в структуру сети.
Раз тебе такое нравится, не пройди мимо, глянь сюда https://habr.com/ru/companies/skbkontur/articles/849966/
https://phyphox.org/ еще одна любопытная программа в тему экспериментов (там расстояние можно мерить звуком). (Программа Phyphox использует датчики смартфона для физических экспериментов. Она позволяет измерять ускорение, давление, освещенность, магнитное поле, местоположение, частоту вращения (гироскоп) и другие параметры.
Также доступны функции для анализа звуков (частота, амплитуда, спектр, эффект Доплера), измерения расстояний (сонар, LiDAR), наклона, центростремительного ускорения, энергии столкновений и поведения маятника. В повседневной жизни можно использовать её для оценки звуков, анализа движения лифта или измерения времени с помощью различных таймеров.)
Вдруг тут мне ответят.
Недалеко от меня есть магазин с большой автостоянкой. Проходя мимо очень часто слышу прерывистый высокочастотный звук, который повторяется раз в несколько секунд (частота, скорее всего, выше 10 кГц). Что это может быть? Аналогичное бывает и в других местах рядом с [дорогими] автомобилями.
Обычно если я "выкаю", то человек мне не нравится, если я говорю "ты", то ставлю его на одном уровне со мной (ни выше, ни ниже). Извините, не хотел обидеть.
Нейронка выдала следующее описание: The image presents a digital illustration of a heart-shaped arrangement of pink roses. The roses are the central focus, with three of them standing out prominently. The background is a sky filled with clouds, painted in shades of blue and purple. The sun is shining brightly, casting a warm glow on the scene and highlighting the pink color of the roses. The image is a digital illustration, which suggests the use of advanced technology and software to create the image.
Промпт к moondream2 был какой-то обще-стандартный типа "подробно опиши изображение". Изменением промпта на "сделай короткое описание" можно уменьшить ответ. Просто описательный ответ мне был достаточен. Как я говорил, в большинстве случаев править ничего не нужно.
Локальный запуск позволяет не зависеть от всяких там VPN, банковских карт или пятен на солнце. Из минусов - требуется видеокарта; нужно уметь настроить; качество, видимо, похуже чем у GPT 4o.
так проэкспериментируй :-) Стандартный ответ: "Конечно". Вопрос нужно по другому было задавать: "Какие промпты и техники лучше всего заходят под мою задачу" :-)
Я скажу интереснее, можно воспользоваться свободной нейросеткой
https://huggingface.co/onnx-community/Florence-2-large
(Флоренце одна из лучших, но не единственная, есть еще vikhyatk/moondream2). Они тоже позволяют давать описание картинок. Только важно помнить, что распознавание на уровне 98%, т.е. банальные сцены будут распознаны, но будут картинки или полностью или частично не распознанные.
Цель уже стоит: ответить человеку любой ценой так, что бы он "похвалил" (понизил loss). Ограничения человек ставит, насколько ему хватает сообразительности. В мире разработки игр известен случай, когда программисты создали самообучающегося бота для игры, и тот начал использовать скрытую возможность проходить сквозь стены (где-то были нарушения геометрии, стыки в текстурах?).
В моей практике был случай, когда мне захотелось точки описать суммой синусоид. Каково было моё удивление, когда простой алгоритм подобрал такую комбинацию коэффициентов, что невязка оказалось очень маленькой, но при попытке визуализировать функцию быстро выяснилось что график как гигантская пила - слишком большие частоты, слишком большие амплитуды. Зато через точки график проходит. И в мире машинного обучения на такое часто натыкаешься.
С учетом, что сейчас несколько стран (фирм) пытаются сделать группировки аппаратов для интернета? Запуск тысяч спутников улучшит безопасность в космосе? А под воду не обязательно очень далеко от берега (можно как в заливе, так и в озере или речушке).