Skip to main content

IRIS

Project description

IRIS: Time-structured Manifold Projections

IRIS performs nonlinear dimension reduction (similar to UMAP, t-SNE, or LargeVis), but incorporates timestamps of data points to stucture the layout, with earlier points near the center and later points near the perimeter.

fit_transform(data, time, **kwargs)
    Perform time-structured manifold projection.
    
    Parameters
    ----------
    data : array-like
        The high-dimensional data points to project. Should be a 2D numpy array with shape (n_samples, n_features).
    time : array-like
        Timestamps for each sample. Should be a 1D numpy array with shape (n_samples,).
    **kwargs :
                n_iterations : int, optional
                        The number of stochastic gradient descent steps to perform, in millions. Defaults to `n_samples // 100`.
        sample_time : float, str, optional
            If a scalar, resample each time point `t_i` uniformly within `[t_i, t_i + sample_time).
            If 'hetero', resample each time point `t_i` uniformly within `[t_i, t_i + (t_i+1 - t_i) / 2].
                        If None (default), no resampling is performed.
                return_polar : bool, optional
                        If True, return the layout in polar coordinates (radius, angle). Defaults to False.
        zeta : float, optional
            The ratio of inner diameter to outer diameter. Should be in [0, 1]. Defaults to 0.1.
                rho : float, optional
                        The exponential parameter for computing radii from [0, 1]-normalized time values, with 0 being direct mapping. Defaults to the optimal value for the given time points. Use values below 0 for left-skewed distributions and values above 0 for right-skewed distributions. Optimal values typically lie within [-4, 4].
        alpha : float, optional
            The learning rate. Should be in [0, 1]. Defaults to 0.1.
        beta : float, optional
            The weight of the polar component of loss. Should be in [0, 1]. Defaults to 0.95. Higher values allow less overloading of classes within different time ranges of the same sector, resulting in tighter, more radial clusters.
        gamma : int, optional
            The weights assigned to negative edges. Defaults to 128. Higher values assign more weight to negative edges, resulting in more repulsion between points.
        n_neighbors : int, optional
            The number of neighbors to consider for each point. Defaults to 32.
        n_trees : int, optional
            The number of trees to build for the Annoy index. Defaults to 32.
        n_propagations : int, optional
            The number of propagations to perform. Defaults to 3.
        n_negatives : int, optional
            The number of negative samples to use for each positive sample. Defaults to 5.
        normalize : bool, optional
            Whether to normalize the high-dimensional data. Defaults to False.
    
    Returns
    -------
    layout : ndarray
        The layout of the data points, shape (n_samples, 2). If return_polar is True, the layout is in polar coordinates (radius, angle). Otherwise, the layout is in Cartesian coordinates (x, y).

get_rho(t, zeta=0.1, bins=100)
    Find the optimal rho value for the given time points.
    
    Parameters
    ----------
    t : array-like
            The time points to find the optimal rho value for. Should be a 1D numpy array with shape (n_samples,).
    zeta : float, optional
            The ratio of inner diameter to outer diameter. Should be in [0, 1]. Defaults to 0.1.
    bins : int, optional
            The number of bins to use for computing KL divergence. Defaults to 100.
    
    Returns
    -------
    rho : float
            The optimal rho value for the given time points.

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

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

Source Distribution

iris_learn-1.0.tar.gz (22.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

iris_learn-1.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (402.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (392.9 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (398.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (388.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (398.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (387.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (398.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (387.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (397.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (387.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp311-cp311-macosx_11_0_arm64.whl (45.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

iris_learn-1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (397.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (386.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (396.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (386.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

iris_learn-1.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (397.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

iris_learn-1.0-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (387.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

File details

Details for the file iris_learn-1.0.tar.gz.

File metadata

  • Download URL: iris_learn-1.0.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.11

File hashes

Hashes for iris_learn-1.0.tar.gz
Algorithm Hash digest
SHA256 38bf7fe257f136073704a774deaccf4e4a0b5550bbdcf1fdc9e7823b296df6f5
MD5 e7c6dceae2b5599b4ffe79549e895f58
BLAKE2b-256 27994b9e407e6b0c620994e86320bb04c250190a116e2f7d504266944e02640e

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8ee56e158686903568aaaa3dfebe0adebdfa7f93d17e37fdda794860b8cce938
MD5 4da12afcf2c0518c2132344bd2d671a5
BLAKE2b-256 0402ff7b51f942b55e7108893ecfb511aaad3baff56644e84f726dd857a381e2

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6e1ce440c448e0f576575e5065bbeb46914cae45d1a4cbf55c78f5990810bc8e
MD5 a1860b77b5bd3ad9436cbbaff8f92f09
BLAKE2b-256 c10d76ac713f2188b2538a9db6cc7ac80fcefa7d0c12a4ec25950a46f0d2cca9

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d151de9e7980dec2f372e527c5460152ead000ed1d8248ba4f8cb5eec3865867
MD5 23cf9c046f9de994fe14fb4864e825c2
BLAKE2b-256 5364ff7139fa0a45da6e9054c43f690374c0eaf1d496adec1f8b265c77215816

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 19de4223f3833754fc6f294ebc30acf5d5a1d6d95a6e95ba5e42ec2e5ce7274a
MD5 02efcdd53377bdcc1288ffb1b570adb4
BLAKE2b-256 d7a2bda6a97f643525bf25ab5c3eec9ce9f793a996dbcef68ec484d2a4aa2881

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 561283e7c5c2b7b6e6e37ffd2778aff637b5ba8807252757857e69c16c87ac4d
MD5 bd5108c7605f0f12b0d15fcef57dc35e
BLAKE2b-256 3a57d702eb44b99e33dfb79b22d5392129e27a2c60f70611e68b79e047e7c9c7

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 18f72d088b3b1004773c8b9c097a5c0fef9eb261423a4d680cb207ab4fe0390b
MD5 6ac247f47fdecdbfc03319ac1bef40e2
BLAKE2b-256 fb0c04611463e517680b3b25daa2ced427544f4a82154969af6c6adef9a72271

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5ae5ee9b58483aeecfa47a64da52bc3d5a3a75ddbc11dd17e73db1e55da28f1d
MD5 ea2cc520c1d82d31071030facb742d76
BLAKE2b-256 968a7585d2aa0dc2498ea4ce85ae476f4cfa37a7d8adaaeacf7e71499a8176a1

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 69f4f2fce484f81c332d50a26c937c6bff6fec464e108b207be76877e1bf4d3f
MD5 5e8870b065e58323d7d8257fad83bc21
BLAKE2b-256 d7fd144ba06be03c0255f66282b4eb9c6c2feb3a012fb5c10492ffa1c6f1c4b0

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7a5762d0ea3109467e3a0565be05982af159e7c65b489211f509fb451040d1f0
MD5 dd1576c5e1bf5d109011a32de3c33336
BLAKE2b-256 89308370a7c81d2272ab148cb797031a74992de5f69e7ee5742fe45e1001e4d7

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 337683bbaad3cf010cffe5ba7d02af6f0743aa2e410e5296578b88d007adf3fb
MD5 afa3220e5e74ccb408482adf912a61f5
BLAKE2b-256 425eb86d966a899279f91af0e04a43b47d06d8cf7cbeba054b599993ec6f3bf2

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c826a6d064d673df623e03ec1fca1a31cbf094a37d316eef083489a86b41e51f
MD5 a7d8ea705b810c0248bf4ec7ba0f9314
BLAKE2b-256 b93e73c4268e239338d1925616d2eca468064a876146f5bee14b540d459c87d0

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ea9141bacef79ebf844b65c3c60699263fe8bc2846c17183953bc66623c452e2
MD5 199a3b2e26a43b3890c66d593ad9a653
BLAKE2b-256 d672f93c256cca577065cd1c1f75c8783e24a27192d68e37cb322655cffb034a

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6c1dba9db969723f32e30e7e6ddeaea606341b3af962fb5ccc4bf925c1e551dc
MD5 e874eb850f8c06f5a702a46c22a6b3bc
BLAKE2b-256 ebee385edf266deffdd9bf5b10af2885becf1f9cd0798905d5ed94b70c00fbac

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3193e49e11495d0c3f8972622f1f75b095926074f885b6534b126154518a6fe3
MD5 034a2b0a23c076ec00da2a27e243d52a
BLAKE2b-256 c83be8faefe4d5efa0b9ab2d5088ce799c9cc6fbe72500a2bf1b0280193fb2e2

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8b23fc0d2a251d565f6b0d9313e76bbbabe1a43b04a032f1bc2be3cf8edbf8ad
MD5 f8819df19daad6d06109b1859877c0ee
BLAKE2b-256 f38a167f77d2af7d6c2ec2fd22a521f129b18b8d82cb570977d99c35ec3d9560

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3e94da46b204e6ab614e07bdb41a4781b4f7bface39c11974a70413fba503c16
MD5 e9aed19d2fcd44d8f208a9d1c911c53d
BLAKE2b-256 b60df33951b470c0a9e8d5aa1d289fa319244ea274e5bb7ce6e758a93fe885d8

See more details on using hashes here.

File details

Details for the file iris_learn-1.0-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for iris_learn-1.0-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fb0d3545add1a23f88d0e9e20480d9cbd34093d1e973c9c27989fc3a1903f247
MD5 bdb30b286e7986c23894b03a984f9ad1
BLAKE2b-256 d382c25e24fb8fc6173c5ecab2bf1fcce9fa203feb575af7427ad0d1915c62fe

See more details on using hashes here.

Supported by

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