keras-rs-nightly 0.0.1.dev2025050103__py3-none-any.whl → 0.2.2.dev202506100336__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of keras-rs-nightly might be problematic. Click here for more details.
- keras_rs/layers/__init__.py +12 -0
- keras_rs/src/layers/embedding/__init__.py +0 -0
- keras_rs/src/layers/embedding/base_distributed_embedding.py +1124 -0
- keras_rs/src/layers/embedding/distributed_embedding.py +33 -0
- keras_rs/src/layers/embedding/distributed_embedding_config.py +129 -0
- keras_rs/src/layers/embedding/embed_reduce.py +309 -0
- keras_rs/src/layers/embedding/jax/__init__.py +0 -0
- keras_rs/src/layers/embedding/jax/config_conversion.py +398 -0
- keras_rs/src/layers/embedding/jax/distributed_embedding.py +892 -0
- keras_rs/src/layers/embedding/jax/embedding_lookup.py +255 -0
- keras_rs/src/layers/embedding/jax/embedding_utils.py +596 -0
- keras_rs/src/layers/embedding/tensorflow/__init__.py +0 -0
- keras_rs/src/layers/embedding/tensorflow/config_conversion.py +323 -0
- keras_rs/src/layers/embedding/tensorflow/distributed_embedding.py +424 -0
- keras_rs/src/layers/feature_interaction/dot_interaction.py +2 -2
- keras_rs/src/layers/feature_interaction/feature_cross.py +14 -16
- keras_rs/src/layers/retrieval/brute_force_retrieval.py +5 -5
- keras_rs/src/layers/retrieval/retrieval.py +4 -4
- keras_rs/src/losses/pairwise_loss.py +2 -2
- keras_rs/src/losses/pairwise_mean_squared_error.py +1 -3
- keras_rs/src/metrics/dcg.py +2 -2
- keras_rs/src/metrics/ndcg.py +2 -2
- keras_rs/src/metrics/ranking_metric.py +4 -4
- keras_rs/src/metrics/ranking_metrics_utils.py +8 -8
- keras_rs/src/metrics/utils.py +2 -4
- keras_rs/src/types.py +43 -14
- keras_rs/src/utils/keras_utils.py +26 -6
- keras_rs/src/version.py +1 -1
- {keras_rs_nightly-0.0.1.dev2025050103.dist-info → keras_rs_nightly-0.2.2.dev202506100336.dist-info}/METADATA +6 -3
- keras_rs_nightly-0.2.2.dev202506100336.dist-info/RECORD +55 -0
- {keras_rs_nightly-0.0.1.dev2025050103.dist-info → keras_rs_nightly-0.2.2.dev202506100336.dist-info}/WHEEL +1 -1
- keras_rs_nightly-0.0.1.dev2025050103.dist-info/RECORD +0 -42
- {keras_rs_nightly-0.0.1.dev2025050103.dist-info → keras_rs_nightly-0.2.2.dev202506100336.dist-info}/top_level.txt +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from typing import Callable
|
|
1
|
+
from typing import Callable
|
|
2
2
|
|
|
3
3
|
import keras
|
|
4
4
|
from keras import ops
|
|
@@ -7,10 +7,10 @@ from keras_rs.src import types
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
def get_shuffled_indices(
|
|
10
|
-
shape: types.
|
|
11
|
-
mask:
|
|
10
|
+
shape: types.Shape,
|
|
11
|
+
mask: types.Tensor | None = None,
|
|
12
12
|
shuffle_ties: bool = True,
|
|
13
|
-
seed:
|
|
13
|
+
seed: int | keras.random.SeedGenerator | None = None,
|
|
14
14
|
) -> types.Tensor:
|
|
15
15
|
"""Utility function for getting shuffled indices, with masked indices
|
|
16
16
|
pushed to the end.
|
|
@@ -54,16 +54,16 @@ def get_shuffled_indices(
|
|
|
54
54
|
def sort_by_scores(
|
|
55
55
|
tensors_to_sort: list[types.Tensor],
|
|
56
56
|
scores: types.Tensor,
|
|
57
|
-
mask:
|
|
58
|
-
k:
|
|
57
|
+
mask: types.Tensor | None = None,
|
|
58
|
+
k: int | None = None,
|
|
59
59
|
shuffle_ties: bool = True,
|
|
60
|
-
seed:
|
|
60
|
+
seed: int | keras.random.SeedGenerator | None = None,
|
|
61
61
|
) -> types.Tensor:
|
|
62
62
|
"""
|
|
63
63
|
Utility function for sorting tensors by scores.
|
|
64
64
|
|
|
65
65
|
Args:
|
|
66
|
-
tensors_to_sort
|
|
66
|
+
tensors_to_sort: list of tensors. All tensors are of shape
|
|
67
67
|
`(batch_size, list_size)`. These tensors are sorted based on
|
|
68
68
|
`scores`.
|
|
69
69
|
scores: tensor. Of shape `(batch_size, list_size)`. The scores to sort
|
keras_rs/src/metrics/utils.py
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
from typing import Optional
|
|
2
|
-
|
|
3
1
|
from keras import ops
|
|
4
2
|
|
|
5
3
|
from keras_rs.src import types
|
|
@@ -10,9 +8,9 @@ from keras_rs.src.utils.keras_utils import check_shapes_compatible
|
|
|
10
8
|
def standardize_call_inputs_ranks(
|
|
11
9
|
y_true: types.Tensor,
|
|
12
10
|
y_pred: types.Tensor,
|
|
13
|
-
mask:
|
|
11
|
+
mask: types.Tensor | None = None,
|
|
14
12
|
check_y_true_rank: bool = True,
|
|
15
|
-
) -> tuple[types.Tensor, types.Tensor,
|
|
13
|
+
) -> tuple[types.Tensor, types.Tensor, types.Tensor | None, bool]:
|
|
16
14
|
"""
|
|
17
15
|
Utility function for processing inputs for losses and metrics.
|
|
18
16
|
|
keras_rs/src/types.py
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"""Type definitions."""
|
|
2
2
|
|
|
3
|
-
from typing import Any,
|
|
3
|
+
from typing import Any, Callable, Mapping, Sequence, TypeAlias, TypeVar, Union
|
|
4
|
+
|
|
5
|
+
import keras
|
|
4
6
|
|
|
5
7
|
"""
|
|
6
8
|
A tensor in any of the backends.
|
|
@@ -8,19 +10,46 @@ A tensor in any of the backends.
|
|
|
8
10
|
We do not define it explicitly to not require all the backends to be installed
|
|
9
11
|
and imported. The explicit definition would be:
|
|
10
12
|
```
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
keras.KerasTensor,
|
|
21
|
-
]
|
|
13
|
+
numpy.ndarray,
|
|
14
|
+
| tensorflow.Tensor,
|
|
15
|
+
| tensorflow.RaggedTensor,
|
|
16
|
+
| tensorflow.SparseTensor,
|
|
17
|
+
| tensorflow.IndexedSlices,
|
|
18
|
+
| jax.Array,
|
|
19
|
+
| jax.experimental.sparse.JAXSparse,
|
|
20
|
+
| torch.Tensor,
|
|
21
|
+
| keras.KerasTensor,
|
|
22
22
|
```
|
|
23
23
|
"""
|
|
24
|
-
Tensor = Any
|
|
24
|
+
Tensor: TypeAlias = Any
|
|
25
|
+
|
|
26
|
+
Shape: TypeAlias = Sequence[int | None]
|
|
27
|
+
|
|
28
|
+
DType: TypeAlias = str
|
|
29
|
+
|
|
30
|
+
ConstraintLike: TypeAlias = (
|
|
31
|
+
str
|
|
32
|
+
| keras.constraints.Constraint
|
|
33
|
+
| type[keras.constraints.Constraint]
|
|
34
|
+
| Callable[[Tensor], Tensor]
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
InitializerLike: TypeAlias = (
|
|
38
|
+
str
|
|
39
|
+
| keras.initializers.Initializer
|
|
40
|
+
| type[keras.initializers.Initializer]
|
|
41
|
+
| Callable[[Shape, DType], Tensor]
|
|
42
|
+
| Tensor
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
RegularizerLike: TypeAlias = (
|
|
46
|
+
str
|
|
47
|
+
| keras.regularizers.Regularizer
|
|
48
|
+
| type[keras.regularizers.Regularizer]
|
|
49
|
+
| Callable[[Tensor], Tensor]
|
|
50
|
+
)
|
|
25
51
|
|
|
26
|
-
|
|
52
|
+
T = TypeVar("T")
|
|
53
|
+
Nested: TypeAlias = (
|
|
54
|
+
T | Sequence[Union[T, "Nested[T]"]] | Mapping[str, Union[T, "Nested[T]"]]
|
|
55
|
+
)
|
|
@@ -1,13 +1,35 @@
|
|
|
1
|
-
from typing import
|
|
1
|
+
from typing import Any, Callable
|
|
2
2
|
|
|
3
3
|
import keras
|
|
4
4
|
|
|
5
5
|
from keras_rs.src import types
|
|
6
6
|
|
|
7
7
|
|
|
8
|
+
def no_automatic_dependency_tracking(
|
|
9
|
+
fn: Callable[..., Any],
|
|
10
|
+
) -> Callable[..., Any]:
|
|
11
|
+
"""Decorator to disable automatic dependency tracking in Keras and TF.
|
|
12
|
+
|
|
13
|
+
Args:
|
|
14
|
+
fn: the function to disable automatic dependency tracking for.
|
|
15
|
+
|
|
16
|
+
Returns:
|
|
17
|
+
a wrapped version of `fn`.
|
|
18
|
+
"""
|
|
19
|
+
if keras.backend.backend() == "tensorflow":
|
|
20
|
+
import tensorflow as tf
|
|
21
|
+
|
|
22
|
+
fn = tf.__internal__.tracking.no_automatic_dependency_tracking(fn)
|
|
23
|
+
|
|
24
|
+
wrapped_fn: Callable[..., Any] = (
|
|
25
|
+
keras.src.utils.tracking.no_automatic_dependency_tracking(fn)
|
|
26
|
+
)
|
|
27
|
+
return wrapped_fn
|
|
28
|
+
|
|
29
|
+
|
|
8
30
|
def clone_initializer(
|
|
9
|
-
initializer:
|
|
10
|
-
) ->
|
|
31
|
+
initializer: types.InitializerLike,
|
|
32
|
+
) -> types.InitializerLike:
|
|
11
33
|
"""Clones an initializer to ensure a new seed.
|
|
12
34
|
|
|
13
35
|
Args:
|
|
@@ -29,9 +51,7 @@ def clone_initializer(
|
|
|
29
51
|
return initializer
|
|
30
52
|
|
|
31
53
|
|
|
32
|
-
def check_shapes_compatible(
|
|
33
|
-
shape1: types.TensorShape, shape2: types.TensorShape
|
|
34
|
-
) -> bool:
|
|
54
|
+
def check_shapes_compatible(shape1: types.Shape, shape2: types.Shape) -> bool:
|
|
35
55
|
# Check rank first.
|
|
36
56
|
if len(shape1) != len(shape2):
|
|
37
57
|
return False
|
keras_rs/src/version.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: keras-rs-nightly
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.2.dev202506100336
|
|
4
4
|
Summary: Multi-backend recommender systems with Keras 3.
|
|
5
5
|
Author-email: Keras team <keras-users@googlegroups.com>
|
|
6
6
|
License: Apache License 2.0
|
|
@@ -8,7 +8,6 @@ Project-URL: Home, https://keras.io/keras_rs
|
|
|
8
8
|
Project-URL: Repository, https://github.com/keras-team/keras-rs
|
|
9
9
|
Classifier: Development Status :: 3 - Alpha
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
13
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
13
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
@@ -18,13 +17,17 @@ Classifier: Operating System :: MacOS
|
|
|
18
17
|
Classifier: Intended Audience :: Science/Research
|
|
19
18
|
Classifier: Topic :: Scientific/Engineering
|
|
20
19
|
Classifier: Topic :: Software Development
|
|
21
|
-
Requires-Python: >=3.
|
|
20
|
+
Requires-Python: >=3.10
|
|
22
21
|
Description-Content-Type: text/markdown
|
|
23
22
|
Requires-Dist: keras
|
|
24
23
|
Requires-Dist: ml-dtypes
|
|
25
24
|
|
|
26
25
|
# Keras Recommenders
|
|
27
26
|
|
|
27
|
+
<p align="center" width="100%">
|
|
28
|
+
<img src="https://i.imgur.com/m1BX7Zd.png" width="434" height="157" alt="KerasRS">
|
|
29
|
+
</p>
|
|
30
|
+
|
|
28
31
|
Keras Recommenders is a library for building recommender systems on top of
|
|
29
32
|
Keras 3. Keras Recommenders works natively with TensorFlow, JAX, or PyTorch. It
|
|
30
33
|
provides a collection of building blocks which help with the full workflow of
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
keras_rs/__init__.py,sha256=8sjHiPN2GhUqAq4V7Vh4FLLqYw20-jgdI26ZKX5sg6M,350
|
|
2
|
+
keras_rs/layers/__init__.py,sha256=ERqFu1R8FgeES5rO5QwauArbNCm8auj-AiCURtsG6Ro,1332
|
|
3
|
+
keras_rs/losses/__init__.py,sha256=m04QOgxIUfJ2MvCUKLgEof-UbSNKgUYLPnY-D9NAclI,573
|
|
4
|
+
keras_rs/metrics/__init__.py,sha256=Qxpf6OFooIL9TIn2l3WgOea3HFRG0hq02glPAxtMZ9c,580
|
|
5
|
+
keras_rs/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
+
keras_rs/src/api_export.py,sha256=RsmG-DvO-cdFeAF9W6LRzms0kvtm-Yp9BAA_d-952zI,510
|
|
7
|
+
keras_rs/src/types.py,sha256=1A-oLRdX1-f2DsVZBcNl8qNsaH8pM-gnleLT9FWZWBw,1189
|
|
8
|
+
keras_rs/src/version.py,sha256=ZDE_RjVl35PdFbqUTZE4krhKovaxmfxToo_5BCojNbA,224
|
|
9
|
+
keras_rs/src/layers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
+
keras_rs/src/layers/embedding/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
+
keras_rs/src/layers/embedding/base_distributed_embedding.py,sha256=dUZ4eS6ktnbnw_Z5gbyZGpQqO44Oyi7DkpNCReL66No,44347
|
|
12
|
+
keras_rs/src/layers/embedding/distributed_embedding.py,sha256=94jxUHoGK3Gs9yfV0KxFTuqPo7XFnhgCNlO2FEeiSgM,1072
|
|
13
|
+
keras_rs/src/layers/embedding/distributed_embedding_config.py,sha256=AWPmZBir1shhqNP6U_jiQ9lsBhMXVikW4B5VnzLsvPg,5579
|
|
14
|
+
keras_rs/src/layers/embedding/embed_reduce.py,sha256=c-MnEw1-KWs0jTf0JJ_ZBOY-9hRkiFyu989Dof3DnS8,12343
|
|
15
|
+
keras_rs/src/layers/embedding/jax/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
+
keras_rs/src/layers/embedding/jax/config_conversion.py,sha256=kDgzab8AVYf4jd_8fsiycPA0oFnT83kSWx-TXhzy6sk,13590
|
|
17
|
+
keras_rs/src/layers/embedding/jax/distributed_embedding.py,sha256=s_V2h8smO6_Nd3lQfp6zqNi9XxXIn9wjnggSedRoE8E,35410
|
|
18
|
+
keras_rs/src/layers/embedding/jax/embedding_lookup.py,sha256=HFkc0pGB9JngnCtbEJE2gDxC2K4gDdQ6GpnatSdnW6s,8205
|
|
19
|
+
keras_rs/src/layers/embedding/jax/embedding_utils.py,sha256=EHrQjPLl94STLWf9g8Ew8nuwupXRq-a_QmvFlXV6G6A,20331
|
|
20
|
+
keras_rs/src/layers/embedding/tensorflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
21
|
+
keras_rs/src/layers/embedding/tensorflow/config_conversion.py,sha256=i0iNXHi9E2UNh32Q5_kQtB9W5Cbcbm-tbWwRS1FHrfE,11589
|
|
22
|
+
keras_rs/src/layers/embedding/tensorflow/distributed_embedding.py,sha256=WPkRLJ7Tz272A0mMb5LCHlnNMYl_mTF2VxKpObcfQic,17206
|
|
23
|
+
keras_rs/src/layers/feature_interaction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
+
keras_rs/src/layers/feature_interaction/dot_interaction.py,sha256=Rs8xIHXNWQNiwjp_xzvQRmTSV1AyhJjDgVc3K5pTmrQ,8530
|
|
25
|
+
keras_rs/src/layers/feature_interaction/feature_cross.py,sha256=Wq_eQvO0WTRlep69QbKi8TwY8bnFoF9vreP_j6ZHNFE,8666
|
|
26
|
+
keras_rs/src/layers/retrieval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
+
keras_rs/src/layers/retrieval/brute_force_retrieval.py,sha256=WVH9nHj6mGcK5DAOzYBGfUztPtGtMX4RKLac6GV1vLI,5644
|
|
28
|
+
keras_rs/src/layers/retrieval/hard_negative_mining.py,sha256=n5UftRcuuR7Lh75vOdFdqatpsYqJDHCsraNtAjeWvoM,3575
|
|
29
|
+
keras_rs/src/layers/retrieval/remove_accidental_hits.py,sha256=WKoIhUSc6SvbgLXcSqNvFUnkuyXfxWwsC7nAgYbON_U,3773
|
|
30
|
+
keras_rs/src/layers/retrieval/retrieval.py,sha256=SFxMdooUhZy854SLZbpoyZR1Md4bHnpf7P077oVjjtU,4162
|
|
31
|
+
keras_rs/src/layers/retrieval/sampling_probability_correction.py,sha256=3zD6LInxhyIvyujMleGqiuoPKsna2oaTN6JU6xMnW_M,1977
|
|
32
|
+
keras_rs/src/losses/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
|
+
keras_rs/src/losses/pairwise_hinge_loss.py,sha256=tONOJpcwCw1mybwvyx8dAy5t6dDmlIn00enzWfQLXpQ,3049
|
|
34
|
+
keras_rs/src/losses/pairwise_logistic_loss.py,sha256=40PFdCHDM7CLunT_PE3RbgxROVImw13dgVL3o3nzeNg,3473
|
|
35
|
+
keras_rs/src/losses/pairwise_loss.py,sha256=Oydk8e7AGU0Mc9yvm6ccr_XDDfUe8EZlS4JJgyxKUm4,6197
|
|
36
|
+
keras_rs/src/losses/pairwise_loss_utils.py,sha256=xvdGvdKNkvGvIaWYEQziWTFNa5EJz7rdkVGgrsnDHUk,1246
|
|
37
|
+
keras_rs/src/losses/pairwise_mean_squared_error.py,sha256=sW-S3fUFtLV_cf8Tw9Wluzoe9t7lmXzSIAj6MXOpL2M,4823
|
|
38
|
+
keras_rs/src/losses/pairwise_soft_zero_one_loss.py,sha256=YddVtJS8tKEeb0YrqGzEsr-6IDxH4uRjFrYkZDMWpkk,3492
|
|
39
|
+
keras_rs/src/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
40
|
+
keras_rs/src/metrics/dcg.py,sha256=rUtWe8VwZ8unXIhPu7fjTiErpK6-IOtcaiuikjtY1VE,5823
|
|
41
|
+
keras_rs/src/metrics/mean_average_precision.py,sha256=yUub4jGnqwTmxf694Z2ymRjMG_vO2HdyqqvDbcEhdSQ,4632
|
|
42
|
+
keras_rs/src/metrics/mean_reciprocal_rank.py,sha256=vr3ZZjpGYy2N-N7stcIm5elfHe9A4W8uY4HADP8icMw,4046
|
|
43
|
+
keras_rs/src/metrics/ndcg.py,sha256=ZBaKqV57K7jlto6ZVMxFNNRLdhzbLhdAR8TgDexjSjg,6922
|
|
44
|
+
keras_rs/src/metrics/precision_at_k.py,sha256=Dj5R-rT_Yd5hAsk4f-BlNMujfgIdPXnFVGOw9u7BIZQ,4038
|
|
45
|
+
keras_rs/src/metrics/ranking_metric.py,sha256=Lcl-Tt6HlI0f2wQpvAJ2M4mm5qCTZm-IgnLjjSEeNXE,10655
|
|
46
|
+
keras_rs/src/metrics/ranking_metrics_utils.py,sha256=0b03wiO9SjaHthtUYO4qezBFB8yLhFSwIRJhsL2fAJg,8785
|
|
47
|
+
keras_rs/src/metrics/recall_at_k.py,sha256=ssnQJC42KLN28cGrmzM-qR4M4iPqiQzWM2MfwYMq4ZE,3701
|
|
48
|
+
keras_rs/src/metrics/utils.py,sha256=fGTo8j0ykVE5Y3yQCS2orSFcHY20Uxt0NazyPsybUsw,2471
|
|
49
|
+
keras_rs/src/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
50
|
+
keras_rs/src/utils/doc_string_utils.py,sha256=CmqomepmaYcvpACpXEXkrJb8DMnvIgmYK-lJ53lYarY,1675
|
|
51
|
+
keras_rs/src/utils/keras_utils.py,sha256=dc-NFzs3a-qmRw0vBDiMslPLfrm9yymGduLWesXPhuY,2123
|
|
52
|
+
keras_rs_nightly-0.2.2.dev202506100336.dist-info/METADATA,sha256=fzhvqOxdMLY7GEw5SHAAc6zZJxa8EljtoTH0aZqecck,5273
|
|
53
|
+
keras_rs_nightly-0.2.2.dev202506100336.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
54
|
+
keras_rs_nightly-0.2.2.dev202506100336.dist-info/top_level.txt,sha256=pWs8X78Z0cn6lfcIb9VYOW5UeJ-TpoaO9dByzo7_FFo,9
|
|
55
|
+
keras_rs_nightly-0.2.2.dev202506100336.dist-info/RECORD,,
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
keras_rs/__init__.py,sha256=8sjHiPN2GhUqAq4V7Vh4FLLqYw20-jgdI26ZKX5sg6M,350
|
|
2
|
-
keras_rs/layers/__init__.py,sha256=cvrFgFWg0RjI0ExUZOKZRdcN-FwTIkqhT33Vx8wGtjQ,905
|
|
3
|
-
keras_rs/losses/__init__.py,sha256=m04QOgxIUfJ2MvCUKLgEof-UbSNKgUYLPnY-D9NAclI,573
|
|
4
|
-
keras_rs/metrics/__init__.py,sha256=Qxpf6OFooIL9TIn2l3WgOea3HFRG0hq02glPAxtMZ9c,580
|
|
5
|
-
keras_rs/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
-
keras_rs/src/api_export.py,sha256=RsmG-DvO-cdFeAF9W6LRzms0kvtm-Yp9BAA_d-952zI,510
|
|
7
|
-
keras_rs/src/types.py,sha256=UyOdgjqrqg_b58opnY8n6gTiDHKVR8z_bmEruehERBk,514
|
|
8
|
-
keras_rs/src/version.py,sha256=RINCn1p_Brmx7af_3Abw9rz_hengEGgMGQKOtLcQDrM,222
|
|
9
|
-
keras_rs/src/layers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
keras_rs/src/layers/feature_interaction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
-
keras_rs/src/layers/feature_interaction/dot_interaction.py,sha256=bRLz03_8VaYLNG4gbIKCzsSc26shKMmzmwCs8SujezE,8542
|
|
12
|
-
keras_rs/src/layers/feature_interaction/feature_cross.py,sha256=rViVlJOGYG2f-uKTDQH7MdX2syRzIMkYYtAQUjz6F-0,8755
|
|
13
|
-
keras_rs/src/layers/retrieval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
|
-
keras_rs/src/layers/retrieval/brute_force_retrieval.py,sha256=izdppBXxJH0KqYEg7Zsr-SL-SHgAmnFopXMPalEO3uw,5676
|
|
15
|
-
keras_rs/src/layers/retrieval/hard_negative_mining.py,sha256=n5UftRcuuR7Lh75vOdFdqatpsYqJDHCsraNtAjeWvoM,3575
|
|
16
|
-
keras_rs/src/layers/retrieval/remove_accidental_hits.py,sha256=WKoIhUSc6SvbgLXcSqNvFUnkuyXfxWwsC7nAgYbON_U,3773
|
|
17
|
-
keras_rs/src/layers/retrieval/retrieval.py,sha256=hVOBF10SF2q_TgJdVUqztbnw5qQF-cxVRGdJbOKoL9M,4191
|
|
18
|
-
keras_rs/src/layers/retrieval/sampling_probability_correction.py,sha256=3zD6LInxhyIvyujMleGqiuoPKsna2oaTN6JU6xMnW_M,1977
|
|
19
|
-
keras_rs/src/losses/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
-
keras_rs/src/losses/pairwise_hinge_loss.py,sha256=tONOJpcwCw1mybwvyx8dAy5t6dDmlIn00enzWfQLXpQ,3049
|
|
21
|
-
keras_rs/src/losses/pairwise_logistic_loss.py,sha256=40PFdCHDM7CLunT_PE3RbgxROVImw13dgVL3o3nzeNg,3473
|
|
22
|
-
keras_rs/src/losses/pairwise_loss.py,sha256=1eux_u7PZ8BkAVdoZnt8nQxJuJeTQy_FJ8IspN5SsPc,6210
|
|
23
|
-
keras_rs/src/losses/pairwise_loss_utils.py,sha256=xvdGvdKNkvGvIaWYEQziWTFNa5EJz7rdkVGgrsnDHUk,1246
|
|
24
|
-
keras_rs/src/losses/pairwise_mean_squared_error.py,sha256=zFiSr2TNyJysgULxj9R_trpIMRNL_4MqpiAMNPUYmR0,4855
|
|
25
|
-
keras_rs/src/losses/pairwise_soft_zero_one_loss.py,sha256=YddVtJS8tKEeb0YrqGzEsr-6IDxH4uRjFrYkZDMWpkk,3492
|
|
26
|
-
keras_rs/src/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
keras_rs/src/metrics/dcg.py,sha256=UT5EyStuMeF7kpVguF34u7__Hr0bWfSFqEoyX1F4dtA,5836
|
|
28
|
-
keras_rs/src/metrics/mean_average_precision.py,sha256=yUub4jGnqwTmxf694Z2ymRjMG_vO2HdyqqvDbcEhdSQ,4632
|
|
29
|
-
keras_rs/src/metrics/mean_reciprocal_rank.py,sha256=vr3ZZjpGYy2N-N7stcIm5elfHe9A4W8uY4HADP8icMw,4046
|
|
30
|
-
keras_rs/src/metrics/ndcg.py,sha256=OX8vqO5JoBm8I7NDOce0bXwtoGNEK0hGEQT8hYfqJDA,6935
|
|
31
|
-
keras_rs/src/metrics/precision_at_k.py,sha256=Dj5R-rT_Yd5hAsk4f-BlNMujfgIdPXnFVGOw9u7BIZQ,4038
|
|
32
|
-
keras_rs/src/metrics/ranking_metric.py,sha256=JYj64q1_W3JWyKYTn4V3emKndC3BOcUz5vfQqPIx-S8,10687
|
|
33
|
-
keras_rs/src/metrics/ranking_metrics_utils.py,sha256=voUgDu3Zd-8FP0DaB1PLbInDSzkV8Zfz_6OZlsVG4VQ,8835
|
|
34
|
-
keras_rs/src/metrics/recall_at_k.py,sha256=ssnQJC42KLN28cGrmzM-qR4M4iPqiQzWM2MfwYMq4ZE,3701
|
|
35
|
-
keras_rs/src/metrics/utils.py,sha256=6xanTNdwARn4ugzmb7ko2kwAhNhsnR4NhrpS_qW0IKc,2506
|
|
36
|
-
keras_rs/src/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
37
|
-
keras_rs/src/utils/doc_string_utils.py,sha256=CmqomepmaYcvpACpXEXkrJb8DMnvIgmYK-lJ53lYarY,1675
|
|
38
|
-
keras_rs/src/utils/keras_utils.py,sha256=d28OdQP4GrJk4NIQS4n0KPtCbgOCxVU_vDnnI7ODpOw,1562
|
|
39
|
-
keras_rs_nightly-0.0.1.dev2025050103.dist-info/METADATA,sha256=3RWdJnM3dY6aK29kbLwiq3dqQMwtCY3YQ7EGx-pajhE,5199
|
|
40
|
-
keras_rs_nightly-0.0.1.dev2025050103.dist-info/WHEEL,sha256=wXxTzcEDnjrTwFYjLPcsW_7_XihufBwmpiBeiXNBGEA,91
|
|
41
|
-
keras_rs_nightly-0.0.1.dev2025050103.dist-info/top_level.txt,sha256=pWs8X78Z0cn6lfcIb9VYOW5UeJ-TpoaO9dByzo7_FFo,9
|
|
42
|
-
keras_rs_nightly-0.0.1.dev2025050103.dist-info/RECORD,,
|
|
File without changes
|