FeatureFu : la dernière contribution de LinkedIn à l’open source
LinkedIn met à disposition de l’écosystème open source sa boîte à outils FeatureFu, dédiée à l’apprentissage automatique (machine learning).
Azkaban pour la gestion des flux de travail, Kafka pour connecter applications et données, Samza pour l’analyse et l’A/B testing, Voldemort pour les associations clés-valeurs… autant d’outils open source auxquels LinkedIn a apporté sa contribution.
La liste s’allonge avec FeatureFu, mis à disposition de la communauté sous licence Apache 2.0, dans un répertoire GitHub.
Écrite en Java, cette boîte à outils permet d’extraire des caractéristiques à partir de données utilisées dans l’apprentissage automatique, dont les moteurs de décision et la modélisation statistiques (classification, clustering, normalisation).
LinkedIn l’exploite, entre autres, pour mieux cerner les préférences des utilisateurs pour différents flux apparaissant en page d’accueil. Ce qui implique de compter notamment le nombre de mentions « J’aime » dans l’historique et de commentaires laissés par le membre dans chaque type de flux.
Dans l’exemple ci-dessus, les chiffres bruts doivent être combinés à un ratio « J’aime-par-commentaire » avant de pouvoir être utilisés comme un élément stable, avec une formule mathématique de type (1 + j’aime) / (10 + commentaires), explique Bing Zhao.
Dans une contribution blog, cet ingénieur chez LinkedIn reconnaît que la formule doit normalement être codée en ligne et que tout changement induit une modification du code.
Un processus assez chronophage, mais qui peut être contourné : « Avec Expr [une bibliothèque légère écrite en Java, ndlr] et FeatureFu, nous aurons simplement besoin d’écrire la formule comme une expression symbolique (/ (1 + j’aime) (+ 10 commentaires)) et de l’inclure dans le fichier de configuration du modèle. »
Et Bing Zhao d’ajouter : « Toute modification future de la formule ne nécessitera qu’un changement de configuration de l’expression symbolique elle-même : (- (log2 (+ 10 commentaires)) (log2 (+ 1 j’aime))) ». Une option plus flexible et agile que la précédente, comme le note Silicon.fr.
Crédit photo : isak55 – Shutterstock.com