Scikit-learn: Dokumentation der Standardwerte in allen Klassen korrigiert

Erstellt am 2. Dez. 2019  ·  118Kommentare  ·  Quelle: scikit-learn/scikit-learn

Beschreibung

Die Dokumentation der Standardwerte in vielen Klassen ist entweder nicht enthalten, inkonsistent in der Schreibweise oder veraltet. Ich möchte ein paar Leute zusammenbringen, die an der Standardwertdokumentation für jede Klasse arbeiten, da es eine Menge Klassen gibt, bei denen diese Probleme auftreten. Mir wurde gesagt, dass die Standardwerte als "default=<'value'>" dokumentiert werden sollten, und daher erstelle ich dieses Problem unter dieser Annahme.

Lösung

Hier sind ein paar Dinge, die ich für die Parameter gesehen habe, die geändert werden sollten:

  • keine Erwähnung, ob es eine Vorgabe gibt, sollte gegen Code überprüft werden, da einige Parameter dies vollständig fehlen
  • "optional" sollte in "default=<'value'>" geändert werden
  • Stellen Sie sicher, dass die Dokumentation der Standardwerte innerhalb der Klasse konsistent ist, dh ändern Sie alles in das Format "default=<'value'>"
  • Ändern Sie eine einzelne Datei pro PR

Wenn ein paar Leute jeweils an ein paar Klassen arbeiten, dann sollte dies in kürzester Zeit erledigt sein! Dies sollten alle ziemlich einfache Korrekturen sein.

#### Beispiele
https://scikit-learn.org/stable/modules/generated/sklearn.cluster.AgglomerativeClustering.html
Der obige Link ist ein Beispiel, bei dem keine Standardwerte angegeben sind, aber die Parameter "optional" sagen, und wo diejenigen mit angegebenen Standardwerten alle inkonsistent dokumentiert sind.

Sprint good first issue

Hilfreichster Kommentar

Wenn ein Parameter optional ist, sollte logischerweise der Standardwert nicht immer None ? Ein Parameter mit einem anderen Standardwert als None legt nahe, dass er erforderlich sein sollte.

Wenn ein Standardwert vorhanden ist, bedeutet dies normalerweise, dass dies in der Literatur ein sinnvoller Standardwert ist, was auch darauf hindeutet, dass dieser Parameter einen Einfluss auf die Leistung hat und daher nicht optional sein sollte, sondern nur den Standardwert angeben sollte. Diese scheinen per Definition näher an den erforderlichen Parametern zu sein, wir haben zufällig eine vernünftige Wahl für den Benutzer getroffen, damit er sie ändern kann oder nicht.

Oder praktischer ausgedrückt, gibt es derzeit optionale Parameter, die wir gefunden haben, die numerische Standardwerte haben, für die die Angabe von None jedoch eine Ausnahme auslöst? Das würde auch darauf hindeuten, dass der Parameter tatsächlich benötigt wird, aber eine sinnvolle Vorgabe aufgrund von Literatur/Recherche gewählt wurde.

Oder habe ich all die Jahre die Bedeutung von required und optional verwechselt? Lol. Würde auf jeden Fall gerne dabei helfen!

Alle 118 Kommentare

Hallo @cgsavard , daran würde ich gerne arbeiten. Kann ich mir die AgglomerativeClustering-Klasse ansehen?

@vachanda Mach es! Wir können hier weiterhin posten, an welchen wir arbeiten, damit andere es wissen.

Danke für die Koordination von @cgsavard

Hinweis für Mitwirkende: Bitte befolgen Sie die Richtlinien unter: https://scikit-learn.org/stable/developers/contributing.html#guidelines -for-writing-documentation

@cgsavard , Gibt es eine Liste von Klassen mit Diskrepanzen oder müssen wir jede von ihnen durchgehen und aktualisieren?

@vachanda Ich habe leider keine Liste. Ich bin gerade die Dateien durchgegangen und habe gesehen, was aktualisiert werden muss.

Ich arbeite an AffinityPropagation, SpectralCoclustering, SpectralBiclustering und Birch.

Ich arbeite an FeatureAgglomeration, KMeans und MiniBatchKMeans.

Wenn ein Parameter optional ist, sollte logischerweise der Standardwert nicht immer None ? Ein Parameter mit einem anderen Standardwert als None legt nahe, dass er erforderlich sein sollte.

Wenn ein Standardwert vorhanden ist, bedeutet dies normalerweise, dass dies in der Literatur ein sinnvoller Standardwert ist, was auch darauf hindeutet, dass dieser Parameter einen Einfluss auf die Leistung hat und daher nicht optional sein sollte, sondern nur den Standardwert angeben sollte. Diese scheinen per Definition näher an den erforderlichen Parametern zu sein, wir haben zufällig eine vernünftige Wahl für den Benutzer getroffen, damit er sie ändern kann oder nicht.

Oder praktischer ausgedrückt, gibt es derzeit optionale Parameter, die wir gefunden haben, die numerische Standardwerte haben, für die die Angabe von None jedoch eine Ausnahme auslöst? Das würde auch darauf hindeuten, dass der Parameter tatsächlich benötigt wird, aber eine sinnvolle Vorgabe aufgrund von Literatur/Recherche gewählt wurde.

Oder habe ich all die Jahre die Bedeutung von required und optional verwechselt? Lol. Würde auf jeden Fall gerne dabei helfen!

@jmwoloso Wir waren in Bezug auf die Verwendung von optional wirklich inkonsistent und haben uns daher kürzlich entschieden, es zu entfernen.

ich möchte auch dazu beitragen. kann ich damit fortfahren

@glemaitre ok, das macht auf jeden Fall Sinn. Also entfernen wir das Wort optional zusammen, richtig, und notieren gleichzeitig Standardwerte in den Doc-Strings?

sollte jedes dieser Themen, die wir finden, als separates Thema geöffnet werden oder wie inszenieren wir all unsere Arbeit, die wir tun, da mehrere Leute an mehreren Dingen arbeiten, die sich auf dieses einzelne Thema beziehen?

@cyrus303 @jmwoloso Sie können eine Klasse (maximal ein Modul) https://scikit-learn.org/dev/developers/contributing.html#guidelines -for-writing-documentation

Sie können angeben, an welcher Klasse/welchem ​​Modul Sie arbeiten, einen Link öffnen oder eine PR öffnen, um doppelten Aufwand zu vermeiden :). Ich freue mich darauf, es zu überprüfen.

Hallo! Ich werde an tree Klassen arbeiten ( tree.DecisionTreeClassifier , tree.DecisionTreeRegressor , tree.ExtraTreeClassifier und tree.ExtraTreeRegressor ).

Ich werde dieses Problem auch für das Modul neighbors beheben.

Ich nehme das Modul ensemble .

@glemaitre irgendeine Präferenz für bool vs. boolean ? eine Mischung aus beidem in ensemble , sogar in derselben Klasse. Könnte genauso gut diese in Form bringen, während ich Standardeinstellungen mache.

BEARBEITEN:

dito für int vs integer . Ich gehe von int aus, wollte es aber bestätigen.

BEARBEITEN (wieder):

sehen auch Docstrings mit inkonsistenten Werten relativ zur __init__ Signatur für diese Klasse, zB:

min_impurity_split für RandomForestClassifier

die __init__ Signatur hat min_impurity_split=None während die Docstrings dafür min_impurity_split : float, (default=0) sagen. Ich würde davon ausgehen, dass die Docstrings aktualisiert werden, damit sie mit der Signatur übereinstimmen, da wir das Verhalten der Klasse konsistent halten möchten (dh wir möchten, dass die gleichen Standardwerte bei der Instanziierung übergeben werden)?

@jmwoloso Könnten Sie sich auf https://scikit-learn.org/stable/developers/contributing.html#guidelines -for-writing-documentation beziehen. Grundsätzlich sollten Sie den Python-Typnamen verwenden (bool, str, int, float).

die __init__-Signatur hat min_impurity_split=None, während die Docstrings dafür min_impurity_split : float, (Standard=0) sagen. Ich würde davon ausgehen, dass die Docstrings aktualisiert werden, damit sie mit der Signatur übereinstimmen, da wir das Verhalten der Klasse konsistent halten möchten (dh wir möchten, dass die gleichen Standardwerte bei der Instanziierung übergeben werden)?

Wir sollten den Parameter in der Funktionssignatur abgleichen. Dieser Standardwertparameter hat sich geändert und die Dokumentzeichenfolge wurde nicht aktualisiert.

Hallo @cgsavard , ich würde gerne dazu beitragen, aber dies wird mein erstes Mal sein, also brauche ich etwas Händchenhalten. Ich bin ziemlich vertraut mit Python, etwas geschickt mit Texteditoren und habe kürzlich das Fork -> Klonen -> Bearbeiten -> PR-Workflow-Tutorial hier durchgegangen. Bitte raten Sie zum nächsten Schritt... Danke!

Hallo @cgsavard ,
Kann ich bitte an Imputer arbeiten?

Hallo @cgsavard , ich möchte an der Klasse linear_model .

Ich arbeite auch an den Klassen Neural Network , Decomposition , Feature Extraction , Metrics und Preprocess .

kann jemand bitte mein pr #15964 überprüfen und sehen, warum code cov fehlschlägt. Dies ist mein erster Beitrag. Bitte führen.

Codecov ignorieren. Dies ist ein falsch positives Ergebnis, da wir keinen Code berühren. Ich werde bald die PR überprüfen

Gesendet von meinem Telefon - Entschuldigung für die Kürze und möglicher Schreibfehler.

Ich habe gerade meinen ersten Beitrag #15988 gemacht

Ich werde das Modul naive_bayes .

Ich habe gerade meinen ersten Beitrag #16019 gemacht

Hallo zusammen, ich arbeite an sklearn/neighbors , danke.

Beitrag zu sklearn/semi_supervised.Danke

Hallo @cgsavard , ich würde auch gerne dazu beitragen, ich werde das sklearn/svm Modul nehmen. Danke

Beitrag zu sklearn/semi_supervised.Danke
Müssen noch weitere Änderungen an der PR #16042 vorgenommen werden?

@glemaitre in #16105 musste ich ein wenig tief in Konstrukte graben, um Standardwerte abzurufen, Docstrings schienen manchmal ungenau und veraltet.

Ich habe auch versucht, weniger zweideutige, prägnante und mathematisch strenge Methoden zu verwenden, um Parameterbereiche zu definieren. Ich habe beispielsweise positive float in float in (0, inf] oder 0<= shrinkage <=1 in float in (0, 1) geändert. Lange Rede, kurzer Sinn, ich habe mein Bestes getan, um prägnant und genau zu sein, aber bitte schenke dieser PR 5% mehr Aufmerksamkeit. Danke.

@cgsavard , das ist eine sehr schöne Ausgabe für einen Sprint! Wenn Sie damit einverstanden sind, plane ich, es in unsere Sprint-Liste aufzunehmen. Die Klassen, die bereits von einer PR angesprochen wurden, und ihre entsprechenden PR habe ich hier zusammengefasst.
Haben Sie etwas dagegen, das Wesentliche in der Problembeschreibung zu verlinken? Dadurch stehen die Informationen von Anfang an zur Verfügung. Darf ich Sie auch bitten, in der Beschreibung klarzustellen, dass jeder PR eine Datei (maximal ein Modul) gleichzeitig adressieren soll, wie hier beschrieben ? Dies wird Mitwirkenden und Rezensenten wirklich helfen! Vielen Dank!

Für diejenigen, die sich für dieses Thema interessieren, der Befehl

git grep "optional.*default"

wird die Dateien ausgeben, die noch von diesem Problem betroffen sind (danke @ogrisel! :) ).

@cgsavard Hallo, ich würde gerne an model_selection @WiMLDS arbeiten

@lopusz und ich möchten an random_projection.py arbeiten

Viel Spaß allen!

@adrinjalali @noatamir @WiMLDS

@ETay203 und ich würden gerne an mean_shift @WiMLDS_Berlin Sprint arbeiten.

@magda-zielinska und ich möchten an Pipeline.py arbeiten

@adrinjalali @noatamir @WiMLDS

@lopusz und @magda-zielinska und ich wollen an kernel_approximation.py arbeiten

Ich werde jetzt die _optics.py in Angriff nehmen

Wiedereröffnung: wurde durch das Schlüsselwort "Fixes" in #16216 geschlossen.

Wiedereröffnung: wurde durch das Schlüsselwort "Fixes" in #16207 geschlossen

Ich werde jetzt sklearn/linear_model/_coordinate_descent.py in Angriff nehmen

Ich habe base.py gereinigt und PR eingereicht

Ich habe diskriminant_analysis.py gereinigt und eine PR eingereicht

Ich werde mir jetzt sklearn/gaussian_process/*.py ansehen

Es gibt schon eine lange PR für die GPs

@lopusz Entschuldigung, dass PR andere Themen des GP-Moduls berührt hat, Sie können weitermachen und daran arbeiten, wenn es Ihnen nichts ausmacht :)

@adrinjalali Danke, dass du es im Auge

Tatsächlich habe ich die offenen PRs nicht gut genug gescannt, daher ist die Tatsache, dass Hausärzte nicht genommen werden, eher ein Zufall ;)

Ich werde sicherstellen, dass ich im Auge behalten werde, was PRed ist.

Und ja PR für Hausärzte kommt ;)

Ist hier noch etwas zu tun?

Ich arbeite an sklearn/decomposition/_dict_learning.py

was ist noch zu tun? Ich bin offen, um zu helfen. . .

Herauszufinden, was noch übrig ist, ist wahrscheinlich ein guter Anfang, um zu helfen :)

Hallo, ich habe durchgesehen, um zu sehen, was noch übrig ist. Ich denke, es gibt noch einige Aktualisierungen in einigen der zuvor betrachteten Module.
Ich wollte diese, beginnend mit dem Cluster-Modul, durcharbeiten und könnte im Laufe der Zeit für jedes Modul einen PR erheben?
Dies ist mein erster Beitrag, also lassen Sie es mich bitte wissen, wenn ich den Vorgang nicht richtig befolge usw.
Danke!

Dies ist die Liste der Funktionen, Klassen und Module, die noch behoben werden müssen:

  • [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 (experimentell)
  • [x] sklearn.ensemble.HistGradientBoostingRegressor (experimentell)
  • [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 (außer 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

Hoffe ich verpasse nichts.

Hallo. Ich werde versuchen, in der feature_selection-Dokumentation einen Pass zu machen

Wir übernehmen den sklearn.mixture-Teil

Cross_decomposition-Teil nehmen

Für den Scikit-Learn Sprint 2020 nehmen @icoder18 und ich am sklearn.random_projection teil

@adrinjalali wir haben sklearn/mixture abgeschlossen

Mit @genvalen am sklearn.linear_model für den Sprint arbeiten

Nehmen Sie sklearn.calibration.CalibratedClassifierCV

Arbeite daran für sklearn.utils.validation

Als nächstes werden wir uns mit sklearn.utils.random befassen

Arbeite an sklearn.impute

Arbeiten an sklearn.tree.plot_tree

Tabelle 14 nimmt sklearn.neural_network

Nehmen Sie sklearn.kernel_approximation

Einnahme von sklearn.inspection

Tabelle 14 benötigt sklearn.preprocessing

Aufnahme von Datensätzen

Einnahme von sklearn.mixture #17509

Liste aktualisiert.

Danke euch allen!

sklearn.metrics für den Sprint nutzen

Model_selection Modul nehmen

@glemaitre Können wir die Beschreibung so aktualisieren, dass es am besten ist, eine Datei nach der anderen einzureichen?

Hallo, ich möchte einen Beitrag leisten. Aber es ist mein erstes Mal ... Und mir ist nicht klar, woher ich wissen kann, an welchem ​​Modul noch etwas zu tun ist? Danke !

https://github.com/scikit-learn/scikit-learn/issues/15761#issuecomment -639461778 enthält die Liste der Module, die noch behoben werden müssen.

Danke. Nehmen Sie dann sklearn.decomposition.

Ich arbeite an 'sklearn.isotonic.isotonic_regression'

Ich arbeite an 'sklearn.multiclass.py'

Hallo, kann ich versuchen, den Rest auf sklearn.tree ? Dies wäre auch mein erster Beitrag.

Vielen Dank für das Einchecken, schön, dass Sie Ihre Hilfe haben! Bitte fahren Sie fort; Ich denke, alle unsere Sprint-Updates wurden geschlossen.

Am 4. Juli 2020 um 10:45 Uhr schrieb Ivan Wiryadi [email protected] :


Hallo, kann ich versuchen, die restlichen auf sklearn.tree zu nehmen? Dies wäre auch mein erster Beitrag.


Sie erhalten dies, weil Sie einen Kommentar abgegeben haben.
Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub an oder melden Sie sich ab.

Hallo, ich möchte meinen ersten Beitrag leisten. Kann ich sklearn.multioutput nehmen?

Ich fahre mit sklearn.utils fort, beginnend mit _encode.py

Ich arbeite an sklearn/decomposition/_dict_learning.py

Ich arbeite an sklearn.kernel_ridge im Sprint

Hallo, ich werde mit der Arbeit an sklearn.feature_extraction.image.img_to_graph beginnen

Ich arbeite an sklearn.feature_extraction.text.CountVectorizer

Ich arbeite an sklearn.sklearn.kernel_ridge

Ich arbeite an sklearn.ensemble.HistGradientBoostingRegressor

"Ich arbeite daran"

dazu? @Hoda1394

"Ich arbeite daran"

dazu? @Hoda1394

@TahiriNadia korrigiert.

@cgsavard Hey, kann ich daran arbeiten? Ich bin ein Anfänger

Ich werde an den Dateien in sklearn.datasets .

Kann ich an sklearn.linear_model._least_angle.py

@glemaitre Ich arbeite an sklearn.linear_model._least_angle.py und ich habe eine Inkonsistenz bei der Verwendung von method ='lar' manchmal gibt es lars manchmal lar , diese Inkonsistenz ist auch in Code (nicht nur in der Dokumentation), ich kann sehen, dass lars der richtige ist, könnten Sie es bestätigen, und ich werde eine PR machen.

arbeite an 'sklearn/ensemble/_hist_gradient_boosting/binning.py'

Dateien müssen geändert werden:

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/neighbors/_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/manifold/_mds.py
sklearn/manifold/_spectral_embedding.py
sklearn/manifold/_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 Zeile 620
sklearn/neural_network/_multilayer_perceptron.py Zeile 1054
sklearn/covariance/_robust_covariance.py

Bitte überprüfen Sie, ob bereits jemand an der von Ihnen ausgewählten Datei arbeitet/gearbeitet hat

@sadakmed , für alle "Zerlegungsdateien" gibt es einen laufenden Pull-Request #17739.

arbeiten an "gaussian_process.GaussianProcessRegressor" und "neighbors._base.py"

Hallo, ich bin neu und möchte gerne einen Beitrag leisten. Benötigen Sie noch Hilfe zu diesem Thema? Gibt es eine Datei, bei der Sie noch Hilfe benötigen?

Hey @boricles!

Eine Liste mit den noch zu reparierenden Modulen finden Sie unter https://github.com/scikit-learn/scikit-learn/issues/15761#issuecomment -639461778.

@alfaro96 danke. Ich habe gerade kurz nachgeschaut. Ich werde heute Abend ein Modul auswählen und daran arbeiten.

Ich arbeite an sklearn/config_context

Hey, dachte, ich würde mal sehen, ob ich mit den Dokumenten helfen kann.

@alfaro96 Ich würde gerne an sklearn.feature_extraction.text.CountVectorizer , wenn es nicht schon vergeben ist, insbesondere weil ich persönlich in der Vergangenheit bei der Arbeit mit Vectorizern auf einige Fallstricke gestoßen bin.

Außerdem ist mir aufgefallen, dass, obwohl sklearn.model_selection.learning_curve aktualisiert wurde, es ein veraltetes Tutorial gibt, das die alte Dokumentation verwendet . Soll ich es so lassen? Oder lohnt es sich zu aktualisieren?

Hallo @alfaro96 ,

nach Bearbeitungen:
Ich sehe, dass sklearn.config_context und sklearn.set_config von sklearn.config_config.py behoben wurden, damit es aus der Aufgabenliste ausgecheckt werden kann .

Ich möchte an sklearn.utils . Ich habe nur eine Instanz der Parameterdokumentation gesehen, in der 'optional' verwendet wird. Das bedeutet, dass ich nur diese Instanz korrigieren muss, richtig? Es ist in sklearn.utils._mocking.py

Hey, dachte, ich würde mal sehen, ob ich mit den Dokumenten helfen kann.

Hey @madprogrammer ,

@alfaro96 Ich würde gerne an sklearn.feature_extraction.text.CountVectorizer , wenn es nicht schon vergeben ist, insbesondere weil ich persönlich in der Vergangenheit bei der Arbeit mit Vectorizern auf einige Fallstricke gestoßen bin.

~Ich habe mir die Checkliste und sklearn.feature_extraction.text.CountVectorizer Referenz angesehen und es scheint nicht behoben zu sein. Eine PR wäre willkommen.~

Bearbeiten: Das sklearn.feature_extraction.text.CountVectorizer ist bereits behoben.

Außerdem ist mir aufgefallen, dass, obwohl sklearn.model_selection.learning_curve aktualisiert wurde, es ein veraltetes Tutorial gibt, das die alte Dokumentation verwendet . Soll ich es so lassen? Oder lohnt es sich zu aktualisieren?

Eine Aktualisierung lohnt sich, sollte aber in einer separaten PR erfolgen.

Danke schön!

Hallo @alfaro96 ,

Hey @haiatn ,

nach Bearbeitungen:
Ich sehe, dass sklearn.config_context und sklearn.set_config von sklearn.config_config.py behoben wurden, damit es aus der Aufgabenliste ausgecheckt werden kann .

Ich habe die Checkliste aktualisiert.

Ich möchte an sklearn.utils . Ich habe nur eine Instanz der Parameterdokumentation gesehen, in der 'optional' verwendet wird. Das bedeutet, dass ich nur diese Instanz korrigieren muss, richtig? Es ist in sklearn.utils._mocking.py

Das ist die Idee, obwohl die Klassen in der sklearn.utils._mocking.py Datei nicht Teil der öffentlichen API sind, daher halte ich es nicht für sinnvoll, sie zu aktualisieren.

Trotzdem wäre es schön, wenn Sie in irgendwelchen anderen Funktionen, Klassen und Modulen arbeiten könnten, die noch behoben werden müssen.

Danke schön!

Ich habe mir die Checkliste angeschaut. Von dem, was ich gesehen habe, kann Folgendes anhand der Checkliste überprüft werden:

  • sklearn.feature_extraction.image.img_to_graph
  • sklearn.isotonic.IsotonicRegression
  • sklearn.isotonic.check_increasing
  • Ich habe die Datei sklearn.ensemble.HistGradientBoostingRegressor aber alle sklearn.ensemble sind in Ordnung

Kann ich an sklearn.manifold._spectral_embedding und sklearn.feature_extraction.text.HashVectorizer ? Ich werde es in separater PR tun. Ich denke, das sind die einzigen Dateien, die noch repariert werden müssen (vorausgesetzt, sklearn.feature_extraction.text.CountVectorizer ist belegt).

Ich habe mir die Checkliste angeschaut. Von dem, was ich gesehen habe, kann Folgendes anhand der Checkliste überprüft werden:

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

Danke @haiatn , ich habe die Checkliste aktualisiert.

  • Ich habe die Datei sklearn.ensemble.HistGradientBoostingRegressor aber alle sklearn.ensemble sind in Ordnung

Die sklearn.ensemble.HistGradientBoostingClassifier und sklearn.ensemble.HistGradientBoostingRegressor befinden sich in dieser Datei: scikit-learn/sklearn/ensemble/_hist_gradient_boosting/gradient_boosting.py . Sie wurden jedoch bereits behoben.

Kann ich an sklearn.manifold._spectral_embedding und sklearn.feature_extraction.text.HashVectorizer ? Ich werde es in separater PR tun. Ich denke, das sind die einzigen Dateien, die noch repariert werden müssen (vorausgesetzt, sklearn.feature_extraction.text.CountVectorizer sind belegt).

Ich habe mir das Modul sklearn.manifold und sklearn.feature_extraction.text.HashingVectorizer und sie wurden bereits behoben (ich habe die Checkliste entsprechend aktualisiert).

Trotzdem gibt es im Modul sklearn.utils einige Funktionen, die noch behoben werden sollten.

Danke @haiatn , wir wissen deine Hilfe sehr zu schätzen!

Ich arbeite jetzt an sklearn.utils._estimator_html_repr , sklearn.utils.deprecation und sklearn.utils._testing

Ich werde sklearn.utils beenden. Ich habe nur 3 Dateien gefunden, die repariert werden müssen.

Hey @alfaro96 ,
Könnten Sie meine offenen Pull-Requests überprüfen? Ich glaube, sie sind die letzten.

18360 #18385 #18386

Hey @haiatn!

Ich habe mir schon mal deine offenen PRs angesehen.

Danke schön!

Jetzt, wo wir die Reste von sklearn.utils zusammengeführt haben und es das letzte auf der Checkliste war , sind wir fertig?

Es gibt einen letzten offenen Pull-Request #18025, dann könnte dieses Problem eventuell geschlossen werden.

Hallo,
Ich möchte anfangen, einen Beitrag zu leisten. Ist eine Klasse ausstehend, um das Dokument mit den Standardwerten zu reparieren? Wenn ja, kann ich es aufnehmen.

Hey, neu bei Open Source, ich freue mich darauf, das Dokument zu reparieren, wenn zufällig etwas übrig ist, das repariert werden muss

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen