'verbose' argument in scikit-learn

Question:

Many scikit-learn functions have a verbose argument that, according to their documentation, "[c]ontrols the verbosity: the higher, the more messages" (e.g., GridSearchCV).

Unfortunately, no guidance is provided on which integers are allowed (e.g., can a user set verbosity to 100?) and what level of verbosity corresponds to which integers. I cannot find this information anywhere in the documentation.

My question is, which integers map to which levels of verbosity?

Asked By: Gyan Veda

||

Answers:

Higher integers map to higher verbosity as the docstring says. You can set verbosity=100 but I’m pretty sure it will be the same as verbosity=10. If you are looking for a list of what exactly is printed for each estimator for each integer, you have to look into the source.
I think most estimators only have two or three levels of verbosity, I think 3 or above will be the most verbose you can get.

Answered By: Andreas Mueller

Might be a bit late, but since I stumbled over the same question when setting up my GridSearch, I found this in the docstring in the deepest depths of the submodule sklearnexternalsjoblibparallel.py:

“The verbosity level: if non zero, progress messages are printed. Above 50, the output is sent to stdout. The frequency of the messages increases with the verbosity level. If it more than 10, all iterations are reported.”

In addition, the Glossary (search for “verbose”) says this:

“Logging is not handled very consistently in Scikit-learn at present, but when it is provided as an option, the verbose parameter is usually available to choose no logging (set to False). Any True value should enable some logging, but larger integers (e.g. above 10) may be needed for full verbosity. Verbose logs are usually printed to Standard Output. Estimators should not produce any output on Standard Output with the default verbose setting.”

Answered By: s6hebern

Controls the verbosity: the higher, the more messages.

>1 : the computation time for each fold and parameter candidate is displayed;

>2 : the score is also displayed;

>3 : the fold and candidate parameter indexes are also displayed together with the starting time of the computation.     

Controls the verbosity when fitting and predicting.

&

Verbosity in keyword arguments usually means showing more ‘wordy’ information for the task. In this case, for machine learning, by setting verbose to a higher number ( 2 vs 1 ), you may see more information about the tree building process.
use this link

Answered By: AliAlavi