Scikit-learn: Correction de la documentation des valeurs par défaut dans toutes les classes

Créé le 2 déc. 2019  ·  118Commentaires  ·  Source: scikit-learn/scikit-learn

La description

La documentation des valeurs par défaut dans de nombreuses classes n'est pas incluse, incohérente dans la façon dont elle est écrite ou obsolète. J'aimerais rassembler quelques personnes pour travailler sur la documentation des valeurs par défaut pour chaque classe, car il existe une tonne de classes où ces problèmes existent. On m'a dit que les valeurs par défaut devraient être documentées comme "default=<'value'>" et je crée donc ce problème sous cette hypothèse.

Solution

Voici quelques éléments que j'ai vus pour les paramètres qui devraient être modifiés :

  • aucune mention de l'existence d'une valeur par défaut doit être vérifiée par rapport au code car quelques paramètres manquent complètement
  • "facultatif" doit être remplacé par "default=<'value'>"
  • assurez-vous que la façon dont les valeurs par défaut sont documentées est cohérente au sein de la classe, c'est-à-dire changez tout au format "default=<'value'>"
  • Modifier un seul fichier par PR

Si quelques personnes travaillent chacune sur quelques cours, cela devrait être fait en un rien de temps ! Ceux-ci devraient tous être des correctifs assez simples.

#### Exemples
https://scikit-learn.org/stable/modules/generated/sklearn.cluster.AgglomerativeClustering.html
Le lien ci-dessus est un exemple où les valeurs par défaut ne sont pas indiquées mais les paramètres disent « facultatif », et où ceux avec des valeurs par défaut indiquées sont tous documentés de manière incohérente.

Sprint good first issue

Commentaire le plus utile

Logiquement, si un paramètre est facultatif, la valeur par défaut ne devrait-elle pas toujours être None ? Avoir un paramètre avec une valeur par défaut autre que None suggère qu'il devrait être obligatoire.

S'il y a une valeur par défaut, cela signifie généralement que la littérature a trouvé qu'il s'agit d'une valeur par défaut raisonnable qui suggère également que ce paramètre a un impact sur les performances et qu'il ne devrait donc pas être facultatif, mais devrait simplement mentionner quelle est la valeur par défaut. Ceux-ci semblent plus proches des paramètres requis par définition, nous avons juste fait un choix judicieux pour l'utilisateur afin qu'il puisse le modifier ou non.

Ou plus concrètement, y a-t-il actuellement des paramètres facultatifs que nous avons trouvés qui ont des valeurs numériques par défaut, mais pour lesquels la spécification de None lèvera une exception ? Cela suggérerait également que le paramètre est réellement requis, mais qu'une valeur par défaut raisonnable a été choisie sur la base de la littérature/de la recherche.

Ou peut-être ai-je confondu le sens de required et de optional toutes ces années ? MDR. J'aimerais vraiment aider de toute façon!

Tous les 118 commentaires

Bonjour @cgsavard , j'aimerais travailler dessus. Puis-je commencer à regarder la classe AgglomerativeClustering ?

@vachanda Vas-y ! Nous pouvons continuer à publier ici ceux sur lesquels nous travaillons afin que les autres sachent.

Merci d'avoir coordonné ce @cgsavard

Note aux contributeurs : veuillez suivre les directives sous : https://scikit-learn.org/stable/developers/contributing.html#guidelines -for-writing-documentation

@cgsavard , existe-t-il une liste de classes qui présentent des divergences ou devons-nous les parcourir et les mettre à jour ?

@vachanda Je n'ai pas de liste, malheureusement. Je viens de parcourir les fichiers et de voir ce qui doit être mis à jour.

Je travaille sur AffinityPropagation, SpectralCoclustering, SpectralBiclustering et Birch.

Je travaille sur FeatureAgglomération, KMeans et MiniBatchKMeans.

Logiquement, si un paramètre est facultatif, la valeur par défaut ne devrait-elle pas toujours être None ? Avoir un paramètre avec une valeur par défaut autre que None suggère qu'il devrait être obligatoire.

S'il y a une valeur par défaut, cela signifie généralement que la littérature a trouvé qu'il s'agit d'une valeur par défaut raisonnable qui suggère également que ce paramètre a un impact sur les performances et qu'il ne devrait donc pas être facultatif, mais devrait simplement mentionner quelle est la valeur par défaut. Ceux-ci semblent plus proches des paramètres requis par définition, nous avons juste fait un choix judicieux pour l'utilisateur afin qu'il puisse le modifier ou non.

Ou plus concrètement, y a-t-il actuellement des paramètres facultatifs que nous avons trouvés qui ont des valeurs numériques par défaut, mais pour lesquels la spécification de None lèvera une exception ? Cela suggérerait également que le paramètre est réellement requis, mais qu'une valeur par défaut raisonnable a été choisie sur la base de la littérature/de la recherche.

Ou peut-être ai-je confondu le sens de required et de optional toutes ces années ? MDR. J'aimerais vraiment aider de toute façon!

@jmwoloso Nous étions vraiment incohérents en ce qui concerne l'utilisation de optional et nous avons donc récemment décidé de le supprimer.

je veux contribuer aussi. puis-je aller de l'avant avec ça

@glemaitre ok, ça a du sens. alors nous supprimons le verbe optional tous ensemble, n'est-ce pas, tout en notant également les valeurs par défaut dans les chaînes de documentation ?

chacun de ceux que nous trouvons doit-il être ouvert séparément en tant que problème ou comment organisons-nous tout ce travail que nous faisons puisque plusieurs personnes travaillent sur plusieurs choses liées à ce seul problème ?

@cyrus303 @jmwoloso Vous pouvez obtenir une classe (un module maximum) et la corriger. L'idée est de supprimer l'optionnel et d'ajouter une valeur par défaut lorsqu'il y en a une (il y en a généralement une). Puisque nous touchons à la documentation, nous devons nous assurer que le style sur la ligne suit notre nouveau guide de style : https://scikit-learn.org/dev/developers/contributing.html#guidelines -for-writing-documentation

Vous pouvez mentionner sur quelle classe/module vous travaillez, ouvrir un lien un PR pour éviter les efforts en double :). J'ai hâte de le revoir.

Hey! Je travaillerai sur des cours de tree ( tree.DecisionTreeClassifier , tree.DecisionTreeRegressor , tree.ExtraTreeClassifier et tree.ExtraTreeRegressor ).

Je vais également résoudre ce problème pour le module neighbors .

Je vais prendre le module ensemble .

@glemaitre une préférence sur bool vs boolean ? voir un mélange des deux dans ensemble , même dans la même classe. autant les remettre en forme pendant que je fais les valeurs par défaut.

ÉDITER:

idem pour int vs integer . Je suppose que int sur celui-là, mais je voulais confirmer.

EDIT (encore) :

voir également des docstrings avec des valeurs incohérentes par rapport à la signature __init__ pour cette classe, par exemple :

min_impurity_split pour RandomForestClassifier

la signature __init__ a min_impurity_split=None tandis que les docstrings pour cela disent min_impurity_split : float, (default=0) . Je suppose que mettre à jour les docstrings pour correspondre à la signature puisque nous voudrions garder le comportement de la classe cohérent (c'est-à-dire que nous voulons que les mêmes valeurs par défaut soient transmises lors de l'instanciation) ?

@jmwoloso Pourriez-vous vous référer à https://scikit-learn.org/stable/developers/contributing.html#guidelines -for-writing-documentation. Fondamentalement, vous devez utiliser par défaut le nom du type python (bool, str, int, float)

la signature __init__ a min_impurity_split=None tandis que les docstrings pour cela disent min_impurity_split : float, (par défaut=0). Je suppose que mettre à jour les docstrings pour correspondre à la signature puisque nous voudrions garder le comportement de la classe cohérent (c'est-à-dire que nous voulons que les mêmes valeurs par défaut soient transmises lors de l'instanciation) ?

Nous devons faire correspondre le paramètre dans la signature de la fonction. Ce paramètre de valeur par défaut a changé et la docstring n'a pas été mise à jour.

Salut @cgsavard , j'aimerais contribuer mais ça va être ma première fois donc j'ai besoin de me tenir la main. Je suis assez familier avec python, assez pratique avec les éditeurs de texte et j'ai récemment parcouru le didacticiel fork -> clone -> edit -> PR workflow ici . S'il vous plaît aviser la prochaine étape... Merci!

Salut @cgsavard ,
Puis-je s'il vous plaît travailler sur Imputer ?

Salut @cgsavard , je veux travailler sur le cours linear_model .

Je travaille également sur les cours Neural Network , Decomposition , Feature Extraction , Metrics et Preprocess .

Quelqu'un peut-il s'il vous plaît vérifier mon pr #15964 et voir pourquoi le code cov échoue. C'est la première fois que je participe. S'il vous plaît guider.

Ignorer codecov. C'est un faux positif puisque nous ne touchons pas au code. Je vais revoir bientôt le PR

Envoyé depuis mon téléphone - désolé d'être bref et une faute d'orthographe potentielle.

Je viens de faire ma première contribution #15988

Je vais prendre le module naive_bayes .

Je viens de faire ma première contribution #16019

Salut à tous, je travaille sur sklearn/neighbors , merci.

A contribué à sklearn/semi_supervised.Merci

Salut @cgsavard , j'aimerais aussi contribuer, je vais prendre le module sklearn/svm . Merci

A contribué à sklearn/semi_supervised.Merci
Y a-t-il d'autres modifications nécessaires sur le PR #16042

@glemaitre dans #16105, j'ai dû creuser un peu plus profondément dans les constructions pour récupérer les valeurs par défaut, les docstrings semblaient parfois inexacts et obsolètes.

J'ai également essayé d'utiliser une manière moins ambiguë, concise et mathématiquement rigoureuse de définir des plages de paramètres. par exemple, j'ai changé positive float en float in (0, inf] ou 0<= shrinkage <=1 en float in (0, 1) . Pour faire court, j'ai fait de mon mieux pour être concis et précis, mais veuillez prêter 5% plus d'attention à l'examen de ce PR. Merci.

@cgsavard , c'est une très belle question pour un sprint ! Si cela vous convient, je prévois de l'ajouter à notre liste de Sprint. J'ai déjà résumé les classes qui ont été adressées par un PR, et leur PR correspondant ici .
Cela vous dérange-t-il de lier l'essentiel dans la description du problème ? Cela rendra les informations disponibles dès le début. Puis-je également vous demander de préciser dans la description que chaque PR doit adresser un dossier (maximum un module) à la fois comme expliqué ici ? Cela aidera vraiment les contributeurs et les réviseurs ! Merci beaucoup!

Pour ceux que ce problème intéresse, la commande

git grep "optional.*default"

affichera les fichiers toujours affectés par ce problème (merci @ogrisel ! :) ).

@cgsavard Bonjour, j'aimerais travailler sur model_selection @WiMLDS

@lopusz et moi voulons travailler sur random_projection.py

Amusez-vous à tous !

@adrinjalali @noatamir @WiMLDS

@ETay203 et j'aimerais travailler sur le sprint mean_shift @WiMLDS_Berlin .

@magda-zielinska et moi voulons travailler sur pipeline.py

@adrinjalali @noatamir @WiMLDS

@lopusz et @magda-zielinska et moi voulons travailler sur kernel_approximation.py

Je vais m'attaquer au _optics.py maintenant

Réouverture : a été fermée par le mot-clé "Fixes" dans #16216.

Réouverture : a été fermée par le mot-clé « Corrections » dans #16207

Je vais m'attaquer au sklearn/linear_model/_coordinate_descent.py maintenant

J'ai nettoyé base.py et soumis PR

J'ai nettoyé discriminant_analysis.py et soumis un PR

Je vais maintenant regarder sklearn/gaussian_process/*.py

Il y a déjà un long pr pour les GP @lopusz :)

@lopusz mes excuses, que les relations publiques

@adrinjalali Merci de garder un œil dessus !

En effet, je n'ai pas assez bien scanné les PR ouverts, donc le fait que les GP ne soient pas pris est plutôt un accident ;)

Je m'assurerai de garder une trace de ce qui est PRed.

Et oui PR pour les généralistes arrive ;)

Y a-t-il autre chose à faire ici ?

Je travaille sur sklearn/decomposition/_dict_learning.py

Que reste-t-il à faire? Je suis ouvert pour aider. . .

Déterminer ce qui reste est probablement un bon endroit pour commencer à aider :)

Salut, j'ai parcouru pour voir ce qu'il reste, je pense qu'il y a encore des mises à jour à faire dans certains des modules vus précédemment.
J'allais travailler dessus, en commençant par le module de cluster et pourrais-je augmenter un PR pour chaque module au fur et à mesure ?
Ceci est ma première contribution, alors faites-moi savoir si je ne suis pas correctement le processus, etc.
Merci!

Voici la liste des fonctions, classes et modules restant à corriger :

  • [x] sklearn.feature_selection.SelectorMixin
  • [x] sklearn.config_context
  • [x] sklearn.set_config
  • [x] sklearn.calibration.CalibratedClassifierCV
  • [x] sklearn.cluster.OPTICS
  • [x] sklearn.cluster.SpectralClustering
  • [x] sklearn.cluster.affinity_propagation
  • [x] sklearn.cluster.cluster_optics_dbscan
  • [x] sklearn.cluster.cluster_optics_xi
  • [x] sklearn.cluster.compute_optics_graph
  • [x] sklearn.cluster.mean_shift
  • [x] sklearn.cluster.spectral_clustering
  • [x] sklearn.cluster.ward_tree
  • [x] sklearn.cross_decomposition.CCA
  • [x] sklearn.cross_decomposition.PLSCanonical
  • [x] sklearn.cross_decomposition.PLSRegression
  • [x] sklearn.cross_decomposition.PLSSVD
  • [x] sklearn.datasets
  • [x] sklearn.decomposition
  • [x] sklearn.dummy
  • [x] sklearn.ensemble.HistGradientBoostingRegressor (expérimental)
  • [x] sklearn.ensemble.HistGradientBoostingRegressor (expérimental)
  • [x] sklearn.feature_extraction.image.grid_to_graph
  • [x] sklearn.feature_extraction.image.img_to_graph
  • [x] sklearn.feature_extraction.text.CountVectorizer
  • [x] sklearn.feature_extraction.text.HashVectorizer
  • [x] sklearn.feature_selection
  • [x] sklearn.impute
  • [x] sklearn.inspection.partial_dependence
  • [x] sklearn.inspection.permutation_importance
  • [x] sklearn.inspection.permutation_importance
  • [x] sklearn.inspection.PartialDependenceDisplay
  • [x] sklearn.inspection.plot_partial_dependence
  • [x] sklearn.isotonic.IsotonicRegression
  • [x] sklearn.isotonic.check_increasing
  • [x] sklearn.isotonic.isotonic_regression
  • [x] sklearn.kernel_approximation
  • [x] sklearn.kernel_ridge
  • [x] sklearn.linear_model.PassiveAggressiveClassifier
  • [x] sklearn.linear_model.LassoLars
  • [x] sklearn.linear_model.OrthogonalMatchingPursuit
  • [x] sklearn.linear_model.HuberRegressor
  • [x] sklearn.linear_model.RANSACRegressor
  • [x] sklearn.linear_model.TheilSenRegressor
  • [x] sklearn.linear_model.PassiveAggressiveRegressor
  • [x] sklearn.linear_model.orthogonal_mp
  • [x] sklearn.linear_model.orthogonal_mp_gram
  • [x] sklearn.manifold
  • [x] sklearn.metrics (sauf sklearn.metrics.confusion_matrix , sklearn.metrics.roc_auc_score , sklearn.metrics.max_error sklearn.metrics.mean_poisson_deviance , sklearn.metrics.mean_gamma_deviance , sklearn.metrics.mean_tweedie_deviance , sklearn.metrics.plot_confusion_matrix , sklearn.metrics.plot_precision_recall_curve )
  • [x] sklearn.mixture
  • [x] sklearn.model_selection.GridSearchCV
  • [x] sklearn.model_selection.ParameterGrid
  • [x] sklearn.model_selection.ParameterSampler
  • [x] sklearn.model_selection.RandomizedSearchCV
  • [x] sklearn.model_selection.fit_grid_point
  • [x] sklearn.multiclass
  • [x] sklearn.multioutput
  • [x] sklearn.neural_network
  • [x] sklearn.preprocessing
  • [x] sklearn.random_projection
  • [x] sklearn.tree.export_graphviz
  • [x] sklearn.tree.export_text
  • [x] sklearn.tree.plot_tree
  • [x] sklearn.utils

J'espère que je ne rate rien.

Salut. Je vais essayer de faire un passage dans la documentation feature_selection

Nous prenons la partie sklearn.mixture

Prendre la partie cross_decomposition

Pour le Scikit-Learn Sprint 2020, @icoder18 et moi prenons la partie sklearn.random_projection

@adrinjalali nous avons terminé sklearn/mixture

Travail sur le sklearn.linear_model pour le sprint avec @genvalen

Prenez sklearn.calibration.CalibratedClassifierCV

Travailler dessus pour sklearn.utils.validation

Ensuite, nous aborderons sklearn.utils.random

travailler sur sklearn.impute

Travailler sur sklearn.tree.plot_tree

Le tableau 14 prendra sklearn.neural_network

Prenez sklearn.kernel_approximation

Prendre sklearn.inspection

Le tableau 14 prendra sklearn.preprocessing

Prendre des jeux de données

Prendre sklearn.mixture #17509

Liste mise à jour.

Merci à tous!

Utiliser sklearn.metrics pour le sprint

Prise du module model_selection

@glemaitre Pouvons-nous mettre à jour la description de ceci pour inclure qu'il serait préférable de soumettre un fichier à la fois ?

Bonjour, je souhaite contribuer. C'est ma première fois pourtant... Et ce n'est pas clair pour moi comment je peux savoir sur quel module il y a encore du travail à faire ? Merci !

https://github.com/scikit-learn/scikit-learn/issues/15761#issuecomment -639461778 contient la liste des modules restant à corriger.

Merci. Prenez alors sklearn.decomposition.

Je travaille sur 'sklearn.isotonic.isotonic_regression'

Je travaille sur 'sklearn.multiclass.py'

Salut, puis-je essayer de prendre le reste sur sklearn.tree ? Ce serait aussi ma première contribution.

Merci de vous être enregistré, super d'avoir votre aide ! S'il vous plait procédez; Je pense que toutes nos mises à jour de sprint ont été clôturées.

Le 4 juillet 2020, à 10h45, Ivan Wiryadi [email protected] a écrit :


Salut, puis-je essayer de prendre le reste sur sklearn.tree ? Ce serait aussi ma première contribution.

-
Vous recevez ceci parce que vous avez commenté.
Répondez directement à cet e-mail, consultez-le sur GitHub ou désabonnez-vous.

Bonjour, je souhaite apporter ma première contribution. Puis-je utiliser sklearn.multioutput ?

Je vais continuer avec sklearn.utils, en commençant par _encode.py

Je travaille sur sklearn/decomposition/_dict_learning.py

Je travaille sur sklearn.kernel_ridge dans le sprint

Salut, je vais commencer à travailler sur sklearn.feature_extraction.image.img_to_graph

Je travaille sur sklearn.feature_extraction.text.CountVectorizer

Je travaille sur sklearn.sklearn.kernel_ridge

Je travaille sur sklearn.ensemble.HistGradientBoostingRegressor

"Je travaille là-dessus"

sur ce? @Hoda1394

"Je travaille là-dessus"

sur ce? @Hoda1394

@TahiriNadia corrigé.

@cgsavard Hé, puis-je travailler là-dessus ? je suis un débutant

Je vais travailler sur les fichiers dans sklearn.datasets .

Puis-je travailler sur sklearn.linear_model._least_angle.py

@glemaitre je travaille sur sklearn.linear_model._least_angle.py et j'ai trouvé une incohérence dans l'utilisation de method ='lar' parfois cela indique lars parfois lar , cette incohérence est aussi dans code (pas seulement dans la documentation), je peux voir que lars est le bon, pourriez-vous le confirmer, et je ferai un PR.

travailler sur 'sklearn/ensemble/_hist_gradient_boosting/binning.py'

les fichiers doivent être modifiés :

sklearn/_config.py
sklearn/dummy.py
sklearn/multioutput.py
sklearn/linear_model/_huber.py
sklearn/linear_model/_theil_sen.py
sklearn/linear_model/_ridge.py
sklearn/linear_model/_omp.py
sklearn/linear_model/_sag.py
sklearn/externals/_lobpcg.py
sklearn/externals/_lobpcg.py
sklearn/utils/extmath.py
sklearn/utils/__init__.py
sklearn/utils/graph.py
sklearn/utils/_mocking.py
sklearn/utils/sparsefuncs.py
sklearn/voisins/_base.py
sklearn/gaussian_process/_gpc.py
sklearn/gaussian_process/kernels.py
sklearn/model_selection/_validation.py
~sklearn/decomposition/_fastica.py~
~sklearn/decomposition/_dict_learning.py~
~sklearn/decomposition/_factor_analysis.py~
~sklearn/decomposition/_incremental_pca.py~
~sklearn/decomposition/_lda.py~
~sklearn/decomposition/_pca.py~
~sklearn/decomposition/_truncated_svd.py~
~sklearn/decomposition/_sparse_pca.py~
~sklearn/decomposition/_nmf.py~
sklearn/collecteur/_mds.py
sklearn/manifold/_spectral_embedding.py
sklearn/collecteur/_t_sne.py
sklearn/ensemble/_hist_gradient_boosting/grower.py
sklearn/ensemble/_hist_gradient_boosting/binning.py
sklearn/metrics/_ranking.py
sklearn/tree/_classes.py
sklearn/preprocessing/_discretization.py
sklearn/preprocessing/_encoders.py ligne 620
sklearn/neural_network/_multilayer_perceptron.py ligne 1054
sklearn/covariance/_robust_covariance.py

Veuillez vérifier si quelqu'un travaille déjà/a travaillé sur le fichier que vous avez choisi

@sadakmed , pour tous les "fichiers de décomposition", il y a une pull request #17739 en cours.

travailler sur "gaussian_process.GaussianProcessRegressor" et "neighbors._base.py"

Bonjour, je suis nouveau et j'aimerais commencer à contribuer. Avez-vous encore besoin d'aide sur ce problème ? avez-vous encore besoin d'aide pour un fichier ?

Salut @boricles !

Jetez un œil à https://github.com/scikit-learn/scikit-learn/issues/15761#issuecomment -639461778 pour une liste des modules à corriger.

@alfaro96 merci. J'ai fait un rapide coup d'oeil à l'instant. Je vais sélectionner un module ce soir et travailler dessus.

Je travaille sur sklearn/config_context

Hé, j'ai pensé voir si je pouvais aider avec la doc.

@alfaro96 J'aimerais travailler sur sklearn.feature_extraction.text.CountVectorizer , s'il n'a pas déjà été pris, surtout parce que j'ai personnellement rencontré des pièges en travaillant avec des Vectorizers dans le passé.

De plus, j'ai remarqué que bien que sklearn.model_selection.learning_curve été mis à jour, il existe un didacticiel obsolète utilisant l'ancienne documentation , dois-je le laisser? Ou vaut-il la peine d'être mis à jour ?

Salut @alfaro96 ,

après modifications :
Je vois que sklearn.config_context et sklearn.set_config de sklearn.config_config.py ont été corrigés afin qu'ils puissent être extraits de la liste des tâches .

J'aimerais travailler sur sklearn.utils . Je n'ai vu qu'une seule instance de la documentation des paramètres dans laquelle « facultatif » est utilisé. Cela signifie que je n'ai besoin de réparer que cette instance, n'est-ce pas ? C'est en sklearn.utils._mocking.py

Hé, j'ai pensé voir si je pouvais aider avec la doc.

Salut @madprogramer ,

@alfaro96 J'aimerais travailler sur sklearn.feature_extraction.text.CountVectorizer , s'il n'a pas déjà été pris, surtout parce que j'ai personnellement rencontré des pièges en travaillant avec des Vectorizers dans le passé.

~J'ai jeté un œil à la liste de contrôle et à la référence sklearn.feature_extraction.text.CountVectorizer et cela ne semble pas être corrigé. Un PR serait le bienvenu.~

Edit : Le sklearn.feature_extraction.text.CountVectorizer est déjà corrigé.

De plus, j'ai remarqué que bien que sklearn.model_selection.learning_curve été mis à jour, il existe un didacticiel obsolète utilisant l'ancienne documentation , dois-je le laisser? Ou vaut-il la peine d'être mis à jour ?

Cela vaut la peine d'être mis à jour, même si cela devrait être fait dans un PR séparé.

Merci!

Salut @alfaro96 ,

Salut @haiatn ,

après modifications :
Je vois que sklearn.config_context et sklearn.set_config de sklearn.config_config.py ont été corrigés afin qu'ils puissent être extraits de la liste des tâches .

J'ai mis à jour la liste de contrôle .

J'aimerais travailler sur sklearn.utils . Je n'ai vu qu'une seule instance de la documentation des paramètres dans laquelle « facultatif » est utilisé. Cela signifie que je n'ai besoin de réparer que cette instance, n'est-ce pas ? C'est en sklearn.utils._mocking.py

C'est l'idée, bien que les classes du fichier sklearn.utils._mocking.py ne fassent pas partie de l'API publique, je ne pense donc pas qu'il soit utile de les mettre à jour.

Néanmoins, ce serait bien si vous pouviez travailler dans l'une des autres fonctions, classes et modules en attente de correction.

Merci!

J'ai regardé la liste de contrôle. D'après ce que j'ai vu, les éléments suivants peuvent être vérifiés à partir de la liste de contrôle :

  • sklearn.feature_extraction.image.img_to_graph
  • sklearn.isotonic.IsotonicRegression
  • sklearn.isotonic.check_increasing
  • Je n'ai pas trouvé le fichier sklearn.ensemble.HistGradientBoostingRegressor mais tout sklearn.ensemble est OK

Puis-je travailler sur sklearn.manifold._spectral_embedding et sklearn.feature_extraction.text.HashVectorizer ? Je le ferai dans des relations publiques séparées. Je pense que ce sont les seuls fichiers qui restent à réparer (en supposant que sklearn.feature_extraction.text.CountVectorizer soit pris).

J'ai regardé la liste de contrôle. D'après ce que j'ai vu, les éléments suivants peuvent être vérifiés à partir de la liste de contrôle :

  • sklearn.feature_extraction.image.img_to_graph
  • sklearn.isotonic.IsotonicRegression
  • sklearn.isotonic.check_increasing

Merci @haiatn , j'ai mis à jour la liste de contrôle.

  • Je n'ai pas trouvé le fichier sklearn.ensemble.HistGradientBoostingRegressor mais tout sklearn.ensemble est OK

Les sklearn.ensemble.HistGradientBoostingClassifier et sklearn.ensemble.HistGradientBoostingRegressor sont dans ce fichier : scikit-learn/sklearn/ensemble/_hist_gradient_boosting/gradient_boosting.py . Cependant, ils ont déjà été corrigés.

Puis-je travailler sur sklearn.manifold._spectral_embedding et sklearn.feature_extraction.text.HashVectorizer ? Je le ferai dans des relations publiques séparées. Je pense que ce sont les seuls fichiers qui restent à réparer (en supposant que sklearn.feature_extraction.text.CountVectorizer soit pris).

J'ai jeté un œil au module sklearn.manifold et sklearn.feature_extraction.text.HashingVectorizer et ils ont déjà été corrigés (j'ai mis à jour la liste de contrôle en conséquence).

Néanmoins, il y a plusieurs fonctions dans le module sklearn.utils qui devraient encore être corrigées.

Merci @haiatn , nous apprécions vraiment votre aide !

Je vais maintenant travailler sur sklearn.utils._estimator_html_repr , sklearn.utils.deprecation et sklearn.utils._testing

Je vais finir sklearn.utils. Il n'y a que 3 fichiers que j'ai trouvés qui ont besoin d'être corrigés.

salut @alfaro96 ,
pourriez-vous passer en revue mes demandes de tirage ouvertes ? Je pense que ce sont les derniers.

18360 #18385 #18386

Salut @haiatn !

J'ai déjà jeté un œil à vos PRs ouverts.

Merci!

Maintenant que nous avons fusionné ce qui restait de sklearn.utils et que c'était le dernier sur la liste de contrôle , avons-nous terminé ?

Il y a une dernière pull request ouverte #18025, alors ce problème pourrait éventuellement être fermé.

Bonjour,
Je veux commencer à contribuer. Existe-t-il une classe en attente pour la correction de la doc des valeurs par défaut ? Le cas échéant, je peux le prendre.

Hé nouveau dans l'open source, j'ai hâte de corriger la doc par hasard, il reste quelque chose qui doit être corrigé

Cette page vous a été utile?
0 / 5 - 0 notes