[Projets en IA] Ankita, Junior chez BeCode : “C’était une super occasion pour apprendre de nouvelles choses. Même si l’on a travaillé le soir, personne n’a eu le sentiment qu’on faisait des heures supp’.”

par Apr 6, 2021Actualités

L’apprentissage par la pratique est au cœur de l’approche de BeCode. C’est pourquoi nous sommes toujours à la recherche de projets concrets sur lesquels nos juniors peuvent apprendre et mettre en pratique leurs compétences. Nous avons donc collaboré avec KPMG pour lancer un défi à nos apprenants en IA bruxellois. Leur défi : automatiser des documents à l’aide de techniques de NLP.  Envie de découvrir en quoi consistait le projet et comment ça s’est passé pour nous apprenants ? Ankita vous racontera tout cela dans son interview ci-dessous. 

Peux-tu m’en dire plus sur toi-même ?
“Je viens d’Inde. J’ai emménagé en Belgique il y a quatre ans. Avant d’arriver ici, j’ai travaillé dans une banque pendant 8 ans. Une fois en Belgique, j’ai voulu me lancer dans une nouvelle carrière. BeCode m’a semblé être l’opportunité rêvée pour moi de plonger un peu plus dans ma passion pour l’IT, étant donné que j’ai déjà un bachelier en computer science. Plus particulièrement, cela me semblait être une bonne occasion d’élargir mes connaissances du domaine de la science des données, qui est en ébullition pour l’instant. J’ai décidé de me jeter à l’eau et je ne regrette pas ce choix aujourd’hui.”

Qu’est-ce qui t’a convaincu de te lancer dans une formation chez BeCode et pas ailleurs ?
“La plupart des autres formations sur lesquelles je suis tombée étaient en Français ou en néerlandais, mais cette formation était en anglais. Aussi, cette formation est gratuite pour les juniors. Ces deux facteurs m’ont motivée à m’inscrire et j’ai été sélectionnée.”

Où en es-tu dans ta formation ?
“La fin approche. Il ne nous reste plus qu’une dizaine de jours.”

Qu’as-tu appris jusqu’ici ?
”Beaucoup de choses. Cette expérience a été formidable. Avant de commencer la formation, j’avais une certaine expérience de Python et d’autres outils fréquemment utilisés dans le domaine, mais j’avais l’habitude de prendre mon temps pour apprendre de nouvelles choses car je ne me sentais pas pressée. Mais au cours de la formation, nous avons étudié tellement de sujets en si peu de temps… Au cours de ces sept mois, j’ai appris tellement plus que ce que j’aurais pu apprendre par moi-même.”

“On a appris à coder en Python, mais on s’est aussi penché sur les outils de visualisation des données comme PowerBI, sur le machine learning, le deep learning, la computer vision et le NLP.”

Dans le cadre de l’AI bootcamp, tu as travaillé sur un projet concret proposé par KPMG. Peux-tu m’en dire plus sur ce challenge ?
”Un des clients de KPMG les a contactés car il avait besoin d’aide pour gérer ses données, plus particulièrement les CLA (Central Government Licenses). Auparavant, ils devaient rechercher manuellement les nouvelles CLA sur le site Web du gouvernement, ce qui prenait beaucoup de temps. L’objectif de ce cas pratique était d’automatiser ce processus. Par conséquent, ils voulaient d’abord que nous créions un système qui les informerait si une nouvelle CLA avait été téléchargée, ce qui leur permettrait de mettre à jour leurs informations beaucoup plus rapidement et plus facilement. Dans un deuxième temps, nous avons dû travailler sur un système qui stocke toutes ces CLA et où on peut facilement rechercher des CLA concernant un sujet différent.”

Combien de temps a duré ce projet ?
“C’était la première fois qu’on travaillait sur un projet pendant trois semaines. Nous avions déjà eu un projet de deux semaines, mais tous les autres ne dépassaient pas une semaine.”

Quelles ont été les différentes étapes du projet ?
”Nous avons commencé à réfléchir à la manière dont nous pourrions relever ce défi et aux techniques à utiliser pour y parvenir. Avant de se lancer dans le projet, KPMG nous a prévenus que nous devrions utiliser des techniques de ROC (reconnaissance optique de caractères) pour que le modèle puisse lire et comprendre les PDF. Dans notre recherche de tels outils, nous sommes tombés sur de nouveaux outils d’extraction de texte, à savoir Tesseract et Pytesseract.”

”Certains PDF étaient rédigés en néerlandais, d’autres en français, d’autres encore contenaient les deux langues, ce qui rendait difficile l’élaboration d’une base de données. Nous avons donc décidé de n’utiliser que les textes français.”

”Les PDF étaient également structurés différemment. Parfois, il n’y avait qu’une seule colonne, dans d’autres documents, il y en avait deux. Parfois le document était constitué d’une page, parfois de plusieurs pages. Nous avons donc dû mettre en place un mécanisme capable de détecter la façon dont le document était structuré.”

”Comme vous pouvez le constater, nous avons été confrontés à plusieurs défis lors de la phase d’extraction du texte, mais nous les avons relevés un par un. Au final, nous avons développé un bon système capable d’extraire le texte de manière très précise.”

Qu’avez-vous fait après l’extraction du texte ?
“Nous avons fourni à KPMG une solution de bout en bout. Tout d’abord, nous avons créé une base de données à l’aide de bibliothèques SQL telles que SQLight. Dans cette base de données, les différents documents, ainsi que leur lien vers le site web du gouvernement, étaient stockés. Nous avons également créé une interface utilisateur qui permet à l’utilisateur de rechercher des informations spécifiques. Enfin, nous avons déployé notre solution en utilisant Heroku et Streamlit.”

Ce challenge était un travail de groupe. Comment la collaboration s’est-elle passée ?
”Nous étions une équipe de cinq personnes et nous sommes restés en contact régulier. Nous avions un appel le matin et un appel le soir au quotidien, mais lorsque nous étions confrontés à des problèmes pendant la journée, nous n’hésitions pas à nous tendre la main les uns aux autres.”

”Nous avons réparti les tâches. Chacun savait exactement ce qu’il devait faire. Orhan a construit une base de données très précise. Opaps, notre chef de projet, a été brillant. Il s’est assuré que tout le monde livrait sa partie à temps. Avec Adam, j’ai 

travaillé sur l’extraction et la structuration du texte. Plus tard, j’ai également déployé le modèle. Enfin, il y avait Dilara. Elle s’est concentrée sur la création de l’interface utilisateur et la préparation de notre présentation.”

Les compétences humaines, comme le travail en équipe, sont vitales à ce genre de projet. Quelles sont les autres compétences humaines que tu as apprises dans ta formation BeCode et qui t’ont aidée dans ce projet ?
“Savoir faire des compromis. Parfois, on était en désaccord, mais à un moment donné, il faut savoir mettre les différends de côté. Ce qui compte, c’est qu’on livre un bon projet.”

Comment avez-vous surmonté ces différends ?
“Nous avons consulté chaque membre de l’équipe, mais la décision finale revenait au project manager car on ne peut pas rester coincé sur un sujet de discussion, il faut avancer.”

Pour le projet, vous avez utilisé des outils comme Heroku pour déployer le modèle. Quels autres outils et technologies vous ont été utiles dans le cadre du projet ?
“Pour l’extraction du texte, nous avons utilisé Tesseract et Pytesseract. Il y a eu quelques librairies que l’on n’avait jamais vues auparavant, comme SQLight, qui nous a permis de construire la base de données.”

“Quand on cherche dans la base de données pour trouver des documents sur un sujet en particulier, on n’obtient pas toujours tous les résultats car les documents peuvent contenir des fautes de frappe ou d’orthographe. Orhan a découvert un API de Google qui pouvait corriger ces erreurs, ce qui a rendu notre système beaucoup plus efficace.”

Outre ces nouveaux outils, as-tu pu acquérir de nouvelles compétences dans le cadre de ce projet ?
”Quelques techniques de NLP, avec lesquelles nous espérions construire un système de réponse aux questions, mais nous avons fini par créer un moteur de recherche. Je suis sûr que si nous avions eu plus de temps, nous aurions été en mesure de fournir un meilleur résultat final.”

Au moment de l’extraction du texte, le groupe a connu des différents. Y a t’il eu d’autres défis ?
”La gestion du temps. Comme nous étions également à la recherche d’un stage parallèlement au projet, certains membres du groupe n’étaient pas toujours disponibles pour travailler sur leur partie. De plus, lorsque nous voulions nous réunir pendant quelques minutes, la réunion durait parfois plusieurs heures. Nous avons perdu beaucoup de temps de cette manière, mais au final, tout s’est bien passé.”

Vous avez dû présenter vos résultats à KPMG. Comment se sont passées les présentations ?
”Ils étaient satisfaits du résultat final, mais j’ai le sentiment qu’ils attendaient plus que le moteur de recherche que nous avons construit. Le système de réponse aux questions que nous voulions d’abord créer leur aurait probablement été plus utile, mais nous n’avons pas été en mesure de le terminer.”

Quel feedback avez-vous reçu ?
”Ils avaient des attentes et nous les avons plutôt satisfaites. Ils auraient aimé une solution plus axée sur le NLP, ce que je peux comprendre. Mais dans l’ensemble, ils ont été très satisfaits du résultat final. Ils ont été très impressionnés par l’API Google que nous avons utilisée pour corriger les fautes d’orthographe et ont vraiment aimé notre interface utilisateur.”

Comment s’est passé le projet dans l’ensemble ?
“C’était une super occasion pour apprendre de nouvelles choses. Même si l’on a travaillé le soir, personne n’a eu le sentiment qu’on faisait des heures supp’.”

Selon toi, qu’est-ce que ça apporte d’avoir ce genre de projets concrets dans la formation AI ?
“Lorsqu’on lit la théorie, on peut penser qu’on a bien compris les différents concepts. Mais c’est en travaillant sur de tels projets qu’on apprend vraiment à mettre ses connaissances en pratique. On apprend bien plus que de la simple théorie. Si, par exemple, KPMG ne nous avait pas fourni ce projet concret, nous n’aurions pas eu d’expérience concrète des techniques de ROC et de la création d’une base de données à partir de zéro. Pour moi, il est donc extrêmement important d’intégrer de tels projets dans la formation.”

Quel conseil donnerais-tu à quelqu’un qui débute un tel projet ?
”Assurez-vous de connaître les exigences exactes du client avant de commencer le projet.  Dans notre cas, il y avait un certain décalage et nous n’avons découvert qu’au cours de la deuxième semaine ce qu’ils attendaient vraiment de nous. Nous avons donc perdu beaucoup de temps sur des choses qui n’étaient pas nécessaires pour eux.”

Ta formation touche à sa fin. Quels sont tes projets après la formation ?
“Trouver un stage. J’ai des interviews tous les jours mais je n’ai pas encore trouvé de stage.

Quel genre de stage voudrais-tu faire ?
“Je voudrais un stage en tant que data analyst ou data scientist. Si je ne parviens pas à décrocher de stage, un job direct serait aussi très bien.”

Te sens-tu prête pour ta nouvelle carrière ?
“Je me sens assez confiante pour me lancer dans une carrière dans ce domaine. Il y a encore des choses à apprendre, je l’admets, mais si je me concentre sur ces faiblesses, je serai capable d’avancer.”

Vous souhaitez suivre notre AI Bootcamp ?

Génial! – Nous avons de nouvelles classes débutant à Bruxelles, Gand, Anvers et Liège.

 

Latest news

Recent articles

Bastien, Junior Web Dev à Liège : “Dans ma vie scolaire, j’ai connu plusieurs échecs, donc ça fait beaucoup de bien de se rendre compte qu’on est capable de réussir quelque chose.”

Bastien, Junior Web Dev à Liège : “Dans ma vie scolaire, j’ai connu plusieurs échecs, donc ça fait beaucoup de bien de se rendre compte qu’on est capable de réussir quelque chose.”

Après avoir essayé plusieurs types d’études, Bastien s’est rendu compte que la méthode d’apprentissage conventionnelle ne fonctionnait pas pour lui. Souhaitant se réorienter dans un domaine d’avenir, il a découvert BeCode et sa méthodologie. Aujourd’hui, il arrive à...

Career coach Liège

Career coach Liège

Aperçu de l’offreEn tant que coach de carrière, vous serez chargé de soutenir, d'encadrer et de motiver les juniors (apprenants) de BeCode pendant leur formation et leur stage. Vous vous assurerez que les juniors sont pleinement préparés à démarrer leur stage avec...

Coach en développement web Charleroi

Coach en développement web Charleroi

Aperçu du posteChez BeCode, nous avons une seule mission : permettre aux talents numériques de demain de s'épanouir. Nous sommes convaincus que l'éducation rend tout possible. Depuis 2017, BeCode propose des coding bootcamps inclusifs aux demandeurs d'emploi pour...