Skip to main content

The scikit-splearn package is a Python scikit toolbox for spectral learning algorithms.

These algorithms aim at learning Weighted Automata (WA) using what is named a Hankel matrix. The toolbox thus provides also a class for WA (with a bunch of useful methods), another one for Hankel matrix, and a class for loading data. As WA are a generalization of classical Probabilistic Automaton (and thus HMM), everything works for these simpler models.

The core of the learning algorithms is to compute a singular values decomposition of the Hankel matrix and then to construct the weighted automata from the elements of the decomposition. This is done in the class Learning.

In its classic version, the rows of the Hankel matrix are prefixes while its columns are suffixes. Each cell contains then the probability of the sequence starting with the corresponding prefix and ending with the corresponding suffix. In the case of learning, the cells contain observed frequencies. scikit-splearn provides other versions, where each cell contains the probability that the corresponding sequence is prefix, a suffix, or a factor.

Formally, the Hankel matrix is bi-infinite. Hence, in case of learning, one has to concentrate on a finite portion. The parameters lrows and lcolumn allows to specified which subsequences are taken into account as rows and columns of the finite matrix. If, instead of a list, an integer is provided, the finite matrix will have all rows and columns that correspond to subsequences up to these given lengths.

The learning method requires also the information about the rank of the matrix. This rank corresponds to the number of states of a minimal WA computing the matrix (in case of learning, this is the estimated number of states of the target automaton). There is no easy way to evaluate the rank, a cross-validation approach is usually used to find the best possible value.

Finally, scikit-splearn provides 2 ways to store the Hankel matrix: a classical one as an array, and a sparse version using scipy.sparse.

The original scikit-splearn Toolbox is developed in Python at LabEx Archimède , as a LIS project.

This package, as well as the scikit-splearn toolbox, is Free software, released under BSD License.

The latest version of scikit-splearn can be downloaded from the following PyPI page .

The documentation is available here .

There is also a gitlab repository , which provides the git repository managing the source code and where issues can be reported.

History

1.0.0 (2016-06-30)

  • First version

1.0.1 (2016-10-07)

  • Bug setup correction

1.1.0 (2018-15-02)

  • Adding IO functions

  • Rebase

  • Dot display method

1.2.0 (2018-22-02)

  • Adding dot export for Automata

  • Adding yalm and json import and export for Automata and Hankel

  • Adding random SVD as an option for dense Hankel matrix calculation.

  • Rebase : removing Learning class + some new functionnalities

  • Update doc.

Authors

  • François Denis

  • Rémi Eyraud

  • Denis Arrivault

  • Dominique Benielli

Metadata

Release files for scikit-splearn 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scikit-splearn 1.2.1
File Size Uploaded
scikit-splearn-1.2.1.tar.gz 342.0 kB Details

Release files / scikit-splearn-1.2.1.tar.gz

Download URL scikit-splearn-1.2.1.tar.gz
Size 342.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c79c87e9d7eb1d0c01d2ac6cdeaa02daa56945a72fb5d667ece54077dc9db927
BLAKE2b-256 checksum
How to use checksums
85233cbcd6eed481f2445c1e3a273d62eccad01edd44eff04c6620bab525bc8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.2.1 This release

1 release file

1.2.0

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page