import Foundation
let pattern = ##"Iteration (?P<iter_num>\d+) (.?)*, loss = ((\d*.\d*)+)\n.*( *)Train net output #0: accuracy_training = ((\d*.\d*)+)"##
let regex = try! NSRegularExpression(pattern: pattern)
let testString = ##"""
I0312 23:23:16.136683 2676 solver.cpp:273] Solving AlexNet
I0312 23:23:16.136685 2676 solver.cpp:274] Learning Rate Policy: step
I0312 23:23:16.138639 2676 solver.cpp:331] Iteration 0, Testing net (#0)
I0312 23:23:16.161350 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:23:16.401897 2676 blocking_queue.cpp:49] Waiting for data
I0312 23:23:22.186173 2676 solver.cpp:398] Test net output #0: accuracy = 0.545357
I0312 23:23:22.186219 2676 solver.cpp:398] Test net output #1: loss = 1.26114 (* 1 = 1.26114 loss)
I0312 23:23:22.457931 2676 solver.cpp:219] Iteration 0 (-7.07474e-05 iter/s, 6.31881s/20 iters), loss = 1.38639
I0312 23:23:22.460357 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.335938
I0312 23:23:22.460372 2676 solver.cpp:238] Train net output #1: loss = 1.38639 (* 1 = 1.38639 loss)
I0312 23:23:22.460417 2676 sgd_solver.cpp:105] Iteration 0, lr = 0.001
I0312 23:23:33.165230 2676 solver.cpp:219] Iteration 20 (1.86903 iter/s, 10.7008s/20 iters), loss = 1.13092
I0312 23:23:33.165272 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.605469
I0312 23:23:33.165280 2676 solver.cpp:238] Train net output #1: loss = 1.13092 (* 1 = 1.13092 loss)
I0312 23:23:33.165285 2676 sgd_solver.cpp:105] Iteration 20, lr = 0.001
I0312 23:23:36.300024 2676 solver.cpp:331] Iteration 28, Testing net (#0)
I0312 23:23:36.300057 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:23:38.279549 2676 solver.cpp:398] Test net output #0: accuracy = 0.545357
I0312 23:23:38.279577 2676 solver.cpp:398] Test net output #1: loss = 1.16134 (* 1 = 1.16134 loss)
I0312 23:23:41.725931 2676 solver.cpp:219] Iteration 40 (2.33717 iter/s, 8.55736s/20 iters), loss = 1.20381
I0312 23:23:41.738235 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.515625
I0312 23:23:41.738255 2676 solver.cpp:238] Train net output #1: loss = 1.20381 (* 1 = 1.20381 loss)
I0312 23:23:41.738261 2676 sgd_solver.cpp:105] Iteration 40, lr = 0.001
I0312 23:23:45.567281 2676 solver.cpp:331] Iteration 56, Testing net (#0)
I0312 23:23:45.567314 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:23:47.537325 2676 solver.cpp:398] Test net output #0: accuracy = 0.545714
I0312 23:23:47.537364 2676 solver.cpp:398] Test net output #1: loss = 1.14157 (* 1 = 1.14157 loss)
I0312 23:23:48.830137 2676 solver.cpp:219] Iteration 60 (2.7988 iter/s, 7.14593s/20 iters), loss = 1.18281
I0312 23:23:48.842432 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.523438
I0312 23:23:48.842471 2676 solver.cpp:238] Train net output #1: loss = 1.18281 (* 1 = 1.18281 loss)
I0312 23:23:48.842490 2676 sgd_solver.cpp:105] Iteration 60, lr = 0.001
I0312 23:23:54.134619 2676 solver.cpp:219] Iteration 80 (3.7488 iter/s, 5.33504s/20 iters), loss = 1.20185
I0312 23:23:54.146620 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.539062
I0312 23:23:54.146651 2676 solver.cpp:238] Train net output #1: loss = 1.20185 (* 1 = 1.20185 loss)
I0312 23:23:54.146656 2676 sgd_solver.cpp:105] Iteration 80, lr = 0.001
I0312 23:23:54.778365 2676 solver.cpp:331] Iteration 84, Testing net (#0)
I0312 23:23:54.778399 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:23:56.768332 2676 solver.cpp:398] Test net output #0: accuracy = 0.545357
I0312 23:23:56.768355 2676 solver.cpp:398] Test net output #1: loss = 1.10908 (* 1 = 1.10908 loss)
I0312 23:24:01.276773 2676 solver.cpp:219] Iteration 100 (2.79421 iter/s, 7.15766s/20 iters), loss = 1.10751
I0312 23:24:01.288919 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.550781
I0312 23:24:01.288950 2676 solver.cpp:238] Train net output #1: loss = 1.10751 (* 1 = 1.10751 loss)
I0312 23:24:01.288956 2676 sgd_solver.cpp:105] Iteration 100, lr = 0.001
I0312 23:24:04.057387 2676 solver.cpp:331] Iteration 112, Testing net (#0)
I0312 23:24:04.057422 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:24:06.030336 2676 solver.cpp:398] Test net output #0: accuracy = 0.548214
I0312 23:24:06.030366 2676 solver.cpp:398] Test net output #1: loss = 1.05868 (* 1 = 1.05868 loss)
I0312 23:24:08.410758 2676 solver.cpp:219] Iteration 120 (2.8032 iter/s, 7.1347s/20 iters), loss = 1.07986
I0312 23:24:08.422947 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.542969
I0312 23:24:08.422967 2676 solver.cpp:238] Train net output #1: loss = 1.07986 (* 1 = 1.07986 loss)
I0312 23:24:08.422972 2676 sgd_solver.cpp:105] Iteration 120, lr = 0.001
I0312 23:24:13.330821 2676 solver.cpp:331] Iteration 140, Testing net (#0)
I0312 23:24:13.330871 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:24:15.309830 2676 solver.cpp:398] Test net output #0: accuracy = 0.571786
I0312 23:24:15.309869 2676 solver.cpp:398] Test net output #1: loss = 1.00978 (* 1 = 1.00978 loss)
I0312 23:24:15.570574 2676 solver.cpp:219] Iteration 140 (2.7953 iter/s, 7.15487s/20 iters), loss = 1.1149
I0312 23:24:15.573030 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.503906
I0312 23:24:15.573060 2676 solver.cpp:238] Train net output #1: loss = 1.1149 (* 1 = 1.1149 loss)
I0312 23:24:15.573066 2676 sgd_solver.cpp:105] Iteration 140, lr = 0.001
I0312 23:24:20.904796 2676 solver.cpp:219] Iteration 160 (3.74837 iter/s, 5.33566s/20 iters), loss = 1.15146
I0312 23:24:20.916966 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.488281
I0312 23:24:20.916983 2676 solver.cpp:238] Train net output #1: loss = 1.15146 (* 1 = 1.15146 loss)
I0312 23:24:20.916988 2676 sgd_solver.cpp:105] Iteration 160, lr = 0.001
I0312 23:24:22.625000 2676 solver.cpp:331] Iteration 168, Testing net (#0)
I0312 23:24:22.625020 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:24:24.634449 2676 solver.cpp:398] Test net output #0: accuracy = 0.5775
I0312 23:24:24.634475 2676 solver.cpp:398] Test net output #1: loss = 0.970126 (* 1 = 0.970126 loss)
I0312 23:24:28.095824 2676 solver.cpp:219] Iteration 180 (2.78425 iter/s, 7.18325s/20 iters), loss = 1.03344
I0312 23:24:28.108048 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.5625
I0312 23:24:28.108081 2676 solver.cpp:238] Train net output #1: loss = 1.03344 (* 1 = 1.03344 loss)
I0312 23:24:28.108086 2676 sgd_solver.cpp:105] Iteration 180, lr = 0.001
I0312 23:24:31.963044 2676 solver.cpp:331] Iteration 196, Testing net (#0)
I0312 23:24:31.963080 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:24:33.957167 2676 solver.cpp:398] Test net output #0: accuracy = 0.576429
I0312 23:24:33.957206 2676 solver.cpp:398] Test net output #1: loss = 0.958613 (* 1 = 0.958613 loss)
I0312 23:24:35.273638 2676 solver.cpp:219] Iteration 200 (2.78957 iter/s, 7.16956s/20 iters), loss = 0.960444
I0312 23:24:35.285887 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.5625
I0312 23:24:35.285918 2676 solver.cpp:238] Train net output #1: loss = 0.960444 (* 1 = 0.960444 loss)
I0312 23:24:35.285924 2676 sgd_solver.cpp:105] Iteration 200, lr = 0.001
I0312 23:24:40.657598 2676 solver.cpp:219] Iteration 220 (3.72122 iter/s, 5.37458s/20 iters), loss = 0.904809
I0312 23:24:40.669728 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.578125
I0312 23:24:40.669744 2676 solver.cpp:238] Train net output #1: loss = 0.904809 (* 1 = 0.904809 loss)
I0312 23:24:40.669764 2676 sgd_solver.cpp:105] Iteration 220, lr = 0.001
I0312 23:24:41.304330 2676 solver.cpp:331] Iteration 224, Testing net (#0)
I0312 23:24:41.304366 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:24:43.297623 2676 solver.cpp:398] Test net output #0: accuracy = 0.595
I0312 23:24:43.297662 2676 solver.cpp:398] Test net output #1: loss = 0.935005 (* 1 = 0.935005 loss)
I0312 23:24:47.847645 2676 solver.cpp:219] Iteration 240 (2.78486 iter/s, 7.18169s/20 iters), loss = 0.964164
I0312 23:24:47.859764 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.582031
I0312 23:24:47.859781 2676 solver.cpp:238] Train net output #1: loss = 0.964164 (* 1 = 0.964164 loss)
I0312 23:24:47.859800 2676 sgd_solver.cpp:105] Iteration 240, lr = 0.001
I0312 23:24:50.647053 2676 solver.cpp:331] Iteration 252, Testing net (#0)
I0312 23:24:50.647089 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:24:52.633581 2676 solver.cpp:398] Test net output #0: accuracy = 0.599286
I0312 23:24:52.633618 2676 solver.cpp:398] Test net output #1: loss = 0.980615 (* 1 = 0.980615 loss)
I0312 23:24:55.028817 2676 solver.cpp:219] Iteration 260 (2.78831 iter/s, 7.17279s/20 iters), loss = 0.988547
I0312 23:24:55.041051 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.59375
I0312 23:24:55.041085 2676 solver.cpp:238] Train net output #1: loss = 0.988547 (* 1 = 0.988547 loss)
I0312 23:24:55.041091 2676 sgd_solver.cpp:105] Iteration 260, lr = 0.001
I0312 23:24:59.975488 2676 solver.cpp:331] Iteration 280, Testing net (#0)
I0312 23:24:59.975523 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:01.941673 2676 solver.cpp:398] Test net output #0: accuracy = 0.6
I0312 23:25:01.941711 2676 solver.cpp:398] Test net output #1: loss = 0.919044 (* 1 = 0.919044 loss)
I0312 23:25:02.204524 2676 solver.cpp:219] Iteration 280 (2.79049 iter/s, 7.1672s/20 iters), loss = 1.0459
I0312 23:25:02.206957 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.585938
I0312 23:25:02.206985 2676 solver.cpp:238] Train net output #1: loss = 1.0459 (* 1 = 1.0459 loss)
I0312 23:25:02.207006 2676 sgd_solver.cpp:105] Iteration 280, lr = 0.001
I0312 23:25:07.572079 2676 solver.cpp:219] Iteration 300 (3.72585 iter/s, 5.36791s/20 iters), loss = 0.892142
I0312 23:25:07.584277 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.605469
I0312 23:25:07.584297 2676 solver.cpp:238] Train net output #1: loss = 0.892142 (* 1 = 0.892142 loss)
I0312 23:25:07.584317 2676 sgd_solver.cpp:105] Iteration 300, lr = 0.001
I0312 23:25:09.297149 2676 solver.cpp:331] Iteration 308, Testing net (#0)
I0312 23:25:09.297185 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:11.270056 2676 solver.cpp:398] Test net output #0: accuracy = 0.617857
I0312 23:25:11.270094 2676 solver.cpp:398] Test net output #1: loss = 0.876603 (* 1 = 0.876603 loss)
I0312 23:25:14.751806 2676 solver.cpp:219] Iteration 320 (2.78891 iter/s, 7.17125s/20 iters), loss = 0.935945
I0312 23:25:14.763928 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.601562
I0312 23:25:14.763962 2676 solver.cpp:238] Train net output #1: loss = 0.935945 (* 1 = 0.935945 loss)
I0312 23:25:14.763967 2676 sgd_solver.cpp:105] Iteration 320, lr = 0.001
I0312 23:25:18.636039 2676 solver.cpp:331] Iteration 336, Testing net (#0)
I0312 23:25:18.636075 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:20.618952 2676 solver.cpp:398] Test net output #0: accuracy = 0.634643
I0312 23:25:20.618978 2676 solver.cpp:398] Test net output #1: loss = 0.85954 (* 1 = 0.85954 loss)
I0312 23:25:21.936133 2676 solver.cpp:219] Iteration 340 (2.7871 iter/s, 7.17593s/20 iters), loss = 0.869285
I0312 23:25:21.948242 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.636719
I0312 23:25:21.948276 2676 solver.cpp:238] Train net output #1: loss = 0.869285 (* 1 = 0.869285 loss)
I0312 23:25:21.948282 2676 sgd_solver.cpp:105] Iteration 340, lr = 0.001
I0312 23:25:27.332120 2676 solver.cpp:219] Iteration 360 (3.71286 iter/s, 5.38669s/20 iters), loss = 0.899806
I0312 23:25:27.344280 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.613281
I0312 23:25:27.344297 2676 solver.cpp:238] Train net output #1: loss = 0.899806 (* 1 = 0.899806 loss)
I0312 23:25:27.344303 2676 sgd_solver.cpp:105] Iteration 360, lr = 0.001
I0312 23:25:27.983243 2676 solver.cpp:331] Iteration 364, Testing net (#0)
I0312 23:25:27.983280 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:30.007056 2676 solver.cpp:398] Test net output #0: accuracy = 0.645357
I0312 23:25:30.007093 2676 solver.cpp:398] Test net output #1: loss = 0.844139 (* 1 = 0.844139 loss)
I0312 23:25:32.783954 2676 blocking_queue.cpp:49] Waiting for data
I0312 23:25:34.568060 2676 solver.cpp:219] Iteration 380 (2.7672 iter/s, 7.22753s/20 iters), loss = 0.840824
I0312 23:25:34.580109 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.664062
I0312 23:25:34.580127 2676 solver.cpp:238] Train net output #1: loss = 0.840824 (* 1 = 0.840824 loss)
I0312 23:25:34.580132 2676 sgd_solver.cpp:105] Iteration 380, lr = 0.001
I0312 23:25:37.373685 2676 solver.cpp:331] Iteration 392, Testing net (#0)
I0312 23:25:37.373728 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:39.393951 2676 solver.cpp:398] Test net output #0: accuracy = 0.652143
I0312 23:25:39.393977 2676 solver.cpp:398] Test net output #1: loss = 0.85232 (* 1 = 0.85232 loss)
I0312 23:25:41.798810 2676 solver.cpp:219] Iteration 400 (2.76914 iter/s, 7.22245s/20 iters), loss = 0.829997
I0312 23:25:41.811102 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.65625
I0312 23:25:41.811122 2676 solver.cpp:238] Train net output #1: loss = 0.829997 (* 1 = 0.829997 loss)
I0312 23:25:41.811127 2676 sgd_solver.cpp:105] Iteration 400, lr = 0.001
I0312 23:25:46.767246 2676 solver.cpp:331] Iteration 420, Testing net (#0)
I0312 23:25:46.767431 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:48.779335 2676 solver.cpp:398] Test net output #0: accuracy = 0.664286
I0312 23:25:48.779371 2676 solver.cpp:398] Test net output #1: loss = 0.804686 (* 1 = 0.804686 loss)
I0312 23:25:49.040144 2676 solver.cpp:219] Iteration 420 (2.76518 iter/s, 7.2328s/20 iters), loss = 0.937281
I0312 23:25:49.042621 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.597656
I0312 23:25:49.042652 2676 solver.cpp:238] Train net output #1: loss = 0.937281 (* 1 = 0.937281 loss)
I0312 23:25:49.042657 2676 sgd_solver.cpp:105] Iteration 420, lr = 0.001
I0312 23:25:54.423571 2676 solver.cpp:219] Iteration 440 (3.71489 iter/s, 5.38374s/20 iters), loss = 0.970864
I0312 23:25:54.435729 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.597656
I0312 23:25:54.435745 2676 solver.cpp:238] Train net output #1: loss = 0.970864 (* 1 = 0.970864 loss)
I0312 23:25:54.435765 2676 sgd_solver.cpp:105] Iteration 440, lr = 0.001
I0312 23:25:56.153745 2676 solver.cpp:331] Iteration 448, Testing net (#0)
I0312 23:25:56.153781 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:25:58.141585 2676 solver.cpp:398] Test net output #0: accuracy = 0.673214
I0312 23:25:58.141623 2676 solver.cpp:398] Test net output #1: loss = 0.799573 (* 1 = 0.799573 loss)
I0312 23:26:01.631712 2676 solver.cpp:219] Iteration 460 (2.77788 iter/s, 7.19972s/20 iters), loss = 0.886954
I0312 23:26:01.643872 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.613281
I0312 23:26:01.643903 2676 solver.cpp:238] Train net output #1: loss = 0.886954 (* 1 = 0.886954 loss)
I0312 23:26:01.643908 2676 sgd_solver.cpp:105] Iteration 460, lr = 0.001
I0312 23:26:05.524873 2676 solver.cpp:331] Iteration 476, Testing net (#0)
I0312 23:26:05.524893 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:26:07.525322 2676 solver.cpp:398] Test net output #0: accuracy = 0.674643
I0312 23:26:07.525360 2676 solver.cpp:398] Test net output #1: loss = 0.781635 (* 1 = 0.781635 loss)
I0312 23:26:08.875036 2676 solver.cpp:219] Iteration 480 (2.773 iter/s, 7.21241s/20 iters), loss = 0.790123
I0312 23:26:08.887622 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.644531
I0312 23:26:08.887660 2676 solver.cpp:238] Train net output #1: loss = 0.790123 (* 1 = 0.790123 loss)
I0312 23:26:08.887665 2676 sgd_solver.cpp:105] Iteration 480, lr = 0.001
I0312 23:26:14.376476 2676 solver.cpp:219] Iteration 500 (3.70628 iter/s, 5.39625s/20 iters), loss = 0.727805
I0312 23:26:14.388772 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.660156
I0312 23:26:14.388804 2676 solver.cpp:238] Train net output #1: loss = 0.727805 (* 1 = 0.727805 loss)
I0312 23:26:14.388809 2676 sgd_solver.cpp:105] Iteration 500, lr = 0.001
I0312 23:26:15.037009 2676 solver.cpp:331] Iteration 504, Testing net (#0)
I0312 23:26:15.037044 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:26:17.052551 2676 solver.cpp:398] Test net output #0: accuracy = 0.678572
I0312 23:26:17.052588 2676 solver.cpp:398] Test net output #1: loss = 0.757533 (* 1 = 0.757533 loss)
I0312 23:26:21.647141 2676 solver.cpp:219] Iteration 520 (2.77673 iter/s, 7.20271s/20 iters), loss = 0.833957
I0312 23:26:21.659446 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.648438
I0312 23:26:21.659463 2676 solver.cpp:238] Train net output #1: loss = 0.833957 (* 1 = 0.833957 loss)
I0312 23:26:21.659482 2676 sgd_solver.cpp:105] Iteration 520, lr = 0.001
I0312 23:26:24.474599 2676 solver.cpp:331] Iteration 532, Testing net (#0)
I0312 23:26:24.474622 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:26:26.479739 2676 solver.cpp:398] Test net output #0: accuracy = 0.706072
I0312 23:26:26.479763 2676 solver.cpp:398] Test net output #1: loss = 0.735266 (* 1 = 0.735266 loss)
I0312 23:26:28.900995 2676 solver.cpp:219] Iteration 540 (2.77077 iter/s, 7.21822s/20 iters), loss = 0.796514
I0312 23:26:28.913269 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.660156
I0312 23:26:28.913302 2676 solver.cpp:238] Train net output #1: loss = 0.796514 (* 1 = 0.796514 loss)
I0312 23:26:28.913308 2676 sgd_solver.cpp:105] Iteration 540, lr = 0.001
I0312 23:26:33.882889 2676 solver.cpp:331] Iteration 560, Testing net (#0)
I0312 23:26:33.882967 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:26:35.880746 2676 solver.cpp:398] Test net output #0: accuracy = 0.701429
I0312 23:26:35.880770 2676 solver.cpp:398] Test net output #1: loss = 0.724797 (* 1 = 0.724797 loss)
I0312 23:26:36.143487 2676 solver.cpp:219] Iteration 560 (2.77038 iter/s, 7.21922s/20 iters), loss = 0.798369
I0312 23:26:36.145952 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.6875
I0312 23:26:36.145998 2676 solver.cpp:238] Train net output #1: loss = 0.798369 (* 1 = 0.798369 loss)
I0312 23:26:36.146019 2676 sgd_solver.cpp:105] Iteration 560, lr = 0.001
I0312 23:26:41.539515 2676 solver.cpp:219] Iteration 580 (3.71042 iter/s, 5.39022s/20 iters), loss = 0.653225
I0312 23:26:41.551695 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.742188
I0312 23:26:41.551728 2676 solver.cpp:238] Train net output #1: loss = 0.653225 (* 1 = 0.653225 loss)
I0312 23:26:41.551734 2676 sgd_solver.cpp:105] Iteration 580, lr = 0.001
I0312 23:26:43.272722 2676 solver.cpp:331] Iteration 588, Testing net (#0)
I0312 23:26:43.272761 2676 net.cpp:678] Ignoring source layer accuracy_training
I0312 23:26:45.273249 2676 solver.cpp:398] Test net output #0: accuracy = 0.720357
I0312 23:26:45.273273 2676 solver.cpp:398] Test net output #1: loss = 0.69917 (* 1 = 0.69917 loss)
I0312 23:26:48.760844 2676 solver.cpp:219] Iteration 600 (2.77404 iter/s, 7.20969s/20 iters), loss = 0.766637
I0312 23:26:48.773182 2676 solver.cpp:238] Train net output #0: accuracy_training = 0.671875
I0312 23:26:48.773214 2676 solver.cpp:238] Train net output #1: loss = 0.766637 (* 1 = 0.766637 loss)
I0312 23:26:48.773221 2676 sgd_solver.cpp:105] Iteration 600, lr = 0.001
I0312 23:26:52.661382 2676 solver.cpp:331] Iteration 616, Testing net (#0)
"""##
let stringRange = NSRange(location: 0, length: testString.utf16.count)
let matches = regex.matches(in: testString, range: stringRange)
var result: [[String]] = []
for match in matches {
var groups: [String] = []
for rangeIndex in 1 ..< match.numberOfRanges {
let nsRange = match.range(at: rangeIndex)
guard !NSEqualRanges(nsRange, NSMakeRange(NSNotFound, 0)) else { continue }
let string = (testString as NSString).substring(with: nsRange)
groups.append(string)
}
if !groups.isEmpty {
result.append(groups)
}
}
print(result)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Swift 5.2, please visit: https://developer.apple.com/documentation/foundation/nsregularexpression