La documentación de los valores predeterminados en muchas clases no está incluida, es inconsistente en cómo está escrita o está desactualizada. Me gustaría reunir a algunas personas para trabajar en la documentación del valor predeterminado para cada clase, ya que hay un montón de clases en las que existen estos problemas. Me han dicho que los valores predeterminados deben documentarse como "predeterminado = <'valor'>", por lo que estoy creando este problema bajo esa suposición.
Aquí hay algunas cosas que he visto para los parámetros que deberían cambiarse:
Si algunas personas trabajan en unas pocas clases cada una, ¡esto debería hacerse en poco tiempo! Todos estos deberían ser arreglos bastante simples.
#### Ejemplos
https://scikit-learn.org/stable/modules/generated/sklearn.cluster.AgglomerativeClustering.html
El enlace de arriba es un ejemplo donde los valores predeterminados no se indican pero los parámetros dicen "opcional", y donde aquellos con valores predeterminados indicados están todos documentados de manera inconsistente.
Hola @cgsavard , me gustaría trabajar en esto. ¿Puedo empezar a buscar en la clase AgglomerativeClustering?
@vachanda ¡ Adelante! Podemos seguir publicando aquí en cuáles trabajamos para que los demás sepan.
Gracias por coordinar esto @cgsavard
Nota para los contribuyentes: siga las pautas en: https://scikit-learn.org/stable/developers/contributing.html#guidelines -for-writing-documentation
@cgsavard , ¿hay una lista de clases que tienen discrepancias o tenemos que revisar cada una de ellas y actualizarlas?
@vachanda No tengo una lista, lamentablemente. Acabo de revisar los archivos y ver qué necesita actualizarse.
Estoy trabajando en AffinityPropagation, SpectralCoclustering, SpectralBiclustering y Birch.
Estoy trabajando en FeatureAgglomeration, KMeans y MiniBatchKMeans.
Lógicamente hablando, si un parámetro es opcional, ¿no debería ser siempre None
el valor predeterminado? Tener un parámetro con un valor predeterminado que no sea None
sugiere que debería ser obligatorio.
Si hay un valor predeterminado, esto generalmente significa que la literatura ha encontrado que este es un valor predeterminado razonable, lo que también sugiere que este parámetro tiene un impacto en el rendimiento y, por lo tanto, no debería ser opcional, sino que solo debería mencionar cuál es el valor predeterminado. Aquellos parecen más cercanos a los parámetros requeridos por definición, simplemente tomamos una decisión sensata para que el usuario pueda cambiarla o no.
O más prácticamente hablando, ¿hay actualmente algún parámetro opcional que hayamos encontrado que tenga valores predeterminados numéricos, pero para el cual especificar None
generará una excepción? Eso también sugeriría que el parámetro es realmente necesario, pero que se ha elegido un valor predeterminado razonable con base en la literatura / investigación.
¿O tal vez he estado confundiendo el significado de required
y optional
todos estos años? Jajaja. ¡Definitivamente me encantaría ayudar en esto de cualquier manera!
@jmwoloso Fuimos realmente inconsistentes con respecto al uso de optional
y, por lo tanto, recientemente decidimos eliminarlo.
yo también quiero contribuir. puedo seguir adelante con esto
@glemaitre ok, eso definitivamente tiene sentido. entonces estamos eliminando el optional
verbage todos juntos, ¿verdad, mientras también notamos los valores predeterminados en las cadenas de documentos?
¿Debería abrirse cada uno de estos que encontramos como un problema por separado o cómo estamos organizando todo este trabajo que estamos haciendo ya que varias personas están trabajando en varias cosas relacionadas con este único problema?
@ cyrus303 @jmwoloso Puedes obtener una clase (un módulo como máximo) y corregirla. La idea es eliminar el opcional y agregar un predeterminado cuando lo haya (generalmente hay uno). Ya que estamos tocando la documentación, debemos asegurarnos de que el estilo en la línea siga nuestra nueva guía de estilo: https://scikit-learn.org/dev/developers/contributing.html#guidelines -for-writing-documentation
Puede mencionar en cuál de la clase / módulo está trabajando, abra un enlace a PR para evitar esfuerzos duplicados :). Espero poder revisarlo.
¡Oye! Trabajaré en clases tree
( tree.DecisionTreeClassifier
, tree.DecisionTreeRegressor
, tree.ExtraTreeClassifier
y tree.ExtraTreeRegressor
).
También solucionaré este problema para el módulo neighbors
.
Tomaré el módulo ensemble
.
@glemaitre tiene alguna preferencia en bool
frente a boolean
? viendo una combinación de ambos en ensemble
, incluso en la misma clase. bien podría ponerlos en forma mientras estoy haciendo valores predeterminados.
EDITAR:
lo mismo ocurre con int
vs integer
. Supongo int
en ese, pero quería confirmar.
EDITAR (de nuevo):
también viendo cadenas de documentos con valores inconsistentes en relación con la firma __init__
para esa clase, por ejemplo:
min_impurity_split
por RandomForestClassifier
la firma __init__
tiene min_impurity_split=None
mientras que las cadenas de documentación dicen min_impurity_split : float, (default=0)
. Supongo que actualizar las cadenas de documentos para que coincidan con la firma, ya que querríamos mantener el comportamiento de la clase consistente (es decir, queremos que se pasen los mismos valores predeterminados en la instanciación).
@jmwoloso ¿Podría consultar https://scikit-learn.org/stable/developers/contributing.html#guidelines -for-writing-documentation. Básicamente, debe usar el nombre del tipo de Python de forma predeterminada (bool, str, int, float)
la firma __init__ tiene min_impurity_split = None, mientras que las cadenas de documentación dicen min_impurity_split: float, (predeterminado = 0). Supongo que actualizar las cadenas de documentos para que coincidan con la firma, ya que querríamos mantener el comportamiento de la clase consistente (es decir, queremos que se pasen los mismos valores predeterminados en la instanciación).
Deberíamos hacer coincidir el parámetro en la firma de la función. Este parámetro de valor predeterminado ha cambiado y la cadena de documentos no se actualizó.
Hola @cgsavard , me gustaría contribuir, pero esta será mi primera vez, así que necesito un poco de mano. Estoy bastante familiarizado con Python, algo útil con los editores de texto y recientemente pasé por la bifurcación -> clonar -> editar -> tutorial de flujo de trabajo de relaciones públicas aquí . Aconseje el siguiente paso ... ¡Gracias!
Hola @cgsavard ,
¿Puedo trabajar en Imputer?
Hola @cgsavard , quiero trabajar en la clase linear_model
.
También estoy trabajando en las clases Neural Network
, Decomposition
, Feature Extraction
, Metrics
y Preprocess
.
¿Alguien puede consultar mi pr # 15964 y ver por qué falla el código cov? Esta es la primera vez que hago una contribución. Por favor guíe.
Ignore codecov. Este es un falso positivo ya que no tocamos el código. Revisaré pronto el PR
Enviado desde mi teléfono, lamento ser breve y posible error ortográfico.
Acabo de hacer mi primera contribución # 15988
Tomaré el módulo naive_bayes
.
Acabo de hacer mi primera contribución # 16019
Hola a todos, trabajando en sklearn/neighbors
, gracias.
Contribuyó a sklearn / semi_supervised.Gracias
Hola @cgsavard , también me gustaría contribuir, tomaré el módulo sklearn/svm
. Gracias
Contribuyó a sklearn / semi_supervised.Gracias
¿Se necesitan más modificaciones en el PR # 16042?
@glemaitre en # 16105, tuve que profundizar un poco en las construcciones para obtener los valores predeterminados, las cadenas de documentos parecían inexactas y desactualizadas a veces.
También intenté usar una forma menos ambigua, concisa y matemáticamente rigurosa de definir rangos de parámetros. por ejemplo, cambié positive float
a float in (0, inf]
o 0<= shrinkage <=1
a float in (0, 1)
. En pocas palabras, hice lo mejor que pude para ser conciso y preciso, pero por favor, preste un 5% más de atención al revisar este PR. Gracias.
@cgsavard , ¡este es un tema muy bueno para un sprint! Si está de acuerdo con eso, planeo agregarlo a nuestra lista de Sprint. He resumido las clases que ya han sido abordadas por un PR, y su PR correspondiente aquí .
¿Le importaría vincular lo esencial en la descripción del problema? Esto hará que la información esté disponible desde el principio. ¿Puedo pedirle también que aclare en la descripción que cada RP debe abordar un archivo (máximo un módulo) a la vez, como se explica aquí ? ¡Esto realmente ayudará a los colaboradores y revisores! ¡Muchas gracias!
Para aquellos interesados en este tema, el comando
git grep "optional.*default"
generará los archivos aún afectados por este problema (¡gracias @ogrisel! :)).
@cgsavard Hola, me gustaría trabajar en model_selection
@WiMLDS
@lopusz y quiero trabajar en random_projection.py
¡Diviértete con todos!
@adrinjalali @noatamir @WiMLDS
@ ETay203 y me gustaría trabajar en el sprint de mean_shift
@WiMLDS_Berlin .
@ magda-zielinska y quiero trabajar en pipeline.py
@adrinjalali @noatamir @WiMLDS
@lopusz y @ magda-zielinska y quiero trabajar en kernel_approximation.py
Voy a abordar el _optics.py ahora
Reapertura: se cerró con la palabra clave "Fixes" en # 16216.
Reapertura: se cerró con la palabra clave "Fixes" en # 16207
Voy a abordar el sklearn / linear_model / _coordinate_descent.py ahora
Limpié base.py y envié PR
Limpié discriminant_analysis.py y envié un PR
Ahora miraré sklearn / gaussian_process / *. Py
Ya hay una larga pr para los GPs @lopusz :)
@lopusz mis disculpas, que PR estaba tocando otros temas del módulo GP, puede seguir adelante y trabajar en él si no le importa :)
@adrinjalali ¡ Gracias por
De hecho, no he escaneado los PR abiertos lo suficientemente bien, por lo que el hecho de que no se tomen los médicos de cabecera es más un accidente;)
Me aseguraré de realizar un seguimiento de lo que es PRed.
Y sí, se acercan las relaciones públicas para los médicos de cabecera;)
¿Hay algo más que hacer aquí?
Estoy trabajando en sklearn/decomposition/_dict_learning.py
¿Que más queda por hacer? Estoy dispuesto a ayudar. . .
Averiguar lo que queda es probablemente un buen lugar para comenzar a ayudar :)
Hola, he estado mirando para ver qué queda, creo que todavía hay algunas actualizaciones por hacer en algunos de los módulos que vimos anteriormente.
¿Iba a trabajar en estos, comenzando con el módulo de clúster y podría generar un PR para cada módulo a medida que avanzaba?
Esta es mi primera contribución, así que avíseme si no sigo el proceso correctamente, etc.
¡Gracias!
Esta es la lista de funciones, clases y módulos que quedan por arreglar:
sklearn.feature_selection.SelectorMixin
sklearn.config_context
sklearn.set_config
sklearn.calibration.CalibratedClassifierCV
sklearn.cluster.OPTICS
sklearn.cluster.SpectralClustering
sklearn.cluster.affinity_propagation
sklearn.cluster.cluster_optics_dbscan
sklearn.cluster.cluster_optics_xi
sklearn.cluster.compute_optics_graph
sklearn.cluster.mean_shift
sklearn.cluster.spectral_clustering
sklearn.cluster.ward_tree
sklearn.cross_decomposition.CCA
sklearn.cross_decomposition.PLSCanonical
sklearn.cross_decomposition.PLSRegression
sklearn.cross_decomposition.PLSSVD
sklearn.datasets
sklearn.decomposition
sklearn.dummy
sklearn.ensemble.HistGradientBoostingRegressor
(experimental)sklearn.ensemble.HistGradientBoostingRegressor
(experimental)sklearn.feature_extraction.image.grid_to_graph
sklearn.feature_extraction.image.img_to_graph
sklearn.feature_extraction.text.CountVectorizer
sklearn.feature_extraction.text.HashVectorizer
sklearn.feature_selection
sklearn.impute
sklearn.inspection.partial_dependence
sklearn.inspection.permutation_importance
sklearn.inspection.permutation_importance
sklearn.inspection.PartialDependenceDisplay
sklearn.inspection.plot_partial_dependence
sklearn.isotonic.IsotonicRegression
sklearn.isotonic.check_increasing
sklearn.isotonic.isotonic_regression
sklearn.kernel_approximation
sklearn.kernel_ridge
sklearn.linear_model.PassiveAggressiveClassifier
sklearn.linear_model.LassoLars
sklearn.linear_model.OrthogonalMatchingPursuit
sklearn.linear_model.HuberRegressor
sklearn.linear_model.RANSACRegressor
sklearn.linear_model.TheilSenRegressor
sklearn.linear_model.PassiveAggressiveRegressor
sklearn.linear_model.orthogonal_mp
sklearn.linear_model.orthogonal_mp_gram
sklearn.manifold
sklearn.metrics
(excepto 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
)sklearn.mixture
sklearn.model_selection.GridSearchCV
sklearn.model_selection.ParameterGrid
sklearn.model_selection.ParameterSampler
sklearn.model_selection.RandomizedSearchCV
sklearn.model_selection.fit_grid_point
sklearn.multiclass
sklearn.multioutput
sklearn.neural_network
sklearn.preprocessing
sklearn.random_projection
sklearn.tree.export_graphviz
sklearn.tree.export_text
sklearn.tree.plot_tree
sklearn.utils
Espero no perderme nada.
Hola. Intentaré hacer un pase en la documentación de feature_selection
Tomamos la parte sklearn.mixture
Tomando parte cross_decomposition
Para el Sprint Scikit -Learn 2020,
@adrinjalali completamos sklearn / blend
Trabajando en sklearn.linear_model para el sprint con @genvalen
Tome sklearn.calibration.CalibratedClassifierCV
Trabajando en esto para sklearn.utils.validation
A continuación, abordaremos sklearn.utils.random
trabajando en sklearn.impute
Trabajando en sklearn.tree.plot_tree
La tabla 14 tomará sklearn.neural_network
Toma sklearn.kernel_approximation
Tomando sklearn.inspection
La tabla 14 tomará sklearn.preprocessing
Tomando conjuntos de datos
Tomando sklearn.mixture # 17509
Lista actualizada.
¡Gracias a todos!
Tomando sklearn.metrics para sprint
Tomando el módulo model_selection
@glemaitre ¿Podemos actualizar la descripción de esto para incluir que sería mejor enviar un archivo a la vez?
Hola me gustaría contribuir. Sin embargo, es mi primera vez ... ¿Y no me queda claro cómo puedo saber en qué módulo hay todavía trabajo por hacer? Gracias !
https://github.com/scikit-learn/scikit-learn/issues/15761#issuecomment -639461778 contiene la lista de módulos que quedan por corregir.
Gracias. Tome sklearn.decomposition entonces.
Estoy trabajando en 'sklearn.isotonic.isotonic_regression'
Estoy trabajando en 'sklearn.multiclass.py'
Hola, ¿puedo intentar llevarme el resto de sklearn.tree
? Esta sería la primera vez que contribuyo también.
Gracias por registrarte, ¡es genial contar con tu ayuda! Por favor continúa; Creo que todas nuestras actualizaciones de sprint se han cerrado.
El 4 de julio de 2020, a las 10:45, Ivan Wiryadi [email protected] escribió:
Hola, ¿puedo intentar tomar el resto en sklearn.tree? Esta sería la primera vez que contribuyo también.-
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub o cancele la suscripción.
Hola, me gustaría hacer mi primera contribución. ¿Puedo tomar sklearn.multioutput?
Continuaré con sklearn.utils, comenzando con _encode.py
Estoy trabajando en sklearn/decomposition/_dict_learning.py
Estoy trabajando en sklearn.kernel_ridge
en el sprint
Hola, empezaré a trabajar en sklearn.feature_extraction.image.img_to_graph
Estoy trabajando en sklearn.feature_extraction.text.CountVectorizer
Estoy trabajando en sklearn.sklearn.kernel_ridge
Estoy trabajando en sklearn.ensemble.HistGradientBoostingRegressor
"Estoy trabajando en esto"
¿en este? @ Hoda1394
"Estoy trabajando en esto"
¿en este? @ Hoda1394
@TahiriNadia corrigió.
@cgsavard Oye, ¿puedo trabajar en esto? Soy un novato
Trabajaré en los archivos en sklearn.datasets
.
¿Puedo trabajar en sklearn.linear_model._least_angle.py
@glemaitre Estoy trabajando en sklearn.linear_model._least_angle.py
y encontré una inconsistencia en el uso de method ='lar'
veces indica lars
veces lar
, esta inconsistencia también está en código (no solo en la documentación), puedo ver que lars
es el correcto, ¿podrían confirmarlo y haré un PR.
trabajando en 'sklearn/ensemble/_hist_gradient_boosting/binning.py'
archivos necesitan cambio:
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 / vecinos / _base.py
sklearn / proceso_gaussiano / _gpc.py
sklearn / proceso_gaussiano / kernels.py
sklearn / model_selection / _validation.py
~ sklearn / descomposición / _fastica.py ~
~ sklearn / descomposición / _dict_learning.py ~
~ sklearn / decomposition / _factor_analysis.py ~
~ sklearn / descomposición / _incremental_pca.py ~
~ sklearn / descomposición / _lda.py ~
~ sklearn / descomposición / _pca.py ~
~ sklearn / decomposition / _truncated_svd.py ~
~ sklearn / descomposición / _sparse_pca.py ~
~ sklearn / descomposición / _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 línea 620
sklearn / neural_network / _multilayer_perceptron.py línea 1054
sklearn / covariance / _robust_covariance.py
Verifique si alguien ya está trabajando / trabajó en el archivo que eligió
@sadakmed , para todos los "archivos de descomposición", hay una solicitud de extracción en curso # 17739.
trabajando en "gaussian_process.GaussianProcessRegressor"
y "neighbors._base.py"
Hola, soy nuevo y me gustaría empezar a contribuir. ¿Aún necesitas ayuda con este problema? ¿Hay algún archivo con el que todavía necesite ayuda?
¡Hola @boricles!
Eche un vistazo a https://github.com/scikit-learn/scikit-learn/issues/15761#issuecomment -639461778 para obtener una lista con los módulos que aún no se han solucionado.
@ alfaro96 gracias. Hice un vistazo rápido hace un momento. Seleccionaré un módulo esta noche y trabajaré en él.
Estoy trabajando en sklearn / config_context
Oye, pensé en ver si podía ayudar con los documentos.
@ alfaro96 Me gustaría trabajar en sklearn.feature_extraction.text.CountVectorizer
, si aún no se ha tomado, especialmente porque personalmente me encontré con algunas dificultades al trabajar con Vectorizadores en el pasado.
Además, noté que aunque sklearn.model_selection.learning_curve
se actualizó, hay un tutorial desactualizado que usa la documentación anterior , ¿debería dejarlo así? ¿O vale la pena actualizarlo?
Hola @ alfaro96 ,
después de las ediciones:
Veo que sklearn.config_context
y sklearn.set_config
de sklearn.config_config.py
se arreglaron para que se pueda verificar en la lista de tareas .
Me gustaría trabajar en sklearn.utils
. Solo vi una instancia de documentación de parámetros donde se usa 'opcional'. Eso significa que necesito arreglar solo esa instancia, ¿correcto? Está en sklearn.utils._mocking.py
Oye, pensé en ver si podía ayudar con los documentos.
Hola @madprogramer ,
@ alfaro96 Me gustaría trabajar en
sklearn.feature_extraction.text.CountVectorizer
, si aún no se ha tomado, especialmente porque personalmente me encontré con algunas dificultades al trabajar con Vectorizadores en el pasado.
~ He echado un vistazo a la lista de verificación y la referencia sklearn.feature_extraction.text.CountVectorizer
y parece que no se ha solucionado. Un PR sería bienvenido. ~
Editar: El sklearn.feature_extraction.text.CountVectorizer
ya está arreglado.
Además, noté que aunque
sklearn.model_selection.learning_curve
se actualizó, hay un tutorial desactualizado que usa la documentación anterior , ¿debería dejarlo así? ¿O vale la pena actualizarlo?
Vale la pena actualizarlo, aunque debe hacerse en un PR separado.
¡Gracias!
Hola @ alfaro96 ,
Hola @haiatn ,
después de las ediciones:
Veo quesklearn.config_context
ysklearn.set_config
desklearn.config_config.py
se arreglaron para que se pueda verificar en la lista de tareas .
He actualizado la lista de verificación .
Me gustaría trabajar en
sklearn.utils
. Solo vi una instancia de documentación de parámetros donde se usa 'opcional'. Eso significa que necesito arreglar solo esa instancia, ¿correcto? Está ensklearn.utils._mocking.py
Esa es la idea, aunque las clases en el archivo sklearn.utils._mocking.py
no son parte de la API pública, por lo que no creo que valga la pena actualizarlas.
Sin embargo, sería bueno si pudieras trabajar en cualquiera de las otras funciones, clases y módulos que están pendientes de ser reparadas.
¡Gracias!
Miré la lista de verificación. Por lo que vi, se puede verificar lo siguiente de la lista de verificación:
sklearn.feature_extraction.image.img_to_graph
sklearn.isotonic.IsotonicRegression
sklearn.isotonic.check_increasing
sklearn.ensemble.HistGradientBoostingRegressor
pero todo sklearn.ensemble
está bien¿Puedo trabajar en sklearn.manifold._spectral_embedding
y sklearn.feature_extraction.text.HashVectorizer
? Lo haré en relaciones públicas independientes. Creo que son los únicos archivos que quedan que necesitan ser arreglados (asumiendo que se toma sklearn.feature_extraction.text.CountVectorizer
).
Miré la lista de verificación. Por lo que vi, se puede verificar lo siguiente de la lista de verificación:
sklearn.feature_extraction.image.img_to_graph
sklearn.isotonic.IsotonicRegression
sklearn.isotonic.check_increasing
Gracias @haiatn , he actualizado la lista de verificación.
- No encontré el archivo
sklearn.ensemble.HistGradientBoostingRegressor
pero todosklearn.ensemble
está bien
Los sklearn.ensemble.HistGradientBoostingClassifier
y sklearn.ensemble.HistGradientBoostingRegressor
están en este archivo: scikit-learn/sklearn/ensemble/_hist_gradient_boosting/gradient_boosting.py
. Sin embargo, ya se han solucionado.
¿Puedo trabajar en
sklearn.manifold._spectral_embedding
ysklearn.feature_extraction.text.HashVectorizer
? Lo haré en relaciones públicas independientes. Creo que son los únicos archivos que quedan que necesitan ser arreglados (asumiendo que se tomansklearn.feature_extraction.text.CountVectorizer
).
He echado un vistazo al módulo sklearn.manifold
y sklearn.feature_extraction.text.HashingVectorizer
y ya se han solucionado (he actualizado la lista de verificación en consecuencia).
Sin embargo, hay varias funciones en el módulo sklearn.utils
que aún deberían estar arregladas.
Gracias @haiatn , ¡realmente apreciamos tu ayuda!
Ahora trabajaré en sklearn.utils._estimator_html_repr
, sklearn.utils.deprecation
y sklearn.utils._testing
Terminaré sklearn.utils. Solo hay 3 archivos que encontré que necesitan ser arreglados.
hola @ alfaro96 ,
¿Podrías revisar mis solicitudes de extracción abiertas? Creo que son los últimos.
¡Hola @haiatn!
Ya he echado un vistazo a sus relaciones públicas abiertas.
¡Gracias!
Ahora que fusionamos lo que quedó de sklearn.utils y era el último en la lista de verificación , ¿terminamos?
Hay una última solicitud de extracción abierta # 18025, entonces este problema podría cerrarse eventualmente.
Hola,
Quiero empezar a contribuir. ¿Hay alguna clase pendiente para corregir documentos de valores predeterminados? Si hay alguno, puedo retomarlo.
Hola, nuevo en el código abierto. Estoy deseando poder arreglar el documento por si acaso queda algo que debe arreglarse.
Comentario más útil
Lógicamente hablando, si un parámetro es opcional, ¿no debería ser siempre
None
el valor predeterminado? Tener un parámetro con un valor predeterminado que no seaNone
sugiere que debería ser obligatorio.Si hay un valor predeterminado, esto generalmente significa que la literatura ha encontrado que este es un valor predeterminado razonable, lo que también sugiere que este parámetro tiene un impacto en el rendimiento y, por lo tanto, no debería ser opcional, sino que solo debería mencionar cuál es el valor predeterminado. Aquellos parecen más cercanos a los parámetros requeridos por definición, simplemente tomamos una decisión sensata para que el usuario pueda cambiarla o no.
O más prácticamente hablando, ¿hay actualmente algún parámetro opcional que hayamos encontrado que tenga valores predeterminados numéricos, pero para el cual especificar
None
generará una excepción? Eso también sugeriría que el parámetro es realmente necesario, pero que se ha elegido un valor predeterminado razonable con base en la literatura / investigación.¿O tal vez he estado confundiendo el significado de
required
yoptional
todos estos años? Jajaja. ¡Definitivamente me encantaría ayudar en esto de cualquier manera!