Data science made in CONGO: Emmanuel KALUNGA

Emmanuel Kalunga est Lead Data Scientist à Orderin, une compagnie de livraison sud-africaine. Il a organisé l'année dernière à Lubumbashi une conférence IndabaX avec comme objectif de créer une communauté autour du Data Science.

Je laisse la place à Emmanuel, qui a gentiment accepter de nous accorder cette longue interview.


Emmanuel Kalunga, data scientist

Bonjour Emmanuel, pourrais-tu nous parler brièvement de toi? 

Salut Assina, 

Je m’appelle Emmanuel Kalunga, je suis marié et père de Kyanza notre petite fillle. Je travaille à Orderin, une compagnie de livraison sur demande où je dirige l'équipe de data science depuis décembre 2018. Notre QG est à Cape Town.

Avant cela j’ai travaillé pendant plus de deux ans comme data scientist à Vastech,
une compagnie privée sud-africaine basée à Stellenbosch, qui offrent des solutions
de communication et d’intelligence aux gouvernements et aux agences de renseignements. 


A Orderin, nous croyons que dans la décennie qui vient, la plupart des transactions en Afrique
se feront à partir de nos appareils portables.
Ceci a déjà commencé avec des systèmes de paiement comme M-Pesa.
L’Afrique ne connaîtra pas les transactions traditionnelles typiques des écosystèmes occidentaux.
Nous achèterons nos produits en lignes sur nos appareils portables,
et ils nous seront livrés sur demande à notre adresse.
Pour que ceci soit possible, il faut construire des plateformes de logistique du “dernier kilomètre”.
C’est ce que nous faisons à Orderin.
Notre mission consiste à mettre en place une infrastructure de livraison du dernier kilomètre
permettant de livrer sur demande toute commande placé en ligne.
Nous utilisons la science des données (data science),
l'apprentissage automatique (machine learning) et l'intelligence artificielle (AI)
pour résoudre la plupart de nos problèmes.


Intéressant, où t’es-tu formé pour les data science? 


Ça fait donc un moment que je suis en industrie comme data scientist.
Mais mon parcours, comme celui de la plupart de mes collègues, n’a pas été une formation
académique traditionnelle en machine learning ou data science.
D’ailleurs, quand j'étais encore étudiant, il n’y avait pas encore de filière dans les écoles.
Ce n’est que récemment que certaines universités ont commencé à les introduire.


Après mon diplôme d’Etat en Bio-chimie (à Likasi, R.D.Congo), j’ai fait des études d'ingénieur
en génie électrique.
Pendant mon master, je me suis spécialisé en traitement du signal.
Je travaillais alors avec des signaux cérébraux mesurés avec des électrodes placé sur le cuir
chevelu.  
Le but était de réaliser une interface cerveau-machine capable de détecter les intentions des
personnes en analysant leur activité cérébrale.
Ce sont ces travaux qui m’ont emmené vers le machine learning.
Il est en effet possible d'entraîner un modèle statistique sur des données cérébrales existantes,
puis de l’utiliser pour faire une classification (ou détection) d’intentions.
Le domaine étant encore nouveau, et moi voulant creuser un peu plus, j’ai fait une
thèse sur ces travaux. Ceux  qui sont intéressé par le domaine peuvent trouver ma thèse en ligne.


Tu as organisé l’an dernier à Lubumbashi  un évènement autour du deep learning et machine learning. Que signifient ces termes? Quelle est la nuance entre deep learning, machine learning et intelligence artificielle?
  
Emmanuel à Lubumbashi lors de l'IndabaX

En effet, nous avons organisé une rencontre Deep Learning
IndabaX qui est une version régionale de la grande rencontre africaine Deep Learning Indaba.
Les détails organisationnels de ces rencontres peuvent être trouvés nos sites web
Il y a certainement des définitions formelles à ces termes; mais j’en donnerai qui proviennent
de ma propre petite expérience de professionnel. 


L’apprentissage automatique, communément appelé machine learning, est une branche dérivée
des statistiques qui permet d'entraîner un ordinateur à retrouver des structures ou réalités
sous-jacentes à des données observées.
En d’autre termes, on donne une hypothèse (ou modèle) à la machine,
et elle apprend les paramètres de cette hypothèse qui expliquent le mieux la structure de
données observées.
Une fois ce modèle entraîné, la machine est en mesure de faire des tâches telles que la prédiction,
la régression, la classification et le groupement d’objets. 



Il peut arriver qu’on ne soit pas en mesure de poser d'hypothèse décrivant des données ou encore,
que l’on ne sache pas quelles caractéristiques ou composantes des donnée renferment
les informationsimportantes pour une tâche spécifique (ces caractéristiques sont appelés features et
nécessitent une étape de feature extraction ou extraction de caractéristiques faite par
un expert dans le domaine). Dans pareils cas, les réseaux de neurones ont des des capacité à la fois
de faire une extraction de caractéristique, et de trouver les paramètre d’un modèle ou architecture
de réseaux de neurones -- qui remplace ainsi les étape d'extraction de caractéristiques et de choix
d'hypothèse. 


Différentes architectures de réseaux de neurones  sont utilisées en machine learning avec des
résultats  spectaculaires dans le traitement d’image -- dans le domaine de vision par ordinateur,
dans la détection de parole (speech detection), et dans le traitement automatique des langages.
Dans des applications comme celles-ci, les réseaux de neurones ont souvent plusieurs couches
cachées. 
Ils sont alors appelés réseaux de neurones profonds ou deep neural networks.
C’est dans ce cas qu’on parles de deep learning. Pour faire simple, le Deep Learning est une
branche de Machine Learning qui utilise des réseaux de neurones profonds pour faire de
l’apprentissage des caractéristiques (ou features) utiles à une tâche donnée
(prédictions, classification, etc). Il convient de dire en passant que le deep learning a
particulièrement des performances adéquates quand on a énormément de donnés d’apprentissage. 
Architecture d'un réseau de neurones artificiel


Quant à l’intelligence artificielle, elle est toute une autre chose. Elle consiste à transférer une
certaine intelligence à l’ordinateur pour qu’il soit en mesure d'exécuter des tâches intelligentes;
non pas en le chargeant avec une logique décrite par le programmeur, mais plutôt en lui donnant une
habileté à observer (i.e. mesurer ou consommer des données), à apprendre des observations, et
ensuite prendre des décisions ou des actions qui font avancer ses objectifs.
Dans sa partie d’apprentissage des observations, l'intelligence artificielle fait usage du machine
learning depuis l'avènement de celui-ci. Le progrès du machine learning a certes suscité un boom de
l'intelligence artificielle, mais le machine learning n’est pas le AI (artificial intelligence).
Il est un élément utilisé dans le AI. 
Voilà en quelques mots la différence entres ces trois termes.
Le docteur Thierry Luhandjula a longuement exposé sur ce sujet lors des trois jours de la rencontre
IndabaX. 


Quelles retombées concrètes pourrait avoir le deep learning en  RDC face à tous les défis
urgents que nous avons? Pouvons nous parler du deep learning en ayant le courant deux fois
par semaine par exemple? 
Bien exploité, le machine learning peut avoir des retombées spectaculaires en RDC.
Nous avons d’ailleurs pris le temps d'échanger avec les participants sur les applications de machine
learning qui pourraient êtres bénéfiques à la société congolaise. 
Avant même d’aller dans les cas typiques de la RDC, en tant que société de consommation
de technologies modernes, nous bénéficions déjà des résultats spectaculaires du machine learning
et du deep learning en particulier sur les plateformes multimédia telles que Youtube, Netflix
et d’autres vendeurs en ligne avec leur systèmes de recommandation, sur nos appareils portables
dans l’usage des plateforme de navigation comme google map, la correction automatique de saisie,
les commandes vocales avec Siri, Google assistant, alexa; sur les moteurs de recherche qui
utilisent les traitements automatique des langues pour nous retourner les documents pertinent à
notre recherche. 
Au vu de tout ceci, la question devient,
1) y a-t-il des applications de Machine Learning qui existentailleurs et qui ne sont pas encore arrivées en RDC?
2) Y aurait-il des applications nouvelles qui naîtraient des besoins typiques à la RDC et que nous
pourrons par la suite exporter au reste du monde? 
Pour la première question, une application pouvant révolutionner le système de santé est la
classification d’image des clichés radiologiques pour un diagnostique automatique.
Avec les difficultés que nous connaissons dans l'accès au soins, une plateforme de machine learning
accessible en ligne peut offrir un diagnostic accessible à tous (prenant en compte la croissance de
l'accès internet via les réseaux mobiles).
Avec les IOTs (Internet of Things),  il est même possible d’avoir les données nécessaires pour
diagnostiquer différentes maladies.
Une autres idée, toujours liée à l’accessibilité au soins et évoquée par les participants est celle de
faciliter la communication entre le personnel soignant et les patients, particulièrement en milieux
reculés et ruraux. Utilisant les techniques de détections de parole et de traitement automatique des
langues, il serait possible de créer une espèce de traducteur automatique. 
Les outils de machine learning pour le faire existent, mais les données d'entraînement
seront uniques à nos communautés linguistiques: ils nous faudra constituer des corpus
dans nos langues locales.

Cet élément nous conduit à la deuxième question. Nous nous retrouvons en effet avec des
problème non résolus par la communauté de machine learning ou du moins résolus que
partiellement.
Il y a beaucoup d’autres applications de machine learning en mécanique, dans le secteur bancaire,
le secteur commercial, et le secteur agricole qui peuvent améliorer la production et la distribution
des produits. Les plus grandes limitations que nous avons pour le moment au Congo sont l’expertise
et une récolte de donnée de bonne qualité. C’est bien  là une des raisons d'être principales du Deep
Learning IndabaX: réunir les experts et les curieux autour d’une table pour un transfert de
connaissance et un partage d'idées.

Ceci nous a permis par exemple de savoir que nous avons des groupes comme ITOT Africa
qui travaillent déjà sur la récolte des données. Nous saluons et encourageons pareilles initiatives.
Il n’y aura pas de machine learning sans données d'entraînement. 
Les plus grandes limitations que nous avons pour le moment au Congo sont l’expertise
et une récolte de donnée de bonne qualité.


Que faire pour maîtriser ce domaine? Où l’étudier?


Comme je l’ai dit avant, ce n’est que récemment que certaines universités ont créé des filières de data
science. La plupart d’expert dans le domaines viennent des domaines voisins, et qui avait un bagage
réunissant les outils nécessaires pour comprendre et faire du machine learning, ce sont des outils de
statistiques, probabilité, optimisation, et calcul différentiel. 
Si vous n’avez pas ces bases, ce n’est pas grave, il y a des MOOC -- des cours en lignes  gratuits,
des livres, et des articles de recherches qui sont une bonne façon de se lancer.
Il y a ensuite des projets et compétitions dans lesquelles on peut développer une certaines maîtrise.
Github et Kaggle sont des bons endroits pour trouver des idées de projets avec codes.
Kaggle lance souvent des compétition avec des prix bien motivants. 
Nous pouvons partager des liens à des cours et livres de référence dans ce domaine.
A Lubumbashi, l’Université Nouveaux Horizons a le projet d'ouvrir un master en data science.
C’est là une bonnes opportunité pour tous ceux qui sont au Congo pour apprendre et obtenir un diplôme dans le domaine. 


Quels peuvent être les débouchés pour quelqu’un qui étudie dans ce domaine? 


Quelqu’un qui étudie dans ce domaine à plusieurs opportunités de travail. Le domaine est en ébullition
et il y a une très forte demande. Les compagnies, des plus grandes comme Google et Facebook,
au petites et moyennes comme Orderin et Takealot en Afrique du Sud, se précipitent pour employer
les experts de ce domaine. En dehors des opportunités d’emploi, il y a actuellement un
bourgeonnement des startups qui offrent des services ou qui vendent des produits Machine Learning.
Le marché est presque encore vierge au Congo. Tout est à faire, tout est à conquérir. Foncez! 


Quels outils sont utilisés dans le deep learning? 

Les outils utilisés en Deep Learning peuvent être regroupés en outils mathématiques et outils technologiques.
Dans les outils mathématiques, nous avons l'algèbre linéaire, les probabilités, les calculs différentiels et l’optimisation qui sont très utilisés dans la modélisation et le développement d’algorithmes Machine Learning.
Dans les outils technologiques, nous avons les langages de programmations, leurs librairies ainsi que des plateformes et outils conçus pour le développement et le déploiement des modèles Machine Learning.
Les langages de programmations les plus utilisés sont Python et R.
Tensorflow et PyTorch sont les outils de développement d’algorithmes Deep Learning les plus répandus. 

On apprend aux ordinateurs à apprendre, quel sera alors le sort des êtres humains?
Ne devrait-on pas avoir peur de toutes ces machines qui apprendront mieux que nous? 


Hmm. La question se pose. Il y a beaucoup de discussions autour de l'éthique en Machine Learning.
Il y a certainement des questions d'éthiques à considérer quand on fait du machine learning.
Les questions qui semble préoccuper davantage la communauté de machine learning sont plus de
l’ordre de l'équité.
Les algorithme de machine learning peuvent être biaisé selon les données d'entraînement utilisées
ou de justice. Par exemple, aux Etats-Unis, des algorithmes entraînés pour prédire des crimes,
peuvent êtres biaisés contre la communauté noire américaine quand ils sont entraînés sur des
données de crimes où les noirs sont surreprésentés .
La crainte devient de renforcer les inégalités sociales existantes.
Par exemple, les banques ou les commerces en ligne avec leurs systèmes d'évaluation
de risques ou de recommandations peuvent se baser sur une sorte de profiling -- j’ai d’ailleurs reçu
une question de ce genre lors du IndabaX. Dans ce cas, les clients d’un certain groupe social risque
d'être constamment traités différemment et ainsi créer ou renforcer une certaine ségrégation sociale. 
Quant à la question de savoir ce que les humains devront faire au cas où les machines apprenaient
à tout faire mieux qu’eux, la communauté ML ne semble pas être très inquiète.
Personnellement je pense que comme lors de la révolution industrielle, les hommes ne se sont pas
retrouvés au chômage à cause de l’industrialisation ou de l’automation.
Ce qu’il y a eu, c’est qu’au lieu d’avoir 90% des hommes travaillant dans des usines, il y a eu d’autres
type de travaux qui ont été créés, et souvent des travaux qui améliorent les conditions de vie et
de travail des humains.
Je suis optimiste. Je pense que nos sociétés vont s'élever à la hauteur de l’opportunité. Pour que cela se passe, il nous faut embrasser cette révolution dans toutes ces facettes: technologique, sociales et politiques. 


Un petit mot final? 


Restons en contact. Nous aimerions organiser une rencontre IndabaX cette année lorsque la situation sanitaire se stabilisera. Nous sommes en train de créer une communauté data science congolaise qui va regrouper les professionnels des données: data architects, data scientists, analysts, les ingénieurs et chercheur en machine learning.  

Merci Assina pour l’interview! 

Merci infiniment Emmanuel!

J'espère que cet interview vous a apporté plus de lumières sur le Machine Learning. si vous avez des questions, n'hésitez pas! Je les transmettrai.

Post a Comment

Plus récente Plus ancienne