File size: 2,362 Bytes
46451dd
 
 
 
 
889e8f5
 
9688ab3
889e8f5
 
 
f2888df
 
6a7066b
 
46451dd
 
 
9688ab3
46451dd
 
 
 
 
 
 
 
 
 
 
 
 
889e8f5
46451dd
9688ab3
46451dd
 
889e8f5
 
9688ab3
889e8f5
9688ab3
 
46451dd
 
9688ab3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
FROM python:3.10-slim

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PIP_NO_CACHE_DIR=1 \
    PORT=7860 \
    HOME=/home/user \
    APP_ROOT=/app \
    PATH=/home/user/.local/bin:$PATH \
    HF_HOME=/tmp/.huggingface \
    TRANSFORMERS_CACHE=/tmp/.cache/huggingface/transformers \
    HUGGINGFACE_HUB_CACHE=/tmp/.cache/huggingface/hub\
    PAPER_URL=https://ieeexplore.ieee.org/Xplore/home.jsp\
    PAPER_TITLE='RG-DermNet: A Multimodal Attention-Based Model with Residual Block Usage for Skin Lesion Classification'\
    PAPER_DESCRIPTION='Skin cancer accounts for nearly one-third of all diag-\nnosed tumors worldwide, making early and accurate recognition\ncritical for improving patient outcomes. In this work, we pro-\npose RG-DermNet, a multimodal deep learning framework that\nintegrates skin lesion images with structured clinical metadata\nthrough a residual gated-attention (RG-ATT) fusion mechanism.\nThe architecture combines CNN- and Transformer-based visual\nbackbones with a lightweight one-hot encoding pipeline for meta-\ndata, enabling effective cross-modal interaction. The proposed\nmodel is evaluated using a patient-wise cross-validation protocol\nacross four dermatological datasets with heterogeneous metadata.\nOn PAD-UFES-20, using Caformer-B36 as the visual backbone,\nRG-DermNet achieves an accuracy of 0.75 ± 0.05, balanced\naccuracy of 0.78 ± 0.03, F1-score of 0.77 ± 0.04, and AUC of\n0.95 ± 0.01, outperforming existing multimodal baselines under\nthe same evaluation setting. In addition, a SHAP-based analysis\nprovides insights into the contribution of clinical metadata to\nthe model’s predictions, supporting both performance gains and\ninterpretability.'

RUN useradd -m -u 1000 user

WORKDIR /app

RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    gcc \
    g++ \
    git \
    libglib2.0-0 \
    libsm6 \
    libxext6 \
    libxrender1 \
    libgomp1 \
    && rm -rf /var/lib/apt/lists/*

RUN mkdir -p /tmp/.huggingface /tmp/.cache/huggingface/transformers /tmp/.cache/huggingface/hub

COPY --chown=user requirements.txt $APP_ROOT/requirements.txt

USER user

RUN pip install --no-cache-dir --upgrade pip setuptools wheel && \
    pip install --no-cache-dir -r $APP_ROOT/requirements.txt

COPY --chown=user . $APP_ROOT

EXPOSE 7860

CMD ["python", "app.py"]