fxmarty commited on
Commit
f59266e
1 Parent(s): f08743c

add experience

Browse files
README.md ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ pipeline_tag: token-classification
3
+ datasets:
4
+ - conll2003
5
+ metrics:
6
+ - precision
7
+ - recall
8
+ - f1
9
+ - accuracy
10
+ tags:
11
+ - distilbert
12
+ ---
13
+
14
+ **task**: `token-classification`
15
+ **Backend:** `sagemaker-training`
16
+ **Backend args:** `{'instance_type': 'ml.g4dn.2xlarge', 'supported_instructions': None}`
17
+ **Number of evaluation samples:** `All dataset`
18
+
19
+ Fixed parameters:
20
+ * **model_name_or_path**: `elastic/distilbert-base-uncased-finetuned-conll03-english`
21
+ * **dataset**:
22
+ * **path**: `conll2003`
23
+ * **eval_split**: `validation`
24
+ * **data_keys**: `{'primary': 'tokens'}`
25
+ * **ref_keys**: `['ner_tags']`
26
+ * **calibration_split**: `train`
27
+ * **quantization_approach**: `static`
28
+ * **operators_to_quantize**: `['Add', 'MatMul']`
29
+ * **per_channel**: `False`
30
+ * **calibration**:
31
+ * **method**: `minmax`
32
+ * **num_calibration_samples**: `100`
33
+ * **framework**: `onnxruntime`
34
+ * **framework_args**:
35
+ * **opset**: `11`
36
+ * **optimization_level**: `1`
37
+ * **aware_training**: `False`
38
+
39
+ Benchmarked parameters:
40
+ * **node_exclusion**: `[]`, `['layernorm', 'gelu', 'residual', 'gather', 'softmax']`
41
+
42
+ # Evaluation
43
+ ## Non-time metrics
44
+ | node_exclusion | | precision (original) | precision (optimized) | | recall (original) | recall (optimized) | | f1 (original) | f1 (optimized) | | accuracy (original) | accuracy (optimized) |
45
+ | :------------------------------------------------------: | :-: | :------------------: | :-------------------: | :-: | :---------------: | :----------------: | :-: | :-----------: | :------------: | :-: | :-----------------: | :------------------: |
46
+ | `['layernorm', 'gelu', 'residual', 'gather', 'softmax']` | \| | 0.936 | 0.904 | \| | 0.944 | 0.921 | \| | 0.940 | 0.912 | \| | 0.988 | 0.984 |
47
+ | `[]` | \| | 0.936 | 0.065 | \| | 0.944 | 0.243 | \| | 0.940 | 0.103 | \| | 0.988 | 0.357 |
48
+
49
+ ## Time metrics
50
+ Time benchmarks were run for 15 seconds per config.
51
+
52
+
53
+ Below, time metrics for batch size = 4, input length = 64.
54
+
55
+ | node_exclusion | | latency_mean (original, ms) | latency_mean (optimized, ms) | | throughput (original, /s) | throughput (optimized, /s) |
56
+ | :------------------------------------------------------: | :-: | :-------------------------: | :--------------------------: | :-: | :-----------------------: | :------------------------: |
57
+ | `['layernorm', 'gelu', 'residual', 'gather', 'softmax']` | \| | 114.51 | 53.59 | \| | 8.73 | 18.67 |
58
+ | `[]` | \| | 90.67 | 59.55 | \| | 11.07 | 16.87 |
59
+
runs.json ADDED
@@ -0,0 +1,196 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "model_name_or_path": "elastic/distilbert-base-uncased-finetuned-conll03-english",
4
+ "task": "token-classification",
5
+ "task_args": null,
6
+ "dataset": {
7
+ "path": "conll2003",
8
+ "eval_split": "validation",
9
+ "data_keys": {
10
+ "primary": "tokens",
11
+ "secondary": null
12
+ },
13
+ "ref_keys": [
14
+ "ner_tags"
15
+ ],
16
+ "name": null,
17
+ "calibration_split": "train"
18
+ },
19
+ "quantization_approach": "static",
20
+ "operators_to_quantize": [
21
+ "Add",
22
+ "MatMul"
23
+ ],
24
+ "node_exclusion": [
25
+ "layernorm",
26
+ "gelu",
27
+ "residual",
28
+ "gather",
29
+ "softmax"
30
+ ],
31
+ "aware_training": false,
32
+ "per_channel": false,
33
+ "calibration": {
34
+ "method": "minmax",
35
+ "num_calibration_samples": 100,
36
+ "calibration_histogram_percentile": null,
37
+ "calibration_moving_average": null,
38
+ "calibration_moving_average_constant": null
39
+ },
40
+ "framework": "onnxruntime",
41
+ "framework_args": {
42
+ "opset": 11,
43
+ "optimization_level": 1
44
+ },
45
+ "hardware": "Architecture: x86_64\nCPU op-mode(s): 32-bit, 64-bit\nByte Order: Little Endian\nAddress sizes: 46 bits physical, 48 bits virtual\nCPU(s): 8\nOn-line CPU(s) list: 0-7\nThread(s) per core: 2\nCore(s) per socket: 4\nSocket(s): 1\nNUMA node(s): 1\nVendor ID: GenuineIntel\nCPU family: 6\nModel: 85\nModel name: Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz\nStepping: 7\nCPU MHz: 3099.511\nBogoMIPS: 4999.99\nHypervisor vendor: KVM\nVirtualization type: full\nL1d cache: 128 KiB\nL1i cache: 128 KiB\nL2 cache: 4 MiB\nL3 cache: 35.8 MiB\nNUMA node0 CPU(s): 0-7\nVulnerability Itlb multihit: KVM: Vulnerable\nVulnerability L1tf: Mitigation; PTE Inversion\nVulnerability Mds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown\nVulnerability Meltdown: Mitigation; PTI\nVulnerability Spec store bypass: Vulnerable\nVulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization\nVulnerability Spectre v2: Mitigation; Retpolines, STIBP disabled, RSB filling\nVulnerability Srbds: Not affected\nVulnerability Tsx async abort: Not affected\nFlags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke avx512_vnni\n",
46
+ "versions": {
47
+ "transformers": "4.20.1",
48
+ "optimum": "1.2.3.dev0",
49
+ "optimum_hash": "6911cc6576c9fd373dfdba597e7a6b3ec37c2063"
50
+ },
51
+ "evaluation": {
52
+ "time": [
53
+ {
54
+ "batch_size": 4,
55
+ "input_length": 64,
56
+ "baseline": {
57
+ "nb_forwards": 131,
58
+ "throughput": 8.73,
59
+ "latency_mean": 114.5131176870229,
60
+ "latency_std": 11.639414649196416,
61
+ "latency_50": 119.241188,
62
+ "latency_90": 121.520665,
63
+ "latency_95": 122.2199805,
64
+ "latency_99": 122.8121624,
65
+ "latency_999": 123.42355991
66
+ },
67
+ "optimized": {
68
+ "nb_forwards": 280,
69
+ "throughput": 18.67,
70
+ "latency_mean": 53.58903423571429,
71
+ "latency_std": 0.2315309286545786,
72
+ "latency_50": 53.5208165,
73
+ "latency_90": 53.861245,
74
+ "latency_95": 54.0498545,
75
+ "latency_99": 54.40435797,
76
+ "latency_999": 54.557521482
77
+ }
78
+ }
79
+ ],
80
+ "others": {
81
+ "baseline": {
82
+ "precision": 0.9358012339503085,
83
+ "recall": 0.9444631437226523,
84
+ "f1": 0.9401122372057961,
85
+ "accuracy": 0.9882013940267124
86
+ },
87
+ "optimized": {
88
+ "precision": 0.9038969616908851,
89
+ "recall": 0.9212386401884888,
90
+ "f1": 0.912485414235706,
91
+ "accuracy": 0.9842295860753086
92
+ }
93
+ }
94
+ },
95
+ "max_eval_samples": null,
96
+ "time_benchmark_args": {
97
+ "duration": 15,
98
+ "warmup_runs": 5
99
+ },
100
+ "model_type": "distilbert"
101
+ },
102
+ {
103
+ "model_name_or_path": "elastic/distilbert-base-uncased-finetuned-conll03-english",
104
+ "task": "token-classification",
105
+ "task_args": null,
106
+ "dataset": {
107
+ "path": "conll2003",
108
+ "eval_split": "validation",
109
+ "data_keys": {
110
+ "primary": "tokens",
111
+ "secondary": null
112
+ },
113
+ "ref_keys": [
114
+ "ner_tags"
115
+ ],
116
+ "name": null,
117
+ "calibration_split": "train"
118
+ },
119
+ "quantization_approach": "static",
120
+ "operators_to_quantize": [
121
+ "Add",
122
+ "MatMul"
123
+ ],
124
+ "node_exclusion": [],
125
+ "aware_training": false,
126
+ "per_channel": false,
127
+ "calibration": {
128
+ "method": "minmax",
129
+ "num_calibration_samples": 100,
130
+ "calibration_histogram_percentile": null,
131
+ "calibration_moving_average": null,
132
+ "calibration_moving_average_constant": null
133
+ },
134
+ "framework": "onnxruntime",
135
+ "framework_args": {
136
+ "opset": 11,
137
+ "optimization_level": 1
138
+ },
139
+ "hardware": "Architecture: x86_64\nCPU op-mode(s): 32-bit, 64-bit\nByte Order: Little Endian\nAddress sizes: 46 bits physical, 48 bits virtual\nCPU(s): 8\nOn-line CPU(s) list: 0-7\nThread(s) per core: 2\nCore(s) per socket: 4\nSocket(s): 1\nNUMA node(s): 1\nVendor ID: GenuineIntel\nCPU family: 6\nModel: 85\nModel name: Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz\nStepping: 7\nCPU MHz: 3102.103\nBogoMIPS: 4999.99\nHypervisor vendor: KVM\nVirtualization type: full\nL1d cache: 128 KiB\nL1i cache: 128 KiB\nL2 cache: 4 MiB\nL3 cache: 35.8 MiB\nNUMA node0 CPU(s): 0-7\nVulnerability Itlb multihit: KVM: Vulnerable\nVulnerability L1tf: Mitigation; PTE Inversion\nVulnerability Mds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown\nVulnerability Meltdown: Mitigation; PTI\nVulnerability Spec store bypass: Vulnerable\nVulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization\nVulnerability Spectre v2: Mitigation; Retpolines, STIBP disabled, RSB filling\nVulnerability Srbds: Not affected\nVulnerability Tsx async abort: Not affected\nFlags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke avx512_vnni\n",
140
+ "versions": {
141
+ "transformers": "4.20.1",
142
+ "optimum": "1.2.3.dev0",
143
+ "optimum_hash": "6911cc6576c9fd373dfdba597e7a6b3ec37c2063"
144
+ },
145
+ "evaluation": {
146
+ "time": [
147
+ {
148
+ "batch_size": 4,
149
+ "input_length": 64,
150
+ "baseline": {
151
+ "nb_forwards": 166,
152
+ "throughput": 11.07,
153
+ "latency_mean": 90.66696189156626,
154
+ "latency_std": 2.0972474393793443,
155
+ "latency_50": 90.495261,
156
+ "latency_90": 93.621567,
157
+ "latency_95": 94.1387245,
158
+ "latency_99": 95.09578855,
159
+ "latency_999": 95.244914435
160
+ },
161
+ "optimized": {
162
+ "nb_forwards": 253,
163
+ "throughput": 16.87,
164
+ "latency_mean": 59.5520055770751,
165
+ "latency_std": 4.343861091008027,
166
+ "latency_50": 58.103232,
167
+ "latency_90": 66.4657948,
168
+ "latency_95": 67.8430942,
169
+ "latency_99": 68.59112767999999,
170
+ "latency_999": 69.474807792
171
+ }
172
+ }
173
+ ],
174
+ "others": {
175
+ "baseline": {
176
+ "precision": 0.9358012339503085,
177
+ "recall": 0.9444631437226523,
178
+ "f1": 0.9401122372057961,
179
+ "accuracy": 0.9882013940267124
180
+ },
181
+ "optimized": {
182
+ "precision": 0.06543578604398588,
183
+ "recall": 0.24335240659710536,
184
+ "f1": 0.10313837375178317,
185
+ "accuracy": 0.35697597445582335
186
+ }
187
+ }
188
+ },
189
+ "max_eval_samples": null,
190
+ "time_benchmark_args": {
191
+ "duration": 15,
192
+ "warmup_runs": 5
193
+ },
194
+ "model_type": "distilbert"
195
+ }
196
+ ]
tensorboard/1657723101.607428/events.out.tfevents.1657723101.ip-10-0-202-165.ec2.internal.1.1 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ffd778c9dbbc348d4644098c6e065ac8fad1919a4b42cf4007f790f558f77466
3
+ size 696
tensorboard/1657723101.608861/events.out.tfevents.1657723101.ip-10-0-202-165.ec2.internal.1.2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:85e91d62af0f0f75042141a60dd82aeec673b100027f2592c89f403c69bce3da
3
+ size 644
tensorboard/events.out.tfevents.1657723101.ip-10-0-202-165.ec2.internal.1.0 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:53e550382e189119d94a1a94a04c23fa9011003912734ac63aaa78a5859586e1
3
+ size 40