GridSearchCV.verbose documentation does not match actual behavior (values >3, >10)

### Describe the issue linked to the documentation

[`GridSearchCV` docs ](https://scikit-learn.org/1.7/modules/generated/sklearn.model_selection.GridSearchCV.html) state

> **verbose** int
> 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.

In reality, this param is passed to joblib [here](https://github.com/scikit-learn/scikit-learn/blob/d3898d9d57aeb1e960d266613a2e31b07bca39d7/sklearn/model_selection/_search.py#L1009), whose [docs](https://joblib.readthedocs.io/en/latest/generated/joblib.Parallel.html) state:
> **verbose**: int, default=0
> 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.

Testing with the MRE below shows that 0 is silent, 1 prints one line, 2 prints a line for each CV split. 3-9 are all the same. 10-inf are all the same

### MRE:
```python
from sklearn.model_selection import GridSearchCV
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import make_classification

X, y = make_classification()

clf = LogisticRegression(max_iter=100)

param_grid = {"C": [1, 2]}

for v in [0, 1, 2, 3, 9, 10, 1000]:
    print(f"\n=======  verbose={v}  ======= ")
    gs = GridSearchCV(
        clf,
        param_grid,
        cv=2,
        n_jobs=1,
        verbose=v,
    )
    gs.fit(X, y)
```

It is possible taht the same issue exists elsewhere, I've not looked thoroughly

### Suggest a potential alternative/fix

Update docs to match observed behaviour, e.g.:

> **verbose** int
> Controls the verbosity: the higher, the more messages.
> 0 : no messages;
> 1 : a single line describing the number of folds, the number of candidates, and the number of fits;
> 2 : the above, plus when each fold ends, the computation time for that fold and parameter candidate is displayed;
> 3-9 : the above, plus the fold index and the score is also displayed;
> ≥10 : an additional message for the start of each fold, and the candidate parameter indexes are also displayed.

COMMENT:
Hi @Gabriel-Kissin, thanks for reporting.

I agree we can add some more information on the verbosity in the docs of `GridSearchCV` and `RandomizedSearchCV`. Mentioning that 0 is the default, what happens at 0 and possibly what is differentwith verbosity above 10, similar as you did but maybe a bit leaner.

Did you test this with a large dataset and can you verify if there is a gain in information between `verbosity=3` and `verbosity>10`? Meaning, is there a delay between `START` and `END`? If so, it is worth documenting the `verbosity>10` case, otherwise I don't think it's worth it.

If you are interested, please go ahead and make a PR.

> A useful feature would be to have a setting between the current 1 and 2 which prints a message for each param combination, but not for each fold. So it would print the params, and the mean score for each of the metrics over the folds. That would be the ideal setting for me which isn't currently supported. So perhaps this issue should change from the Documentation label to a New Feature Request?

Some people are working on a callback API, that allows customised logging and progress bars, that, to my current understanding will allow you to log messages for param combinations. So what you are requesting is already being developed. :) (See #27676, if you are interested.)

Labels: Documentation