modèle de tableau de bord Python

Les modèles de mesure du risque de crédit peuvent inclure des notations de crédit individuelles, des notations de crédit d’entreprises et des notations de crédit nationales. Les notations de crédit personnelles sont composées d'une série de modèles de notation, les plus courants sont la carte A (carte de notation d'application), la carte B (modèle comportemental), la carte C (modèle de collecte) et la carte F (modèle anti-fraude). Aujourd'hui, nous montrons le processus de développement du modèle de notation de crédit personnel. Les données utilisent le célèbre ensemble de données de crédit Give Me Some sur Kaggle .

1. Processus de modélisation

Un modèle typique de carte de pointage de crédit est illustré à la figure 1-1. Le principal processus de développement du modèle de notation du risque de crédit est le suivant :
(1) Obtenir des données, y compris les données des clients qui demandent des prêts. Les données incluent diverses dimensions des clients, notamment l'âge, le sexe, le revenu, la profession, le nombre de membres de la famille, la situation en matière de logement, la situation de consommation, l'endettement, etc.
(2) Prétraitement des données, le travail principal comprend le nettoyage des données, le traitement des valeurs manquantes, le traitement des valeurs aberrantes, la conversion des types de données, etc. Nous devons convertir les données brutes couche par couche en données modélisables.
(3) Analyse exploratoire des données EDA et statistiques descriptives, y compris les statistiques sur la taille globale des données, la proportion de bons et de mauvais clients, les types de données, le taux manquant variable, la visualisation d'histogramme d'analyse de fréquence variable, la visualisation de boîte à moustaches, la visualisation de corrélation variable, etc.
(4) Sélection de variables, via des méthodes statistiques et d'apprentissage automatique, pour éliminer les variables qui ont l'impact le plus significatif sur l'état par défaut. Il existe de nombreuses méthodes courantes de sélection de variables, notamment iv, l'importance des caractéristiques, la variance, etc. De plus, il est également recommandé de supprimer les variables présentant un taux de manquants élevé. Il est également recommandé de supprimer les variables qui n'ont pas de variables explicatives métier ni de variables de valeur.
(5) Développement du modèle, les principales difficultés de la modélisation des cartes de notation sont le regroupement des malheurs, l'étirement des scores et le calcul des coefficients variables. Parmi eux, le malheur est l'un des points les plus difficiles du tableau de bord, qui nécessite de riches connaissances statistiques et une expérience commerciale. À l'heure actuelle, il existe plus de 50 algorithmes de regroupement et il n'existe pas d'étalon-or unifié. Généralement, la machine effectue d'abord un regroupement automatique, puis ajuste manuellement le regroupement, et enfin teste à plusieurs reprises les performances finales du modèle et sélectionne le meilleur algorithme de regroupement. .
(6) Vérification du modèle, vérifier la capacité du modèle à distinguer, prédire, stabilité, capacité de tri, etc., et former un rapport d'évaluation du modèle pour tirer une conclusion si le modèle peut être utilisé. La vérification du modèle n'est pas effectuée en une seule fois, mais après la modélisation, avant le lancement du modèle et après le lancement du modèle, elle est régulièrement vérifiée. Le développement et la maintenance du modèle sont un cycle et non un processus ponctuel.
(7) Carte de pointage de crédit, qui génère une carte de pointage basée sur le coefficient variable et la valeur WOE de la régression logistique. Le tableau de bord est pratique pour l’interprétation commerciale, est utilisé depuis des décennies, est très stable et est apprécié par le secteur financier. La méthode consiste à convertir le score de probabilité du modèle logistique en une forme de score standard de 300 à 900 points.
(8) Établir un système de modèle de carte de pointage et établir un système informatique de notation automatique du crédit basé sur la méthode de la carte de pointage de crédit. Le produit américain traditionnel FICO a des fonctions similaires et le langage sous-jacent de FICO est Java. Java, Python ou R sont actuellement des langages populaires pour créer des systèmes de modèles d'automatisation de cartes de pointage.

(9) Surveillance du modèle. Au fil du temps, la capacité de distinguer des modèles, tels que ks et auc, diminuera progressivement et la stabilité du modèle changera également. Nous avons besoin d'une équipe professionnelle de surveillance du modèle. Lorsque la surveillance montre une baisse significative de la discrimination du modèle ou un changement important dans la stabilité du modèle, nous devons redévelopper le modèle et le réitérer. L'équipe de surveillance des modèles doit envoyer des rapports de surveillance des modèles aux équipes concernées par e-mail à temps chaque jour, en particulier à l'équipe de développement et à l'équipe commerciale.

insérer la description de l'image ici

2. Obtenez des données

Avant, j'ai parlé de l'utilisation de l'ensemble de données de crédit allemand pour créer un modèle de carte de crédit Python. L'avantage de cet ensemble de données est qu'il contient une petite quantité de données et ne nécessite pas de matériel informatique élevé, ce qui est pratique pour les étudiants de tous horizons. apprendre et tester.

image

Les algorithmes de notation de crédit font des suppositions sur la probabilité de défaut et sont ce que les banques utilisent pour déterminer si un prêt doit être accordé. Les données concernent les prêts personnels à la consommation, améliorant l'état de l'art en matière de cotes de crédit en prédisant la probabilité qu'une personne connaisse des difficultés financières au cours des deux prochaines années.

Les banques jouent un rôle essentiel dans une économie de marché. Ils décident qui obtient un financement et à quelles conditions, et peuvent prendre des décisions d'investissement ou y mettre fin. Pour que les marchés et les sociétés fonctionnent, les individus et les entreprises doivent avoir accès au crédit.

donnez-moi un peu de crédit, il dispose de 150 000 échantillons de données, qui résolvent les données de combat réelles des moyennes et grandes institutions financières et sont plus proches du combat réel des projets d'entreprises financières. L'ensemble de données améliore les cotes de crédit en prédisant la probabilité qu'une personne connaisse des difficultés financières au cours des deux prochaines années.

image

L'interprétation chinoise des variables, les variables sont peu nombreuses mais précises, peut être utilisée comme référence pour la modélisation

image

Nous classons les variables ci-dessus en :

– Attributs de base : y compris l’âge de l’emprunteur à ce moment-là.

– Solvabilité de la dette : y compris le ratio de ligne disponible de l’emprunteur, le revenu mensuel et le taux d’endettement.

– Historique de crédit : 35 à 59 jours de retard dans un délai de deux ans, 60 à 89 jours de retard dans un délai de deux ans, 90 jours de retard dans un délai de deux ans

jours ou en souffrance depuis plus de 90 jours.

– Statut de propriété : comprend le nombre de crédits et de prêts ouverts, ainsi que le nombre de prêts ou de lignes immobilières.

– Autres facteurs : le nombre de personnes à la charge de l’emprunteur (sans compter lui-même)

Dans le concours de modèles Kaggle, le bonus est de 5 000 dollars américains et l'indice d'évaluation du modèle est AUC .

image

Le meilleur score AUC de l'ensemble de données de crédit sur Internet au pays et à l'étranger est de 0,85.

image

Cependant, l'AUC dans notre didacticiel "Modélisation de carte de crédit python (avec code)" peut atteindre 0,929, et l'AUC peut être plus élevée après ajustement des paramètres, ce qui est beaucoup plus élevé que les performances du modèle AUC = 0,85 du donnez-moi du papier de crédit sur Internet. Les articles Internet contiennent de nombreuses théories plausibles mais en réalité incorrectes sur les étapes de modélisation.

image

Si vous êtes curieux de savoir comment nous pouvons atteindre une AUC de 0,929 pour l'ensemble de données Donnez-moi un peu de crédit, veuillez vous référer au didacticiel « Modélisation de carte de crédit Python (avec code) »

Un aperçu de l'ensemble de données de crédit dans "Modélisation de carte de pointage de crédit Python (avec code)".

image

3. Prétraitement des données

Prétraitement des données, le travail principal comprend le nettoyage des données, le traitement des valeurs manquantes, le traitement des valeurs aberrantes, la conversion des types de données, etc. Nous devons convertir les données brutes couche par couche en données modélisables.


3.1 Traitement des valeurs manquantes

Les données manquantes dans l'ensemble de données Donnez-moi un peu de crédit ne sont pas sérieuses. Seules deux variables ont des valeurs manquantes, et les taux manquants sont de 2 % et 19,8 %.

image

En réalité, il est très courant que les données comportent un grand nombre de valeurs manquantes. Le taux d'absence de nombreuses variables dans les enquêtes de crédit de la banque centrale peut atteindre 99 %. Les valeurs manquantes peuvent entraîner des problèmes dans certaines analyses et modélisations de données. Habituellement, lors de la première étape du développement du modèle de carte de pointage du risque de crédit, nous traiterons les valeurs manquantes. Les méthodes de traitement des valeurs manquantes sont les suivantes.
(1) Supprimez directement les échantillons contenant des valeurs manquantes.
(2) Remplissez les valeurs manquantes.
(3) Ignorez-le.

3.2 Traitement des valeurs aberrantes

Après le traitement des valeurs manquantes, nous devons effectuer un test de valeurs aberrantes. Les valeurs aberrantes sont divisées en valeurs aberrantes statistiques et valeurs aberrantes commerciales. Les valeurs aberrantes statistiques sont généralement jugées par des diagrammes en boîte, comme le montre la figure ci-dessous.

image

La valeur anormale dans l'entreprise est de juger si les données sont raisonnables ou non en fonction de la définition des variables et du bon sens du secteur d'activité. Par exemple, dans l'ensemble de données Donnez-moi du crédit, l'âge des clients individuels est 0. Selon le bon sens, nous considérons cette valeur comme une valeur aberrante. Quelle société de prêt prêtera de l’argent aux utilisateurs âgés de 0 ans ?

image

3.3 Partitionnement des données

Après avoir construit le modèle, nous rencontrons généralement les trois situations suivantes : sous-ajustement, sous-ajustement, ajustement parfait et surajustement, surajustement.

image

Afin de vérifier les performances du modèle, nous devons diviser l'ensemble de données.

Divisez d’abord toutes les données en données x et données y (variable cible cible).

Divisez ensuite les données x et y en ensemble d'entraînement et ensemble de test, et générez quatre variables train_x, test_x, train_y, test_y.

image

4. Analyse exploratoire des données de l’EDA et statistiques descriptives

En raison de la structure physiologique du cerveau humain, la plupart des gens ne sont pas sensibles aux chiffres, mais la visualisation des données est plus conviviale pour la compréhension du cerveau. C'est là l'importance de la visualisation des données, et elle est également pratique pour rendre compte aux dirigeants ou aux décideurs.

image

L'analyse exploratoire des données EDA et les statistiques descriptives incluent des statistiques sur le volume global des données, la proportion de bons et de mauvais clients, les types de données, le taux de données manquantes variable, la visualisation de l'histogramme d'analyse de fréquence variable, la visualisation de la boîte à moustaches, la visualisation de la corrélation variable, etc. EDA est l'abréviation de Exploratory Data Analysis, et l'interprétation chinoise est une analyse exploratoire des données. Il existe de nombreuses méthodes courantes d'analyse exploratoire des données : histogramme, nuage de points scater, boxplot boxer, carte thermique, carte d'appariement de paires.

L'histogramme de la variable d'âge de l'ensemble de données Donnez-moi un peu de crédit

image

L'histogramme des variables cibles de l'ensemble de données Donnez-moi du crédit montre que la proportion de bons et de mauvais clients est très déséquilibrée. Le nombre de bons clients est environ 15 fois supérieur au nombre de mauvais clients.

image

Histogramme du nombre variable de membres de la famille dans l'ensemble de données Donnez-moi du crédit

image

Le diagramme d'appariement pairplot de toutes les variables de l'ensemble de données Donnez-moi un peu de crédit, de nombreuses informations sont claires en un coup d'œil.

image

La carte thermique de la corrélation de toutes les variables dans l'ensemble de données Donnez-moi un peu de crédit peut être analysée pour montrer qu'il existe 6 paires de corrélations de variables qui sont très élevées, et qu'il convient d'être attentif lors du filtrage des variables.

image

La variable d'âge de l'ensemble de données de crédit concerne les statistiques de boîte à moustaches de classification des bons et des mauvais clients. On constate que l’âge médian des bons clients est plus élevé que l’âge médian des mauvais clients.

image

5. Sélection de variables

Sélection de variables, via des méthodes statistiques et d'apprentissage automatique, pour éliminer les variables qui ont l'impact le plus significatif sur l'état par défaut. Il existe de nombreuses méthodes courantes de sélection de variables, notamment iv, l'importance des caractéristiques, la variance, etc. De plus, il est également recommandé de supprimer les variables présentant un taux de manquants élevé. Il est également recommandé de supprimer les variables qui n'ont pas de variables explicatives métier ni de variables de valeur.

Dans la visualisation de l'importance des fonctionnalités de l'algorithme d'arbre intégré catboost dans le didacticiel "Modélisation de carte de crédit python (avec code)", nous pouvons clairement voir que la variable de ratio de montant disponible RevolvingUtilizationOfUnsecuredLines est la plus importante. Plus les barres bleues de la figure sont longues, plus l’importance est grande, et vice versa.

image

Les résultats du calcul de la valeur de la variable iv dans le didacticiel "Modélisation de carte de crédit python (avec code)" sont les suivants. Nous pouvons clairement voir que la valeur iv de la variable de ratio de montant disponible de RevolvingUtilizationOfUnsecuredLines est la plus élevée.

image

Grâce aux méthodes d'importance des fonctionnalités et de valeur iv, nous pouvons obtenir la même conclusion : la variable de ratio de quota disponible RevolvingUtilizationOfUnsecuredLines est la plus importante.

6. Développement de modèles

Les principales difficultés liées au développement de modèles et à la modélisation de tableaux de bord sont le regroupement des malheurs, l'étirement des scores et le calcul des coefficients variables. Parmi eux, le malheur est l'un des points les plus difficiles du tableau de bord, qui nécessite de riches connaissances statistiques et une expérience commerciale. À l'heure actuelle, il existe plus de 50 algorithmes de regroupement et il n'existe pas d'étalon-or unifié. Généralement, la machine effectue d'abord un regroupement automatique, puis ajuste manuellement le regroupement, et enfin teste à plusieurs reprises les performances finales du modèle et sélectionne le meilleur algorithme de regroupement. .

"Modélisation de carte de crédit Python (avec code)" explique Kmeans, le regroupement à fréquence égale, le regroupement équidistant, le regroupement du chi carré, le principe de l'algorithme de regroupement des arbres de décision et Python pour obtenir le code de regroupement. "Modélisation de carte de crédit Python (avec code)" vous indique également comment choisir la méthode de regroupement ? Selon différents besoins, choisissez la méthode de regroupement la plus appropriée.

image

Le binning est principalement divisé en méthodes supervisées et méthodes non supervisées. L'algorithme de clustering k-means (algorithme de clustering k-means) est un algorithme d'analyse de clustering itératif.Ses étapes consistent à diviser les données en groupes K à l'avance, puis à sélectionner au hasard K objets comme centres de cluster initiaux, puis à calculer la distance entre chaque objet et chaque centre de cluster de départ, attribuez chaque objet au centre de cluster le plus proche de lui. Les centres de cluster et les objets qui leur sont attribués représentent un cluster. Chaque fois qu'un échantillon est attribué, le centre du cluster est recalculé en fonction des objets existants dans le cluster. Ce processus sera répété jusqu'à ce qu'une certaine condition de résiliation soit remplie. Les conditions de terminaison peuvent être qu'aucun objet (ou un nombre minimum) n'est réaffecté à différents clusters, qu'aucun centre de cluster (ou un nombre minimum) ne change à nouveau et que la somme des carrés des erreurs est localement minimisée. La figure ci-dessous montre le principe de l’algorithme de binning Kmeans.

image

Le légendaire regroupement optimal est le regroupement par arbre de décision.

Les étapes de l’algorithme de regroupement de l’arbre de décision sont :

Étape 1 : Tout d'abord, il utilise les variables que nous voulons discrétiser pour former un arbre de décision de profondeur finie (2, 3 ou 4) afin de prédire la cible.

_Étape 2 :_Remplacez ensuite les valeurs des variables d'origine par les probabilités renvoyées par l'arbre. Toutes les observations dans un même groupe ont la même probabilité, donc remplacer les probabilités équivaut à regrouper les observations dans un seuil déterminé par l'arbre de décision.

Les avantages et les inconvénients de l’algorithme de regroupement d’arbres de décision sont :

avantage:

  • L'arbre de décision renvoyé par la prévision probabiliste est lié de manière monotone à la cible.

  • Les nouveaux compartiments affichent une entropie réduite, c'est-à-dire à quel point les observations dans chaque compartiment/seau sont similaires à elles-mêmes par rapport aux observations dans d'autres compartiments/seaux.

  • L'arbre trouvera automatiquement le bac.

défaut:

  • peut conduire à un surapprentissage

  • De plus, certains ajustements des paramètres de l'arborescence peuvent être nécessaires pour obtenir des divisions optimales (par exemple, profondeur, nombre minimum d'échantillons dans une partition, nombre maximum de partitions et gain d'informations minimum). Cela peut prendre du temps.

image

                                (决策树分箱可视化)



  • 1
  • 2
  • 3
  • 4

Le regroupement équidistant peut être utilisé pour des variables telles que l’âge.

image

Une fois le regroupement terminé, les données regroupées sont converties en données de malheur et finalement modélisées avec un algorithme de régression logistique.

7. Validation du modèle

Après la modélisation de l'algorithme de régression logistique, nous avons besoin d'une validation du modèle. La vérification du modèle consiste à vérifier si la capacité de discrimination, la capacité de prédiction, la stabilité, la capacité de tri et d'autres indicateurs du modèle sont qualifiés, et à former un rapport d'évaluation du modèle pour tirer une conclusion si le modèle peut être utilisé. La vérification du modèle n'est pas effectuée en une seule fois, mais après la modélisation, avant le lancement du modèle et après le lancement du modèle, elle est régulièrement vérifiée. Le développement et la maintenance du modèle sont un cycle et non un processus ponctuel.

Au fil du temps, la capacité du modèle à distinguer, comme ks, auc, diminuera progressivement et la stabilité du modèle changera également. Lorsque la capacité de distinction du modèle est considérablement réduite ou que la stabilité du modèle est considérablement modifiée, nous devons redévelopper le modèle et le répéter.

L'AUC du modèle de formation dans le didacticiel « Modélisation de cartes de crédit python (avec code) » est de 0,929. Les performances spécifiques du modèle sont les suivantes :

la précision du modèle est : 0,9406307593547452

la précision du modèle est : 0,9060132575757576

la sensibilité du modèle est : 0,6077497220898841

f1_score : 0,7274973861800208

ASC : 0,9290751730536397

bon classificateur

gini0.8581503461072795

valeur ks : 0,7107

Il dépasse de loin les performances du modèle AUC 0,85 de l'Internet, donnez-moi du papier de modélisation d'ensemble de données de crédit.

image

8. La naissance du tableau de bord

===

Le modèle génère des cartes de pointage basées sur des coefficients de variables de régression logistique et des valeurs WOE. Le tableau de bord est pratique pour l’interprétation commerciale, est utilisé depuis des décennies, est très stable et est apprécié par le secteur financier. La méthode consiste à convertir le score de probabilité du modèle logistique en une forme de score standard de 300 à 900 points. Le score FICO américain est imité par la plupart des cartes de crédit nationales.

Les personnes ayant un score FICO de 800 ou plus ont des antécédents de crédit spéciaux. Les personnes ayant des cotes de crédit élevées sont susceptibles d’avoir bénéficié de plusieurs marges de crédit au fil des ans. Ils n’ont dépassé aucune limite de crédit et ont remboursé toutes les dettes dans les délais.

Un score FICO de 700 moyen à élevé est un bon score. Les personnes se situant dans cette fourchette empruntent, dépensent judicieusement et effectuent leurs paiements en temps opportun. Ces personnes, comme celles âgées de plus de 800 ans, ont tendance à avoir plus facilement accès au crédit et paient souvent des taux d’intérêt beaucoup plus bas.

Les scores les plus courants se situent entre 650 et 750. Bien que les personnes ayant des scores dans cette fourchette aient un assez bon crédit, elles peuvent être en retard dans leurs paiements. Ces personnes n’ont généralement pas de difficulté à obtenir des prêts. Toutefois, ils pourraient devoir payer un taux d’intérêt légèrement plus élevé.

La dernière fourchette pratique à considérer est un score de 599 ou moins. Ils sont considérés comme ayant une mauvaise cote de crédit et sont généralement le résultat de plusieurs retards de paiement, de paiements manqués ou de dettes transférées à une agence de recouvrement. Il est souvent difficile, voire impossible, pour les personnes ayant de tels scores FICO d'obtenir une quelconque forme de crédit.

image

Comme le montre la figure ci-dessous, la cote de crédit FICO de très mauvais 300 à 579 représente la proportion la plus faible, seulement 17 % ; la proportion de bon 670 à 739 est la plus élevée, atteignant 21,5 %.

image

"Modélisation de cartes de crédit Python (avec code)" contient des chapitres détaillés sur la génération de cartes de pointage, notamment PDO, theta0, P0, A, B, odds, woe, iv et d'autres termes professionnels entièrement expliqués.

image

9. Système de notation automatique Scorecard

Sur la base de la base ci-dessus, nous pouvons générer un système de notation automatisé pour générer des étiquettes réelles pour les bons et les mauvais clients, des étiquettes prédites pour les bons et les mauvais clients, des valeurs de probabilité pour les mauvais clients et des scores étirés pour chaque utilisateur du formulaire de candidature.

image

Sur la base de la méthode des cartes de crédit, nous pouvons créer un système informatisé de notation de crédit automatique. Le produit américain traditionnel FICO a des fonctions similaires et le langage sous-jacent de FICO est Java. Java, Python ou R sont actuellement des langages populaires pour créer des systèmes de modèles d'automatisation de cartes de pointage. Si la quantité de données est importante, il n’est pas facile d’établir un système automatique de notation du crédit, qui nécessite des tests et une mise à jour continus par une équipe professionnelle. Python ou R est un langage open source et le package est régulièrement mis à jour. S'il n'y a pas d'équipe professionnelle à maintenir, le système aura de sérieux problèmes à l'avenir.

10. Surveillance du modèle

Au fil du temps, la capacité du modèle à distinguer, comme ks, auc, diminuera progressivement et la stabilité du modèle changera également. Nous avons besoin d'une équipe professionnelle de surveillance du modèle. Lorsque la surveillance montre une baisse significative de la discrimination du modèle ou un changement important dans la stabilité du modèle, nous devons redévelopper le modèle et le réitérer. L'équipe de surveillance des modèles doit envoyer des rapports de surveillance des modèles aux équipes concernées par e-mail à temps chaque jour, en particulier à l'équipe de développement et à l'équipe commerciale.

L'indicateur ks de surveillance du modèle, lorsque le modèle ks est inférieur à 0,2, la capacité du modèle à distinguer les bons et les mauvais clients a peu d'effet et le modèle doit être réitéré.

image

L'indicateur de mauvais taux suivi par le modèle, lorsque les mauvais taux augmentent soudainement, les dirigeants seront très nerveux, ce qui signifie qu'un grand nombre de prêts ne pourront pas couvrir le coût.

image

L'indice PSI surveillé par le modèle, lorsque le PSI est supérieur à 0,25, indique que le modèle est extrêmement instable et doit être réitéré.

image

Résumer

Le processus principal du modèle de carte de pointage de crédit basé sur Python est présenté ici, mais la modélisation réelle de la carte de pointage contient de nombreux détails, et la description de ces détails sur Internet est trop hâtive, voire incorrecte. Par exemple, si le taux de manquant d'une variable atteint 80 à 90 %, la variable doit-elle être supprimée directement ? La corrélation variable peut-elle être supprimée si elle atteint 0,8 ? Les modélisateurs expérimentés doivent trouver un équilibre entre la théorie mathématique, les besoins réels des secteurs d'activité, les résultats des tests informatiques, etc., au lieu de penser aux problèmes sous un seul angle. C’est comme si les chirurgiens expérimentés ne suivaient pas nécessairement exactement les théories des manuels. Il existe de nombreuses controverses dans les domaines des statistiques, de l’apprentissage automatique, de l’intelligence artificielle et d’autres domaines, et il n’existe pas de consensus complet. Vous devez maintenir des capacités de réflexion indépendantes pendant vos études, afin de pouvoir optimiser continuellement vos connaissances en science des données.

Le modèle de carte de pointage de crédit basé sur Python-donnez-moi un peu de crédit est présenté ici pour tout le monde,
documents de référence : <Cours micro-professionnel sur le modèle de carte de pointage de contrôle des risques financiers Python et l'analyse des données (édition améliorée)>

Déclaration de droit d'auteur : L'article provient du compte officiel (modèle de contrôle des risques python), sans autorisation, pas de plagiat. Conformément à l'accord de droits d'auteur CC 4.0 BY-SA, veuillez joindre le lien source original et cette déclaration pour la réimpression.

Je suppose que tu aimes

Origine blog.csdn.net/toby001111/article/details/132629431
conseillé
Classement