Issue 1:
Describe the bug

I'm executing below command after /usr/bin/python3 -sBm build -w --no-isolation.

Looks like documentation buiuld fails because wrong import in sklearn/__check_build/init.py

Steps/Code to Reproduce

/usr/bin/python3 -sBm build -w --no-isolation
PYTHONPATH=$PWD/build/$(cd build; ls -1d lib*) /usr/bin/sphinx-build -n -T -b html doc build/sphinx/html

Expected Results

It should be possible to build documemtation.

Actual Results

[tkloczko@pers-jacek scikit-learn-1.2.2]$ PYTHONPATH=$PWD/build/$(cd build; ls -1d lib*) /usr/bin/sphinx-build -n -T -b man doc build/sphinx/man
Running Sphinx v6.1.3

Traceback (most recent call last):
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 48, in <module>
from sklearn._check_build import check_build # noqa
ModuleNotFoundError: No module named 'sklearn._check_build'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/sphinx/config.py", line 351, in eval_config_file
exec(code, namespace) # NoQA: S102
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/doc/conf.py", line 20, in <module>
from sklearn.externals._packaging.version import parse
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__init__.py", line 81, in <module>
from sklearn import __check_build # noqa: F401
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 50, in <module>
raise_build_error(e)
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 31, in raise_build_error
raise ImportError(
ImportError: No module named 'sklearn._check_build'
___________________________________________________________________________
Contents of /home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build:
_check_build.pyx _check_build.c __pycache__
__init__.py
___________________________________________________________________________
It seems that scikit-learn has not been built correctly.

If you have installed scikit-learn from source, please do not forget
to build the package before using it: run `python setup.py install` or
`make` in the source directory.

If you have used an installer, please check that it is suited for your
Python version, your operating system and your platform.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/sphinx/cmd/build.py", line 279, in build_main
app = Sphinx(args.sourcedir, args.confdir, args.outputdir,
File "/usr/lib/python3.8/site-packages/sphinx/application.py", line 202, in __init__
self.config = Config.read(self.confdir, confoverrides or {}, self.tags)
File "/usr/lib/python3.8/site-packages/sphinx/config.py", line 173, in read
namespace = eval_config_file(filename, tags)
File "/usr/lib/python3.8/site-packages/sphinx/config.py", line 364, in eval_config_file
raise ConfigError(msg % traceback.format_exc()) from exc
sphinx.errors.ConfigError: There is a programmable error in your configuration file:

Traceback (most recent call last):
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 48, in <module>
from sklearn._check_build import check_build # noqa
ModuleNotFoundError: No module named 'sklearn._check_build'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/sphinx/config.py", line 351, in eval_config_file
exec(code, namespace) # NoQA: S102
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/doc/conf.py", line 20, in <module>
from sklearn.externals._packaging.version import parse
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__init__.py", line 81, in <module>
from sklearn import __check_build # noqa: F401
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 50, in <module>
raise_build_error(e)
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 31, in raise_build_error
raise ImportError(
ImportError: No module named 'sklearn._check_build'
___________________________________________________________________________
Contents of /home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build:
_check_build.pyx _check_build.c __pycache__
__init__.py
___________________________________________________________________________
It seems that scikit-learn has not been built correctly.

If you have installed scikit-learn from source, please do not forget
to build the package before using it: run `python setup.py install` or
`make` in the source directory.

If you have used an installer, please check that it is suited for your
Python version, your operating system and your platform.

Configuration error:
There is a programmable error in your configuration file:

Traceback (most recent call last):
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 48, in <module>
from sklearn._check_build import check_build # noqa
ModuleNotFoundError: No module named 'sklearn._check_build'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/sphinx/config.py", line 351, in eval_config_file
exec(code, namespace) # NoQA: S102
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/doc/conf.py", line 20, in <module>
from sklearn.externals._packaging.version import parse
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__init__.py", line 81, in <module>
from sklearn import __check_build # noqa: F401
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 50, in <module>
raise_build_error(e)
File "/home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build/__init__.py", line 31, in raise_build_error
raise ImportError(
ImportError: No module named 'sklearn._check_build'
___________________________________________________________________________
Contents of /home/tkloczko/rpmbuild/BUILD/scikit-learn-1.2.2/sklearn/__check_build:
_check_build.pyx _check_build.c __pycache__
__init__.py
___________________________________________________________________________
It seems that scikit-learn has not been built correctly.

If you have installed scikit-learn from source, please do not forget
to build the package before using it: run `python setup.py install` or
`make` in the source directory.

If you have used an installer, please check that it is suited for your
Python version, your operating system and your platform.

Versions

1.2.2

Issue 2:
Hello,

the gaussian process are by default fitted using the fmin_cobyal optimizer. The optimizer is started from various random inital conditions to avoid local extrema. The problem is, the worst of those extrema is chosen in the end.

optimal_minus_rlf_value, optimal_par = self.reduced_likelihood_function(theta=optimal_theta)
# sign error
# reduced_likelihood_function return the likelihood
# not the negative likelihood
optimal_rlf_value = - optimal_minus_rlf_value(theta=optimal_theta)

The reason it did not show up in the unit test is, that they been to easy. Even the worst local maximum was good enough to pass the test. I added a test which is more "tough" and manage to prove the current solution wrong.

Here is the solution to the unit test plotted with the current implementation:

and fixed: