dataeval 0.61.0__py3-none-any.whl → 0.64.0__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.
- dataeval/__init__.py +3 -3
- dataeval/_internal/detectors/clusterer.py +45 -16
- dataeval/_internal/detectors/drift/base.py +15 -12
- dataeval/_internal/detectors/drift/cvm.py +12 -8
- dataeval/_internal/detectors/drift/ks.py +7 -3
- dataeval/_internal/detectors/drift/mmd.py +15 -12
- dataeval/_internal/detectors/drift/uncertainty.py +6 -5
- dataeval/_internal/detectors/duplicates.py +35 -11
- dataeval/_internal/detectors/linter.py +85 -16
- dataeval/_internal/detectors/ood/ae.py +7 -5
- dataeval/_internal/detectors/ood/aegmm.py +6 -5
- dataeval/_internal/detectors/ood/base.py +15 -13
- dataeval/_internal/detectors/ood/llr.py +8 -5
- dataeval/_internal/detectors/ood/vae.py +6 -4
- dataeval/_internal/detectors/ood/vaegmm.py +6 -4
- dataeval/_internal/interop.py +43 -0
- dataeval/_internal/metrics/balance.py +180 -0
- dataeval/_internal/metrics/base.py +2 -84
- dataeval/_internal/metrics/ber.py +77 -53
- dataeval/_internal/metrics/coverage.py +80 -55
- dataeval/_internal/metrics/divergence.py +62 -54
- dataeval/_internal/metrics/diversity.py +206 -0
- dataeval/_internal/metrics/parity.py +292 -163
- dataeval/_internal/metrics/stats.py +48 -35
- dataeval/_internal/metrics/uap.py +31 -26
- dataeval/_internal/metrics/utils.py +237 -2
- dataeval/_internal/utils.py +64 -0
- dataeval/_internal/workflows/__init__.py +0 -0
- dataeval/metrics/__init__.py +25 -5
- dataeval/utils/__init__.py +9 -0
- {dataeval-0.61.0.dist-info → dataeval-0.64.0.dist-info}/METADATA +1 -2
- dataeval-0.64.0.dist-info/RECORD +60 -0
- dataeval/_internal/metrics/hash.py +0 -79
- dataeval-0.61.0.dist-info/RECORD +0 -55
- {dataeval-0.61.0.dist-info → dataeval-0.64.0.dist-info}/LICENSE.txt +0 -0
- {dataeval-0.61.0.dist-info → dataeval-0.64.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,60 @@
|
|
1
|
+
dataeval/__init__.py,sha256=5krxzT8KNetiYE6ByxRgCTbHG7EHH-Fm9Fof6Ta3fUo,424
|
2
|
+
dataeval/_internal/detectors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
+
dataeval/_internal/detectors/clusterer.py,sha256=6VklhUH8FvS2ATUAgb-7Q4XYHvQrDMZtkYeFnEznMfU,20328
|
4
|
+
dataeval/_internal/detectors/drift/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
5
|
+
dataeval/_internal/detectors/drift/base.py,sha256=TRm-FcSM7Nv6nxqfyIzVZ_ysGdUmyqa5okNp7-gVZAY,9127
|
6
|
+
dataeval/_internal/detectors/drift/cvm.py,sha256=cnAJZsBrvLsRaAUSgFvhX-ZNzE6V-s5irySvRW5-dOs,4025
|
7
|
+
dataeval/_internal/detectors/drift/ks.py,sha256=Bfv-hVbghfGbRGEp_aGpkP5G2TnW6E5wIGdfx7nmZT0,4028
|
8
|
+
dataeval/_internal/detectors/drift/mmd.py,sha256=RX_djx_rC9NQNdapTeNplP6x-4-JiMBYfIUNarakjNg,7056
|
9
|
+
dataeval/_internal/detectors/drift/torch.py,sha256=NsQYfDVRcCGmU8k6oBG_aVzmML1zre-xUKBVK1W680o,10872
|
10
|
+
dataeval/_internal/detectors/drift/uncertainty.py,sha256=jiqibgOmk37n2qBP-fEAE0Z-dUxyBRptQdT1V52yCxg,5323
|
11
|
+
dataeval/_internal/detectors/duplicates.py,sha256=0m7E7EAvUHGfaVzQ_KgKbqDBW1jo8XrRd82uKRn1Gf0,2155
|
12
|
+
dataeval/_internal/detectors/linter.py,sha256=Dmy5Rfuxf3jlGNK6DO6qo3puN_X1yh8N4svSem1vysE,5278
|
13
|
+
dataeval/_internal/detectors/ood/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
14
|
+
dataeval/_internal/detectors/ood/ae.py,sha256=FjqMucicFsDIKJMAOjWpKBohrPM4F1ubFLJk91GVqio,2681
|
15
|
+
dataeval/_internal/detectors/ood/aegmm.py,sha256=Kf9R5q-hoRg6RUHlJG-2oo52ZKeQmJQbxG0kFtHh6zA,2416
|
16
|
+
dataeval/_internal/detectors/ood/base.py,sha256=AfbNF_l8h1lDQ41SKlCHYWFjJ9YfAXuMMG3z9f973fM,6973
|
17
|
+
dataeval/_internal/detectors/ood/llr.py,sha256=alel7l8hhvBNErAkDtcpjL1IzWRDNcIwWV1eX6KDjEI,10172
|
18
|
+
dataeval/_internal/detectors/ood/vae.py,sha256=ntabTTTmPhJ18giZ7A64mxpJvTH9pIHmHPGGnu-gA8g,2987
|
19
|
+
dataeval/_internal/detectors/ood/vaegmm.py,sha256=opBfFLuXEAIMa8E6scwf-GWbZbuXnsqXlXTbLN4MoYg,2861
|
20
|
+
dataeval/_internal/flags.py,sha256=dRApeFkdSXFbYHSmvzgUP78zH8jUGtfzKFfLQtX0Q18,883
|
21
|
+
dataeval/_internal/interop.py,sha256=wkNsLlmYYSHZqq0T204x8j9DIGIue9V2S0WQGPKQD6Y,1030
|
22
|
+
dataeval/_internal/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
23
|
+
dataeval/_internal/metrics/balance.py,sha256=i6m7qHSiY2TrKGneQtEpLWDPBkoqxCZsbVhoKnkwv1E,6421
|
24
|
+
dataeval/_internal/metrics/base.py,sha256=TIreZWP1ynntqmDUu7-UED_Y3WpVrF28vGb6gZfqMIg,318
|
25
|
+
dataeval/_internal/metrics/ber.py,sha256=9NxMCS78KsCLag2ZYJ-G16pgReSrkEfWm1hl-S5h_yU,4560
|
26
|
+
dataeval/_internal/metrics/coverage.py,sha256=UKfvtAPIl043qCxfrLaWrEzyJGgrLdPM3AIvNi6wl8k,3744
|
27
|
+
dataeval/_internal/metrics/divergence.py,sha256=JNQVRHt363iEZucQ3Fq3Re2PbA0I1dR7a0TJSkMRX64,3238
|
28
|
+
dataeval/_internal/metrics/diversity.py,sha256=Lnc5QD6LcxLrFR9wHWg1FspD2KuKZTVht_MUzgN1EKs,6965
|
29
|
+
dataeval/_internal/metrics/parity.py,sha256=6c0WpIoyM7hRsPELnyT2Qi_UYNcRVbXd_e7-i3-kuYI,11637
|
30
|
+
dataeval/_internal/metrics/stats.py,sha256=T7VM4g5zhJIhfpw4XGDgleojhEqUI3NwsabYuzZ_g8w,12581
|
31
|
+
dataeval/_internal/metrics/uap.py,sha256=9oMG_MhTYiNf2KCZ-fHlCUGBzsdXEVpvakHqVVMsM2s,1174
|
32
|
+
dataeval/_internal/metrics/utils.py,sha256=f1-R0yCUb0r7Fb0H25o7MGRFrseX4WkJDdzgPuYMfoc,12302
|
33
|
+
dataeval/_internal/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
34
|
+
dataeval/_internal/models/pytorch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
35
|
+
dataeval/_internal/models/pytorch/autoencoder.py,sha256=iK3Z9claesU_pJkRaiFJIZ9zKZg-Qj8ugzVYTTokDbE,6123
|
36
|
+
dataeval/_internal/models/pytorch/blocks.py,sha256=pm2xwsDZjZJYXrhhiz8husvh2vHmrkFMSYEn-EDUD5Q,1354
|
37
|
+
dataeval/_internal/models/pytorch/utils.py,sha256=Qgwym1PxGuwxbXCKUT-8r6Iyrxqm7x94oj45Vf5_CjE,1675
|
38
|
+
dataeval/_internal/models/tensorflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
39
|
+
dataeval/_internal/models/tensorflow/autoencoder.py,sha256=rErnOfDFTd7e4brSGQ2Lr1x1kNjSEHdbOREOtUfIhIM,9975
|
40
|
+
dataeval/_internal/models/tensorflow/gmm.py,sha256=wnqQKm3fURuvBROUd2fitCqzKViDo-g0-Djr3TBHZ3U,3640
|
41
|
+
dataeval/_internal/models/tensorflow/losses.py,sha256=3y6tHm7PTQ7hmasJDwTXjdARjCUWycoXqSyXJ1uT2mM,3766
|
42
|
+
dataeval/_internal/models/tensorflow/pixelcnn.py,sha256=B5cwB2IGPw-7b8klt82j_60g_IvqSiDELxvbiBYJtAo,48068
|
43
|
+
dataeval/_internal/models/tensorflow/trainer.py,sha256=2KHtMRniVselCaDXeb8QEfX-wMRsPfT1xiG2gUQgelg,4090
|
44
|
+
dataeval/_internal/models/tensorflow/utils.py,sha256=uK_fQ1JXUSVi0kgnhd9eRArlr36OzXUEdL4inJZCs-8,8579
|
45
|
+
dataeval/_internal/utils.py,sha256=umvc_vN5c5IR0lz2F1U2YjA3VZloKTAEp9BQx8rSk6g,1561
|
46
|
+
dataeval/_internal/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
47
|
+
dataeval/_internal/workflows/sufficiency.py,sha256=QZQdhERVr3EmPA2sAFFudSDL4KLM0eAvYgV38jhjzaI,18374
|
48
|
+
dataeval/detectors/__init__.py,sha256=I2e7YWb55RRlKQll85Z6KdN5wdBa53smn-_fcZIsCwA,1507
|
49
|
+
dataeval/flags/__init__.py,sha256=1-HmwmtfPkHWwqXUjDwWko396qAKBeaSvqVsQZLrzD0,170
|
50
|
+
dataeval/metrics/__init__.py,sha256=pY6E04nEkbSTQsWJ4rNFlkvcT3-aWSEO1dOctynSotg,787
|
51
|
+
dataeval/models/__init__.py,sha256=onevPb5wznCggowBnVT0OUa8uBJXZCbrkFuek1UFvOs,293
|
52
|
+
dataeval/models/tensorflow/__init__.py,sha256=A1XRxVGHefuvh_WpaKE1x95pRD1FecuFp66iuNPA_5U,424
|
53
|
+
dataeval/models/torch/__init__.py,sha256=su7P9DF9LChlVCNHWG6d7s_yeIfWQbhCYWIkzJe0Qig,190
|
54
|
+
dataeval/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
55
|
+
dataeval/utils/__init__.py,sha256=bgUXeumTEspt2Q76YyEliGrnS-_incswY-pDexPdSCc,229
|
56
|
+
dataeval/workflows/__init__.py,sha256=ObgS1cVYFRzFZWbNzGs2OcU02IVkJkAMHNnlnSNTMCE,208
|
57
|
+
dataeval-0.64.0.dist-info/LICENSE.txt,sha256=Kpzcfobf1HlqafF-EX6dQLw9TlJiaJzfgvLQFukyXYw,1060
|
58
|
+
dataeval-0.64.0.dist-info/METADATA,sha256=HUYwlnRhnTLqcZQ9wDo0ZVpzpeak0CiQgKMKdg39MHE,4217
|
59
|
+
dataeval-0.64.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
60
|
+
dataeval-0.64.0.dist-info/RECORD,,
|
@@ -1,79 +0,0 @@
|
|
1
|
-
import numpy as np
|
2
|
-
import xxhash as xxh
|
3
|
-
from PIL import Image
|
4
|
-
from scipy.fftpack import dct
|
5
|
-
|
6
|
-
from dataeval._internal.metrics.utils import normalize_image_shape, rescale
|
7
|
-
|
8
|
-
HASH_SIZE = 8
|
9
|
-
MAX_FACTOR = 4
|
10
|
-
|
11
|
-
|
12
|
-
def pchash(image: np.ndarray) -> str:
|
13
|
-
"""
|
14
|
-
Performs a perceptual hash on an image by resizing to a square NxN image
|
15
|
-
using the Lanczos algorithm where N is 32x32 or the largest multiple of
|
16
|
-
8 that is smaller than the input image dimensions. The resampled image
|
17
|
-
is compressed using a discrete cosine transform and the lowest frequency
|
18
|
-
component is encoded as a bit array of greater or less than median value
|
19
|
-
and returned as a hex string.
|
20
|
-
|
21
|
-
Parameters
|
22
|
-
----------
|
23
|
-
image : np.ndarray
|
24
|
-
An image as a numpy array in CxHxW format
|
25
|
-
|
26
|
-
Returns
|
27
|
-
-------
|
28
|
-
str
|
29
|
-
The hex string hash of the image using perceptual hashing
|
30
|
-
"""
|
31
|
-
# Verify that the image is at least larger than an 8x8 image
|
32
|
-
min_dim = min(image.shape[-2:])
|
33
|
-
if min_dim < HASH_SIZE + 1:
|
34
|
-
raise ValueError(f"Image must be larger than {HASH_SIZE}x{HASH_SIZE} for fuzzy hashing.")
|
35
|
-
|
36
|
-
# Calculates the dimensions of the resized square image
|
37
|
-
resize_dim = HASH_SIZE * min((min_dim - 1) // HASH_SIZE, MAX_FACTOR)
|
38
|
-
|
39
|
-
# Normalizes the image to CxHxW and takes the mean over all the channels
|
40
|
-
normalized = np.mean(normalize_image_shape(image), axis=0).squeeze()
|
41
|
-
|
42
|
-
# Rescales the pixel values to an 8-bit 0-255 image
|
43
|
-
rescaled = rescale(normalized, 8).astype(np.uint8)
|
44
|
-
|
45
|
-
# Resizes the image using the Lanczos algorithm to a square image
|
46
|
-
im = np.array(Image.fromarray(rescaled).resize((resize_dim, resize_dim), Image.Resampling.LANCZOS))
|
47
|
-
|
48
|
-
# Performs discrete cosine transforms to compress the image information and takes the lowest frequency component
|
49
|
-
transform = dct(dct(im.T).T)[:HASH_SIZE, :HASH_SIZE]
|
50
|
-
|
51
|
-
# Encodes the transform as a bit array over the median value
|
52
|
-
diff = transform > np.median(transform)
|
53
|
-
|
54
|
-
# Pads the front of the bit array to a multiple of 8 with False
|
55
|
-
padded = np.full(int(np.ceil(diff.size / 8) * 8), False)
|
56
|
-
padded[-diff.size :] = diff.ravel()
|
57
|
-
|
58
|
-
# Converts the bit array to a hex string and strips leading 0s
|
59
|
-
hash_hex = np.packbits(padded).tobytes().hex().lstrip("0")
|
60
|
-
return hash_hex if hash_hex else "0"
|
61
|
-
|
62
|
-
|
63
|
-
def xxhash(image: np.ndarray) -> str:
|
64
|
-
"""
|
65
|
-
Performs a fast non-cryptographic hash using the xxhash algorithm
|
66
|
-
(xxhash.com) against the image as a flattened bytearray. The hash
|
67
|
-
is returned as a hex string.
|
68
|
-
|
69
|
-
Parameters
|
70
|
-
----------
|
71
|
-
image : np.ndarray
|
72
|
-
An image as a numpy array
|
73
|
-
|
74
|
-
Returns
|
75
|
-
-------
|
76
|
-
str
|
77
|
-
The hex string hash of the image using the xxHash algorithm
|
78
|
-
"""
|
79
|
-
return xxh.xxh3_64_hexdigest(image.ravel().tobytes())
|
dataeval-0.61.0.dist-info/RECORD
DELETED
@@ -1,55 +0,0 @@
|
|
1
|
-
dataeval/__init__.py,sha256=hoMLXpAqvfNQ6BtdLD49hOXWMUp5_4zBg_IPeuGPyZA,408
|
2
|
-
dataeval/_internal/detectors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
-
dataeval/_internal/detectors/clusterer.py,sha256=zuWW7qfbQWQ777TqBOsDp2_fEbFmuUzNqOvTWv8xijo,19193
|
4
|
-
dataeval/_internal/detectors/drift/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
5
|
-
dataeval/_internal/detectors/drift/base.py,sha256=b6_kUHGPtfDnN6S9gNkldpoaGwdRKw6ohGI4wGega24,8981
|
6
|
-
dataeval/_internal/detectors/drift/cvm.py,sha256=3YePeStvRSKVFqHEWshngXhJTCh3cn9-9B-Ou7FQHgM,3897
|
7
|
-
dataeval/_internal/detectors/drift/ks.py,sha256=PW4qB4XbDUhVxpKJeA39-0GYVgeAxWggipBh2bhKDKg,3924
|
8
|
-
dataeval/_internal/detectors/drift/mmd.py,sha256=ZJu28o6Brs0-pt3PVY2ysMKVfLYXaEz754I-lSLn1hM,6965
|
9
|
-
dataeval/_internal/detectors/drift/torch.py,sha256=NsQYfDVRcCGmU8k6oBG_aVzmML1zre-xUKBVK1W680o,10872
|
10
|
-
dataeval/_internal/detectors/drift/uncertainty.py,sha256=WeTQWZDL00-cs50neoJzs_9xBIdo-xxcj6bx0DApCQY,5263
|
11
|
-
dataeval/_internal/detectors/duplicates.py,sha256=6MVsopmgA4NccWtriHHvz_3y3tgWWu_vzFcxpXgS5DI,1469
|
12
|
-
dataeval/_internal/detectors/linter.py,sha256=Y8XIAbzMUe1UuYQLsZ1UyF1yVle2ExuzUmDQD2TF0z0,2792
|
13
|
-
dataeval/_internal/detectors/ood/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
14
|
-
dataeval/_internal/detectors/ood/ae.py,sha256=nM-uI-7h548yEc25iKlPYXTdG6RqDPA7Mup5IqPW7cg,2576
|
15
|
-
dataeval/_internal/detectors/ood/aegmm.py,sha256=05yOyP1RDOqVWW30weW_YAgciwBYsUJy35nPSuKQD10,2340
|
16
|
-
dataeval/_internal/detectors/ood/base.py,sha256=IxDhU4T8vlURvKkqakrwgUnWhl5a_u9_kXvrKkzWrog,6771
|
17
|
-
dataeval/_internal/detectors/ood/llr.py,sha256=EGgj1LV0qq-fE9RoWwL_6WXPaSTfhbnXkq25VtTiB3s,10029
|
18
|
-
dataeval/_internal/detectors/ood/vae.py,sha256=uh0QJ3b1_SQllHhb7BSt7IV369dmHjlU5PBwrOMesQg,2892
|
19
|
-
dataeval/_internal/detectors/ood/vaegmm.py,sha256=Yr5dKWSEcfP0xqqHJIM98QhS62oS8aYMj6edl26bKHI,2766
|
20
|
-
dataeval/_internal/flags.py,sha256=dRApeFkdSXFbYHSmvzgUP78zH8jUGtfzKFfLQtX0Q18,883
|
21
|
-
dataeval/_internal/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
22
|
-
dataeval/_internal/metrics/base.py,sha256=hUxJO-k0L7_nfach6xMW96YuMuu--A8Ypz7plYKGQA8,2623
|
23
|
-
dataeval/_internal/metrics/ber.py,sha256=HI2Cn-YWkqPz-mVZ8JgwubgjKYFyquq7L3yuKo-s8vc,3970
|
24
|
-
dataeval/_internal/metrics/coverage.py,sha256=eSOiCyqTN6t9OnhgFcPOp6HIReQvNL3tw6PzenrJ8aw,2700
|
25
|
-
dataeval/_internal/metrics/divergence.py,sha256=aihP84c8SUQ7IMUmBebFKtJxbH9VDfV_R-QtWEdUkvA,2823
|
26
|
-
dataeval/_internal/metrics/hash.py,sha256=5hdxMU2mFA9GxjF1MfhE_ztjJh7Ku1XpP82B_N54dwc,2782
|
27
|
-
dataeval/_internal/metrics/parity.py,sha256=9JunlLgrdbB2EPDKEtUDQnkBrsNiFJZD58dg3lSiYgE,6823
|
28
|
-
dataeval/_internal/metrics/stats.py,sha256=WnuO0tNnpz7mYi5_rmxdk8wZoEZFczo1DrV828lgcVk,12118
|
29
|
-
dataeval/_internal/metrics/uap.py,sha256=7QmJb-wM2B6c9ORa9kAar657KhDFScjNOGhpbuTv8YA,1149
|
30
|
-
dataeval/_internal/metrics/utils.py,sha256=u1kkGtS0irnx9dZTo9MahA-_4_uIorPDttQkBe8iU7U,4120
|
31
|
-
dataeval/_internal/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
32
|
-
dataeval/_internal/models/pytorch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
33
|
-
dataeval/_internal/models/pytorch/autoencoder.py,sha256=iK3Z9claesU_pJkRaiFJIZ9zKZg-Qj8ugzVYTTokDbE,6123
|
34
|
-
dataeval/_internal/models/pytorch/blocks.py,sha256=pm2xwsDZjZJYXrhhiz8husvh2vHmrkFMSYEn-EDUD5Q,1354
|
35
|
-
dataeval/_internal/models/pytorch/utils.py,sha256=Qgwym1PxGuwxbXCKUT-8r6Iyrxqm7x94oj45Vf5_CjE,1675
|
36
|
-
dataeval/_internal/models/tensorflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
37
|
-
dataeval/_internal/models/tensorflow/autoencoder.py,sha256=rErnOfDFTd7e4brSGQ2Lr1x1kNjSEHdbOREOtUfIhIM,9975
|
38
|
-
dataeval/_internal/models/tensorflow/gmm.py,sha256=wnqQKm3fURuvBROUd2fitCqzKViDo-g0-Djr3TBHZ3U,3640
|
39
|
-
dataeval/_internal/models/tensorflow/losses.py,sha256=3y6tHm7PTQ7hmasJDwTXjdARjCUWycoXqSyXJ1uT2mM,3766
|
40
|
-
dataeval/_internal/models/tensorflow/pixelcnn.py,sha256=B5cwB2IGPw-7b8klt82j_60g_IvqSiDELxvbiBYJtAo,48068
|
41
|
-
dataeval/_internal/models/tensorflow/trainer.py,sha256=2KHtMRniVselCaDXeb8QEfX-wMRsPfT1xiG2gUQgelg,4090
|
42
|
-
dataeval/_internal/models/tensorflow/utils.py,sha256=uK_fQ1JXUSVi0kgnhd9eRArlr36OzXUEdL4inJZCs-8,8579
|
43
|
-
dataeval/_internal/workflows/sufficiency.py,sha256=QZQdhERVr3EmPA2sAFFudSDL4KLM0eAvYgV38jhjzaI,18374
|
44
|
-
dataeval/detectors/__init__.py,sha256=I2e7YWb55RRlKQll85Z6KdN5wdBa53smn-_fcZIsCwA,1507
|
45
|
-
dataeval/flags/__init__.py,sha256=1-HmwmtfPkHWwqXUjDwWko396qAKBeaSvqVsQZLrzD0,170
|
46
|
-
dataeval/metrics/__init__.py,sha256=uVz0GtRvCsh_r08qaBM-jc4bjcfAb1yzlIyx6zfPc9Y,358
|
47
|
-
dataeval/models/__init__.py,sha256=onevPb5wznCggowBnVT0OUa8uBJXZCbrkFuek1UFvOs,293
|
48
|
-
dataeval/models/tensorflow/__init__.py,sha256=A1XRxVGHefuvh_WpaKE1x95pRD1FecuFp66iuNPA_5U,424
|
49
|
-
dataeval/models/torch/__init__.py,sha256=su7P9DF9LChlVCNHWG6d7s_yeIfWQbhCYWIkzJe0Qig,190
|
50
|
-
dataeval/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
51
|
-
dataeval/workflows/__init__.py,sha256=ObgS1cVYFRzFZWbNzGs2OcU02IVkJkAMHNnlnSNTMCE,208
|
52
|
-
dataeval-0.61.0.dist-info/LICENSE.txt,sha256=Kpzcfobf1HlqafF-EX6dQLw9TlJiaJzfgvLQFukyXYw,1060
|
53
|
-
dataeval-0.61.0.dist-info/METADATA,sha256=-d5akTEAHSqWXZ1JeCTkIvxDc-HdECfNxcLWQlFqhhs,4238
|
54
|
-
dataeval-0.61.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
55
|
-
dataeval-0.61.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|