Π― Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ ΡΡΠΎ ΠΎΡΠΈΠ±ΠΊΠ° PyTorch, ΠΎΡΠΈΠ±ΠΊΠ° scikit-learn ΠΈΠ»ΠΈ numba, Π½ΠΎ ΡΠ°Π½ΡΡΠ΅ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π² scikit-learn 0.20.3 ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ΅ΡΠΈΠΈ 0.21.0, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡ ΡΠΈΡΠΊΠ½ΡΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎ ΡΠ΅Π³ΡΠ΅ΡΡ Π² scikit learn.
ΠΠΎΠ³Π΄Π° Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠ΅ΡΠΈΡ ΠΈΠΌΠΏΠΎΡΡΠ° (ΡΠ²Π΅ΡΠ½ΡΡΡΡ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠΌΠΏΠΎΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» import librosa
), Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ:
import torch
import soundfile
import scipy.signal
import numba
import sklearn
Ρ ΡΡΠ°ΡΡΠΈΠ΅ΠΌ
Traceback (most recent call last):
File "/opt/conda/lib/python3.6/site-packages/sklearn/__check_build/__init__.py", line 44, in <module>
from ._check_build import check_build # noqa
ImportError: dlopen: cannot load any more object with static TLS
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "test_torch.py", line 5, in <module>
import sklearn
File "/opt/conda/lib/python3.6/site-packages/sklearn/__init__.py", line 75, in <module>
from . import __check_build
File "/opt/conda/lib/python3.6/site-packages/sklearn/__check_build/__init__.py", line 46, in <module>
raise_build_error(e)
File "/opt/conda/lib/python3.6/site-packages/sklearn/__check_build/__init__.py", line 41, in raise_build_error
%s""" % (e, local_dir, ''.join(dir_content).strip(), msg))
ImportError: dlopen: cannot load any more object with static TLS
___________________________________________________________________________
Contents of /opt/conda/lib/python3.6/site-packages/sklearn/__check_build:
_check_build.cpython-36m-x86_64-linux-gnu.so__pycache__ __init__.py
setup.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.
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° scikit-learn 0.20.3 ΡΡΡΡΠ°Π½ΡΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
jenkins<strong i="15">@260bf77532d0</strong>:~/workspace/test$ python
Python 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 01:22:34)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sklearn; sklearn.show_versions()
System:
python: 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 01:22:34) [GCC 7.3.0]
executable: /opt/conda/bin/python
machine: Linux-4.15.0-29-generic-x86_64-with-debian-jessie-sid
BLAS:
macros: SCIPY_MKL_H=None, HAVE_CBLAS=None
lib_dirs: /opt/conda/lib
cblas_libs: mkl_rt, pthread
Python deps:
pip: 19.1.1
setuptools: 41.0.1
sklearn: 0.21.2
numpy: 1.16.4
scipy: 1.1.0
Cython: None
pandas: None
Π’Π°ΠΊΠΆΠ΅ Π²Π°Ρ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°ΡΡ:
jenkins<strong i="19">@260bf77532d0</strong>:~/workspace/test$ pip list | grep numba
numba 0.43.1
jenkins<strong i="20">@260bf77532d0</strong>:~/workspace/test$ pip list | grep torch
torch 1.2.0a0+ab800ad
Π‘Π±ΠΎΡΠΊΠ° torch Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ gcc 5.5.0, ΡΡΠΎΠ±Ρ Π²ΡΠ·Π²Π°ΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ; ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΡΠΎ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ gcc Π½Π΅ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠ»Ρ ΠΏΡΠΎΡΡΠΎΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΎΠ±ΡΠ°Π· Π΄ΠΎΠΊΠ΅ΡΠ° ezyang/scikit-learn-tls-repro:1
https://cloud.docker.com/repository/registry-1.docker.io/ezyang/scikit-learn-tls-repro. ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ ΠΏΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π²ΡΡΠ΅. (Π ΠΠΠΠΠ’ΠΠ ΠΠΠΠ’Π¬ ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°Π· Docker Π²ΡΠ΅ Π΅ΡΠ΅ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ. ΠΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ.)
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΡΠ΅Ρ. ΠΠ°ΠΊ Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π»ΠΈ / ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΈ sklearn?
pip install scikit-learn
Π£ Π²Π°Ρ Π΅ΡΡΡ ΠΆΡΡΠ½Π°Π» Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ? ΠΠ½ Π±ΡΠ» ΡΠΎΠ±ΡΠ°Π½ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ Π²Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π΅ΡΠΎ?
Collecting scikit-learn
Using cached https://files.pythonhosted.org/packages/85/04/49633f490f726da6e454fddc8e938bbb5bfed
2001681118d3814c219b723/scikit_learn-0.21.2-cp36-cp36m-manylinux1_x86_64.whl
@ezyang Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Ρ
ΠΎΡΠ΅ΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Dockerfile
Π΅ΡΠ»ΠΈ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΡΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½ Π² Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠ΅ Π΄ΠΎΠΊΠ΅ΡΠ° Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
docker run -it ezyang/scikit-learn-tls-repro:1 bash
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ΅Π³, Ρ.Π΅. 1
ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π·Π°Π³Π°Π΄ΠΎΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ (ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ΅Π³ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ):
Unable to find image 'ezyang/scikit-learn-tls-repro:latest' locally
docker: Error response from daemon: manifest for ezyang/scikit-learn-tls-repro:latest not found.
Π― ΠΏΠΎΠ½ΡΡΠΈΡ Π½Π΅ ΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎ ΠΌΠΎΠ³Π»ΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ, Π½ΠΎ Ρ ΠΌΠ΅Π½Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΡΡΠ΅ΡΠΎΠ² ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ , ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΡΡΠΈΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ pytorch ΠΈ OpenCV https://github.com/pytorch/pytorch/issues/2083 ΠΈΠ»ΠΈ OpenCV ΠΈ Tensorflow https://github.com / tenorflow / ΠΌΠΎΠ΄Π΅Π»ΠΈ / Π²ΠΎΠΏΡΠΎΡΡ / 523. Π ΠΎΠ±ΡΠ΅ΠΌ, Ρ Π±Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠ», ΡΡΠΎ ΡΡΠΎ Π½Π΅ ΠΎΡΠΈΠ±ΠΊΠ° scikit-learn.
Π’ΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΡΡΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΠΈΠΌΠΏΠΎΡΡΠ°, ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π²Π°ΡΠ΅ΠΌ ΠΎΠ±ΡΠ°Π·Π΅ Π΄ΠΎΠΊΠ΅ΡΠ°:
python -c 'import torch; import sklearn; import soundfile; import scipy.signal; import numba'
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅.Π― ΠΏΡΡΠ°Π»ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ Π²Π½ΡΡΡΠΈ ΡΡΠ΅Π΄Ρ conda (Π²Π½ΡΡΡΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ°Π·Π° Π΄ΠΎΠΊΠ΅ΡΠ° Π΄Π»Ρ Ρ
ΠΎΡΠΎΡΠ΅ΠΉ ΠΌΠ΅ΡΡ) ΠΈ Π½Π΅ ΡΠΌΠΎΠ³ ( scikit-learn 0.21.2
ΠΈ pytorch 1.1.0
), ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π² pytorch dev Π²Π΅ΡΡΠΈΡ.
conda create -n test -c pytorch pytorch scikit-learn scipy numba scikit-learn -y
conda activate test
pip install soundfile
python -c 'import torch; import soundfile; import scipy.signal; import numba; import sklearn'
$ conda list
# packages in environment at /opt/conda/envs/test:
#
# Name Version Build Channel
_libgcc_mutex 0.1 main
blas 1.0 mkl
ca-certificates 2019.5.15 0
certifi 2019.6.16 py37_1
cffi 1.12.3 py37h2e261b9_0
cudatoolkit 10.0.130 0
intel-openmp 2019.4 243
joblib 0.13.2 py37_0
libedit 3.1.20181209 hc058e9b_0
libffi 3.2.1 hd88cf55_4
libgcc-ng 9.1.0 hdf63c60_0
libgfortran-ng 7.3.0 hdf63c60_0
libstdcxx-ng 9.1.0 hdf63c60_0
llvmlite 0.29.0 py37hd408876_0
mkl 2019.4 243
mkl-service 2.0.2 py37h7b6447c_0
mkl_fft 1.0.12 py37ha843d7b_0
mkl_random 1.0.2 py37hd81dba3_0
ncurses 6.1 he6710b0_1
ninja 1.9.0 py37hfd86e86_0
numba 0.45.0 py37h962f231_0
numpy 1.16.4 py37h7e9f1db_0
numpy-base 1.16.4 py37hde5b4d6_0
openssl 1.1.1c h7b6447c_1
pip 19.1.1 py37_0
pycparser 2.19 py37_0
python 3.7.3 h0371630_0
pytorch 1.1.0 py3.7_cuda10.0.130_cudnn7.5.1_0 pytorch
readline 7.0 h7b6447c_5
scikit-learn 0.21.2 py37hd81dba3_0
scipy 1.3.0 py37h7c811a0_0
setuptools 41.0.1 py37_0
six 1.12.0 py37_0
soundfile 0.10.2 pypi_0 pypi
sqlite 3.29.0 h7b6447c_0
tk 8.6.8 hbc83047_0
wheel 0.33.4 py37_0
xz 5.2.4 h14c3975_4
zlib 1.2.11 h7b6447c_3
Π― Π΄ΡΠΌΠ°Ρ, Π±ΡΠ»ΠΎ Π±Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠΏΠΎΠ»Π°ΠΌ scikit-learn, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ±ΠΎΡΠΊΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
ΠΠΎΠΎΠ±ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, Ρ ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΡΠΊΡΠΏΠ΅ΡΡΠΈΠ·Π° ΠΏΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ PyTorch. ΠΠΈΡΠ½ΠΎ Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° ΡΠ°Π½ΡΡΠ΅ Π½Π΅ ΡΠ»ΡΡΠ°Π» ΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ TLS, ΠΈ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ΄ΡΠ° scikit-learn, Ρ ΠΎΡΡ Ρ ΠΌΠΎΠ³Ρ ΠΎΡΠΈΠ±Π°ΡΡΡΡ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠΈ.
IIUC, Π²Ρ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π²ΠΈΠ΄Π΅Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ scikit-learn 0.21.2 ΠΈ Π²Π΅ΡΡΠΈΠ΅ΠΉ pytorch dev. Π― Π½Π΅ ΠΌΠΎΠ³Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π° scikit-learn 0.21.2 ΠΈ pytorch 1.1.0, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² https://github.com/scikit-learn/scikit-learn/issues/14485#issuecomment -517195977. ΠΡΠ»ΠΈ Π±Ρ Ρ ΠΏΠΎΠΏΡΡΠ°Π»ΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΡΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, Ρ Π±Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΠ» Π½Π° PyTorch ΠΏΠΎΠΏΠΎΠ»Π°ΠΌ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ°, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ @ezyang, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ TLS (Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΠΎΡΠΎΠΊΠΎΠ²).
ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Ρ Π²ΡΠΊΠΎΠΏΠ°Π» ΡΠ°Π½ΡΡΠ΅: https://github.com/pytorch/pytorch/issues/2575#issuecomment -369892859
; TL; DR: ΡΡΠΎ-ΡΠΎ Π² ΡΠ΅ΠΏΠΎΡΠΊΠ΅ ΠΈΠΌΠΏΠΎΡΡΠ° Π½Π΅ Π±ΡΠ»ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΎ Π½Π° C / C ++ Ρ ΡΠ»Π°Π³ΠΎΠΌ -gPIC
. ΠΠΌΠΏΠΎΡΡ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ Π²Π΅ΡΡ ΠΈΠΌΠΏΠΎΡΡ Π² Β«ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ TLSΒ». Π’Π°ΠΊΠΈΡ
Β«ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
TLS-ΡΠ»ΠΎΡΠΎΠ²Β» ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ (ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π·Π΄Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ, Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, Π½Π΅Π²Π΅ΡΠ½Ρ). Π’ΠΎΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»ΠΎΡΠΎΠ² Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΠ‘ ΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½Π° Π±ΡΠ»Π° ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π°.
Π ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ 2575 pytorch ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎ OpenMP, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ Π±Π΅Π· ΡΠ»Π°Π³Π°, Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠΊΠ°Π΄.
ΠΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ scikit-learn ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π½ΠΎΠ²ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ, ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡΠΈΠΌΠΈ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ»ΠΎΡΠΎΠ² TLS.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π½Π΅ Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΡΠΊΡΠΏΠ΅ΡΡ. ΠΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΊΡΠΎΠΌΠ΅ Β«Π² ΠΎΠ΄Π½ΠΎΠΉ / Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΡΠ»Π°Π³` -gPIC 'ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Β». Π₯ΠΎΡΡ Π½Π΅ Π½Π°ΡΠ΅Π».
ΠΡΠ»ΠΈ Π»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ²ΠΎΠ΄Ρ? Π― ΡΠΎΠΆΠ΅ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡ Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ librosa.
ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ https://github.com/pytorch/pytorch/issues/2575#issuecomment -523657178
Π― ΡΠ΅ΡΠΈΠ» ΡΡΠΎ, ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ sklearn, Π·Π°ΡΠ΅ΠΌ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ. ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠ΅.
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π― ΡΠ΅ΡΠΈΠ» ΡΡΠΎ, ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ sklearn, Π·Π°ΡΠ΅ΠΌ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ ΡΠ΅Π½Π·ΠΎΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ. ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠ΅.