1. MACHINE INTELLIGENTE D’ANALYSE FINANCIÈRE
Réalisé par: Sabrine MASTOURA
Encadrant ENICarthage: Mr. Walid BARHOUMI
Encadrante CIMF : Mme. Wahiba BEN FREDJ
2015-2016
Projet de Fin d’ Études
Soutenu le 29/06/2016
2. PLAN
Cadre général du projet
Apprentissage automatique
Compréhension du marché
Compréhension des données
Préparation des données
Modélisation
Évaluation
Conclusion et perspectives
3. CADRE GÉNÉRAL DU PROJET
1
Fraudeur
Mesures anti-fraude
Contrôle
Etat
tunisien
Recettes fiscales
4. CADRE GÉNÉRAL DU PROJET
2
DECISIONEL
SINDA
TGT
SADEC
RAFIC
PGT
ADEB
Apprentissage
automatique
5. CADRE GÉNÉRAL DU PROJET
3
« Connect »
Une détection des
incohérences
dans les
déclarations
fiscales
Une lutte
contre
l’escroquerie
à la TVA
« Redditometro »
Une comparaison
sommaire
des revenues
déclarés
et l’estimation
des
dépenses
6. CADRE GÉNÉRAL DU PROJET
4
CRISP-Dm 1.0: Cross-Industry Standard Process
9. APPRENTISSAGE AUTOMATIQUE
7
P(X,Y)
(X,Y)
X Y'
Minimiser
Y-Y'
Y
Fonction
de coût
Apprentissage
automatique
( )h X
( )h X
0 1 1( ) ... n nh X x x
Pour un modèle linéaire, la fonction hypothèse est:
2
( )
0 1
1
( )1
( , ,.., ) ( ( ) )
2
i
m
i
nJ y
m
h x
Ces paramètres inconnues minimisent la fonction de coût:i
( ) ( ) ( )
1
1
: ( )( ) i i
j j j
i
m
répéter y x
m
h x
Le choix des paramètres se fait par l’algorithme de descente de gradient:i
10. APPRENTISSAGE AUTOMATIQUE
8
Sélection du modèle :
Régression :
Jeu de données = base d’apprentissage (70%) + base de test (30%)
• Choisir le modèle qui minimise la fonction de coût de test
sous-apprentissage
bon modèle
sur-apprentissage
• Détecter des anomalies d’apprentissage
• Choisir les paramètres minimisant la fonction de coût d’apprentissagei
Vrai
Positive
(VP)
Faux
Négative
(FN)
Faux
Positive
(FP)
Vrai
Négative
(VN)
Classe prédite
Positive Négative
Classeréelle
NégativePositive
Précision=VP / (VP+FP)
Classification :
Rappel= VP/(VP+FN)
11. COMPRÉHENSION DU MARCHÉ
9
Pétrole Avocats
Médecins
Architectes
Généraliste
Pédiatre
8
Secteurs
694
Activités
156
Sous
secteurs
Personnes
Physiques
Personnes
Morales
80% de
la masse
salariale
12. COMPRÉHENSION DU MARCHÉ
10
DGI
Centre de
contrôle
Bureau de
contrôle
Bureau de
contrôle
DGEVérifications
approfondies
Vérifications
sommaires
Redressements
approfondis
Redressements
simples
14. COMPRÉHENSION DES DONNÉES
12
Décisionnel
Analyse des risques
decsoc
132 Mo
dectva
73,2 Mo
agrpay
547 Mo
sitfis
17 Go
cnss
506 Mo
entreprise
1 Go
resvap
186 Mo agranx
1,66 Go
actagr
338 Moagrtva
567 Mo
asinda
251 Mo
nomimp
4Ko
decird
164 Mo
decirp
163 Mo
16. COMPRÉHENSION DES DONNÉES
14
Somme des tva chiffre d’affaire par année Somme des redressements par année
Nombre des enregistrements par année
Pairplot de l’échantillon 2011
17. PRÉPARATION DES DONNÉES
15
Critères de
détection
de la fraude
decsoc
decirp
Jointure
gauche
Critères
Physique
+
Données
Physique
Jointure
gauche
Critères
morales
+
Données
morales
.pkl Personnes
physiques
172 005 enregistrements
355 variables
.pkl Personnes
morales
2 394 enregistrements
358 variables
18. PRÉPARATION DES DONNÉES
16
Nettoyage des données :
Normalisation des données :
i
i
x
x
Écart-type
Moyenne de X
Examiner manuellement les données.
Eliminer les valeurs manquantes :
• Champs équivalents
• Valeurs significatives
• 0
19. PRÉPARATION DES DONNÉES
17
Augmentation du nombre des enregistrements
Unicité: Identifiant & Année N: Non redevable
R: En règle
D: En défaut
0
1
2
21. MODÉLISATION
19
Régression linéaires :
0 1 1( ) ... n nh X x x
Coefficients
estimateurs
X1
...
Xn
Y
i
Modèle élémentaire de la modélisation linéaire
Estimation de la relation entre Y et
La recherche d’un modèle de prévision de Y en fonction de X.
1( ,..., )nX X
22. MODÉLISATION
20
Régression ridge :
Eviter le sur-apprentissage.
Simplifier la fonction hypothèse.
Ajouter un terme de régularisation
( ) 2 2
1
1 1
1
( ,..., ) ( ( ) ) ( )
2
m m
i i
n j
i j
J h x y
m
terme de
régularisation
Paramètre de
régularisation
23. MODÉLISATION
21
Réseau de neurones (NN) :
nx
1
1
.
.
.
.
.
.
2x
1x
( )h x
couche entrée couche cachée couche de sortie
nx
1
1
Perceptron multicouche (MLP) :
En propagation
j
ia
( )j
( 1)j
1 1
( )j j
i i
j j j
i i
a g z
z a
i-1
i
i+1
j-1 j j+1
En rétro propagation
( ) ( ) ( 1) ' ( )
( ) .* ( )
j j
i i i
j j T j j
a y
g z
j
i
( )j
24. MODÉLISATION
22
Machine à vecteurs de support (SVM) :
Vecteurs de support
Hyperplan optimal
Marge maximale
Appliquer un noyau
Recherche de la marge de séparation maximale.
augmenter la dimension de l’espace de représentation des données d’entrées.
26. ÉVALUATION
24
La modélisation linéaire :
« LinearRegression »
«Ridge »
Objectif :
• Estimation de la valeur du redressement approfondie
• Estimation de la valeur du redressement simple
Mini Small Medium Large Xlarge
[0 , 100K[ [100K , 1M[ [1M , 10M[ [10M , 25M[ [25M , Inf.[
• Découpage des contribuables selon les chiffres d’affaires
27. ÉVALUATION
25
Régression linéaire :
Estimation du redressement simple
pour la catégorie Xlarge
Estimation du redressement approfondie
pour la catégorie MEDIUM
28. ÉVALUATION
26
Régression ridge :
Estimation du redressement simple
pour la catégorie Xlarge
Estimation du redressement approfondie
pour la catégorie Medium
29. ÉVALUATION
27
La modélisation non linéaire :
Objectif:
• Classifier l’intervalle de la fraude
• Variable cible = redressement simple + redressement approfondi
[0 , 1 000[ [1 000,3 500[ [3 500,10 000[ [10 000,30 000[ [30 000,60 000[ [60 000,Infinie[
• Découper les contribuables selon la catégorie
«Multi Layer Perceptron »
«Support Vector Classifier »
« ExtraTreeClassifier »
L’etat tunisien comme partout dans le monde a besoin d’un équilibre budgétaires, provenant principalement des recettes fiscales, pour mener à bien son devoir. Donc la situation critique ainsi que la pénurie budgétaire mène les experts économiques à prendre conscience pour lutter contre la fraude. Mais le probléme aujourd’hui n’est pas de maximiser les taux d’impots mais de les rendre plus équitables .
D’où la nécessiité de moderniser la pratique fiscale pour minimiser d'une part la marge de l'intervention humaine et d'autre part améliorer les recettes de finance et le rendement des agents de contrôle.
Mais le travail à échelle humaine a prouvé l’insuffisance du contrôle ainsi que des mesures anti fraude existante ce qui rend indispensable l'automatisation du processus de détection des empreintes de fraudes les plus évidentes et d'opérer ainsi une sélection des cas les plus pertinents.
A ce sujet, la notion de big data propose à l’administration fiscale des enjeux prometteurs. En effet, le CIMF compte enrichir son patrimoine applicatif par un programme intelligent d'auto apprentissage ayant pour but l’analyse d’une grande masse de données stockées depuis des décennies dans ces différents systèmes:
ADEB(Système d'Aide à la Décision Budgétaire): Gestion du budget de d’Etat
PGT(Système de la Paierie Générale de la Tunisie): Paierie générale de Tunisies
SINDA (Système d'Information Douanier Automatisé): Contrôle des marchandises importées et exportées
TGT(Système de la Trésorerie Générale de la Tunisie): Trésorerie générale de la Tunisie
RAFIC(Système de Rationalisation de l'Action Fiscale et Comptable): la répartition des recouvrements et du nombre d'opérations réalisées par type d’impots, par poste, recette et région.
SADEC(Système d'Aide à la Décision et au Contrôle Fiscal): aide au contrôle fiscale par le suivi des dossiers
Le systéme décisionel: agréger les données de rafic et sadec pour un but décisionnel
Cette application permet de détecter à l'avance les cas de fraudes fiscales. Pour cela, nous avons focalisé notre étude sur la notion d'apprentissage automatique permettant d'établir une corrélation entre certaines données et la possibilité de fraude.
La lutte contre la fraude fiscale est un sujet d’actualité pour les Etats. En effet, des modèles reposant sur le Big data ont vues le jour en europe
En angleterre, « Connect » détecte les incohérences dans les déclarations fiscales (vérifier la fiabilité des déclarations fiscales et des demandes de crédits d'impôts s'agissant des taxes directes et indirectes.)
En Belgique, lutter contre l'escroquerie à la TVA via la modélisation automatique des réseaux (un outil de lutte contre les fraudes et les incohérences déclaratives de TVA ). Elle a pu réduire de plus de 80% la fraude à la TVA (environ 1 milliard d'euros par an depuis 2001) et réduire les délais de traitement des opérations de détection de 3 semaines à 5 minutes.
En Italie, "Redditometro" permet de comparer les montants d'imposition et trains de vie constatés. (calculer sommairement par réconciliation des revenus déclarés et de l'estimation des dépenses). Mais il n'est pas encore utilisé à grande échelle car il est contesté pour le non-respect de la vie privée.
//La France a lancé un traitement de Datamining sur des bases de données en mars 2014 et pour une période de test de 6 mois seulement. De plus, les informations détectées par cette solution n'auront qu'une valeur de signalement.
Pour répondre aux défis de la réalisation, nous avons jugé utile l’utilisation d’une méthodologie qui définit un cadre de conduite d’un projet de Dataminig .
Nous avons utilisé CRISP-Dm 1.0 qui est une méthodologie itérative et incrémentale formalisant un processus de 6 étapes.
La phase compréhension du marché consiste à détailler la problématique ainsi que le metier pour déterminer nos critères de réussite.
La phase compréhension des données est une phase de collecte de données, de description des données et de vérification de la qualité des données
La phase Préparation des données comprend l’étape de la sélection des données sujet d’étude ainsi que le nettoyage et la mise en forme de ce jeu de données
Durant la phase de modélisation nous utilisons l’un des algorithmes de datamining pour répondre à notre problematique
Dans la phase d’Evaluation nous analysons les résultats obtenues pour choisir le bon modèle auquel nous obtons dans la phase de déploiement
L'apprentissage automatique est le champ d'étude de l'intelligence artificielle, qui donne aux ordinateurs la capacité d'apprendre sans être explicitement programmé. A cet égard, la notion d'algorithme ne disparait pas. Mais que d'autres paramètres, les données, viennent s'ajouter aux algorithmes afin de permettre aux systèmes d'apprendre à partir des observations pour prédire le futur.
En effet, pour la programmation traditionnelle nous partons des données ainsi qu’un algorithme implémenté pour y arriver aux résultats souhaités. Ce qui n’est pas le cas pour l’apprentissage atomatique. Il beneficie des données ainsi que des résultats pour
Valider l’algorithme d’aprentissage répondant au besoin de la problématique.
A force d'essais et d'erreurs, la machine passe par une phase d'auto-apprentissage permettant de déterminer une façon de faire pour y arriver à son objectif. Ce dernier consiste à définir un modèle mathématique permettant de rechercher dans les données des critères de détection de la fraude. Suivi d'une phase d'auto-amélioration, elle adapte ce modèle à l'évolution de la base des informations. L'intelligence de l'apprentissage automatique provient des algorithmes de fouilles de données s'adaptant à tous types de problèmes.
L’apprentissage automatique peut etre divisé en 2 catégorie:
En apprentissage non supervisé, l'objectif est d'extraire une information à partir des données sans pour autant la connaitre au préalable. En effet, nous cherchons une structure quelconque dans notre jeu de données.
En apprentissage supervisé, nous avons au préalable une certaine idée à propos de l'ensemble des données et de la variable cible et selon la nature de la variable cible
Régression: prédire une valeur continue
Classification: la prédiction d'une valeur discrète («0» ou «1»)
Dans le cadre de notre projet, Il s’agit d’un problème de détection des fraudes visualisés dans les montants de redressements donc il s’agit d’un apprentissage supervisé
Suite à ce qui a été défini au paravent, l’apprentissage supervisé vise dans notre cas à prédire la valeur de la fraude suite à un jeu de données fiscales. En effet, notre souci principal est d’adapter un choix aléatoire des données à l’un des algorithmes d’apprentissage qui aient une bonne chance de se généraliser. Cet algorithme à pour rôle de fournir une sortie qui par convention
est appelé fonction de décision ou fonction hypothèse (hypothesis function) permettant de prédire une valeur cible pour tt les entrées.
Cette fonction doit repose sur une fonction de cout pour minimiser l’écart entre les valeurs prédites et les valeurs réelles.
Pour sélectionner le bon modèle nous avons opté pour une technique d’évaluation standard qui consiste à diviser aléatoirement notre jeu de données en base d'apprentissage (70% de l'échantillon) et base de test (30% du même échantillon).
Pour la régression :nous avons La méthode de la validation croisée (cross validation) qui consiste a minimiser la fonction de cout de l’apprentissage (Jtrain) ainsi que que celle de test J(test) présentée précédemment
Parfois cette évaluation détecte des anomalies. Ces anomalies reflètent des problèmes de sous-apprentissage
ou de sur-apprentissage.
Le sous-apprentissage c’est lorsque le modèle fonctionne mal sur les données de la base d’apprentissage. En d’autres termes, il n’arrive pas à saisir la relation entre les données explicatives et les données cibles.
Le modèle est en sur apprentissage quand il fonctionne correctement avec les données de la base d’apprentissage mais il échoue avec ceux de la base de test. En effet, il est incapable de généraliser ces observations sur des données nouvelles.
Les contribuables composé de personnes physiques et personnes morales se divisent en 8 secteurs organisé selon l’importance de leur revenue (CA).
Chaque secteur est divisé en sous secteurs qui de sa part est divisés en activités et qui sont au nombre de 694.
80% de ces contribuables représentent les meilleurs contributeurs dans le budget de l’Etat, d’où aucun retard ou réticence n’est tolérés pour eux. Donc les 20% restants nécessitent une réglementation de leur situation fiscale.
Pour ce faire, l’intervention de la direction générale des impôts s’avère indispensable. Elle assure ces missions par le biais de ces représentants:
La direction générale des grandes entreprises, ayant pour mission le contrôle des bons payeurs donc son pouvoir comprend toute la Tunisie.
27 centres de contrôles ayant un pouvoir régionale se focalisant sur les 20% restants.
ainsi que les bureaux de contrôles.
La détection de ces fraude se fait par des missions de vérification effectués par 3000 contrôleurs sur toutes la Tunisie.
Toutefois, il existe deux types de missions. La première est une vérification sommaire, ou simple, qui se fait par les bureaux de contrôle suite à une simple vérification des données existantes. Elle aboutit à un montant de redressement simple. La deuxième est une vérification approfondie qui se fait par les centres de contrôle chez le contribuable. Cette mission nécessite un audit complet qui peut durer des années afin d'aboutir à un montant de redressement approfondi. Ainsi, la fraude recherchée est représentée dans les montants des redressements simples et\ou approfondies (existant dans le fichier du TVA ).
Pour réussir un projet de machine d'apprentissage, il faut répondre au défi de la manipulation d'une masse de données gigantesques. Pour les manipuler, nous devons choisir des outils performants spécifiques pour ce traitement dont il y existe plusieurs sur le marché internationales. Parmi les plus populaires, nous avons entamé notre travail en utilisant
R : un language et un environnement de calcul statistique. C’est un outil gratuit et open source multi-plateformes. Il fournit de nombreuses techniques statistiques tels que la modélisation linéaire et non linéaire, les tests statistiques classiques, classification, clustering, et des techniques graphiques, et il est très extensible (Mais, dans le monde professionnel, ce logiciel ne répond pas encore aux attentes des enntreprises.)
Weka C’est un logiciel libre disponible sous la licence publique générale (GNU). Il dispose d’une collection d’algorithmes de machines d’apprentissage pouvant être appelé graphiquement ou à partir d’un code Java. En effet, il contient 49 outils
de prétraitement de données, 76 algorithmes de classification et de régression, 8 algorithmes de clustering et 3 algorithmes d’extraction de règles d’association. Mais, la manipulation a généré des problèmes parce qu’il s’étouffe avec une très grande taille de données.
IBM SPSS Modeler est une plateforme d’analyse prédictive sous licence. Elle fournit toute une gamme d’algorithmes et de techniques avancées, dont l’analytique textuelle, l’analyse d’entités, la gestion et l’optimisation des décisions mais avec des coûts très élevés. En effet, il est disponible pour une version d’essai d’un mois.
SAS C’est le logiciel le plus souple et le plus complet en gestion de fichier. Il contient des fonctions mathématiques et financières prédéfinies. Mais il est structuré sous forme de composant tels que chacun a sa propre licence avec des coûts élevés. Ainsi, pour l’utilisation, il requiert une expertise spécifique en programmation SAS. En effet, il est disponible pour une version étudiant mais qui ne contient pas le composant Entreprise Miner indisponsable pour notre travail.
Avec toutes les difficultés que nous avons confronté durant cette période, nous avons constaté que SPSS et SAS semblent être les solutions les plus adéquates à notre projet. Mais pour des raisons budgétaires, nous avons deccidé d’utiliser le language Python 3.5.1, la bibliothéque de machine d’appprentissage, pandas pour la manipuation des données, matplotlib pour la visualisation des données ainsi que Numpy pour l’algébre linéaire.
Suite à une analyse des différents systémes du centre nous avons choisi la base décisionnelle qui oriente les intervenants pour la régularisation de la situation des défaillants autre que les meilleurs contribuables.
Ainsi la verification des données de cette base a exigé le choix du schéma analyse des risques comportant 21 tables telsque nous avons recours à 14 tables seulement. Ces tables sont…
Comme premiere manipulation des données nous avons remédier à quelques contraintes:
Non conservation des types des données: Forcage des types par des scripts SQL (to char) et des scripts python
Erreurs de saisies: Convertion des sommes du milimes en dinar
Taille des fichiiers: Par un script Scala qui a iliminer les espaces inutiles des fichiers ce qui a permis un gain en terme de stockage,
gain en temps de lecture (simple ouverture du fichier ou lecture avec pandas) , rapiditée d’exécution algorithmes . Le fichier sitfis ayant une taille de 17GO est devenu de l’ordre de 0.61Go
Nous avons entamé notre travail par une phase d’exploration des données. Cette phase a pour but de guider nos choix pour cibler la bonne information.
Notre fichier de base est le fichier des déclarations des tva nous a permis de conclure que pour l’année 2011, avec le minimum des missions de vérifications (nbr d’enregistrement), le minimum des richesses (Somme TVA CA) nous avons réussi à détecter la plus grande somme de fraude.
Par suite, nous avons considéré l’année 2011 comme une année de référence.
Choisir les variables les plus pertinentes pour décrire une masse de données est l’une des missions les plus délicates pour un projet d’apprentissage automatique. Pour palier à cette difficulté nous avons implémenté des critères de détection des fraudeurs potentiels. En effet, ces critères sont les résultats d’une mission d’audit automatisé réalisé par le CIMF en collaboration avec un expert internationale durant le mois de février 2016 (la mssion consiste à diviser les contribuables en 5 classes selon la valeur du chiffre d’affaire. Ensuite, elle calcule la moyenne nationale de chaque classe pour affecter à chaque contribuable un score selon son écart par rapport à la moyenne nationale de sa classe).
Selon la disponibilité des données nous avons choisi 14 critères (au totale 21 critères) tels que leurs implémentation nous renseigne si le contribuable vérifie ou pas ce critère.
Mais l’implémentation de ces critères dépend de la nature du contribuable. Donc nous avons reposer sur 2 fichier :
Decsoc contenant les déclarations des entreprises et decirp contenant les déclarations des personnes physiques tels que à chacun nous avons ajouté les critères correspondants ainsi que les données contribuant dans l’implémentation de ces critères tout en effectuant une jointure gauche.
Pour réussir la modélisation nous devons toujours vérifier la qualité des données des pickles.
nettoyage des données: Nous avons examiné manuellement les échantillons afin d’éliminer les valeurs manquantes. Cette tâche a exigé l’intervention d’un fiscaliste. Il nous a recommandé le remplacement de certaines valeurs par d’autres soit selon les règles du métier soit par un zéro. De plus, nous avons éliminé les enregistrements ayant des 0 partout.
La normalisation (donnée centrée et réduite) : Cette transformation convertit les données vers un standard commun (elle fixe la moyenne à 0 et la variance à 1 ) pour éliminer l’effet taille .
Lors de cette vérification, nous avons remarqué que le nombre des enregistrements a trop augmenté ce qui est due à la jointure des fichiers donc pour un même identifiant ainsi que pour la même année nous avons une redondance des mêmes données selon les types des impôts, et les obligations. Ainsi, nous avons fixé un objectif qui est l’unicité de l’identifiant et de l’année.
Nous expliquons le cas du table "sitfis", la source de la plus grande redondance. Cette table représente la situation fiscale,
qui peut être "D" en défaut ou "R" en règle ou "N" non redevable (exonéré) , de chaque contribuable par rapport aux différents impôts qui peuvent être annuelles (1), semestrielles (4) ou mensuelles
Suite à la jointure avec la table "nomimp" contenant la description des différents impôts ayant subit la concaténation de ces champs ainsi que l’utilisation d’un tableau croisé nous avons modifié le fichier pour aboutir à cette nouvelle forme.
Chaque lettre du champs de la situation fiscale, représente la situation du contribuable dans un mois, semestre ou année selon le type de l’impôt. D’où la nécessité de décortiquer chaque valeur selon la période de l’impôt afin de l’encoder (0, 1, 2) selon sa situation dans chaque période
Mais ces transformations s'avèrent encore insuffisante. Toutefois certains modèles nécessitent des variables quantitatives pour réussir l'apprentissage. D'où, nous avons opté pour l'encodage de certain champs qualitatives. En effet, l'idée consiste à changer la mise en forme des données en créant des variables binaires [3.10] pour indiquer si le contribuable vérifie ou non cette modalité.
La régression linéaire c'est le modèle élémentaire de la modélisation linéaire. Ce modèle fonctionne à base de coefficients estimateurs . Il estime la relation entre une variable dépendante Y quantitative et plusieurs variables indépendantes ( en supposant que Y est une fonction affine des Xi . Il sert lors de l'approche exploratoire pour répondre à la problématique de la recherche de l'influence d'une variable quantitative X sur la variable quantitative Y, ainsi qu'à la recherche d’un modèle de prévision de Y en fonction de X.
Pour éviter le sur-apprentissage de la régression linéaire, nous comptons simplifier notre fonction hypothèse. la solution la plus efficace est d'ajouter un terme de régularisation (regularization term) qui réduit la forte variance en réduisant les paramètres θi.
Ce terme de régularisation dépend du paramètre de régularisation qui, de même, ne doit pas avoir une grande valeur pour éviter le sous-apprentissage
des réseaux de neurones biologiques tels que chaque neurone correspond à un nœud formant les différents couches du réseau.
Pour spécifier la structure du réseau, il faut tout d’abord choisir le nombre des couches (layers) et le nombre de neurones (units) et la fonction d’activation de chaque couche pour fixer nos couches cachées (hidden layers). Ainsi, nous rappelons que le nombre de neurones sur la couche d’entrée est égal au nombre des attributs de notre modèle. Aussi, le nombre de neurones sur la couche de sortie est fixé par les spécifications du problème à résoudre qui est le nombre de classe à prédire.
MLP est l’un des algorithmes les plus connus du NN. Il fonctionne en 2 phase:
* En phase de propagation : Pour chaque passage d’un niveau j à un autre j + 1, il calcule les matrices des poids j . Ensuite, il applique les fonctions d’activations "g" pour activer chaque unité i de la couche j par la formule.
* Pour minimiser J, nous utilisons la méthode de la rétro propagation du gradient . En effet, elle calcule l’erreur pour chaque neurone par rapport à l'activation de cette unité
un modèle d'apprentissage très puissant dans un espace de dimension large abordant intelligemment le défi de la complexité du jeu des données.
Il a pour but de séparer linéairement les données ce qui peut être vérifier par plusieurs hyperplan A, B et H mais H est le plus robuste car il maximise la marge de séparation entre les classes.
Pour des problèmes plus complexes, la séparation linéaire ne peut pas faire les groupements des échantillons correctement. Ainsi, pour adapter l'algorithme SVM à des problèmes de classification non linéaire une fonction noyau (Kernels) est souvent utilisée. Cette fonction à pour rôle de transformer l'espace de représentation des données d'entrées en un espace de plus grande dimension dans lequel il est probable qu'il existe une séparation linéaire . Donc pour mettre le SVM en pratique, nous devons choisir notre noyau ainsi que la paramètre de régularisation (pour des raisons d’optimisation).
Une technique s’apprentissage qui construit aléatoirement de nombreux arbres de décision pour découper l'espace des variables explicatives en groupes homogènes.
L'idée d'apprentissage est d'utiliser une combinaison aléatoire des données (bagging). Ensuite, à l'aide d'une méthode d'induction d'arbres tels que l’algorithme CART il sélectionne les critéres de partitionnement de l’arbre.
Pour chaque nœud de l'arbre, un sous-ensemble de caractéristiques est généré aléatoirement, à partir duquel le meilleur partitionnement est réalisé.
La décision finale est un simple vote majoritaire des votes des arbres préalablement construits.
En pratique, nous devons définir le nombre d’arbre souhaité.
Selon les résultats de la phase exploration des données, nous avons décidé d’estimer les valeurs du redressement simple et approfondie en fonction des différents TVA. Ceci a exigé le découpage des contribuables en 5 classes selon la valeur de leur chiffre d’affaire (on peut pas estimer une petite valeur ainsi qu’une large de la même façon )
L’idée de notre modélisation linéaire est d’estimer notre variable cible pour chaque classe pour l’année de référence 2011.
Ensuite en reposant sur ces données, nous estimons les redressements de chaque classe pour les année qui suivent.
Pour ce faire, nous avons utilisé l’algorithme LinearRegression qui nécessite une normalisation des données
Ainsi, nous avons utilisé l’algorithme Ridge qui nécessite une paramètre de régularisation lambda
M: milliard
K: million
La régression linéaire a abouti a de très grandes valeurs derreurs que se soit pour le redressement simple ou approfondie. Ce qui reflette un probléme de surapprentissage.
Essayant d’améliorer les résultats précédente et de résoudre le problème du sur apprentissage, nous avons opter pour la régression ridge qui de meme a échoué l’apprentissage. Ceci est montré dans les valeurs des erreurs .
Donc notre modèle n’est pas un modèle linéaire. Par suite nous avons fait recours a des technique d’apprentissage non linéaire .
L’idée de cette partie est d’estimer la marge de fraude de chaque contribuable. Ce qui revient à classifier les fraudeurs selon la somme des redressements simples et approfondies. Ces cllasses sont…
Nous avons opté pour l’architecture du perceptron multicouche. Nous avons utiliser l’algorithme MLP de sknn.
Nous avons utilisé l’algorithme Support vector classifier de sckit learn
Ainsi que l’algorithme extra tree classifier de scikit learn
Les précision se sont améliorée
Taux proches
Nous remarquons que les taux d’apprentissage sont proches pour les différents algorithmes (Point positif ). En effet, les taux d’apprentissage du NN et SVM sont proches pour les 2 catégories. Mais, ces taux se sont améliorés avec l’utilisation de l’algorithme forêts d’arbres décisionnels.
De plus, cet algorithme réussit son apprentissage pour les personnes physiques (46%) et les personnes morales (42%)
avec des taux très proches. Cependant, nous concluons que pour cette réalisation, nous pouvons confier la mission de détection des fraudes pour les deux cas des contribuables à la technique des forets d’arbres décisionels.
Mais, réussir à créer un modèle stable et précis n’est pas la fin du projet. En effet, la machine a besoin d’augmenter sa connaissance afin de palier aux modifications des comportements frauduleux. Ainsi, un travail continue pour mettre à jour les connaissances acquises s’avère nécessaire. Ceci nécessite la mise en place d’une plateforme Big data d’échange des données. Cette plateforme, paraissant prometteuse, permet un accès généralisé et direct aux données afin de croiser des informations issues de sources distinctes et hétérogènes. Ceci implique la nécessité de disposer de structures administratives et de procédures aptes à alimenter de manière fiable et permanente cette plateforme. Il est donc particulièrement urgent de remettre sur pied cette initiative par une architecture Big data qui accélère le traitement d’une grande masse de données ayant subit une phase de préparation de données par un ETL spécifique pour enrichir les tableaux de bord du système décisionnel.