Scikit-learn: Adicione exemplos aos documentos da aula

Criado em 12 nov. 2014  ·  165Comentários  ·  Fonte: scikit-learn/scikit-learn

__ ATUALIZAÇÃO 23 de maio de 202__

Aqui está uma lista das classes restantes:

  • [] feature_selection.SelectorMixin
  • [x] calibração. CalibradoClassificadorCV ( # 15134 )
  • [] decomposition.DictionaryLearning ( # 16907 )
  • [] decomposition.MiniBatchDictionaryLearning ( # 16907 )
  • [] decomposition.SparseCoder ( # 15233 )
  • [] ensemble.GradientBoostingClassifier
  • [x] gaussian_process.kernels.CompoundKernel
  • [] gaussian_process.kernels.Hyperparameter
  • [] gaussian_process.kernels.Kernel
  • [] gaussian_process.kernels.PairwiseKernel
  • [] inspeção.PartialDependenceDisplay
  • [x] linear_model.PoissonRegressor
  • [x] linear_model.TweedieRegressor
  • [x] linear_model.GammaRegressor
  • [x] metrics.ConfusionMatrixDisplay
  • [x] metrics.PrecisionRecallDisplay
  • [] blend.BayesianGaussianMixture
  • [] mistura. Mistura Gaussiana
  • [] multioutput.ClassifierChain ( # 15211 )
  • [x] multioutput.RegressorChain ( # 15215 )
  • [] vizinhos.BallTree
  • [] neighbours.DistanceMetric
  • [] neighbours.KDTree

A maioria dos documentos nas aulas carece de exemplos. Seria ótimo adicionar um ou dois exemplos semelhantes a este, http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Lasso.html
image

Documentation Easy good first issue

Comentários muito úteis

Fechando isso porque todos os PRs foram mesclados e não há mais classes relevantes sem exemplos.
Obrigado @ j2heng por ajudar na triagem durante o sprint!

Todos 165 comentários

Eu suponho que você quer dizer um pequeno trecho de código / doctest usando cada estimador.

Este é um dos motivos pelos quais adicionei links automáticos de volta aos
exemplos da galeria ao mostrar a referência da API compilada, por exemplo
http://scikit-learn.org/dev/modules/generated/sklearn.manifold.Isomap.html#examples -using-sklearn-manifold-isomap.
Infelizmente, não havia uma maneira direta de fazer com que eles fossem renderizados onde
os exemplos doctest sim (e, portanto, foram relegados para o final do
página que está fora da geração numpydoc).

Em 12 de novembro de 2014 23:06, Manoj Kumar [email protected] escreveu:

A maioria dos documentos nas aulas carece de exemplos. Seria ótimo adicionar um
ou dois exemplos semelhantes a este,
http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Lasso.html

-
Responda a este e-mail diretamente ou visualize-o no GitHub
https://github.com/scikit-learn/scikit-learn/issues/3846.

Sim, eu queria dizer provavelmente um ou dois liners (por exemplo) https://github.com/scikit-learn/scikit-learn/pull/3802/files#diff -1741ad6b05f1eb0fd71af8bad0e001c7R321 apenas para mostrar a API.

Este é um dos motivos pelos quais adicionei links automáticos de volta aos exemplos pertinentes da galeria ao mostrar a referência da API compilada

Isso é incrível. Eu não tinha percebido isso antes!

Isso é incrível. Eu não tinha percebido isso antes!

Apenas em dev. E escondido na parte inferior da página :(

Onde mais você acha que seria melhor?

Abaixo da descrição da classe e acima dos parâmetros?

Qualquer lugar antes da descrição do método estaria bom. As descrições de métodos podem ocupar muito espaço vertical na página de referência da API, então é improvável que alguém passe por elas procurando exemplos.

Desculpe pelo atraso na resposta. Presumo que não seja muito fácil de fazer? Caso contrário, você teria feito isso sozinho?

Não, é ainda mais hackeado do que a abordagem atual!

Em 19 de novembro de 2014, 21:59, Manoj Kumar [email protected] escreveu:

Desculpe pelo atraso na resposta. Presumo que não seja muito fácil de fazer? Senão
você teria feito isso sozinho?

-
Responda a este e-mail diretamente ou visualize-o no GitHub
https://github.com/scikit-learn/scikit-learn/issues/3846#issuecomment -63623385
.

Que tal simplesmente adicionar exemplos à docstring das classes ausentes?

Estes são os estimadores (98-10 / 148) atualmente sem uma seção Examples : -

Concluído / WIP

ExtraTreesRegressor
BaggingClassifier
BaggingRegressor

4498 -

AdaBoostRegressor
GradientBoostingRegressor

Não é necessário

ExtraTreeClassifier  # Used only in ensembling
ExtraTreeRegressor # -do-

FAÇAM

AffinityPropagation
AgglomerativeClustering
Binarizer
CheckingClassifier
CountVectorizer
DBSCAN
DPGMM
DictionaryLearning
ElasticNet
ElasticNetCV
EmpiricalCovariance
FactorAnalysis
FastICA
FeatureAgglomeration
GaussianRandomProjection
GenericUnivariateSelect
GraphLasso
GraphLassoCV
HashingVectorizer
Imputer
IncrementalPCA
Isomap
KMeans
KernelCenterer
KernelDensity
KernelPCA
LarsCV
LassoCV
LassoLarsCV
LedoitWolf
LinearRegression
LinearSVC
LinearSVR
LocallyLinearEmbedding
LogOddsEstimator
LogisticRegression
LogisticRegressionCV
MDS
MeanEstimator
MeanShift
MinCovDet
MinMaxScaler
MiniBatchDictionaryLearning
MiniBatchKMeans
MiniBatchSparsePCA
MultiTaskLassoCV
Normalizer
Nystroem
OAS
OneClassSVM
OrthogonalMatchingPursuit
OrthogonalMatchingPursuitCV
PLSSVD
PassiveAggressiveClassifier
PassiveAggressiveRegressor
PatchExtractor
Perceptron
PriorProbabilityEstimator
QuantileEstimator
RANSACRegressor
RBFSampler
RandomForestClassifier
RandomForestRegressor
RidgeCV
RidgeClassifier
RidgeClassifierCV
ScaledLogOddsEstimator
SelectFdr
SelectFpr
SelectFwe
SelectKBest
SelectPercentile
ShrunkCovariance
SkewedChi2Sampler
SparsePCA
SparseRandomProjection
SpectralBiclustering
SpectralClustering
SpectralCoclustering
SpectralEmbedding
StandardScaler
TfidfVectorizer
TheilSenRegressor
VBGMM
Ward
WardAgglomeration
ZeroEstimator

Claro, mas você não acha que isso é um pouco entediante? A menos que você tenha um script.

Queria aprender um pouco sobre todos esses estimadores ... Acho que essa seria uma boa forma de fazer isso :) Devo começar a trabalhar nisso?

Certo!

Eu estou trabalhando nisso.

@ltcguthrie qual parte? Existem muitos modelos nos quais trabalhar para isso.

Vou começar com TfidfVectorizer.

Trabalhando em RandomForestClassifier e RandomForestRegressor

Trabalhando em PassiveAggressiveClassifier, PassiveAggressiveRegressor

Trabalhando em LinearSVC, LinearSVR

Trabalhando em StandardScaler, MinMaxScaler

Trabalhando no ElasticNet, ElasticNetCV

Além disso, criou o Google Doc para a lista de objetos concluídos / desfeitos

https://docs.google.com/spreadsheets/d/19D-RQocsLk4BM7-Xax8hVvIu3XDgwYSUnvja4cMrJww/edit#gid = 0

@lodurality você também pode criar uma lista aqui com caixas de seleção

  • [ ] Como
  • [ ] isto

Vou marcá-lo como 0,21 e um bom primeiro problema, pois acredito que será útil incluir um pequeno exemplo para cada aula.

trabalhando em sklearn/cluster

Olá, estou trabalhando para adicionar um exemplo para o Imputador como primeira contribuição.

Trabalhando no TfidfVectorizer e no CountVectorizer.

Parece que eles foram trabalhados nos itens 7961 , 8519 e 8525, mas ainda não foram concluídos ou mesclados.

Também trabalhando no HashingVectorizer em sklearn/feature_extraction/text.py .

Pegando OPTICS . (depende de # 11677)

Pegando sklearn/feature_selection/univariate_selection.py

Acho que você ainda pode fornecer um exemplo para a ÓPTICA, mesmo com o bug :)

@ qinhanmin2014 quer dizer um exemplo sem outlier para não mostrar o bug? Acho que seria bom ter um exemplo que mostra como OPTICS detecta um valor discrepante, e suspeito que esqueceríamos de mudar o exemplo assim que o bug fosse corrigido. Posso escrever uma observação sobre o problema _bug_ para corrigir o exemplo assim que o problema for corrigido, mas o exemplo inicial não terá o outlier. Devo fazer isso?

quer dizer um exemplo sem um outlier para que não mostre o bug?

Não, quero dizer um com outlier (s), como DBSCAN

Não investiguei o bug, mas espero que o OPTICS possa detectar outliers corretos na maioria das vezes, então você ainda pode construir um exemplo. Se este não for o caso, acho que precisamos marcar o bug como bloqueador.

É justo, vou tentar e ver se consigo encontrar um exemplo simples em que funcione bem.

Assumindo sklearn/linear_model/ridge.py

enfrentando sklearn/covariance/graph_lasso_.py

pegando sklearn/linear_model/logistic.py

fazendo preprocessing aulas.

tomando Perceptron

Eu adicionei o exemplo na classe Perceptron, mas por alguns motivos desconhecidos ele não funcionará.
Preciso de ajuda, sou um novato! (Ps-já criei uma solicitação de pull).

https://github.com/scikit-learn/scikit-learn/pull/11798

pegando sklearn/random_projection

[[MRG] Exemplos de Perceptron em Perceptron.py para scikit-learn / scikit-learn / linear_model / perceptron.py # 11798

Tomando 'sklearn / manifold`

Estou trabalhando em sklearn.feature_extraction.image.PatchExtractor

Andrea e eu trabalharemos no exemplo sklearn.cluster.Ward e LedoitWolf. Estamos atualizando o rastreador do Excel para garantir que ninguém esteja usando esforços duplicados.

Estou trabalhando em sklearn.decomposition.DictionaryLearning

Acabamos de atualizar o google doc de @lodurality aqui:
https://docs.google.com/spreadsheets/d/19D-RQocsLk4BM7-Xax8hVvIu3XDgwYSUnvja4cMrJww/edit#gid = 0

Eu e Shimeng trabalharemos nos desaparecidos.

@andreanr , aquele documento é meio antigo e está faltando um monte de novas classes. Uma ideia melhor seria pegar um módulo ou uma pasta e cobrir todas as classes públicas nele.

@adrinjalali Sim, definitivamente, terminaremos os pendentes da lista atual e depois atualizaremos a lista com base nos módulos atualizados.

@andreanr você também está trabalhando nas aulas de ensemble.gradient_boosting ? Caso contrário, gostaria de trabalhar nisso.

@daten-kieker, vá em frente!

Oi,

Resta alguma coisa com a qual eu poderia contribuir?

Obrigado.

@srividhyaprakash Eu apenas adicionei exemplos para estimadores em ensemble.gradient_boosting . Você poderia dar uma olhada nas outras classes.

@ daten-kieker, Obrigado pela sua resposta. Esta é a minha primeira vez em um repo público bem mantido. Você poderia me orientar sobre um possível guia inicial para comprometer estilo e formato para o exemplo?
Obrigado.

@srividhyaprakash , você pode começar guia do desenvolvedor . Você também pode perguntar no gitter se tiver dúvidas para começar. Desejo a você uma jornada de contribuição alegre aqui.

Depois de começar com esse problema específico, você pode verificar algumas das solicitações de pull que vê neste tópico para ter uma ideia do que isso envolve.

Olá, resta alguma coisa em que eu possa ajudar?

Se ainda estiver disponível, posso lidar com a docstring LinearRegression?

@adrinjalali desculpas, acabei de ler os diferentes commits e vi que você já terminou o LinearRegression em # 11975. Posso lidar com a docstring LogisticRegression?

Nós meio que perdemos a noção do que resta aqui. Uma contribuição seria checar todas as classes públicas e listar aquelas que ainda precisam de um exemplo, e partir daí.

@adrinjalali , posso compilar uma lista do que sobrou

@adrinjalali , fiquei tão animado que esqueci de perguntar, existe um ramo específico desse projeto que tem as atualizações mais recentes?

mestre tem as atualizações mais recentes. Por outro lado, uma abordagem pode ser
considere a documentação da API gerada (por exemplo, em
https://github.com/scikit-learn/scikit-learn.github.io/tree/master/dev/modules/generated)
e grep para arquivos que não contenham class="rubric">Examples

@jnothman , obrigado, o conselho do grep foi perfeito. Vou começar a compilar a lista hoje

Precisa de mais ajuda aqui para atualizar um documento existente ou para criar um novo ..?
Isso me ajudaria a começar com o código aberto também ... então, quaisquer instruções ou trabalhos seriam apreciados.

Ainda precisamos de uma lista atualizada de classes sem exemplos. Ping @ Khayyon1?

@ Khayyon1 você completou a lista ou precisa de ajuda ..?

@adrinjalali , vou ter que desistir porque a escola recomeçou logo depois que pedi ajuda e não pude trabalhar nisso, minhas desculpas

@adrinjalali, então devo ver quais são os restantes da lista mencionada por @raghavrv

@ coderop2 é uma lista de 3-4 anos, provavelmente melhor começar uma nova!

Peço desculpas pelo atraso na resposta ... Assim que meus exames da faculdade acabarem, começarei a compilar uma nova lista, mantendo a lista antiga em mente ... espero que seja o suficiente para servir de referência para todos

$ # list those with examples
$ git grep -p '^    Examples$' sklearn | grep '=class ' | sed 's/[^ ]* //;s/(.*//;s/:.*//' | sort > /tmp/classes_with_examples.txt
$ # rough list of all public classes
$ grep '\.[A-Z][a-zA-Z]\+' doc/modules/classes.rst  > /tmp/classes.txt
$ # classes without examples
$ grep -v -wFf /tmp/classes_with_examples.txt /tmp/classes.txt

...
that was incorrect. See below.
...

Não tenho certeza se isso é preciso

Este pode ser mais preciso, mas ainda contém falsos positivos. Além disso, assumindo que não precisamos de exemplos para as classes Mixin e Warning.

BaggingRegressor
BallTree
BaseEstimator
BayesianGaussianMixture
CalibratedClassifierCV
ClassifierChain
ColumnTransformer
CompoundKernel
ConstantKernel
DictionaryLearning
DistanceMetric
DotProduct
DummyClassifier
DummyRegressor
Exponentiation
ExpSineSquared
ExtraTreeClassifier
ExtraTreeRegressor
ExtraTreesClassifier
ExtraTreesRegressor
FunctionTransformer
GaussianMixture
GradientBoostingClassifier
GradientBoostingRegressor
GraphLasso
GraphLassoCV
GroupShuffleSplit
Hyperparameter
Imputer
IsolationForest
IsotonicRegression
IterativeImputer
KDTree
Kernel
KernelDensity
LocalOutlierFactor
Matern
Memory
MiniBatchDictionaryLearning
MLPClassifier
MLPRegressor
MultiOutputClassifier
MultiOutputRegressor
OAS
OneClassSVM
OneVsOneClassifier
OneVsRestClassifier
OPTICS
OutputCodeClassifier
PairwiseKernel
Parallel
Product
RandomizedSearchCV
RandomTreesEmbedding
RationalQuadratic
RBF
RegressorChain
SelectFromModel
SparseCoder
Sum
TfidfTransformer
WhiteKernel

Sim, eu fiz a pesquisa errada, dando muitos falsos positivos. Isto é melhor:

$ grep -v -f <(cat /tmp/classes_with_examples.txt | sed 's/.*/\\.&$/')  /tmp/classes.txt
   base.BaseEstimator
   base.BiclusterMixin
   base.ClassifierMixin
   base.ClusterMixin
   base.DensityMixin
   base.RegressorMixin
   base.TransformerMixin
   calibration.CalibratedClassifierCV
   cluster.OPTICS
    compose.ColumnTransformer
   covariance.OAS
   decomposition.DictionaryLearning
   decomposition.MiniBatchDictionaryLearning
   decomposition.SparseCoder
   dummy.DummyClassifier
   dummy.DummyRegressor
   ensemble.BaggingClassifier
   ensemble.BaggingRegressor
   ensemble.ExtraTreesClassifier
   ensemble.ExtraTreesRegressor
   ensemble.GradientBoostingClassifier
   ensemble.GradientBoostingRegressor
   ensemble.IsolationForest
   ensemble.RandomTreesEmbedding
   exceptions.ChangedBehaviorWarning
   exceptions.ConvergenceWarning
   exceptions.DataConversionWarning
   exceptions.DataDimensionalityWarning
   exceptions.EfficiencyWarning
   exceptions.NonBLASDotWarning
   exceptions.UndefinedMetricWarning
   feature_extraction.text.TfidfTransformer
   feature_selection.SelectFromModel
  gaussian_process.kernels.CompoundKernel
  gaussian_process.kernels.ConstantKernel
  gaussian_process.kernels.DotProduct
  gaussian_process.kernels.ExpSineSquared
  gaussian_process.kernels.Exponentiation
  gaussian_process.kernels.Hyperparameter
  gaussian_process.kernels.Kernel
  gaussian_process.kernels.Matern
  gaussian_process.kernels.PairwiseKernel
  gaussian_process.kernels.Product
  gaussian_process.kernels.RBF
  gaussian_process.kernels.RationalQuadratic
  gaussian_process.kernels.Sum
  gaussian_process.kernels.WhiteKernel
   isotonic.IsotonicRegression
   impute.IterativeImputer
   mixture.BayesianGaussianMixture
   mixture.GaussianMixture
   model_selection.GroupShuffleSplit
   model_selection.RandomizedSearchCV
    multiclass.OneVsRestClassifier
    multiclass.OneVsOneClassifier
    multiclass.OutputCodeClassifier
    multioutput.ClassifierChain
    multioutput.MultiOutputRegressor
    multioutput.MultiOutputClassifier
    multioutput.RegressorChain
   neighbors.BallTree
   neighbors.DistanceMetric
   neighbors.KDTree
   neighbors.KernelDensity
   neighbors.LocalOutlierFactor
   neural_network.MLPClassifier
   neural_network.MLPRegressor
   preprocessing.FunctionTransformer
   svm.OneClassSVM
   tree.ExtraTreeClassifier
   tree.ExtraTreeRegressor
   utils.Memory
   utils.Parallel
   covariance.GraphLasso
   covariance.GraphLassoCV
   preprocessing.Imputer

Este é 76, enquanto a sua lista é 62: ele exclui base.* e exceptions.* que é bastante justo, @adrinjalali , enquanto inclui coisas estranhas como Sum .

Desculpe, nós dois incluímos Soma. Boba.

Assumindo GroupShuffleSplit

Eu trabalharia no manequim (DummyClassifier, DummyRegressor).

Esta é a lista atual de classes que podem precisar de exemplos:

base.BaseEstimator
base.BiclusterMixin
base.ClassifierMixin
base.ClusterMixin
base.DensityMixin
base.RegressorMixin
base.TransformerMixin
cluster.OPTICS
compose.ColumnTransformer
covariance.OAS
decomposition.DictionaryLearning
decomposition.MiniBatchDictionaryLearning
decomposition.SparseCoder
ensemble.BaggingClassifier
ensemble.BaggingRegressor
ensemble.ExtraTreesClassifier
ensemble.ExtraTreesRegressor
ensemble.GradientBoostingClassifier
ensemble.GradientBoostingRegressor
ensemble.IsolationForest
ensemble.RandomTreesEmbedding
exceptions.ChangedBehaviorWarning
exceptions.ConvergenceWarning
exceptions.DataConversionWarning
exceptions.DataDimensionalityWarning
exceptions.EfficiencyWarning
exceptions.NonBLASDotWarning
exceptions.UndefinedMetricWarning
feature_extraction.text.TfidfTransformer
feature_selection.SelectFromModel
gaussian_process.kernels.CompoundKernel
gaussian_process.kernels.ConstantKernel
gaussian_process.kernels.DotProduct
gaussian_process.kernels.ExpSineSquared
gaussian_process.kernels.Exponentiation
gaussian_process.kernels.Hyperparameter
gaussian_process.kernels.Kernel
gaussian_process.kernels.Matern
gaussian_process.kernels.PairwiseKernel
gaussian_process.kernels.Product
gaussian_process.kernels.RBF
gaussian_process.kernels.RationalQuadratic
gaussian_process.kernels.Sum
gaussian_process.kernels.WhiteKernel
impute.IterativeImputer
inspection.PartialDependenceDisplay
metrics.RocCurveDisplay
mixture.BayesianGaussianMixture
mixture.GaussianMixture
multiclass.OneVsRestClassifier
multiclass.OneVsOneClassifier
multiclass.OutputCodeClassifier
multioutput.ClassifierChain
multioutput.MultiOutputRegressor
multioutput.MultiOutputClassifier
multioutput.RegressorChain
neighbors.BallTree
neighbors.DistanceMetric
neighbors.KDTree
neighbors.KernelDensity
neighbors.LocalOutlierFactor
neural_network.MLPClassifier
neural_network.MLPRegressor
preprocessing.FunctionTransformer
svm.LinearSVC
tree.ExtraTreeClassifier
tree.ExtraTreeRegressor
utils.Memory
utils.Parallel

Olá @pspachtholz @MechCoder , gostaria de trabalhar nisso. Estou interessado em contribuir para o scikit-learn e acho que este pode ser um bom ponto de partida.

Obrigado

@PyExtreme Eu acho que você pode simplesmente ir em frente, selecionar uma / mais classes da lista que você achar interessante e adicionar exemplos. Eu, então, postaria o que você está trabalhando aqui para evitar trabalho duplicado. Para obter orientação, você pode dar uma olhada nas solicitações pull mescladas anteriormente.

@pspachtholz , estou pegando _ExtraTreesClassifier_ inicialmente e depois de fazer o commit, gostaria de pegar em lotes.

Obrigado

Trabalhou no aumento de gradiente.

Pegando neural_network.MLPClassifier & neural_network.MLPRegressor

Estou em svm.LinearSVC

Estou trabalhando em sklearn.multioutput.MultiOutputClassifier

Olá, estarei trabalhando em mixture.BayesianGaussianMixture e mixture.GaussianMixture

Estou em feature_extraction.text.TfidfTransformer . Deseje-me boa sorte!

Estou em feature_extraction.text.TfidfTransformer. Deseje-me boa sorte!

também trabalhando nisso - talvez possamos compartilhar exemplos?

pegando ensemble.ExtraTreesClassifier

Estou escolhendo ensemble.BaggingRegressor

Estou trabalhando em feature_selection.SelectFromModel

Estou escolhendo vizinhos.KernelDensity

Estou em ensemble.IsolationForest

em multiclass.OneVsRestClassifier

Ei, estarei trabalhando nos kernels do Processo Gaussiano, começando com gaussian_process.kernels.RBF e depois farei os outros kernels com @thorbenjensen

Trabalhando em ensemble.GradientBoostingClassifier

Trabalhando em Perceptron

Trabalhando em ensemble.GradientBoostingRegressor

Próximo tree.ExtraTreeClassifier

trabalhando em ensemble.GradientBoostingRegressor

dando uma olhada em multiclass.OutputCodeClassifier

Olhando para neighbors.LocalOutlierFactor .

trabalhando em ensemble.RandomTreesEmbedding

pegando ensemble.ExtraTreesClassifier

Olá @jorahn , já enviei um PR sobre isso.
Fique à vontade para escolher outro módulo.

Eu sugiro que você dê uma olhada nos comentários antes para ver se alguém já está trabalhando em uma classe para evitar trabalho duplicado.
Para algumas classes já existem alguns pedidos de MRG (possivelmente obsoletos), onde poderíamos perguntar aos autores se eles ainda estão trabalhando ativamente nisso.

@flaviomorelli @LBrummer @mschaffenroth Eu fiz o gradiente de ensemble neste PR já # 15151

Muito legal ver que isso está ganhando velocidade :-)

pegando ensemble.ExtraTreesClassifier

Olá @jorahn , já enviei um PR sobre isso.
Fique à vontade para escolher outro módulo.

oh, não vi isso neste problema. então agora temos dois PRs para isso

O Perceptron já está documentado.

trabalhando em tree.ExtraTreeRegressor

trabalhando em impute.IterativeImputer

@pspachtholz , estou pegando _ExtraTreesClassifier_ inicialmente e depois de fazer o commit, gostaria de pegar em lotes.

Obrigado

@jorahn , eu havia mencionado isso há 1 semana aqui apenas e já estava trabalhando nisso há 1 semana.

Trabalhando no OneVsOneClassifier.

Estou indo para metrics.RocCurveDisplay

trabalhando em multioutput.ClassifierChain

Trabalhando em PriorProbabilityEstimator .

Trabalhando em multioutput.MultiOutputRegressor

pegando neighbors.BallTree

PriorProbabilityEstimator está obsoleto na versão 0.21 e será removido na versão 0.23. Não estou trabalhando nisso.

Trabalhando em covariance.OAS

SelectPercentile já documentado.

trabalhando em ensemble.ExtraTreesRegressor

pegando neighbors.BallTree

existem alguns exemplos para BallTree e compose.ColumnTransformer

RANSACRegressor já documentado.

pegando decomposition.SparseCoder

SelectKBest já documentado.

SpectralClustering já documentado

Trabalhando em IsolationForest

Trabalhando em IsolationForest

Olá @zioalex , já tenho um PR para isso: # 15205. Fico feliz em receber sugestões e comentários: smiley:

Trabalhando em neighbors.DistanceMetric .

trabalhando em multioutput.RegressorChain

trabalhando em exceptions.ConvergenceWarning

trabalhando em exceptions.ChangedBehaviorWarning

trabalhando em exceptions.ChangedBehaviorWarning

Depois de usar @adrinjalali , concluímos que é melhor não trabalhar neste, pois é dependente de liberação. E provavelmente será movido para outro lugar.

Para sua tranquilidade, seja como nós, não trabalhe em exceptions.ChangedBehaviorWarning

Trabalhando em exceptions.DataDimensionalityWarning

Eu gostaria de trabalhar em alguns. Vou começar com a ótica.

Oi! Acabei de levantar um PR depois de adicionar um trecho de código de exemplo ao agrupamento K-means. Esta é minha primeira contribuição de código aberto, então seria ótimo se alguém pudesse olhar para isso e ver se precisa de mais trabalho!
Obrigado e cumprimentos,
Smriti Singh

Analisei a lista de outubro passado e verifiquei quais classes já tinham PRs / exemplos mesclados. Suponho que as alegações do ano passado ou mais atrás, nas quais nada mais aconteceu, podem ser ignoradas.
Então aqui está uma lista de tarefas atualizada:

não funciona nisso, é dependente do lançamento: exceptions.ChangedBehaviorWarning

PRs abertos:

decomposition.SparseCoder # 15233

~ exceptions.DataDimensionalityWarning # 15246 ~
mistura.BayesianGaussianMixture # 15193
mistura. Mistura Gaussiana # 15193
multioutput.ClassifierChain # 15211
multioutput.RegressorChain # 15215

novo prs aberto:
decomposition.DictionaryLearning # 16907
~ exceções. Aviso de eficiência # 16785 ~
~ exceptions.UndefinedMetricWarning # 16784 ~

Gratuito para captura:

(EDITAR: aqueles em base são mais adequados para o guia do desenvolvedor, vamos ignorá-los por enquanto)
~ base.BaseEstimator ~
~ base.BiclusterMixin ~
~ base.ClassifierMixin ~
~ base.ClusterMixin ~
~ base.DensityMixin ~
~ base.RegressorMixin ~
~ base.TransformerMixin ~

decomposition.MiniBatchDictionaryLearning

~ exceptions.NonBLASDotWarning ~

~ feature_selection.SelectFromModel ~

gaussian_process.kernels.CompoundKernel
gaussian_process.kernels.Hyperparameter
~ gaussian_process.kernels.Kernel ~

~ inspeção.PartialDependenceDisplay ~

~ multiclass.OneVsOneClassifier ~

~ multioutput.MultiOutputClassifier ~

~ utils.Memory ~
~ utils.Parallel ~

Atualizar.
covariance.OAS # 16681
multioutput.MultiOutputRegressor # 16698
tree.ExtraTreeClassifier # 16671

neighbours.DistanceMetric
neighbours.KDTree
neighbours.LocalOutlierFactor

exceptions.DataConversionWarning # 16704

multiclass.OneVsOneClassifier # 16700

Queremos exemplos para as classes base.* ? Eu acho que faz mais sentido tê-los melhor documentados em developer guide . WDYT @jnothman @NicolasHug ?

Concordo que é melhor para o guia do desenvolvedor. Estou editando o comentário

Acho que foi fechado por acidente.

multioutput.MultiOutputClassifier já tem exemplos. Deve ser atualizado para incluir um exemplo do atributo ou deve ser retirado da lista de tarefas?

Acho que pode ser removido da lista. Obrigado @marenwestermann

Acho que pode ser removido da lista. Obrigado @marenwestermann

Ok, então feature_selection.SelectFromModel também pode ser removido porque tem exemplos também. (Eles foram adicionados em outubro do ano passado.)

Com relação a utils.Memory e utils.Parallel :
no site do scikit-learn, eles são "removidos na versão 0.23". Eu verifiquei o arquivo utils.__init__.py onde essas classes viviam e elas foram removidas. Portanto, eles também podem ser retirados da lista.

Vou tentar resolver gaussian_process.kernels.Kernel :)

Além do DictionaryLearning / MiniBatchDictionaryLearning PR acima, também dei uma olhada nas classes de vizinhos. *: Todos eles já têm pelo menos um exemplo. Aqueles para neighbours.KDTree e neighbours.BallTree são gerados a partir da string de formato CLASS_DOC que pode ser encontrada no arquivo de inclusão _binary_tree.pxi.

É a minha primeira vez contribuindo com este projeto. Eu gostaria de dar uma olhada em classes de vizinhos. * Incluindo:
neighbours.DistanceMetric
neighbours.KDTree
neighbours.LocalOutlierFactor

Eu dei uma olhada em gaussian_process.kernels.Kernel . De acordo com a documentação, é a "Classe base para todos os kernels". Portanto, todos os seus atributos são atributos de propriedade somente leitura (métodos com @property decoradores). Do meu entendimento, portanto, não faz sentido adicionar exemplos a esta classe porque ela só pode ser usada em combinação com outra classe.
No entanto, se você rolar até o final da página da Web de gaussian_process.kernels.Kernel há um link para um exemplo de como essa classe pode ser usada. Isso foi adicionado em novembro de 2019. Neste exemplo, a classe SequenceKernel é criada, herdada da classe Kernel . A classe SequenceKernel não é um recurso do scikit-learn, mas pode ser um recurso interessante a ser adicionado.

Corrija-me se alguma coisa que escrevi aqui estiver errada.

Sim, seria muito complicado escrever um exemplo para isso. Fico feliz por ele ser removido da lista.

@Malesche exceptions.DataDimensionalityWarning agora está fechado e pode, portanto, ser retirado da lista TODO.

Com relação a inspection.PartialDependenceDisplay :
Na descrição da classe é dito: "É recomendado usar plot_partial_dependence para criar um PartialDependenceDisplay ". Dei uma olhada nesta função e dentro dela um objeto PartialDependenceDisplay é criado e seu método plot é chamado. Existem exemplos de como usar plot_partial_dependence e, portanto, acho que não há necessidade de adicionar exemplos a inspection.PartialDependenceDisplay . O que você acha, @adrinjalali ?

concordou @marenwestermann

exceptions.NonBLASDotWarning também pode ser retirado da lista TODO porque uma decisão contra ter exemplos em exceptions.py foi tomada (ver # 17040).

@NicolasHug , @amueller apenas no caso de você querer usar este problema como um problema de sprint, você pode encontrar aqui a lista das classes que ainda faltam exemplos (graças ao script de Joel, alterado por ele mesmo ... :)). Já removi base e exceptions classes. Posso sugerir editar o problema com a lista apenas no início? Isso tornará mais fácil identificar as classes disponíveis. As RP ainda abertas de sprints anteriores (não apenas) estão vinculadas à lista: Acho que será útil finalizá-las antes de um novo evento (obrigado @thomasjpfan por já ter iniciado algumas revisões).

Obrigado pela sugestão @cmarmo , atualizei o exemplar.

Oi, vou tentar enfrentar gaussian_process.kernels.Hyperparameter .

Olá, vou enfrentar linear_model.* .

  • linear_model.PoissonRegressor
  • linear_model.TweedieRegressor
  • linear_model.GammaRegressor

Olá, vamos levar ensemble.GradientBoostingClassifier

Olá, vamos levar ensemble.GradientBoostingClassifier

Este já tem um exemplo.

Ei, agora estamos pegando:

  • metrics.ConfusionMatrixDisplay
  • metrics.PrecisionRecallDisplay

Ei @adrinjalali , você pode verificar o PR? Obrigado!

@emdupre e eu trabalharemos abaixo como parte do sprint guarda-chuva de dados.

  • neighbours.BallTree
  • neighbours.DistanceMetric
  • neighbours.KDTree

Olá @adrinjalali , Parece que já podemos ver alguns exemplos abaixo. Não é atualizado na lista de tarefas. Por favor sugira.

  • neighbours.BallTree
  • neighbours.DistanceMetric
  • neighbours.KDTree

Olá, vou trabalhar em:

  • decomposition.DictionaryLearning (# 16907)
  • decomposition.MiniBatchDictionaryLearning (# 16907)
  • decomposition.SparseCoder (# 15233)

Olá, vou trabalhar em:

  • gaussian_process.kernels.CompoundKernel

Fechando isso porque todos os PRs foram mesclados e não há mais classes relevantes sem exemplos.
Obrigado @ j2heng por ajudar na triagem durante o sprint!

Oh sério. A lista no topo está desatualizada?

Oh sim, eu mesclei o outro PR.

Esta página foi útil?
0 / 5 - 0 avaliações