RunningPie commited on
Commit
54cf1e8
·
verified ·
1 Parent(s): 31889b2

Upload folder using huggingface_hub

Browse files
Files changed (8) hide show
  1. README.md +62 -3
  2. config.json +85 -0
  3. inference_example.py +63 -0
  4. model.h5 +3 -0
  5. model.weights.h5 +3 -0
  6. processor.pkl +3 -0
  7. requirements.txt +4 -0
  8. training_history.json +364 -0
README.md CHANGED
@@ -1,3 +1,62 @@
1
- ---
2
- license: cc-by-nc-sa-4.0
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Sign Language Recognition Model
2
+
3
+ This model recognizes sign language gestures using landmark data from hand, pose, and face keypoints.
4
+
5
+ ## Model Details
6
+
7
+ - **Model Type**: Sign Language Recognition
8
+ - **Framework**: TensorFlow/Keras
9
+ - **Input**: Landmark sequences (x, y, z coordinates)
10
+ - **Output**: Sign language class predictions
11
+ - **Classes**: {processor.sign_count} different signs
12
+ - **Parameters**: {model.count_params():,}
13
+
14
+ ## Model Architecture
15
+
16
+ - **Input Shape**: {model.input_shape}
17
+ - **Output Shape**: {model.output_shape}
18
+ - **Max Sequence Length**: {config.max_len}
19
+ - **Embedding Dimension**: {config.dim}
20
+
21
+ ## Training Details
22
+
23
+ - **Epochs**: {config.epoch}
24
+ - **Batch Size**: {config.batch_size}
25
+ - **Learning Rate**: {config.lr}
26
+ - **Weight Decay**: {config.weight_decay}
27
+ - **Best Validation Loss**: {min(history.history['val_loss']):.4f}
28
+ - **Best Validation Accuracy**: {max(history.history['val_accuracy']):.4f}
29
+
30
+ ## Usage
31
+
32
+ ```python
33
+ import tensorflow as tf
34
+ import pickle
35
+ import numpy as np
36
+
37
+ # Load the model
38
+ model = tf.keras.models.load_model('model.h5')
39
+
40
+ # Load the processor
41
+ with open('processor.pkl', 'rb') as f:
42
+ processor = pickle.load(f)
43
+
44
+ # Example inference
45
+ # your_landmark_data should be preprocessed using the same processor
46
+ predictions = model.predict(your_landmark_data)
47
+ predicted_classes = np.argmax(predictions, axis=1)
48
+ ```
49
+
50
+ ## Files Description
51
+
52
+ - `model.h5`: Complete Keras model (recommended for inference)
53
+ - `model_weights.h5`: Model weights only
54
+ - `processor.pkl`: Data processor for landmark preprocessing
55
+ - `config.json`: Model configuration and metadata
56
+ - `training_history.json`: Training metrics and history
57
+ - `inference_example.py`: Example inference script
58
+ - `requirements.txt`: Required dependencies
59
+
60
+ ## Requirements
61
+
62
+ See `requirements.txt` for the complete list of dependencies.
config.json ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_type": "sign_language_recognition",
3
+ "framework": "tensorflow",
4
+ "max_len": 384,
5
+ "dim": 192,
6
+ "num_classes": 60,
7
+ "dropout_start_epoch": 15,
8
+ "batch_size": 32,
9
+ "learning_rate": 0.0005,
10
+ "weight_decay": 0.1,
11
+ "epochs_trained": 200,
12
+ "input_shape": [
13
+ null,
14
+ 384,
15
+ 708
16
+ ],
17
+ "output_shape": [
18
+ null,
19
+ 60
20
+ ],
21
+ "total_params": 1763418,
22
+ "sign_classes": {
23
+ "go": 0,
24
+ "hot": 1,
25
+ "dad": 2,
26
+ "yes": 3,
27
+ "no": 4,
28
+ "sick": 5,
29
+ "mom": 6,
30
+ "cut": 7,
31
+ "stuck": 8,
32
+ "outside": 9,
33
+ "talk": 10,
34
+ "arm": 11,
35
+ "up": 12,
36
+ "person": 13,
37
+ "can": 14,
38
+ "close": 15,
39
+ "face": 16,
40
+ "head": 17,
41
+ "mad": 18,
42
+ "wait": 19,
43
+ "eye": 20,
44
+ "hide": 21,
45
+ "home": 22,
46
+ "why": 23,
47
+ "quiet": 24,
48
+ "will": 25,
49
+ "glasswindow": 26,
50
+ "not": 27,
51
+ "fireman": 28,
52
+ "down": 29,
53
+ "child": 30,
54
+ "hesheit": 31,
55
+ "find": 32,
56
+ "jump": 33,
57
+ "where": 34,
58
+ "room": 35,
59
+ "look": 36,
60
+ "high": 37,
61
+ "hear": 38,
62
+ "now": 39,
63
+ "time": 40,
64
+ "open": 41,
65
+ "fall": 42,
66
+ "owie": 43,
67
+ "drop": 44,
68
+ "man": 45,
69
+ "give": 46,
70
+ "car": 47,
71
+ "fast": 48,
72
+ "bad": 49,
73
+ "have": 50,
74
+ "stairs": 51,
75
+ "who": 52,
76
+ "cry": 53,
77
+ "loud": 54,
78
+ "haveto": 55,
79
+ "water": 56,
80
+ "see": 57,
81
+ "police": 58,
82
+ "touch": 59
83
+ },
84
+ "created_at": "2025-07-10T07:14:08.417702"
85
+ }
inference_example.py ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import tensorflow as tf
2
+ import pickle
3
+ import numpy as np
4
+ import pandas as pd
5
+
6
+ def load_model_and_processor():
7
+ """Load the trained model and processor."""
8
+ # Load the complete model
9
+ model = tf.keras.models.load_model('model.h5')
10
+
11
+ # Load the processor
12
+ with open('processor.pkl', 'rb') as f:
13
+ processor = pickle.load(f)
14
+
15
+ return model, processor
16
+
17
+ def predict_sign(model, processor, landmark_data):
18
+ """
19
+ Predict sign from landmark data.
20
+
21
+ Args:
22
+ model: Loaded Keras model
23
+ processor: SignLanguageProcessor instance
24
+ landmark_data: DataFrame with columns ['frame', 'row_id', 'x', 'y', 'z']
25
+
26
+ Returns:
27
+ predicted_class: Predicted sign class
28
+ confidence: Prediction confidence
29
+ """
30
+ # Process the landmark data
31
+ X, _ = processor.process_dataset(landmark_data)
32
+
33
+ if len(X) == 0:
34
+ return None, 0.0
35
+
36
+ # Make prediction
37
+ predictions = model.predict(X)
38
+ predicted_class = np.argmax(predictions, axis=1)[0]
39
+ confidence = np.max(predictions, axis=1)[0]
40
+
41
+ # Convert back to sign name if mapping exists
42
+ if hasattr(processor, 'index_to_sign'):
43
+ sign_name = processor.index_to_sign[predicted_class]
44
+ return sign_name, confidence
45
+
46
+ return predicted_class, confidence
47
+
48
+ # Example usage
49
+ if __name__ == "__main__":
50
+ # Load model and processor
51
+ model, processor = load_model_and_processor()
52
+
53
+ # Example landmark data (replace with your actual data)
54
+ # landmark_data = pd.read_csv('your_landmark_data.csv')
55
+
56
+ # Make prediction
57
+ # predicted_sign, confidence = predict_sign(model, processor, landmark_data)
58
+ # print(f"Predicted sign: {predicted_sign}, Confidence: {confidence:.3f}")
59
+
60
+ print("Model and processor loaded successfully!")
61
+ print(f"Model input shape: {model.input_shape}")
62
+ print(f"Model output shape: {model.output_shape}")
63
+ print(f"Number of classes: {processor.sign_count}")
model.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:efe7b6664db32251bbcef3851cb32d154538b78f4aa2287695bf94affb4f547b
3
+ size 21418472
model.weights.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4015ffa390b55f42901ba7df9be1d585770251e10b8f3112fab9bc8faee1d4c1
3
+ size 21399464
processor.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b4741147e369dd77f0027abf19c70c0f1498af1026e18eb57f13e4bada20aa7e
3
+ size 11968
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ tensorflow
2
+ pickle
3
+ numpy
4
+ pandas
training_history.json ADDED
@@ -0,0 +1,364 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "history": {
3
+ "accuracy": [
4
+ 0.02983425371348858,
5
+ 0.045303866267204285,
6
+ 0.04198895022273064,
7
+ 0.04861878603696823,
8
+ 0.06077348068356514,
9
+ 0.06077348068356514,
10
+ 0.058563534170389175,
11
+ 0.07513812184333801,
12
+ 0.09392265230417252,
13
+ 0.10607735067605972,
14
+ 0.10055248439311981,
15
+ 0.1016574576497078,
16
+ 0.11049723625183105,
17
+ 0.14364640414714813,
18
+ 0.13591159880161285,
19
+ 0.13149170577526093,
20
+ 0.1701657474040985,
21
+ 0.1712707132101059,
22
+ 0.1580110490322113,
23
+ 0.19447514414787292,
24
+ 0.21988950669765472,
25
+ 0.20662982761859894,
26
+ 0.2530386745929718,
27
+ 0.24419888854026794,
28
+ 0.24198895692825317,
29
+ 0.2530386745929718,
30
+ 0.24419888854026794,
31
+ 0.2773480713367462,
32
+ 0.2906077206134796,
33
+ 0.2861878573894501,
34
+ 0.31270718574523926,
35
+ 0.3104972243309021,
36
+ 0.3425414264202118,
37
+ 0.33259668946266174,
38
+ 0.35138121247291565,
39
+ 0.38121548295021057,
40
+ 0.39005523920059204,
41
+ 0.3790055215358734,
42
+ 0.3856353461742401,
43
+ 0.37790054082870483,
44
+ 0.40220993757247925,
45
+ 0.4287292957305908,
46
+ 0.40883979201316833,
47
+ 0.40110498666763306,
48
+ 0.43867403268814087,
49
+ 0.4243094027042389,
50
+ 0.43977901339530945,
51
+ 0.4287292957305908,
52
+ 0.4563536047935486,
53
+ 0.45303866267204285,
54
+ 0.47071823477745056,
55
+ 0.4574585556983948,
56
+ 0.46408841013908386,
57
+ 0.4861878454685211,
58
+ 0.4795580208301544,
59
+ 0.4685082733631134,
60
+ 0.48950275778770447,
61
+ 0.4917127192020416,
62
+ 0.48950275778770447,
63
+ 0.4983425438404083,
64
+ 0.4917127192020416,
65
+ 0.5116022229194641,
66
+ 0.5005524754524231,
67
+ 0.5116022229194641,
68
+ 0.5348066091537476,
69
+ 0.48508286476135254,
70
+ 0.5149171352386475,
71
+ 0.5226519107818604,
72
+ 0.5292817950248718
73
+ ],
74
+ "loss": [
75
+ 4.986522197723389,
76
+ 4.848562717437744,
77
+ 4.556446552276611,
78
+ 4.362603664398193,
79
+ 4.2483229637146,
80
+ 4.1373186111450195,
81
+ 4.1104607582092285,
82
+ 4.002109527587891,
83
+ 3.8620591163635254,
84
+ 3.8656177520751953,
85
+ 3.688735246658325,
86
+ 3.7602615356445312,
87
+ 3.674622058868408,
88
+ 3.5578839778900146,
89
+ 3.535020351409912,
90
+ 3.5177533626556396,
91
+ 3.3592469692230225,
92
+ 3.3127667903900146,
93
+ 3.274606943130493,
94
+ 3.11792254447937,
95
+ 3.041442394256592,
96
+ 3.017552614212036,
97
+ 2.877354621887207,
98
+ 2.8904836177825928,
99
+ 2.8529584407806396,
100
+ 2.8403313159942627,
101
+ 2.7735767364501953,
102
+ 2.756518840789795,
103
+ 2.731785774230957,
104
+ 2.6809802055358887,
105
+ 2.607318639755249,
106
+ 2.6316471099853516,
107
+ 2.507741928100586,
108
+ 2.3941869735717773,
109
+ 2.345642328262329,
110
+ 2.2975804805755615,
111
+ 2.286146402359009,
112
+ 2.2824833393096924,
113
+ 2.250075340270996,
114
+ 2.2612428665161133,
115
+ 2.2430975437164307,
116
+ 2.128019332885742,
117
+ 2.1090471744537354,
118
+ 2.082223892211914,
119
+ 2.0159220695495605,
120
+ 2.034250259399414,
121
+ 2.0539886951446533,
122
+ 2.0097808837890625,
123
+ 2.0263192653656006,
124
+ 1.9676892757415771,
125
+ 1.9944000244140625,
126
+ 1.9428503513336182,
127
+ 1.9311083555221558,
128
+ 1.8550828695297241,
129
+ 1.902523159980774,
130
+ 1.8914977312088013,
131
+ 1.799207091331482,
132
+ 1.845506191253662,
133
+ 1.8018958568572998,
134
+ 1.7976164817810059,
135
+ 1.8231916427612305,
136
+ 1.8207955360412598,
137
+ 1.790460228919983,
138
+ 1.8044276237487793,
139
+ 1.727679967880249,
140
+ 1.7959074974060059,
141
+ 1.739622950553894,
142
+ 1.7280197143554688,
143
+ 1.7235032320022583
144
+ ],
145
+ "val_accuracy": [
146
+ 0.05726872384548187,
147
+ 0.05286343768239021,
148
+ 0.07048457860946655,
149
+ 0.07488986849784851,
150
+ 0.0969163030385971,
151
+ 0.05286343768239021,
152
+ 0.07488986849784851,
153
+ 0.07929515093564987,
154
+ 0.06167401000857353,
155
+ 0.07488986849784851,
156
+ 0.09251101315021515,
157
+ 0.10572687536478043,
158
+ 0.08810572326183319,
159
+ 0.0969163030385971,
160
+ 0.1189427301287651,
161
+ 0.07048457860946655,
162
+ 0.08810572326183319,
163
+ 0.08370044082403183,
164
+ 0.0969163030385971,
165
+ 0.14537444710731506,
166
+ 0.15859030187129974,
167
+ 0.12334802001714706,
168
+ 0.14537444710731506,
169
+ 0.14977973699569702,
170
+ 0.15859030187129974,
171
+ 0.14977973699569702,
172
+ 0.13656388223171234,
173
+ 0.1629955917596817,
174
+ 0.16740088164806366,
175
+ 0.17621144652366638,
176
+ 0.14977973699569702,
177
+ 0.20264317095279694,
178
+ 0.1938326060771942,
179
+ 0.16740088164806366,
180
+ 0.17621144652366638,
181
+ 0.20264317095279694,
182
+ 0.1629955917596817,
183
+ 0.17621144652366638,
184
+ 0.18942731618881226,
185
+ 0.20264317095279694,
186
+ 0.1938326060771942,
187
+ 0.21585902571678162,
188
+ 0.22466960549354553,
189
+ 0.22026431560516357,
190
+ 0.2070484608411789,
191
+ 0.2070484608411789,
192
+ 0.2070484608411789,
193
+ 0.23348017036914825,
194
+ 0.1938326060771942,
195
+ 0.19823788106441498,
196
+ 0.19823788106441498,
197
+ 0.2290748953819275,
198
+ 0.25550660490989685,
199
+ 0.2511013150215149,
200
+ 0.24229075014591217,
201
+ 0.24669604003429413,
202
+ 0.2290748953819275,
203
+ 0.2290748953819275,
204
+ 0.25550660490989685,
205
+ 0.24669604003429413,
206
+ 0.24229075014591217,
207
+ 0.23348017036914825,
208
+ 0.25550660490989685,
209
+ 0.2511013150215149,
210
+ 0.24669604003429413,
211
+ 0.24669604003429413,
212
+ 0.24669604003429413,
213
+ 0.2511013150215149,
214
+ 0.25550660490989685
215
+ ],
216
+ "val_loss": [
217
+ 4.07276725769043,
218
+ 3.997727870941162,
219
+ 3.9440250396728516,
220
+ 3.897238254547119,
221
+ 3.9246480464935303,
222
+ 3.927391290664673,
223
+ 3.860718250274658,
224
+ 3.874411106109619,
225
+ 3.835663318634033,
226
+ 3.805894136428833,
227
+ 3.8246867656707764,
228
+ 3.7180747985839844,
229
+ 3.71539568901062,
230
+ 3.738748073577881,
231
+ 3.728933095932007,
232
+ 3.995204210281372,
233
+ 3.952698230743408,
234
+ 3.7661285400390625,
235
+ 3.792558193206787,
236
+ 3.562018871307373,
237
+ 3.602429151535034,
238
+ 3.546447992324829,
239
+ 3.4869277477264404,
240
+ 3.652980089187622,
241
+ 3.4647791385650635,
242
+ 3.4772653579711914,
243
+ 3.420494556427002,
244
+ 3.4227294921875,
245
+ 3.5128512382507324,
246
+ 3.4829883575439453,
247
+ 3.501424551010132,
248
+ 3.4652750492095947,
249
+ 3.3326191902160645,
250
+ 3.3889472484588623,
251
+ 3.398928642272949,
252
+ 3.2554492950439453,
253
+ 3.3849828243255615,
254
+ 3.4041056632995605,
255
+ 3.4138126373291016,
256
+ 3.394284725189209,
257
+ 3.4123027324676514,
258
+ 3.2698471546173096,
259
+ 3.2603187561035156,
260
+ 3.2487525939941406,
261
+ 3.2758917808532715,
262
+ 3.2513508796691895,
263
+ 3.2322781085968018,
264
+ 3.2373528480529785,
265
+ 3.3240036964416504,
266
+ 3.2618558406829834,
267
+ 3.245809316635132,
268
+ 3.2428104877471924,
269
+ 3.229738473892212,
270
+ 3.223113775253296,
271
+ 3.2082180976867676,
272
+ 3.220374584197998,
273
+ 3.244365692138672,
274
+ 3.231384038925171,
275
+ 3.1850430965423584,
276
+ 3.2110743522644043,
277
+ 3.224449634552002,
278
+ 3.2310900688171387,
279
+ 3.22971510887146,
280
+ 3.2315287590026855,
281
+ 3.231367826461792,
282
+ 3.2252392768859863,
283
+ 3.2307584285736084,
284
+ 3.2162773609161377,
285
+ 3.2001078128814697
286
+ ],
287
+ "learning_rate": [
288
+ 0.0005000000237487257,
289
+ 0.0005000000237487257,
290
+ 0.0005000000237487257,
291
+ 0.0005000000237487257,
292
+ 0.0005000000237487257,
293
+ 0.0005000000237487257,
294
+ 0.0005000000237487257,
295
+ 0.0005000000237487257,
296
+ 0.0005000000237487257,
297
+ 0.0005000000237487257,
298
+ 0.0005000000237487257,
299
+ 0.0005000000237487257,
300
+ 0.0005000000237487257,
301
+ 0.0005000000237487257,
302
+ 0.0005000000237487257,
303
+ 0.0005000000237487257,
304
+ 0.0005000000237487257,
305
+ 0.0005000000237487257,
306
+ 0.0002500000118743628,
307
+ 0.0002500000118743628,
308
+ 0.0002500000118743628,
309
+ 0.0002500000118743628,
310
+ 0.0002500000118743628,
311
+ 0.0002500000118743628,
312
+ 0.0002500000118743628,
313
+ 0.0002500000118743628,
314
+ 0.0002500000118743628,
315
+ 0.0002500000118743628,
316
+ 0.0002500000118743628,
317
+ 0.0002500000118743628,
318
+ 0.0002500000118743628,
319
+ 0.0002500000118743628,
320
+ 0.0001250000059371814,
321
+ 0.0001250000059371814,
322
+ 0.0001250000059371814,
323
+ 0.0001250000059371814,
324
+ 0.0001250000059371814,
325
+ 0.0001250000059371814,
326
+ 0.0001250000059371814,
327
+ 0.0001250000059371814,
328
+ 0.0001250000059371814,
329
+ 6.25000029685907e-05,
330
+ 6.25000029685907e-05,
331
+ 6.25000029685907e-05,
332
+ 6.25000029685907e-05,
333
+ 6.25000029685907e-05,
334
+ 6.25000029685907e-05,
335
+ 6.25000029685907e-05,
336
+ 6.25000029685907e-05,
337
+ 6.25000029685907e-05,
338
+ 6.25000029685907e-05,
339
+ 6.25000029685907e-05,
340
+ 3.125000148429535e-05,
341
+ 3.125000148429535e-05,
342
+ 3.125000148429535e-05,
343
+ 3.125000148429535e-05,
344
+ 3.125000148429535e-05,
345
+ 3.125000148429535e-05,
346
+ 3.125000148429535e-05,
347
+ 3.125000148429535e-05,
348
+ 3.125000148429535e-05,
349
+ 3.125000148429535e-05,
350
+ 3.125000148429535e-05,
351
+ 3.125000148429535e-05,
352
+ 1.5625000742147677e-05,
353
+ 1.5625000742147677e-05,
354
+ 1.5625000742147677e-05,
355
+ 1.5625000742147677e-05,
356
+ 1.5625000742147677e-05
357
+ ]
358
+ },
359
+ "epochs": 69,
360
+ "best_val_loss": 3.1850430965423584,
361
+ "best_val_accuracy": 0.25550660490989685,
362
+ "final_val_loss": 3.2001078128814697,
363
+ "final_val_accuracy": 0.25550660490989685
364
+ }