keras-nightly 3.12.0.dev2025082203__py3-none-any.whl → 3.12.0.dev2025082303__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.
- keras/_tf_keras/keras/ops/__init__.py +1 -0
- keras/_tf_keras/keras/ops/numpy/__init__.py +1 -0
- keras/ops/__init__.py +1 -0
- keras/ops/numpy/__init__.py +1 -0
- keras/src/backend/common/dtypes.py +5 -0
- keras/src/backend/jax/numpy.py +6 -0
- keras/src/backend/numpy/numpy.py +28 -0
- keras/src/backend/openvino/numpy.py +4 -0
- keras/src/backend/tensorflow/numpy.py +22 -0
- keras/src/backend/torch/nn.py +1 -2
- keras/src/backend/torch/numpy.py +16 -0
- keras/src/constraints/constraints.py +9 -7
- keras/src/initializers/constant_initializers.py +9 -5
- keras/src/ops/numpy.py +44 -0
- keras/src/optimizers/schedules/learning_rate_schedule.py +16 -9
- keras/src/version.py +1 -1
- {keras_nightly-3.12.0.dev2025082203.dist-info → keras_nightly-3.12.0.dev2025082303.dist-info}/METADATA +1 -1
- {keras_nightly-3.12.0.dev2025082203.dist-info → keras_nightly-3.12.0.dev2025082303.dist-info}/RECORD +20 -20
- {keras_nightly-3.12.0.dev2025082203.dist-info → keras_nightly-3.12.0.dev2025082303.dist-info}/WHEEL +0 -0
- {keras_nightly-3.12.0.dev2025082203.dist-info → keras_nightly-3.12.0.dev2025082303.dist-info}/top_level.txt +0 -0
@@ -195,6 +195,7 @@ from keras.src.ops.numpy import hanning as hanning
|
|
195
195
|
from keras.src.ops.numpy import heaviside as heaviside
|
196
196
|
from keras.src.ops.numpy import histogram as histogram
|
197
197
|
from keras.src.ops.numpy import hstack as hstack
|
198
|
+
from keras.src.ops.numpy import hypot as hypot
|
198
199
|
from keras.src.ops.numpy import identity as identity
|
199
200
|
from keras.src.ops.numpy import imag as imag
|
200
201
|
from keras.src.ops.numpy import inner as inner
|
@@ -83,6 +83,7 @@ from keras.src.ops.numpy import hanning as hanning
|
|
83
83
|
from keras.src.ops.numpy import heaviside as heaviside
|
84
84
|
from keras.src.ops.numpy import histogram as histogram
|
85
85
|
from keras.src.ops.numpy import hstack as hstack
|
86
|
+
from keras.src.ops.numpy import hypot as hypot
|
86
87
|
from keras.src.ops.numpy import identity as identity
|
87
88
|
from keras.src.ops.numpy import imag as imag
|
88
89
|
from keras.src.ops.numpy import inner as inner
|
keras/ops/__init__.py
CHANGED
@@ -195,6 +195,7 @@ from keras.src.ops.numpy import hanning as hanning
|
|
195
195
|
from keras.src.ops.numpy import heaviside as heaviside
|
196
196
|
from keras.src.ops.numpy import histogram as histogram
|
197
197
|
from keras.src.ops.numpy import hstack as hstack
|
198
|
+
from keras.src.ops.numpy import hypot as hypot
|
198
199
|
from keras.src.ops.numpy import identity as identity
|
199
200
|
from keras.src.ops.numpy import imag as imag
|
200
201
|
from keras.src.ops.numpy import inner as inner
|
keras/ops/numpy/__init__.py
CHANGED
@@ -83,6 +83,7 @@ from keras.src.ops.numpy import hanning as hanning
|
|
83
83
|
from keras.src.ops.numpy import heaviside as heaviside
|
84
84
|
from keras.src.ops.numpy import histogram as histogram
|
85
85
|
from keras.src.ops.numpy import hstack as hstack
|
86
|
+
from keras.src.ops.numpy import hypot as hypot
|
86
87
|
from keras.src.ops.numpy import identity as identity
|
87
88
|
from keras.src.ops.numpy import imag as imag
|
88
89
|
from keras.src.ops.numpy import inner as inner
|
@@ -244,6 +244,7 @@ BIT64_TO_BIT32_DTYPE = {
|
|
244
244
|
"int64": "int32",
|
245
245
|
"uint64": "uint32",
|
246
246
|
"float64": "float32",
|
247
|
+
"complex128": "complex64",
|
247
248
|
}
|
248
249
|
|
249
250
|
|
@@ -275,6 +276,10 @@ def _lattice_result_type(*args):
|
|
275
276
|
precision = config.floatx()[-2:]
|
276
277
|
if out_weak_type:
|
277
278
|
out_dtype = _resolve_weak_type(out_dtype, precision=precision)
|
279
|
+
|
280
|
+
# Force to be 32-bit dtype when encountering 64-bit dtype.
|
281
|
+
# TODO(hongyu): Add a config to enable 64-bit dtypes.
|
282
|
+
out_dtype = BIT64_TO_BIT32_DTYPE.get(out_dtype, out_dtype)
|
278
283
|
return out_dtype
|
279
284
|
|
280
285
|
|
keras/src/backend/jax/numpy.py
CHANGED
@@ -58,6 +58,12 @@ def heaviside(x1, x2):
|
|
58
58
|
return jnp.heaviside(x1, x2)
|
59
59
|
|
60
60
|
|
61
|
+
def hypot(x1, x2):
|
62
|
+
x1 = convert_to_tensor(x1)
|
63
|
+
x2 = convert_to_tensor(x2)
|
64
|
+
return jnp.hypot(x1, x2)
|
65
|
+
|
66
|
+
|
61
67
|
def kaiser(x, beta):
|
62
68
|
x = convert_to_tensor(x)
|
63
69
|
return cast(jnp.kaiser(x, beta), config.floatx())
|
keras/src/backend/numpy/numpy.py
CHANGED
@@ -372,6 +372,9 @@ def bincount(x, weights=None, minlength=0, sparse=False):
|
|
372
372
|
def bitwise_and(x, y):
|
373
373
|
x = convert_to_tensor(x)
|
374
374
|
y = convert_to_tensor(y)
|
375
|
+
dtype = dtypes.result_type(x.dtype, y.dtype)
|
376
|
+
x = x.astype(dtype)
|
377
|
+
y = y.astype(dtype)
|
375
378
|
return np.bitwise_and(x, y)
|
376
379
|
|
377
380
|
|
@@ -387,12 +390,18 @@ def bitwise_not(x):
|
|
387
390
|
def bitwise_or(x, y):
|
388
391
|
x = convert_to_tensor(x)
|
389
392
|
y = convert_to_tensor(y)
|
393
|
+
dtype = dtypes.result_type(x.dtype, y.dtype)
|
394
|
+
x = x.astype(dtype)
|
395
|
+
y = y.astype(dtype)
|
390
396
|
return np.bitwise_or(x, y)
|
391
397
|
|
392
398
|
|
393
399
|
def bitwise_xor(x, y):
|
394
400
|
x = convert_to_tensor(x)
|
395
401
|
y = convert_to_tensor(y)
|
402
|
+
dtype = dtypes.result_type(x.dtype, y.dtype)
|
403
|
+
x = x.astype(dtype)
|
404
|
+
y = y.astype(dtype)
|
396
405
|
return np.bitwise_xor(x, y)
|
397
406
|
|
398
407
|
|
@@ -400,6 +409,9 @@ def bitwise_left_shift(x, y):
|
|
400
409
|
x = convert_to_tensor(x)
|
401
410
|
if not isinstance(y, int):
|
402
411
|
y = convert_to_tensor(y)
|
412
|
+
dtype = dtypes.result_type(x.dtype, y.dtype)
|
413
|
+
x = x.astype(dtype)
|
414
|
+
y = y.astype(dtype)
|
403
415
|
return np.left_shift(x, y)
|
404
416
|
|
405
417
|
|
@@ -411,6 +423,9 @@ def bitwise_right_shift(x, y):
|
|
411
423
|
x = convert_to_tensor(x)
|
412
424
|
if not isinstance(y, int):
|
413
425
|
y = convert_to_tensor(y)
|
426
|
+
dtype = dtypes.result_type(x.dtype, y.dtype)
|
427
|
+
x = x.astype(dtype)
|
428
|
+
y = y.astype(dtype)
|
414
429
|
return np.right_shift(x, y)
|
415
430
|
|
416
431
|
|
@@ -665,6 +680,19 @@ def hstack(xs):
|
|
665
680
|
return np.hstack(xs)
|
666
681
|
|
667
682
|
|
683
|
+
def hypot(x1, x2):
|
684
|
+
x1 = convert_to_tensor(x1)
|
685
|
+
x2 = convert_to_tensor(x2)
|
686
|
+
|
687
|
+
dtype = dtypes.result_type(x1.dtype, x2.dtype)
|
688
|
+
if dtype in ["int8", "int16", "int32", "uint8", "uint16", "uint32"]:
|
689
|
+
dtype = config.floatx()
|
690
|
+
elif dtype in ["int64"]:
|
691
|
+
dtype = "float64"
|
692
|
+
|
693
|
+
return np.hypot(x1, x2).astype(dtype)
|
694
|
+
|
695
|
+
|
668
696
|
def identity(n, dtype=None):
|
669
697
|
dtype = dtype or config.floatx()
|
670
698
|
return np.identity(n, dtype=dtype)
|
@@ -902,6 +902,10 @@ def hstack(xs):
|
|
902
902
|
return OpenVINOKerasTensor(ov_opset.concat(elems, axis).output(0))
|
903
903
|
|
904
904
|
|
905
|
+
def hypot(x1, x2):
|
906
|
+
raise NotImplementedError("`hypot` is not supported with openvino backend")
|
907
|
+
|
908
|
+
|
905
909
|
def identity(n, dtype=None):
|
906
910
|
n = get_ov_output(n)
|
907
911
|
dtype = Type.f32 if dtype is None else dtype
|
@@ -1559,6 +1559,28 @@ def hstack(xs):
|
|
1559
1559
|
return tf.concat(xs, axis=1)
|
1560
1560
|
|
1561
1561
|
|
1562
|
+
def hypot(x1, x2):
|
1563
|
+
x1 = convert_to_tensor(x1)
|
1564
|
+
x2 = convert_to_tensor(x2)
|
1565
|
+
|
1566
|
+
dtype = dtypes.result_type(x1.dtype, x2.dtype)
|
1567
|
+
if dtype in ["int8", "int16", "int32", "uint8", "uint16", "uint32"]:
|
1568
|
+
dtype = config.floatx()
|
1569
|
+
elif dtype in ["int64"]:
|
1570
|
+
dtype = "float64"
|
1571
|
+
|
1572
|
+
x1 = tf.cast(x1, dtype)
|
1573
|
+
x2 = tf.cast(x2, dtype)
|
1574
|
+
|
1575
|
+
x1_abs = tf.abs(x1)
|
1576
|
+
x2_abs = tf.abs(x2)
|
1577
|
+
max_val = tf.maximum(x1_abs, x2_abs)
|
1578
|
+
min_val = tf.minimum(x1_abs, x2_abs)
|
1579
|
+
|
1580
|
+
ratio = tf.math.divide_no_nan(min_val, max_val)
|
1581
|
+
return max_val * tf.sqrt(1.0 + tf.square(ratio))
|
1582
|
+
|
1583
|
+
|
1562
1584
|
def identity(n, dtype=None):
|
1563
1585
|
return eye(N=n, M=n, dtype=dtype)
|
1564
1586
|
|
keras/src/backend/torch/nn.py
CHANGED
@@ -9,7 +9,6 @@ from keras.src.backend.torch.core import cast
|
|
9
9
|
from keras.src.backend.torch.core import convert_to_tensor
|
10
10
|
from keras.src.backend.torch.core import get_device
|
11
11
|
from keras.src.backend.torch.numpy import expand_dims
|
12
|
-
from keras.src.backend.torch.numpy import maximum
|
13
12
|
from keras.src.backend.torch.numpy import where
|
14
13
|
from keras.src.utils.argument_validation import standardize_tuple
|
15
14
|
|
@@ -668,7 +667,7 @@ def one_hot(x, num_classes, axis=-1, dtype=None, sparse=False):
|
|
668
667
|
# manual handling for negatives in the input to one_hot by using max(x, 0).
|
669
668
|
# The output will have some invalid results, so we set them back to 0 using
|
670
669
|
# `where` afterwards.
|
671
|
-
output = tnn.one_hot(
|
670
|
+
output = tnn.one_hot(torch.clamp(x, min=0), num_classes)
|
672
671
|
output = where(expand_dims(x, axis=-1) >= 0, output, zero)
|
673
672
|
output = convert_to_tensor(output, dtype=dtype)
|
674
673
|
dims = output.dim()
|
keras/src/backend/torch/numpy.py
CHANGED
@@ -854,6 +854,22 @@ def hstack(xs):
|
|
854
854
|
return torch.hstack(xs)
|
855
855
|
|
856
856
|
|
857
|
+
def hypot(x1, x2):
|
858
|
+
x1 = convert_to_tensor(x1)
|
859
|
+
x2 = convert_to_tensor(x2)
|
860
|
+
|
861
|
+
dtype = dtypes.result_type(x1.dtype, x2.dtype)
|
862
|
+
if dtype in ["int8", "int16", "int32", "uint8", "uint16", "uint32"]:
|
863
|
+
dtype = config.floatx()
|
864
|
+
elif dtype == "int64":
|
865
|
+
dtype = "float64"
|
866
|
+
|
867
|
+
x1 = cast(x1, dtype)
|
868
|
+
x2 = cast(x2, dtype)
|
869
|
+
|
870
|
+
return torch.hypot(x1, x2)
|
871
|
+
|
872
|
+
|
857
873
|
def identity(n, dtype=None):
|
858
874
|
dtype = to_torch_dtype(dtype or config.floatx())
|
859
875
|
|
@@ -110,7 +110,9 @@ class MaxNorm(Constraint):
|
|
110
110
|
w = backend.convert_to_tensor(w)
|
111
111
|
norms = ops.sqrt(ops.sum(ops.square(w), axis=self.axis, keepdims=True))
|
112
112
|
desired = ops.clip(norms, 0, self.max_value)
|
113
|
-
return w
|
113
|
+
return ops.cast(w, norms.dtype) * (
|
114
|
+
desired / (backend.epsilon() + norms)
|
115
|
+
)
|
114
116
|
|
115
117
|
def get_config(self):
|
116
118
|
return {"max_value": self.max_value, "axis": self.axis}
|
@@ -122,7 +124,7 @@ class NonNeg(Constraint):
|
|
122
124
|
|
123
125
|
def __call__(self, w):
|
124
126
|
w = backend.convert_to_tensor(w)
|
125
|
-
return
|
127
|
+
return ops.multiply(w, ops.greater_equal(w, 0.0))
|
126
128
|
|
127
129
|
|
128
130
|
@keras_export(["keras.constraints.UnitNorm", "keras.constraints.unit_norm"])
|
@@ -148,10 +150,8 @@ class UnitNorm(Constraint):
|
|
148
150
|
|
149
151
|
def __call__(self, w):
|
150
152
|
w = backend.convert_to_tensor(w)
|
151
|
-
|
152
|
-
|
153
|
-
+ ops.sqrt(ops.sum(ops.square(w), axis=self.axis, keepdims=True))
|
154
|
-
)
|
153
|
+
norms = ops.sqrt(ops.sum(ops.square(w), axis=self.axis, keepdims=True))
|
154
|
+
return ops.cast(w, norms.dtype) / (backend.epsilon() + norms)
|
155
155
|
|
156
156
|
def get_config(self):
|
157
157
|
return {"axis": self.axis}
|
@@ -202,7 +202,9 @@ class MinMaxNorm(Constraint):
|
|
202
202
|
self.rate * ops.clip(norms, self.min_value, self.max_value)
|
203
203
|
+ (1 - self.rate) * norms
|
204
204
|
)
|
205
|
-
return w
|
205
|
+
return ops.cast(w, norms.dtype) * (
|
206
|
+
desired / (backend.epsilon() + norms)
|
207
|
+
)
|
206
208
|
|
207
209
|
def get_config(self):
|
208
210
|
return {
|
@@ -253,14 +253,18 @@ class STFT(Initializer):
|
|
253
253
|
scaling = ops.sum(ops.abs(win))
|
254
254
|
|
255
255
|
_fft_length = (fft_length - 1) * 2
|
256
|
-
freq = (
|
257
|
-
ops.reshape(
|
258
|
-
|
256
|
+
freq = ops.divide(
|
257
|
+
ops.reshape(
|
258
|
+
ops.arange(fft_length, dtype=dtype), (1, 1, fft_length)
|
259
|
+
),
|
260
|
+
_fft_length,
|
259
261
|
)
|
260
262
|
time = ops.reshape(
|
261
263
|
ops.arange(frame_length, dtype=dtype), (frame_length, 1, 1)
|
262
264
|
)
|
263
|
-
args = -2
|
265
|
+
args = ops.multiply(ops.multiply(-2, time), freq) * ops.arccos(
|
266
|
+
ops.cast(-1, dtype)
|
267
|
+
)
|
264
268
|
|
265
269
|
if self.side == "real":
|
266
270
|
kernel = ops.cast(ops.cos(args), dtype)
|
@@ -268,7 +272,7 @@ class STFT(Initializer):
|
|
268
272
|
kernel = ops.cast(ops.sin(args), dtype)
|
269
273
|
|
270
274
|
if win is not None:
|
271
|
-
kernel = kernel
|
275
|
+
kernel = ops.divide(ops.multiply(kernel, win), scaling)
|
272
276
|
return kernel
|
273
277
|
|
274
278
|
def get_config(self):
|
keras/src/ops/numpy.py
CHANGED
@@ -3514,6 +3514,50 @@ def hstack(xs):
|
|
3514
3514
|
return backend.numpy.hstack(xs)
|
3515
3515
|
|
3516
3516
|
|
3517
|
+
class Hypot(Operation):
|
3518
|
+
def call(self, x1, x2):
|
3519
|
+
return backend.numpy.hypot(x1, x2)
|
3520
|
+
|
3521
|
+
def compute_output_spec(self, x1, x2):
|
3522
|
+
dtype = dtypes.result_type(x1.dtype, x2.dtype)
|
3523
|
+
if dtype in ["int8", "int16", "int32", "uint8", "uint16", "uint32"]:
|
3524
|
+
dtype = backend.floatx()
|
3525
|
+
elif dtype == "int64":
|
3526
|
+
dtype = "float64"
|
3527
|
+
return KerasTensor(broadcast_shapes(x1.shape, x2.shape), dtype=dtype)
|
3528
|
+
|
3529
|
+
|
3530
|
+
@keras_export(["keras.ops.hypot", "keras.ops.numpy.hypot"])
|
3531
|
+
def hypot(x1, x2):
|
3532
|
+
"""Element-wise hypotenuse of right triangles with legs `x1` and `x2`.
|
3533
|
+
|
3534
|
+
This is equivalent to computing `sqrt(x1**2 + x2**2)` element-wise,
|
3535
|
+
with shape determined by broadcasting.
|
3536
|
+
|
3537
|
+
Args:
|
3538
|
+
x1: A tensor, representing the first leg of the right triangle.
|
3539
|
+
x2: A tensor, representing the second leg of the right triangle.
|
3540
|
+
|
3541
|
+
Returns:
|
3542
|
+
A tensor with a shape determined by broadcasting `x1` and `x2`.
|
3543
|
+
|
3544
|
+
Example:
|
3545
|
+
>>> x1 = keras.ops.convert_to_tensor([3.0, 4.0, 5.0])
|
3546
|
+
>>> x2 = keras.ops.convert_to_tensor([4.0, 3.0, 12.0])
|
3547
|
+
>>> keras.ops.hypot(x1, x2)
|
3548
|
+
array([5., 5., 13.], dtype=float32)
|
3549
|
+
|
3550
|
+
>>> x1 = keras.ops.convert_to_tensor([[1, 2], [3, 4]])
|
3551
|
+
>>> x2 = keras.ops.convert_to_tensor([1, 1])
|
3552
|
+
>>> keras.ops.hypot(x1, x2)
|
3553
|
+
array([[1.41421356 2.23606798],
|
3554
|
+
[3.16227766 4.12310563]], dtype=float32)
|
3555
|
+
"""
|
3556
|
+
if any_symbolic_tensors((x1, x2)):
|
3557
|
+
return Hypot().symbolic_call(x1, x2)
|
3558
|
+
return backend.numpy.hypot(x1, x2)
|
3559
|
+
|
3560
|
+
|
3517
3561
|
@keras_export(["keras.ops.identity", "keras.ops.numpy.identity"])
|
3518
3562
|
def identity(n, dtype=None):
|
3519
3563
|
"""Return the identity tensor.
|
@@ -692,9 +692,11 @@ class CosineDecay(LearningRateSchedule):
|
|
692
692
|
|
693
693
|
def _decay_function(self, step, decay_steps, decay_from_lr, dtype):
|
694
694
|
with ops.name_scope(self.name):
|
695
|
-
completed_fraction = step
|
695
|
+
completed_fraction = ops.divide(step, decay_steps)
|
696
696
|
pi = ops.array(math.pi, dtype=dtype)
|
697
|
-
cosine_decayed = 0.5 * (
|
697
|
+
cosine_decayed = 0.5 * (
|
698
|
+
1.0 + ops.cos(ops.multiply(pi, completed_fraction))
|
699
|
+
)
|
698
700
|
decayed = (1 - self.alpha) * cosine_decayed + self.alpha
|
699
701
|
return ops.multiply(decay_from_lr, decayed)
|
700
702
|
|
@@ -866,10 +868,13 @@ class CosineDecayRestarts(LearningRateSchedule):
|
|
866
868
|
/ ops.log(t_mul)
|
867
869
|
)
|
868
870
|
|
869
|
-
sum_r =
|
870
|
-
|
871
|
-
|
872
|
-
|
871
|
+
sum_r = ops.divide(
|
872
|
+
1.0 - ops.power(t_mul, i_restart), (1.0 - t_mul)
|
873
|
+
)
|
874
|
+
completed_fraction = ops.divide(
|
875
|
+
ops.subtract(completed_fraction, sum_r),
|
876
|
+
ops.power(t_mul, i_restart),
|
877
|
+
)
|
873
878
|
|
874
879
|
else:
|
875
880
|
i_restart = ops.floor(completed_fraction)
|
@@ -883,18 +888,20 @@ class CosineDecayRestarts(LearningRateSchedule):
|
|
883
888
|
lambda: compute_step(completed_fraction, geometric=True),
|
884
889
|
)
|
885
890
|
|
886
|
-
m_fac = m_mul
|
891
|
+
m_fac = ops.power(m_mul, i_restart)
|
887
892
|
cosine_decayed = (
|
888
893
|
0.5
|
889
894
|
* m_fac
|
890
895
|
* (
|
891
896
|
1.0
|
892
897
|
+ ops.cos(
|
893
|
-
ops.
|
898
|
+
ops.multiply(
|
899
|
+
ops.array(math.pi, dtype=dtype), completed_fraction
|
900
|
+
)
|
894
901
|
)
|
895
902
|
)
|
896
903
|
)
|
897
|
-
decayed = (1 - alpha)
|
904
|
+
decayed = ops.add(ops.multiply((1 - alpha), cosine_decayed), alpha)
|
898
905
|
|
899
906
|
return ops.multiply(initial_learning_rate, decayed)
|
900
907
|
|
keras/src/version.py
CHANGED
{keras_nightly-3.12.0.dev2025082203.dist-info → keras_nightly-3.12.0.dev2025082303.dist-info}/RECORD
RENAMED
@@ -44,11 +44,11 @@ keras/_tf_keras/keras/losses/__init__.py,sha256=xBc_KOtSLwp3h3CKQ0EnCuIy-Bsak2SP
|
|
44
44
|
keras/_tf_keras/keras/metrics/__init__.py,sha256=_wF31PTvua5ahF9JEW4Hx1UVNjVCLqVI8J5JNrZCBf8,6546
|
45
45
|
keras/_tf_keras/keras/mixed_precision/__init__.py,sha256=AM51CzHqzcY75tqdpQiuVcTRUEpUzBqeb-EfLeSDSV8,727
|
46
46
|
keras/_tf_keras/keras/models/__init__.py,sha256=83pyA0pzytqin8JLV6FEbPreCb-V64ToebxFGrHsVdQ,501
|
47
|
-
keras/_tf_keras/keras/ops/__init__.py,sha256=
|
47
|
+
keras/_tf_keras/keras/ops/__init__.py,sha256=drXQiAS50FREMI6C58GvY-iRrfwEtREB-mFg6qXgEQ8,14688
|
48
48
|
keras/_tf_keras/keras/ops/image/__init__.py,sha256=K57F1fBruHn6hacx9uQFWPYO1qbdNM40VR3djvKIRq4,961
|
49
49
|
keras/_tf_keras/keras/ops/linalg/__init__.py,sha256=cc8apE35y2X8idUxY-kc7qYCUm3SAvY2b_StSjRB7Ro,778
|
50
50
|
keras/_tf_keras/keras/ops/nn/__init__.py,sha256=DAloStL366PAGID_tqeSKnConPl5aB4dcyNVm8bWnUU,2802
|
51
|
-
keras/_tf_keras/keras/ops/numpy/__init__.py,sha256=
|
51
|
+
keras/_tf_keras/keras/ops/numpy/__init__.py,sha256=vs0gGEmIFVAbtw5bk-V-n3b9SqtXhBczf2vqHQUUgTY,8984
|
52
52
|
keras/_tf_keras/keras/optimizers/__init__.py,sha256=1fx0vEB-oGu-9dumxoIvX4qVHdgJvf74OLyYoBkE2y0,1267
|
53
53
|
keras/_tf_keras/keras/optimizers/legacy/__init__.py,sha256=uIMQESCV80Q0FY-9ikQUjXYPyZqmTfAM3dfohQ5DzYs,516
|
54
54
|
keras/_tf_keras/keras/optimizers/schedules/__init__.py,sha256=pQF3rQiAPuUSTUdflTr-fpL77oyGIv9xzGdjae3M3kw,1120
|
@@ -109,11 +109,11 @@ keras/losses/__init__.py,sha256=VIXBHQFNdLUPZ7JuwtIKj_4E-xf2yvNyrmdklvjr_xM,3667
|
|
109
109
|
keras/metrics/__init__.py,sha256=qeEwtqpSCAaCr8BMUv1eVaqJl2Zb83OB5K0BG3JB0nI,6245
|
110
110
|
keras/mixed_precision/__init__.py,sha256=AM51CzHqzcY75tqdpQiuVcTRUEpUzBqeb-EfLeSDSV8,727
|
111
111
|
keras/models/__init__.py,sha256=83pyA0pzytqin8JLV6FEbPreCb-V64ToebxFGrHsVdQ,501
|
112
|
-
keras/ops/__init__.py,sha256=
|
112
|
+
keras/ops/__init__.py,sha256=drXQiAS50FREMI6C58GvY-iRrfwEtREB-mFg6qXgEQ8,14688
|
113
113
|
keras/ops/image/__init__.py,sha256=K57F1fBruHn6hacx9uQFWPYO1qbdNM40VR3djvKIRq4,961
|
114
114
|
keras/ops/linalg/__init__.py,sha256=cc8apE35y2X8idUxY-kc7qYCUm3SAvY2b_StSjRB7Ro,778
|
115
115
|
keras/ops/nn/__init__.py,sha256=DAloStL366PAGID_tqeSKnConPl5aB4dcyNVm8bWnUU,2802
|
116
|
-
keras/ops/numpy/__init__.py,sha256=
|
116
|
+
keras/ops/numpy/__init__.py,sha256=vs0gGEmIFVAbtw5bk-V-n3b9SqtXhBczf2vqHQUUgTY,8984
|
117
117
|
keras/optimizers/__init__.py,sha256=1fx0vEB-oGu-9dumxoIvX4qVHdgJvf74OLyYoBkE2y0,1267
|
118
118
|
keras/optimizers/legacy/__init__.py,sha256=uIMQESCV80Q0FY-9ikQUjXYPyZqmTfAM3dfohQ5DzYs,516
|
119
119
|
keras/optimizers/schedules/__init__.py,sha256=pQF3rQiAPuUSTUdflTr-fpL77oyGIv9xzGdjae3M3kw,1120
|
@@ -126,7 +126,7 @@ keras/regularizers/__init__.py,sha256=542Shphw7W8h4Dyf2rmqMKUECVZ8IVBvN9g1LWhz-b
|
|
126
126
|
keras/saving/__init__.py,sha256=KvL2GZxjvgFgEhvEnkvqjIR9JSNHKz-NWZacXajsjLI,1298
|
127
127
|
keras/src/__init__.py,sha256=Gi4S7EiCMkE03PbdGNpFdaUYySWDs_FcAJ8Taz9Y1BE,684
|
128
128
|
keras/src/api_export.py,sha256=gXOkBOnmscV013WAc75lc4Up01-Kkg9EylIAT_QWctg,1173
|
129
|
-
keras/src/version.py,sha256=
|
129
|
+
keras/src/version.py,sha256=_e6jU76gix19o_kwr8S5DHWZWJWbVWQ5kurF37E7ofg,204
|
130
130
|
keras/src/activations/__init__.py,sha256=0nL3IFDB9unlrMz8ninKOWo-uCHasTUpTo1tXZb2u44,4433
|
131
131
|
keras/src/activations/activations.py,sha256=mogPggtp4CGldI3VOPNmesRxp6EbiR1_i4KLGaVwzL8,17614
|
132
132
|
keras/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -150,7 +150,7 @@ keras/src/backend/__init__.py,sha256=b9xUJiQjfk-0_HzuCHpUn26u-_F_TDFHf31RduG2KAc
|
|
150
150
|
keras/src/backend/config.py,sha256=EjQUu-PxQ4cm3vQpc6bzMAMVyw4HHznUQL0SIDhBohw,13147
|
151
151
|
keras/src/backend/common/__init__.py,sha256=q_z_xvW-5LnR7n8cVKPCPWVefEFpHTqTRKnteLYTovk,595
|
152
152
|
keras/src/backend/common/backend_utils.py,sha256=1ImjX--bLg9asaX6bTLmXfEoRmP6AKdPqF1QJT-MdJA,17493
|
153
|
-
keras/src/backend/common/dtypes.py,sha256=
|
153
|
+
keras/src/backend/common/dtypes.py,sha256=zMUUJmfv8FIP7GWUtDEjYE76LFCeMfH72YqVHj9MD7Y,10443
|
154
154
|
keras/src/backend/common/global_state.py,sha256=0xWtrdgw_VOgtzH3Xl9D0qJJYYeP1AaqE9u2GHXwcu0,3412
|
155
155
|
keras/src/backend/common/keras_tensor.py,sha256=NszB5FiLaWTSXYAq6SnXbw7o7WIlssNPrHaZKHWqEY0,12293
|
156
156
|
keras/src/backend/common/masking.py,sha256=JiC1uvxF_4psCMlaiawfAA_7UQEhF123xxFAnRyNg98,727
|
@@ -169,7 +169,7 @@ keras/src/backend/jax/layer.py,sha256=QxZeeiimUulsb3j1h3ncNxIoTYdKPO89s0kP49ZwF-
|
|
169
169
|
keras/src/backend/jax/linalg.py,sha256=dtGHRYCvoVlRX0UwbDDdunA8Vp_mA3sdqoasX4P8SbQ,2532
|
170
170
|
keras/src/backend/jax/math.py,sha256=1IEDpdoF8e5ltu3D4wbDQuihzvJHhMXz8W9Z_E-eJqU,9391
|
171
171
|
keras/src/backend/jax/nn.py,sha256=R0a8-WB0YCl14FpRi2CQ45MFRvHCFtPTedk0Q1LfWYc,45935
|
172
|
-
keras/src/backend/jax/numpy.py,sha256=
|
172
|
+
keras/src/backend/jax/numpy.py,sha256=UdvWXwarpXYMVtGB_beWS9s_5IgCi7OjoTRDFkH74rQ,36799
|
173
173
|
keras/src/backend/jax/optimizer.py,sha256=JSKRkBteb7u-He5rtHwU6Wy5p8IjSsZf-IIL4-eQfsE,4102
|
174
174
|
keras/src/backend/jax/random.py,sha256=Uk2huGIk_dlzMrx5eDVrrr2TeCEMitn2vr4yzA0NXjs,3594
|
175
175
|
keras/src/backend/jax/rnn.py,sha256=Ycq0qfLY4M4jhltvztpLQyywjEM17T7CZQFh4hhHOUE,7767
|
@@ -184,7 +184,7 @@ keras/src/backend/numpy/layer.py,sha256=dTk7W7ql7vRgll7JbOXK5PlIhQw5VHdpSjKciHd8
|
|
184
184
|
keras/src/backend/numpy/linalg.py,sha256=H8Bdu8LG6OlzXqx8uVxLmTKKE8s9lMoZHMsM2tW4e04,2417
|
185
185
|
keras/src/backend/numpy/math.py,sha256=HdkEA5ro7dtQBTP78GFIgqTFLgNQ49PXHhqI1vLRGfo,10169
|
186
186
|
keras/src/backend/numpy/nn.py,sha256=wTh4s2ZvL4PjPjz4VE6tMrFkRMaQiqpdBeNb6RY5kyE,36623
|
187
|
-
keras/src/backend/numpy/numpy.py,sha256=
|
187
|
+
keras/src/backend/numpy/numpy.py,sha256=2EZaiCdGeWpdmOGtdu8ZbJF0oEXaCaXSJ40Us3GUey4,35235
|
188
188
|
keras/src/backend/numpy/random.py,sha256=wx2nE75q7L2cBMjtQlQx8yKMj4Ie3puFMDQsbrZO8SA,3961
|
189
189
|
keras/src/backend/numpy/rnn.py,sha256=thOsMung1qR3lQsR4_D6hqKMFollQgrB0KwsJLk4BMY,7867
|
190
190
|
keras/src/backend/numpy/trainer.py,sha256=MzWr8_LLHa1P6fxdUWirGw_lQwHGF_vkZ7RUGLUzjUs,11126
|
@@ -196,7 +196,7 @@ keras/src/backend/openvino/layer.py,sha256=5RdvaH1yOyPAphjKiuQAK1H_yZFYKE1Hp7c5b
|
|
196
196
|
keras/src/backend/openvino/linalg.py,sha256=Q09iv7fcE-xtNOop_hTG_RADkI0CHhjfrcOHqdWCmIY,1486
|
197
197
|
keras/src/backend/openvino/math.py,sha256=qw9kX2sJ2qr0dBJF12Ey0E2GcwixPUqoev6UcNra4NI,3944
|
198
198
|
keras/src/backend/openvino/nn.py,sha256=FUjNvBOcwP-A1BHffaCIZ-bl6na6xM_v91dcaTP4Q4U,15121
|
199
|
-
keras/src/backend/openvino/numpy.py,sha256=
|
199
|
+
keras/src/backend/openvino/numpy.py,sha256=GrfuGWg5-rDawrtpTxeT1J7Cu10WC63j8qxTj_iwacI,64335
|
200
200
|
keras/src/backend/openvino/random.py,sha256=bR7BYdfYHsBi5rYgCKmpFf310fa1q7JT48Z29XxhwmA,5851
|
201
201
|
keras/src/backend/openvino/rnn.py,sha256=ErmuZLPSgG9qU-NfYPPvBZ6Ysy8k-fA4g19Vhqq7OVQ,866
|
202
202
|
keras/src/backend/openvino/trainer.py,sha256=bMmtSALqydqdS6ke-5sYW5fgxZDshDH810p_C0xCRTg,9087
|
@@ -209,7 +209,7 @@ keras/src/backend/tensorflow/layer.py,sha256=iE6XYSZENEoTpNhoXrEOm7gnIOHwOjETZd_
|
|
209
209
|
keras/src/backend/tensorflow/linalg.py,sha256=fpzxql1ycXIAks9AvS753aiSoaVqAuM6xbv671BulhQ,8038
|
210
210
|
keras/src/backend/tensorflow/math.py,sha256=zTu_7Ff6B2Ro862z_xH0OCmIWbV74DjsO5UnfjYuOUQ,12370
|
211
211
|
keras/src/backend/tensorflow/nn.py,sha256=oS7sngoA2C2SFfKQdYWvSZe7HCFfG29t4glbE6yv9CM,34616
|
212
|
-
keras/src/backend/tensorflow/numpy.py,sha256=
|
212
|
+
keras/src/backend/tensorflow/numpy.py,sha256=Egtg_wsULToPi00oRLsr4RIh1b8_TykxAcmiqthGpb0,95103
|
213
213
|
keras/src/backend/tensorflow/optimizer.py,sha256=kFlyEOnGjEYdLpd8mpwhUeku78__xBfZbbrDWpJrq60,9307
|
214
214
|
keras/src/backend/tensorflow/random.py,sha256=iO8V_soaDXZm9ewyAVbjudhsMj08C348c9Bz64nxXC4,6475
|
215
215
|
keras/src/backend/tensorflow/rnn.py,sha256=99EJqbPdWddmG14zyjjhUZfU5zo9ObmslF_Mak7EmAs,34602
|
@@ -224,8 +224,8 @@ keras/src/backend/torch/image.py,sha256=I1RY1MM99gufhxjQArkRXS9ZKf5Ki0uA-HG-D47s
|
|
224
224
|
keras/src/backend/torch/layer.py,sha256=htECdpv9ioHWM8_zqQkEdxgDsgLu8XJi5yXgnLl-JFw,2084
|
225
225
|
keras/src/backend/torch/linalg.py,sha256=2GUb107BufiHEK2zJ_fkFREo8Y8mo0OqUZLkwNNgOv4,1991
|
226
226
|
keras/src/backend/torch/math.py,sha256=g-ElDii2Y_o1-t6BAu2nbS7JH-aPqVS5Fqds8aYzIlg,14324
|
227
|
-
keras/src/backend/torch/nn.py,sha256=
|
228
|
-
keras/src/backend/torch/numpy.py,sha256=
|
227
|
+
keras/src/backend/torch/nn.py,sha256=8sqbeYU1siImRRyF4J-7JEE_CvcVeGnQ4D9aGijAyxo,33379
|
228
|
+
keras/src/backend/torch/numpy.py,sha256=2-5tEtGymfpZAzR9Z1ymziERJ2E4BbXryLmIuVQOJUE,54988
|
229
229
|
keras/src/backend/torch/random.py,sha256=YhLfC7qkGpzlU_i6gGPVormo3BMSo7OUA3TC3GCehrA,8292
|
230
230
|
keras/src/backend/torch/rnn.py,sha256=J0vg7ikxBiv1FzEavgwT8IVCs0ceBcEv5LYyM5C2suA,25545
|
231
231
|
keras/src/backend/torch/trainer.py,sha256=TCnq0Tl9W0OUYesGGaSTWtGMnPiz-s6jrR5AC2F-TTg,17837
|
@@ -259,7 +259,7 @@ keras/src/callbacks/swap_ema_weights.py,sha256=JFp0E2BDTBWxVMdsGgVFuArfX3OaNKdtD
|
|
259
259
|
keras/src/callbacks/tensorboard.py,sha256=-o8fpnC4ZJCrQmzYkfcj1xrTVupLi8g58MgtPlbEEgc,26968
|
260
260
|
keras/src/callbacks/terminate_on_nan.py,sha256=WWrXVVa927N7-vwzegcORMFAP3rk4eVqPzL8XvfSaHw,669
|
261
261
|
keras/src/constraints/__init__.py,sha256=3bDz814Sz2haFYT3puoLzv1Nqm9Uf2AwQqqamgqULPk,1715
|
262
|
-
keras/src/constraints/constraints.py,sha256=
|
262
|
+
keras/src/constraints/constraints.py,sha256=GPxyDnepj9aV9Da4swJb_Cjbh-puYl24e35ZC9s6V6c,7422
|
263
263
|
keras/src/datasets/__init__.py,sha256=ivEFJkqLxwU5BEYqWsWTd66kJ96YMKFKiYQGHm2CX68,383
|
264
264
|
keras/src/datasets/boston_housing.py,sha256=MV8qnQjhZ6R1g5uqOAV5Xg2BIE41LXSNWzlmtDRnYFY,2644
|
265
265
|
keras/src/datasets/california_housing.py,sha256=Z-X2DOWaykArurE6CLPv3noCxX3GKObWnqdLf7wFoGk,3850
|
@@ -283,7 +283,7 @@ keras/src/export/saved_model.py,sha256=bxcsVd87MXnw3ENKu_dbUc8JzPFqjOAPbLL0U5KqG
|
|
283
283
|
keras/src/export/tf2onnx_lib.py,sha256=C9sFXIXclWYhsD-3ub9zT4qSKsZMtELNtPHijy5Rvrs,7172
|
284
284
|
keras/src/export/tfsm_layer.py,sha256=1OSV8sg_ftrMQjyf_RBsNNC2sihkWCKml5Yv3M3C-NA,5998
|
285
285
|
keras/src/initializers/__init__.py,sha256=tG7qxC2J0PDhO_L2W95sJXNIduL7F5lqHvUuJ7EIhXE,5662
|
286
|
-
keras/src/initializers/constant_initializers.py,sha256=
|
286
|
+
keras/src/initializers/constant_initializers.py,sha256=CvTyqbkcvvhwLlKYf8jqwlS-F2-Uj2c13si8Wjc4tmQ,10072
|
287
287
|
keras/src/initializers/initializer.py,sha256=kNAyRA8CzBdtknT6ZUt5XIO2_Z9NzpN119CId7wT1Vg,2632
|
288
288
|
keras/src/initializers/random_initializers.py,sha256=AuUeQ3YZGakDKTCs8njQLhozE6iWYHwP6-VstnEMOaQ,23631
|
289
289
|
keras/src/layers/__init__.py,sha256=MDFk6ARHwWBvWO_kmxYhgn6DwBFYkZckR80ByuHPxOg,11491
|
@@ -489,7 +489,7 @@ keras/src/ops/linalg.py,sha256=1Z6my5X0e0uoTYPGJ0I0s2hiKbxYFmdyvoifBcZJEsc,22636
|
|
489
489
|
keras/src/ops/math.py,sha256=4qYMJ5qAPmeSyeF63YWoGbUkQt6f4_VX0enOChU4mXU,37233
|
490
490
|
keras/src/ops/nn.py,sha256=1BC-zmnpsUhqG5lSE4VvV5PsBf81wN0ZGg4kU-R8TJY,95259
|
491
491
|
keras/src/ops/node.py,sha256=aJgn9D-GkteE--Bbt2cZ9JjVxb2W2uS1OWEKoeLsl3Y,5583
|
492
|
-
keras/src/ops/numpy.py,sha256=
|
492
|
+
keras/src/ops/numpy.py,sha256=nHSZKxiXUFW9Yi2DS2ZQd8OS8YAgZ2zg1Tc4mkDPJBY,235686
|
493
493
|
keras/src/ops/operation.py,sha256=Q-nOnXPrmt2daaC3X1png3Y86sFPDttrNEopPb6o3wM,12957
|
494
494
|
keras/src/ops/operation_utils.py,sha256=BSarr5DZF5dr-URdXNzawwZlFx6R7VRjh6P2DGwgrT4,14457
|
495
495
|
keras/src/ops/symbolic_arguments.py,sha256=MKwXxZYkyouD9BPmQ1uUNxILdcwPvTayAqXaUV3P3o4,1628
|
@@ -511,7 +511,7 @@ keras/src/optimizers/optimizer.py,sha256=cZtZwu42plSGjZBqoS6KThwJvWjEcPz9g97nZCS
|
|
511
511
|
keras/src/optimizers/rmsprop.py,sha256=DCbmmViUnYCHMCO9YCtC2wGzPXxNPBJhkpwAmROOzf8,5775
|
512
512
|
keras/src/optimizers/sgd.py,sha256=_3xanWOI0s2dISxEVT7i_tehsWakQQz2y480Iwkonas,4396
|
513
513
|
keras/src/optimizers/schedules/__init__.py,sha256=vuUuHNTev8sD2-swsuq7zqyYbmaOhDyiIE6F3dGGSZU,546
|
514
|
-
keras/src/optimizers/schedules/learning_rate_schedule.py,sha256=
|
514
|
+
keras/src/optimizers/schedules/learning_rate_schedule.py,sha256=Sqvd0SRHLMilsBsVXuolElJR6z5tBTphlGJ99Yq8axw,35784
|
515
515
|
keras/src/quantizers/__init__.py,sha256=gxZQYNL-XyUYV1BQgC6V9qVH2MpqI-R1wqhM6o2Sywo,1967
|
516
516
|
keras/src/quantizers/gptq.py,sha256=rbRi2qmZsvYG2APg6Sh0TysXSeTop_Ehp9wRqZOW12U,14509
|
517
517
|
keras/src/quantizers/gptq_config.py,sha256=X6HTcYSE2m0m7s3btRwgWmJ09KkhULtWtabANW7vI9Y,6766
|
@@ -597,7 +597,7 @@ keras/utils/bounding_boxes/__init__.py,sha256=jtvQll4u8ZY0Z96HwNhP1nxWEG9FM3gI-6
|
|
597
597
|
keras/utils/legacy/__init__.py,sha256=oSYZz6uS8UxSElRaaJYWJEoweJ4GAasZjnn7fNaOlog,342
|
598
598
|
keras/visualization/__init__.py,sha256=UKWmiy6sps4SWlmQi9WX8_Z53cPpLlphz2zIeHdwJpQ,722
|
599
599
|
keras/wrappers/__init__.py,sha256=QkS-O5K8qGS7C3sytF8MpmO6PasATpNVGF8qtb7Ojsw,407
|
600
|
-
keras_nightly-3.12.0.
|
601
|
-
keras_nightly-3.12.0.
|
602
|
-
keras_nightly-3.12.0.
|
603
|
-
keras_nightly-3.12.0.
|
600
|
+
keras_nightly-3.12.0.dev2025082303.dist-info/METADATA,sha256=LZ1CGOmemNyTsvz6gHKvX8hb3-7jmBUmr9p7jiIH3TM,5970
|
601
|
+
keras_nightly-3.12.0.dev2025082303.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
602
|
+
keras_nightly-3.12.0.dev2025082303.dist-info/top_level.txt,sha256=ptcw_-QuGZ4ZDjMdwi_Z0clZm8QAqFdvzzFnDEOTs9o,6
|
603
|
+
keras_nightly-3.12.0.dev2025082303.dist-info/RECORD,,
|
{keras_nightly-3.12.0.dev2025082203.dist-info → keras_nightly-3.12.0.dev2025082303.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|