/ Модель

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

Параметры
113 млн
Лицензия
Apache 2.0
Архитектура
dinov2 · dense
Базовая модель
dinov2-base
Опубликована
19 сен 2023

dinov2-base-finetuned-SkinDisease

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

Дообученный визуальный трансформер DINOv2 для извлечения признаков и классификации изображений кожных заболеваний.

781скачиваний за 30 дней13лайковвеса обновлены23 окт 2024

Бенчмарки

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

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

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

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

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

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

Модель Jayanth2002/dinov2-base-finetuned-SkinDisease — дообученный вариант визуального трансформера facebook/dinov2-base на пользовательском наборе данных. Она предназначена для классификации изображений, связанной с заболеваниями кожи. Архитектура DINOv2/ViT обрабатывает изображение как последовательность патчей и формирует визуальные признаки; число параметров — 113,2 млн.

В README приведены результаты на оценочном наборе: точность 0,9557 и loss 0,1321. При этом в карточке также сказано, что модель не включает дообученную классификационную голову, поэтому её готовность к прямому предсказанию классов заболеваний по изображению неясна. Обучение проводилось на пользовательском наборе данных, а его состав и перечень классов не описаны. Лицензия — Apache-2.0.

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

  • извлечение признаков из фотографий кожи
  • эксперименты с классификацией изображений кожных заболеваний
  • создание классификатора на размеченных изображениях кожи

Ограничения

README указывает, что модель не содержит дообученной классификационной головы, поэтому прямое получение меток классов может требовать отдельного классификатора. Пользовательский датасет и набор классов не описаны; приведённая точность относится только к указанному оценочному набору.

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

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

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

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

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

Открыть на Hugging Face

dinov2-base-finetuned-SkinDisease

This model is a fine-tuned version of facebook/dinov2-base on the Custom dataset. It achieves the following results on the evaluation set:

  • Loss: 0.1321
  • Accuracy: 0.9557

Model description

The Vision Transformer (ViT) is a transformer encoder model (BERT-like) pre-trained on a large collection of images in a self-supervised fashion.

Images are presented to the model as a sequence of fixed-size patches, which are linearly embedded. One also adds a [CLS] token to the beginning of a sequence to use it for classification tasks. One also adds absolute position embeddings before feeding the sequence to the layers of the Transformer encoder.

Note that this model does not include any fine-tuned heads.

By pre-training the model, it learns an inner representation of images that can then be used to extract features useful for downstream tasks: if you have a dataset of labeled images for instance, you can train a standard classifier by placing a linear layer on top of the pre-trained encoder. One typically places a linear layer on top of the [CLS] token, as the last hidden state of this token can be seen as a representation of an entire image.

How to use

import torch
from transformers import AutoModelForImageClassification, AutoImageProcessor

repo_name = "Jayanth2002/dinov2-base-finetuned-SkinDisease"
image_processor = AutoImageProcessor.from_pretrained(repo_name)
model = AutoModelForImageClassification.from_pretrained(repo_name)

# Load and preprocess the test image
image_path = "/content/img_416.jpg"
image = Image.open(image_path)
encoding = image_processor(image.convert("RGB"), return_tensors="pt")

# Make a prediction
with torch.no_grad():
    outputs = model(**encoding)
    logits = outputs.logits

predicted_class_idx = logits.argmax(-1).item()

# Get the class name
class_names = ['Basal Cell Carcinoma', 'Darier_s Disease', 'Epidermolysis Bullosa Pruriginosa', 'Hailey-Hailey Disease', 'Herpes Simplex', 'Impetigo', 'Larva Migrans', 'Leprosy Borderline', 'Leprosy Lepromatous', 'Leprosy Tuberculoid', 'Lichen Planus', 'Lupus Erythematosus Chronicus Discoides', 'Melanoma', 'Molluscum Contagiosum', 'Mycosis Fungoides', 'Neurofibromatosis', 'Papilomatosis Confluentes And Reticulate', 'Pediculosis Capitis', 'Pityriasis Rosea', 'Porokeratosis Actinic', 'Psoriasis', 'Tinea Corporis', 'Tinea Nigra', 'Tungiasis', 'actinic keratosis', 'dermatofibroma', 'nevus', 'pigmented benign keratosis', 'seborrheic keratosis', 'squamous cell carcinoma', 'vascular lesion']
predicted_class_name = class_names[predicted_class_idx]

print(predicted_class_name)

Training hyperparameters

The following hyperparameters were used during training:

  • learning_rate: 5e-05
  • train_batch_size: 32
  • eval_batch_size: 32
  • seed: 42
  • gradient_accumulation_steps: 4
  • total_train_batch_size: 128
  • optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
  • lr_scheduler_type: linear
  • lr_scheduler_warmup_ratio: 0.1
  • num_epochs: 10

Training results

Training LossEpochStepValidation LossAccuracy
0.95991.02820.68660.7811
0.61762.05650.48060.8399
0.46143.08470.30920.8934
0.39764.011300.26200.9141
0.36065.014120.25140.9208
0.30756.016950.19680.9320
0.21527.019770.20040.9377
0.21948.022600.16270.9442
0.17069.025420.14490.9500
0.1729.9828200.13210.9557

Framework versions

  • Transformers 4.33.2
  • Pytorch 2.0.0
  • Datasets 2.1.0
  • Tokenizers 0.13.3

Kindly Cite Our Work

@article{mohan2024enhancing,
  title={Enhancing skin disease classification leveraging transformer-based deep learning architectures and explainable ai},
  author={Mohan, Jayanth and Sivasubramanian, Arrun and Sowmya, V and Vinayakumar, Ravi},
  journal={arXiv preprint arXiv:2407.14757},
  year={2024}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
Dinov2ForImageClassification
Ревизия весов
96253b3

0 моделей