Le comparatif
qu'on ose publier.
On a fait tourner VYVRE v7.0 sur 300 visages publics UTKFace, stratifiés par âge (18-80), aux côtés de DeepFace, InsightFace, OpenCV DNN. Voici les résultats — bons et mauvais — sans filtre.
Tous les comparators open source · 0 API key requise
MAE (Mean Absolute Error)
vs. vérité-terrain UTKFace.
| Moteur | MAE (y) |
|---|---|
| InsightFace buffalo_l | 7.97 ±0.37 |
| DeepFace age_model | 8.84 ±0.44 |
| OpenCV DNN AgeNet | 12.52 ±0.62 |
| VYVRE v7.0 (perceived) | 12.89 ±0.54 |
SE = erreur standard sur la moyenne. Biais signé : positif = sur-estimation systématique de l'âge, négatif = rajeunissement systématique.
Sur l'ensemble 18-80 ans, VYVRE perd contre DeepFace et InsightFace. Ce sont des deep neural nets entraînés sur des dizaines de milliers de visages labellisés (IMDB-WIKI, AgeDB). VYVRE est un pipeline photométrique peer-reviewed calibré sur une cohorte interne n=12 — c'est un combat asymétrique.
On le publie quand même, parce que la cible commerciale de VYVRE n'est pas la précision absolue : c'est l'explicabilité (8 indicateurs biomarqueurs traçables à des sources peer-reviewed, pas un score caché de boîte noire), la souveraineté (in-browser, aucune image qui sort de l'appareil) et le refus assumé de noter une image trop dégradée plutôt que de donner un chiffre flatteur.
Si vous cherchez le meilleur estimateur d'âge brut absolu : prenez InsightFace. Si vous cherchez à offrir un diagnostic dermatologique transparent et conforme RGPD à vos clientes, sans envoi serveur : VYVRE reste pertinent.
Là où VYVRE brille,
et là où c'est dur.
VYVRE est calibré sur une cohorte n=12 majoritairement 30-50 ans (fondateurs + cercle proche). La bande 30-44 est notre segment cible commercial (premium skincare diagnostic), et c'est aussi là que l'engine performe le mieux.
| Bande | n | VYVRE | DeepFace | InsightFace | OpenCV |
|---|---|---|---|---|---|
| 18-29 | 80 | 16.69 | 8.35 | 9.58 | 9.46 |
| 30-44 ★ target | 100 | 5.75 | 2.20 | 4.03 | 8.66 |
| 45-59 | 80 | 11.31 | 10.69 | 8.87 | 13.17 |
| 60-80 | 40 | 26.32 | 22.70 | 12.82 | 26.97 |
Tous les chiffres en MAE (années). Cellule en couleur accent = meilleur de la ligne. La bande 30-44 (target market) est mise en évidence.
Sur 30-44 ans,
VYVRE bat OpenCV (33% mieux).
Analyse paire-à-paire : sur le segment commercial cible (femme 30-44, premium skincare), VYVRE remporte 61% des duels face à OpenCV DNN. Contre DeepFace et InsightFace, on reste derrière, mais l'écart est plus serré (1.7-3.5 ans MAE).
OpenCV DNN MAE = 8.66y
InsightFace MAE = 4.03y
DeepFace MAE = 2.20y
4 choses
que les autres ne savent pas faire.
In-browser, zéro upload
VYVRE tourne 100% dans le navigateur (WebGL + Canvas). Aucune image n'est envoyée serveur. DeepFace et InsightFace nécessitent une stack Python serveur — donc un cycle RGPD avec stockage temporaire, DPA, sous-traitant, sécurité. VYVRE = un fichier JS, c'est tout.
8 scores dermatologiques + age
Les comparators sortent un scalaire (l'âge). VYVRE produit hydratation, éclat, fermeté, pores, sensibilité, pigmentation, rides, sébum — chaque score sourcé à un papier peer-reviewed indexé PubMed (Chardon, Takiwaki, Stamatas, Mizukoshi). Un dermato peut auditer la logique ligne par ligne.
Refus assumé si qualité < 40
Quand l'éclairage est mauvais ou le visage flou, VYVRE renvoie un refus (scan_quality_too_low) plutôt qu'un chiffre trompeur. DeepFace, OpenCV et InsightFace donnent toujours un nombre, même sur des images dégradées. Pour un diagnostic dermato, le refus est une fonctionnalité, pas un bug.
Pipeline photométrique, pas une boîte noire
VYVRE = CIELAB, ITA°, indices Melanin/Erythema, TEWL proxy. Tout est dérivable en formules vérifiables. Les deep nets restent opaques — leurs biais (race, genre, éclairage) sont documentés mais structurellement inauditable. VYVRE rend la mesure explicable au DPO et au consultant dermato.
Pas de hack, pas de fudge.
Tout le code est public.
Dataset
nu-delta/utkface (23 705 visages). Échantillon stratifié de 300 images (18-29 n=80, 30-44 n=100, 45-59 n=80, 60-80 n=40) tiré par seed=42.Préparation image
Moteurs comparés
DeepFace 0.0.100 (Serengil, age_model_weights.h5 539 MB, backend opencv, enforce_detection=False).
InsightFace buffalo_l (det_10g + genderage.onnx, ctx_id=-1 CPU, det_size 320×320).
OpenCV DNN AgeNet (Levi & Hassner 2015 Caffe, 8 bins Adience, décodage continu par espérance bin-midpoint × proba).
Métrique principale
Caveats
Reproductibilité
Pour creuser plus loin.
· Zhang Z, Song Y, Qi H (2017) — "Age Progression/Regression by Conditional Adversarial Autoencoder", CVPR. UTKFace dataset.
· Levi G, Hassner T (2015) — "Age and Gender Classification using Convolutional Neural Networks", IEEE CVPR Workshops. Adience AgeNet.
· Rothe R, Timofte R, Van Gool L (2018) — "Deep expectation of real and apparent age from a single image without facial landmarks", IJCV. DEX model on IMDB-WIKI.
· Serengil S (2020-2025) — DeepFace open-source library, github.com/serengil/deepface.
· Guo J, Deng J et al. (2018-2024) — InsightFace toolkit, github.com/deepinsight/insightface.
· Cao W, Mirjalili V, Raschka S (2019) — "Rank-consistent ordinal regression for neural networks" (CORAL).
· Yang TY, Huang YH, Lin YY, Hsiu PC, Chuang YY (2018) — "SSR-Net: A Compact Soft Stagewise Regression Network for Age Estimation", IJCAI.
Vous voulez reproduire ?
Le code complet est sur demande.
On envoie le pipeline complet (5 scripts Python + Node + dataset stratifié) aux DPO, dermatos consultants, équipes R&D. Vous relancez en 4 min sur votre poste, vous vérifiez chaque chiffre.