Skip to main content

Sparsity-Constraint OPtimization via itErative-algorithm

Project description

skscope: Fast Sparse-Constraint Optimization

pypi Conda version Build codecov docs pyversions License: MIT Code style: black

What is skscope?

skscope aims to make sparsity-constrained optimization (SCO) accessible to everyone because SCO holds immense potential across various domains, including machine learning, statistics, and signal processing. By providing a user-friendly interface, skscope empowers individuals from diverse backgrounds to harness the power of SCO and unlock its broad range of applications (see examples exhibited below).

Installation

The recommended option for most users:

pip install skscope

For Linux or Mac users, an alternative is

conda install skscope

If you want to work with the latest development version, the further installation instructions help you install from source.

Quick examples

Here's a quick example showcasing how you can use three simple steps to perform feature selection via the skscope:

from skscope import ScopeSolver
from sklearn.datasets import make_regression
import jax.numpy as jnp

## generate data
x, y, coef = make_regression(n_features=10, n_informative=3, coef=True)

## 1. define loss function
def ols_loss(para):
    return jnp.sum(jnp.square(y - x @ para))

## 2. initialize the solver where 10 parameters in total and three of which are sparse
solver = ScopeSolver(10, 3) 

## 3. use the solver to optimized the objective
params = solver.solve(ols_loss) 

Below's another example illustrates that you can modify the objective function to address another totally different problem.

import numpy as np
import jax.numpy as jnp
import matplotlib.pyplot as plt
from skscope import ScopeSolver

## generate data
np.random.seed(2023)
x = np.cumsum(np.random.randn(500)) # random walk with normal increment

## 1. define loss function
def tf_objective(params):
    return jnp.sum(jnp.square(x - jnp.cumsum(params)))  

## 2. initialize the solver where 10 parameters in total and three of which are sparse
solver = ScopeSolver(len(x), 10)

## 3. use the solver to optimized the objective
params = solver.solve(tf_objective)

tf_x = jnp.cumsum(params)
plt.plot(x, label='observation', linewidth=0.8)
plt.plot(tf_x, label='filtering trend')
plt.legend(); plt.show()

The above Figure shows that the solution of ScopeSolver now captures the main trend of the observed random work. Again, 4 lines of code help us attain the solution.

Example gallery

Since skscope can easily be applied to diverse objective functions, we can definitely leverage it to develop various machine learning methods that is driven by SCO. In our example gallery, we supply 25 comprehensive statistical/machine learning examples to illustrate the versatility of skscope.

Why skscope is versatile?

The high versatility of skscope in effectively addressing SCO problems are derived from two key factors: theoretical concepts and computational implementation. In terms of theoretical concepts, there have been remarkable advancements in SCO in recent years, offering a range of efficient iterative methods for solving SCO. Some of these algorithms exhibit elegance by only relying on the current parameters and gradients for the iteration process. On the other hand, significant progress has been made in automatic differentiation, a fundamental component of deep learning algorithms that plays a vital role in computing gradients. By ingeniously combining these two important advancements, skscope emerges as the pioneering tool capable of handling diverse sparse optimization tasks.

With skscope, the creation of new machine learning methods becomes effortless, leading to the advancement of the "sparsity idea" in machine learning. This, in turn, facilitates the availability of a broader spectrum of machine learning algorithms for tackling real-world problems.

Software features

  • Support multiple state-of-the-art SCO solvers. Now, skscope has supported these algorithms: SCOPE, HTP, Grasp, IHT, OMP, and FoBa.

  • User-friendly API

    • zero-knowledge of SCO solvers: the state-of-the-art solvers in skscope has intuitive and highly unified APIs.

    • extensive documentation: skscope is fully documented and accompanied by example gallery and reproduction scripts.

  • Solving SCO and its generalization:

    • SCO: $\arg\min\limits_{\theta \in R^p} f(\theta) \text{ s.t. } ||\theta||_0 \leq s$;

    • SCO for group-structure parameters: $\arg\min\limits_{\theta \in R^p} f(\theta) \text{ s.t. } I(||\theta_{G_i}||2 \neq 0) \leq s$ where ${G_i}{i=1}^q$ is a non-overlapping partition for ${1, \ldots, p}$;

    • SCO when pre-selecting parameters in set $\mathcal{P}$: $\arg\min\limits_{\theta \in R^p} f(\theta) \text{ s.t. } ||\theta_{\mathcal{P}^c}||_0 \leq s$.

  • Data science toolkit

    • Information criterion and cross-validation for selecting $s$

    • Portable interface for developing new machine-learning methods

  • Just-in-time-compilation compatibility

Benchmark

  • Support recovery accuracy
Methods Linear regression Logistic regression Trend filtering Multi-task learning Ising model Nonlinear feature selection
OMPSolver 1.00(0.01) 0.91(0.05) 0.70(0.18) 1.00(0.00) 0.98(0.03) 0.77(0.09)
IHTSolver 0.79(0.04) 0.97(0.03) 0.08(0.10) 0.97(0.02) 0.96(0.05) 0.78(0.09)
HTPSolver 1.00(0.00) 0.84(0.05) 0.41(0.22) 1.00(0.00) 0.97(0.03) 0.78(0.09)
GraspSolver 1.00(0.00) 0.90(0.08) 0.58(0.23) 1.00(0.00) 0.99(0.01) 0.78(0.08)
FoBaSolver 1.00(0.00) 0.92(0.06) 0.87(0.13) 1.00(0.00) 1.00(0.01) 0.77(0.09)
ScopeSolver 1.00(0.00) 0.94(0.04) 0.79(0.19) 1.00(0.00) 1.00(0.01) 0.77(0.09)
cvxpy 0.83(0.17) 0.83(0.05) 0.19(0.22) 1.00(0.00) 0.94(0.04) 0.74(0.09)

All solvers (except IHTSolver) in skscope consistently outperformed cvxpy in terms of accuracy for the selection of the support set.

  • Runtime (measured in seconds):
Methods Linear regression Logistic regression Trend filtering Multi-task learning Ising model Nonlinear feature selection
OMPSolver 0.62(0.11) 0.80(0.11) 0.03(0.00) 2.70(0.26) 1.39(0.13) 13.24(3.91)
IHTSolver 0.23(0.05) 0.18(0.12) 0.30(0.06) 0.80(0.11) 0.98(0.08) 1.67(0.50)
HTPSolver 0.50(0.14) 0.94(0.44) 0.03(0.01) 14.18(5.13) 3.41(1.22) 12.97(6.23)
GraspSolver 0.18(0.06) 2.55(0.86) 0.08(0.03) 0.54(0.28) 0.53(0.22) 3.06(0.75)
FoBaSolver 3.71(0.50) 3.28(0.39) 0.13(0.02) 6.22(0.61) 11.10(1.04) 57.42(12.95)
ScopeSolver 0.30(0.08) 1.20(2.14) 0.09(0.01) 1.14(0.89) 1.17(0.25) 7.78(2.23)
cvxpy 14.59(5.60) 69.45(53.47) 0.47(0.16) 39.36(155.70) 32.26(17.88) 534.49(337.72)

skscope demonstrated significant computational advantages over cvxpy, exhibiting speedups ranging from approximately 3-500 times.

Software architecture

Contributions

👏 Thanks for the following support 👏

Stargazers

Stargazers repo roster for @abess-team/skscope

Forkers

Forkers repo roster for @abess-team/skscope



Any kind of contribution to skscope would be highly appreciated! Please check the contributor's guide.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skscope-0.1.8.tar.gz (2.8 MB view details)

Uploaded Source

Built Distributions

skscope-0.1.8-cp312-cp312-win_amd64.whl (279.1 kB view details)

Uploaded CPython 3.12 Windows x86-64

skscope-0.1.8-cp312-cp312-win32.whl (254.7 kB view details)

Uploaded CPython 3.12 Windows x86

skscope-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (335.6 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

skscope-0.1.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (347.7 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686

skscope-0.1.8-cp312-cp312-macosx_11_0_arm64.whl (244.7 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

skscope-0.1.8-cp311-cp311-win_amd64.whl (278.5 kB view details)

Uploaded CPython 3.11 Windows x86-64

skscope-0.1.8-cp311-cp311-win32.whl (254.8 kB view details)

Uploaded CPython 3.11 Windows x86

skscope-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (335.4 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

skscope-0.1.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (347.7 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

skscope-0.1.8-cp311-cp311-macosx_11_0_arm64.whl (239.0 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

skscope-0.1.8-cp310-cp310-win_amd64.whl (278.0 kB view details)

Uploaded CPython 3.10 Windows x86-64

skscope-0.1.8-cp310-cp310-win32.whl (253.8 kB view details)

Uploaded CPython 3.10 Windows x86

skscope-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (334.8 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

skscope-0.1.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (347.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

skscope-0.1.8-cp310-cp310-macosx_11_0_arm64.whl (238.2 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

skscope-0.1.8-cp39-cp39-win_amd64.whl (277.8 kB view details)

Uploaded CPython 3.9 Windows x86-64

skscope-0.1.8-cp39-cp39-win32.whl (254.1 kB view details)

Uploaded CPython 3.9 Windows x86

skscope-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (334.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

skscope-0.1.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (347.1 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

skscope-0.1.8-cp39-cp39-macosx_11_0_arm64.whl (238.4 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

skscope-0.1.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (334.7 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

skscope-0.1.8-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (346.9 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

skscope-0.1.8-cp38-cp38-macosx_11_0_arm64.whl (238.2 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

File details

Details for the file skscope-0.1.8.tar.gz.

File metadata

  • Download URL: skscope-0.1.8.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8.tar.gz
Algorithm Hash digest
SHA256 1856c7efb38c7042796a9d16c6fc806b5b1ca6132375fbded30d1226541299d6
MD5 f6dee47ae5117c979e2fbb8adedf3d13
BLAKE2b-256 469888f640449d1930e5cb5edb391a47046bd85eef998f483d4d3ced6aaf22bb

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: skscope-0.1.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 279.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1c126f873e142996aefda9b736dfdbc9a02f815cce188fdd75090bf80a93a81b
MD5 de5fd037ff29842beade8ab309132526
BLAKE2b-256 a5049e14c800909dea3e85d00959955e00f0015bf7698b314d59930b58f01d52

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp312-cp312-win32.whl.

File metadata

  • Download URL: skscope-0.1.8-cp312-cp312-win32.whl
  • Upload date:
  • Size: 254.7 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 1f90b98a7c703af93e7f01a6fc5c76be0c96e0696f45f07c492c489bfa5a6ba8
MD5 f2e2f81f17df36e6e2f6faaab4c6de57
BLAKE2b-256 2f46c8b8f10d38be47c5914a30deb32dadbc4d717a2a954814e9cce72cad30de

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e6ad179f6673bccb192f8ca0cd19e2f243a7b828aaa71c9f7002b984617eb477
MD5 17056af1c3b7fa29482c0494ef5ffe80
BLAKE2b-256 f3e8d75e4721cb4b41a3f231ee2130346cac0ec7a23743a884bbb40f31b44130

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e0df59c2dc92013a98932654d21193795cf2c60a966d96faecee32e35b7622bf
MD5 ef29369af693b624e1f9ef29b5e9ff8c
BLAKE2b-256 00ee045744286b591219b5a374bda9c228b0580cf9433a48e6cedc4d736b8a87

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 262b96156adfeedfba130a30b44fe3c778cf0a21394d3876a46df660d66a2cec
MD5 597cbed4cdfbf878edcc84d03321d62a
BLAKE2b-256 95ca4fedf0dbfd8cd665e9ccf9a606003649150af3b239b48d7da072b0029d07

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: skscope-0.1.8-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 278.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1b002fe01f3705f7d5812ec9870971c9764c295141f1f1e1b3270d88b7202981
MD5 18309c3700cfc80979d7a208823f418f
BLAKE2b-256 99713d0ac884111fbdd7ca99eafa501277877ff666ce15186e7e6c3503d43c85

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp311-cp311-win32.whl.

File metadata

  • Download URL: skscope-0.1.8-cp311-cp311-win32.whl
  • Upload date:
  • Size: 254.8 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 930835ef0987858b27493a5dbd4a666a6a6f5b2957c54afb75fac7932fe1d37f
MD5 278a9ac58a62bbd4e4550e39d695d01f
BLAKE2b-256 13a137167e152931d2da5d9a01103628018818b65baa93e1bbe0f3402b17903d

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 678a74bcfb7e37eaf32c65f7210e352d1275003a423f711f6cb02db8c3f0dd2e
MD5 e9b1a7a5a869cb6ba609f90a49390138
BLAKE2b-256 07f520a592fcca56994fc5aa79d24247f4469811b359a3668afa7f0fa989134f

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c08de7678abbcc53a339d05372622e3ebf6570673abdab855578683f2e8f2ffa
MD5 f176e7bfbc3d8eab75bee1078c76037b
BLAKE2b-256 772e2ae41a6f77db2a1204fa4031a6c5a2aea93dfa692afafd609ffb07500903

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6fa35e44ad673e9373612642937e93178db20cb781b00124e6350a54bf757595
MD5 775e7529dc045147a92df477ba6bfa3e
BLAKE2b-256 a4ea9cc37815dfc6f3484ffc2d09db98e5d1d04f916504d3448cfd766eaa51a4

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: skscope-0.1.8-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 278.0 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 601809c982fe4084013f6e8c942d7610850274d5cc9e184d5e0901597e2acded
MD5 47d8f327e68dc4f4f6709e03a2088feb
BLAKE2b-256 a2c2b286e300145f064b49ca591996c1d6dbc315b629cffc4b2479b84bf0c5f0

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp310-cp310-win32.whl.

File metadata

  • Download URL: skscope-0.1.8-cp310-cp310-win32.whl
  • Upload date:
  • Size: 253.8 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 10d65e4750b3c8898f45c50d849c5168ff393312679798901710f3ea661085ba
MD5 7f668fa13bf329730d5cc2cdbbbe75d8
BLAKE2b-256 e5624103e146c35f8e3421977f08f1316557c8eddfb17e822caa2d93409f11e9

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 66becc5d846f8ecfe7b03b4c69eac1a75ee467a8dc673830f3133582fb3cfa88
MD5 aed7d0125cab847b6212fa4576b06a4e
BLAKE2b-256 1cfc6500b1f80dc5508231aaad18a955502b7a3de448c31516e1cc92b3bb2c07

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 046f393c66c0244db16c6e9fbc78daca02ab4ec80776e1b1a3fb16b9c035f5f6
MD5 cb969c873a96f1724804ba03227a836c
BLAKE2b-256 87d7182fab96010abf79182348b83a71ee52b5cbec6fe107715bc44e32f208fa

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7606b83042e92408285252f623014cec8e395f6a214fd105c532dadb30fa6c93
MD5 31586a9ced06eb0481172ed2e8e39474
BLAKE2b-256 0a8ce865ddfba62a9569da6fc7dc9e5bb3eed835ed0810a90ad25f17e29f68ef

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: skscope-0.1.8-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 277.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3498afdea52cd07a28e1020f6329fbb553d31ec92023d858ed8e545b8a66dcd9
MD5 d8fb525a0c9ab511633754985f8a925d
BLAKE2b-256 1d62b0c71609a1969f8c1332d37bb7f696a790d9ceba9225deb5fc4972fbd97b

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp39-cp39-win32.whl.

File metadata

  • Download URL: skscope-0.1.8-cp39-cp39-win32.whl
  • Upload date:
  • Size: 254.1 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for skscope-0.1.8-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 cc7b5e3188a3f1849b478ff5783f39aef594db29b6a453678e09f0b1f1bb8ed0
MD5 9610a99aef845ef1f05c4b30a867d500
BLAKE2b-256 2243aa70c551170983d92c46b59abdb99a803776c00dc2d8776fe77a0c1a8f31

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f3d2a1f0015ae8a090f073c55ccebf5df8591984b414d9d22f6b9f8babb6fa46
MD5 d31da23ae97fa36213b1148235d48ced
BLAKE2b-256 3be2366bd132996042912c40f271cbd1db038b1fe95d5b3d92946c20a1210d00

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2075831f4879e2c618487c58ebbca082c58fa6acefcc096e8ccde9eacafd4dbc
MD5 0eb4a03999599bb63529689834835b9e
BLAKE2b-256 de085c7c50773fc8648fe52f384d0ac72f6ef36c132c600111af54bff143b6b0

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8675016257e23b11f9f1cf5094a007528c57539af54397a602ff888a7bc2ee9d
MD5 ad617839ce4bba1bd9d4ba65d720823e
BLAKE2b-256 9a651b50db010e870893756084d8438dc635159119900017fcc049b2679648e4

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f202972036221d55911a99d7166b6d7d813ee3fcc8dc647ea1a934b57e5c9391
MD5 c37597b89cf6b7967249b117ad061c1c
BLAKE2b-256 756b729720c0de600deadc5fd4f4e7290a62e71139931ca7f0e6de1a96c079a8

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 08c6ab722c58a1928695fb7d33fdcc478494e4fdfb7351d4ceabbbf2b083a049
MD5 dbffc2ec6099ae193c27e97f499635a3
BLAKE2b-256 d9ceecd816800c837ba5f6e7fffc4215e2db6b1f39dc51e857e1d4aa5f68ffc5

See more details on using hashes here.

File details

Details for the file skscope-0.1.8-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for skscope-0.1.8-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c0fdbdbbfd20c6eed8569129934116304ed9068d348e31d4a4c0b63b472b6b88
MD5 8657600207a2e9648bcfd79b544ef058
BLAKE2b-256 79b34a71f5b8ad00efe1588f05fe180f3a3b67f43668a535ba38886b9219f56a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page