/ Модель

Характеристики

Контекст
77 токенов
Архитектура
clip · dense
Опубликована
24 апр 2023

PickScore_v1

Классификация изображений без дообученияИзображение, текст → label3 профессии

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

537 тыс.скачиваний за 30 дней53лайкавеса обновлены8 мая 2023

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

PickScore v1 — модель оценки от разработчиков проекта PickScore, дообученная на CLIP-H на наборе данных Pick-a-Pic. Она принимает текстовый запрос и сгенерированное по нему изображение, а выдаёт оценку соответствия предпочтениям пользователей. Архитектура основана на CLIP; репозиторий содержит веса PyTorch и Safetensors.

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

Сценарии применения

  • оценка соответствия сгенерированного изображения текстовому запросу
  • ранжирование вариантов изображения по предпочтениям пользователей
  • прогнозирование человеческой оценки изображений
  • сравнение результатов моделей генерации изображений
  • оценка качества генерации текста в изображение

Ограничения

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

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Model Card for PickScore v1

This model is a scoring function for images generated from text. It takes as input a prompt and a generated image and outputs a score. It can be used as a general scoring function, and for tasks such as human preference prediction, model evaluation, image ranking, and more. See our paper Pick-a-Pic: An Open Dataset of User Preferences for Text-to-Image Generation for more details.

Model Details

Model Description

This model was finetuned from CLIP-H using the Pick-a-Pic dataset.

Model Sources [optional]

How to Get Started with the Model

Use the code below to get started with the model.

# import
from transformers import AutoProcessor, AutoModel

# load model
device = "cuda"
processor_name_or_path = "laion/CLIP-ViT-H-14-laion2B-s32B-b79K"
model_pretrained_name_or_path = "yuvalkirstain/PickScore_v1"

processor = AutoProcessor.from_pretrained(processor_name_or_path)
model = AutoModel.from_pretrained(model_pretrained_name_or_path).eval().to(device)

def calc_probs(prompt, images):
    
    # preprocess
    image_inputs = processor(
        images=images,
        padding=True,
        truncation=True,
        max_length=77,
        return_tensors="pt",
    ).to(device)
    
    text_inputs = processor(
        text=prompt,
        padding=True,
        truncation=True,
        max_length=77,
        return_tensors="pt",
    ).to(device)


    with torch.no_grad():
        # embed
        image_embs = model.get_image_features(**image_inputs)
        image_embs = image_embs / torch.norm(image_embs, dim=-1, keepdim=True)
    
        text_embs = model.get_text_features(**text_inputs)
        text_embs = text_embs / torch.norm(text_embs, dim=-1, keepdim=True)
    
        # score
        scores = model.logit_scale.exp() * (text_embs @ image_embs.T)[0]
        
        # get probabilities if you have multiple images to choose from
        probs = torch.softmax(scores, dim=-1)
    
    return probs.cpu().tolist()

pil_images = [Image.open("my_amazing_images/1.jpg"), Image.open("my_amazing_images/2.jpg")]
prompt = "fantastic, increadible prompt"
print(calc_probs(prompt, pil_images))

Training Details

Training Data

This model was trained on the Pick-a-Pic dataset.

Training Procedure

TODO - add paper.

Citation [optional]

If you find this work useful, please cite:

@inproceedings{Kirstain2023PickaPicAO,
  title={Pick-a-Pic: An Open Dataset of User Preferences for Text-to-Image Generation},
  author={Yuval Kirstain and Adam Polyak and Uriel Singer and Shahbuland Matiana and Joe Penna and Omer Levy},
  year={2023}
}

APA:

[More Information Needed]

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · zero-shot-image-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
CLIPModel
Ревизия весов
a4e4367

0 моделей