Complete and hand in this completed worksheet (including its outputs and any supporting code outside of the worksheet) with your assignment submission. For more details see the assignments page on the course website.
The kNN classifier consists of two stages:
In this exercise you will implement these steps and understand the basic Image Classification pipeline, cross-validation, and gain proficiency in writing efficient, vectorized code.
In [1]:
# Run some setup code for this notebook.
import random
import numpy as np
from cs231n.data_utils import load_CIFAR10
import matplotlib.pyplot as plt
# This is a bit of magic to make matplotlib figures appear inline in the notebook
# rather than in a new window.
%matplotlib inline
plt.rcParams['figure.figsize'] = (10.0, 8.0) # set default size of plots
plt.rcParams['image.interpolation'] = 'nearest'
plt.rcParams['image.cmap'] = 'gray'
# Some more magic so that the notebook will reload external python modules;
# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipython
%load_ext autoreload
%autoreload 2
In [2]:
# Load the raw CIFAR-10 data.
cifar10_dir = 'cs231n/datasets/cifar-10-batches-py'
X_train, y_train, X_test, y_test = load_CIFAR10(cifar10_dir)
# As a sanity check, we print out the size of the training and test data.
print 'Training data shape: ', X_train.shape
print 'Training labels shape: ', y_train.shape
print 'Test data shape: ', X_test.shape
print 'Test labels shape: ', y_test.shape
Training data shape: (50000, 32, 32, 3)
Training labels shape: (50000,)
Test data shape: (10000, 32, 32, 3)
Test labels shape: (10000,)
In [3]:
# Visualize some examples from the dataset.
# We show a few examples of training images from each class.
classes = ['plane', 'car', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']
num_classes = len(classes)
samples_per_class = 7
for y, cls in enumerate(classes):
idxs = np.flatnonzero(y_train == y)
idxs = np.random.choice(idxs, samples_per_class, replace=False)
for i, idx in enumerate(idxs):
plt_idx = i * num_classes + y + 1
plt.subplot(samples_per_class, num_classes, plt_idx)
plt.imshow(X_train[idx].astype('uint8'))
plt.axis('off')
if i == 0:
plt.title(cls)
plt.show()
In [4]:
# Subsample the data for more efficient code execution in this exercise
num_training = 5000
mask = range(num_training)
X_train = X_train[mask]
y_train = y_train[mask]
num_test = 500
mask = range(num_test)
X_test = X_test[mask]
y_test = y_test[mask]
In [5]:
# Reshape the image data into rows
X_train = np.reshape(X_train, (X_train.shape[0], -1))
X_test = np.reshape(X_test, (X_test.shape[0], -1))
print X_train.shape, X_test.shape
(5000, 3072) (500, 3072)
In [17]:
from cs231n.classifiers import KNearestNeighbor
# Create a kNN classifier instance.
# Remember that training a kNN classifier is a noop:
# the Classifier simply remembers the data and does no further processing
classifier = KNearestNeighbor()
classifier.train(X_train, y_train)
print(X_train)
[[ 197. 197. 189. ..., 103. 105. 98.]
[ 254. 254. 254. ..., 254. 254. 251.]
[ 97. 98. 54. ..., 87. 89. 40.]
...,
[ 252. 252. 252. ..., 246. 244. 250.]
[ 149. 15. 23. ..., 111. 107. 97.]
[ 223. 220. 210. ..., 166. 160. 145.]]
We would now like to classify the test data with the kNN classifier. Recall that we can break down this process into two steps:
Lets begin with computing the distance matrix between all training and test examples. For example, if there are Ntr training examples and Nte test examples, this stage should result in a Nte x Ntr matrix where each element (i,j) is the distance between the i-th test and j-th train example.
First, open cs231n/classifiers/k_nearest_neighbor.py and implement the function compute_distances_two_loops that uses a (very inefficient) double loop over all pairs of (test, train) examples and computes the distance matrix one element at a time.
In [7]:
# Open cs231n/classifiers/k_nearest_neighbor.py and implement
# compute_distances_two_loops.
# Test your implementation:
dists = classifier.compute_distances_two_loops(X_test)
print dists.shape
(500, 5000)
In [8]:
# We can visualize the distance matrix: each row is a single test example and
# its distances to training examples
plt.imshow(dists, interpolation='none')
plt.show()
Inline Question #1: Notice the structured patterns in the distance matrix, where some rows or columns are visible brighter. (Note that with the default color scheme black indicates low distances while white indicates high distances.)
Your Answer: fill this in.
In [9]:
# Now implement the function predict_labels and run the code below:
# We use k = 1 (which is Nearest Neighbor).
y_test_pred = classifier.predict_labels(dists, k=1)
# Compute and print the fraction of correctly predicted examples
num_correct = np.sum(y_test_pred == y_test)
accuracy = float(num_correct) / num_test
print 'Got %d / %d correct => accuracy: %f' % (num_correct, num_test, accuracy)
[ 3803.92350081 4210.59603857 5504.0544147 ..., 4007.64756434
4203.28086142 4354.20256764]
[420]
[ 6336.83367306 5270.28006846 4040.63608854 ..., 4829.15334194
4694.09767687 7768.33347636]
[2192]
[ 5224.83913628 4250.64289255 3773.94581307 ..., 3766.81549853
4464.99921613 6353.57190878]
[4469]
[ 5265.83754022 4274.49459001 4593.32254474 ..., 4379.85913015
3793.64455372 6973.20378305]
[252]
[ 3163.80277514 4231.52395716 6134.35889071 ..., 4178.39071893
3972.60292504 3877.14405201]
[1881]
[ 3072.51281527 4256.22179873 5351.42317519 ..., 3754.21416544
4142.64854894 3646.74608384]
[2654]
[ 4184.89462233 5506.63908387 6925.23934604 ..., 5038.19074669
5926.91209653 4746.98883504]
[4033]
[ 3356.5065172 4486.25757174 5965.07007503 ..., 4332.44169032
4558.70990523 3726.08776064]
[910]
[ 4473.69858171 4363.13579894 5621.05772964 ..., 4681.63112601
3155.1476986 6142.73107013]
[4808]
[ 5739.62167743 4728.38555958 3968.28476801 ..., 4002.40752548
4012.45274115 6834.87198124]
[2096]
[ 4058.38859648 3505.19514435 5098.57480086 ..., 3927.33968482
3423.31184674 5158.35632736]
[303]
[ 5153.76697184 4265.84845019 4162.67522154 ..., 3624.55169642
3953.39019071 5943.91571273]
[139]
[ 2942.02107402 4239.19791942 6763.42110178 ..., 4348.83720091
4953.46101226 4095.05995072]
[2745]
[ 4627.67954811 5665.25030338 7142.30263991 ..., 5682.3863825
6417.46180355 5349.56970232]
[825]
[ 4398.55760449 4804.13696724 4645.84093572 ..., 4209.23009587
4523.35926055 5104.65797091]
[271]
[ 4330.54984961 4103.7269646 4891.60229373 ..., 3939.09190043
3992.23045427 5313.59990967]
[4183]
[ 4579.17306945 4897.26035657 6908.16437268 ..., 5295.11501292
5126.04447893 5480.34469719]
[4153]
[ 4431.64687221 4923.45681407 5870.27844314 ..., 4502.91738765
3785.2740984 5014.46029 ]
[80]
[ 6675.36748052 5550.12216082 3410.24720512 ..., 4630.4416636
5262.29750204 7676.64568676]
[3059]
[ 3277.60461313 4735.42996992 6488.60008014 ..., 4806.14866603
4282.54503771 4459.69102069]
[1881]
[ 4818.2787383 5257.01712 4803.80255631 ..., 4138.56968046
4339.79907369 4947.18910089]
[2693]
[ 8358.5234342 7612.03947704 7209.52668349 ..., 7374.99891525
5607.20019261 9238.4372055 ]
[1522]
[ 4161.58299208 4640.33985824 5649.23870977 ..., 4165.11776544
5174.20148429 3703.73527672]
[4282]
[ 4268.78237909 5397.3536108 5867.83264928 ..., 4382.35918199
4749.11370679 4456.55775235]
[313]
[ 4295.54897539 4390.43460263 4419.51513178 ..., 3598.51552727
2419.88698083 5356.52844667]
[2764]
[ 4245.5072724 4266.64259108 4641.95831519 ..., 3746.83933469
3906.23834398 4863.11340604]
[420]
[ 4081.29758778 5313.8201889 6194.72057481 ..., 4474.2153502
4544.80604647 4112.63151765]
[1359]
[ 5081.85930541 4426.99841879 3833.71921246 ..., 3417.80704546
3818.87967865 5935.64200403]
[2074]
[ 5164.73503677 5205.14677987 5306.66420645 ..., 4140.88311837
4181.02762488 5461.74440998]
[2678]
[ 3452.37860033 4871.44075197 5697.71787648 ..., 3936.1576442
4839.97851235 4020.45892903]
[3712]
[ 3891.64720909 5410.42724745 6272.16716933 ..., 4495.90847327
5491.04616626 3744.62174325]
[2124]
[ 3436.51189435 4168.70615419 4809.79012016 ..., 3444.19119678
2992.69343569 4918.1673416 ]
[2133]
[ 3076.6717407 3599.00541817 5651.55235312 ..., 3844.27106224
3158.56280609 4480.14966268]
[398]
[ 4714.41279482 5234.58966873 6054.42557143 ..., 5030.28716874
4311.76761897 5622.552801 ]
[1176]
[ 4767.1262832 4768.97389383 4094.15876585 ..., 3315.48578643
4780.3517653 5310.76651718]
[4066]
[ 4024.39001589 5124.62135187 6958.02328251 ..., 5535.65786515
5458.0442468 4529.5274588 ]
[3649]
[ 3658.16798411 4170.55727691 4177.07313798 ..., 2880.44371582
3048.12877025 4920.9055061 ]
[2133]
[ 5951.39655879 4927.53975123 4968.4562995 ..., 4847.22869277
4241.61183986 7251.67228989]
[2172]
[ 5026.47122741 4646.61963152 4130.93839218 ..., 3875.12709469
3583.06642417 6224.97847386]
[982]
[ 4153.85254914 4213.38509989 6450.09162726 ..., 4763.09395246
4080.55719235 5353.90110107]
[2567]
[ 4812.43119431 4516.33557212 5067.20781101 ..., 4297.28600398
4042.17985745 5665.50809725]
[3579]
[ 4244.16917665 5887.33530555 6986.64533235 ..., 5224.32990918
6162.55141966 3787.01148665]
[1596]
[ 4806.17394608 5243.01373258 4825.88924448 ..., 4089.63580286
5182.57792995 4987.28062174]
[2966]
[ 3755.15472384 5130.8763384 6417.75163122 ..., 4573.10704008
4651.18920277 3363.29109653]
[2943]
[ 5499.12911287 4822.4213835 4937.04223194 ..., 4822.97066132
5027.27530577 6093.76771792]
[763]
[ 5224.66180724 4697.41545959 4712.48851457 ..., 4512.34617466
4014.63958532 6207.85526571]
[1759]
[ 3708.9315173 4830.66227344 6079.46757537 ..., 4180.46313224
4392.41425642 4828.2252433 ]
[1355]
[ 3856.42230571 4291.71597383 5212.69623132 ..., 3841.30316429
4557.54659877 4798.08347155]
[564]
[ 2863.12696191 3984.09199191 5628.84206565 ..., 3741.81226146
3487.58971211 3761.76873292]
[3718]
[ 2914.81628924 4314.15240806 5279.99441288 ..., 3228.15256765
3939.64998445 3491.4108896 ]
[2812]
[ 5629.73187639 4981.01435453 3864.77476705 ..., 4155.70860384
5133.96328386 6423.57229274]
[4134]
[ 3932.81400526 3943.75062599 4663.98531301 ..., 3567.70276228
4212.54768519 4748.82743422]
[1092]
[ 3008.85243905 4707.23931833 6684.6513746 ..., 4602.89104803
5305.96353173 3887.27603856]
[3]
[ 3897.42042895 4573.09009314 5086.91547011 ..., 3498.99171191
4800.00145833 4581.38559827]
[3178]
[ 5699.15011208 4213.03370506 4313.57241738 ..., 4016.1144157
4834.9595655 6841.48668054]
[2344]
[ 4063.18594209 3371.6546383 3664.67147232 ..., 2817.18884706
3157.80335043 5321.91845109]
[1229]
[ 4449.09811085 5011.09059986 6777.3048478 ..., 5097.81512023
4752.30996464 4917.22706411]
[3031]
[ 4749.90357797 6037.73608234 7582.39889481 ..., 6009.57610818
6789.09021887 5085.43193839]
[3136]
[ 4221.78564117 3872.66407012 4291.01002096 ..., 3441.97777448
2977.89254339 5470.97340516]
[1759]
[ 4036.86388178 4043.9160476 5418.53734877 ..., 3762.13808891
3225.44911601 4286.33083184]
[254]
[ 4029.28455188 4620.30334502 5827.45836536 ..., 4364.32778329
2870.34353345 5024.88129213]
[254]
[ 3617.02709418 5510.79232053 6697.39441873 ..., 4913.11550851
4705.6059121 4268.51976685]
[1537]
[ 4142.43756742 5722.50941458 7663.25753189 ..., 5936.03790419
6520.42414265 4559.51302224]
[2112]
[ 5751.90272866 5166.58223587 4162.54057037 ..., 3789.05766649
4538.58645395 6003.55136565]
[4128]
[ 3513.53838744 4207.88391 4896.18024587 ..., 3525.65298916
3679.83668116 4051.73098811]
[4007]
[ 3485.52248594 4910.88321995 6000.09516591 ..., 4361.53917786
4836.68388465 3194.09940359]
[910]
[ 4157.34001496 3947.09323427 4926.94012547 ..., 3828.13387958
3778.06537794 5047.58060857]
[716]
[ 6353.09656782 5298.91696481 5692.01062894 ..., 5279.38528619
4573.27847392 7029.50040899]
[786]
[ 4559.41476508 5579.90842219 5659.64751553 ..., 4600.51671011
5599.18788754 4494.4711591 ]
[1345]
[ 5284.58002116 5056.84318523 3223.95176763 ..., 3685.3185751
4796.45723425 6122.02009144]
[749]
[ 4681.0371714 4087.96183935 4490.87274369 ..., 3833.51222771
2247.34621276 5985.47299718]
[2543]
[ 3324.74450146 4830.37068971 6475.32261745 ..., 4594.25086385
4822.28514296 3327.94080476]
[1695]
[ 4943.90665365 3964.63012146 4150.47129854 ..., 3726.81392076
2735.79622779 6389.54043731]
[3579]
[ 3995.9639638 3787.62418938 4688.156674 ..., 3674.68760577
3912.5273162 5289.57994552]
[1039]
[ 5973.57991493 5612.49712695 3073.81066431 ..., 3931.46028849
4567.24085198 6709.02832011]
[4053]
[ 3756.28380184 4339.38348156 5374.2321312 ..., 3665.94776286
3092.8249223 4726.415132 ]
[3418]
[ 4609.0845078 4360.7505088 4425.32202218 ..., 3694.97916097
3755.96671977 5366.34624302]
[1360]
[ 3769.56111504 4608.81112653 6102.5394714 ..., 4270.41660731
5041.77062152 4823.44472343]
[4310]
[ 3748.41379786 5362.00904512 6661.81604369 ..., 4858.57911328
5717.11325758 4283.14043664]
[4907]
[ 7573.20084244 6364.44043102 5709.50435677 ..., 6085.26153916
4752.26966827 8823.96095866]
[3503]
[ 5737.06553911 4639.05248946 3802.73164975 ..., 4117.02101039
3512.50352313 6987.2076683 ]
[3638]
[ 4581.18008814 5945.5818891 7699.29074656 ..., 5787.91430483
6851.54092157 5391.95947685]
[850]
[ 3760.95413426 4617.53429874 5751.88934177 ..., 4155.21611953
3858.62281131 4536.53678482]
[3949]
[ 6090.10878392 5158.12310826 5516.53876992 ..., 5219.27523704
3584.4214317 7342.74179037]
[2341]
[ 6325.78872553 5204.58201972 5109.50095411 ..., 5266.6387763
3783.6118987 7696.19834724]
[1118]
[ 5152.01853646 5099.68410786 4005.02334575 ..., 3832.87281292
4596.83662968 5222.30973804]
[3116]
[ 5045.3214962 4844.92394161 5557.41774568 ..., 4913.83780766
5222.08646041 4929.05782072]
[4827]
[ 6754.31891459 5330.86981646 4532.39594475 ..., 5201.2926278
4644.08957709 8273.5453102 ]
[2172]
[ 5887.95550255 5099.76401415 3780.54295042 ..., 4486.54488443
4023.97117286 7366.22141943]
[2172]
[ 4482.22121275 4192.79429498 4170.05611473 ..., 3369.6667491
3695.37210576 5330.27400797]
[1229]
[ 4168.97349476 3680.52971731 5076.74708844 ..., 3704.31788593
3654.34481132 5400.47590496]
[1759]
[ 3170.1892688 4747.643942 5913.72327726 ..., 4147.72431581
4573.78486595 3640.86253517]
[979]
[ 6382.8256282 4955.39060014 4972.46035681 ..., 5162.5838492
4463.0284561 8020.21502206]
[2172]
[ 4916.61763817 4754.31214793 4070.25846845 ..., 3582.5055478
3923.12592202 5646.34864315]
[4172]
[ 3397.22533842 4439.02478029 5235.63606451 ..., 3569.22722729
4483.718323 3471.2450216 ]
[10]
[ 3946.48793233 4481.74809645 4901.45264182 ..., 3861.16744004
3558.74542501 5292.67541041]
[1759]
[ 3034.29547012 4288.91244956 5681.02261921 ..., 3926.79003768
3978.70519139 4044.56066835]
[347]
[ 3911.04269984 3579.76814892 4606.81495179 ..., 3562.89713576
2811.41903671 4950.84507938]
[1759]
[ 8149.92343522 7187.84578299 7461.71528538 ..., 7237.60740853
5488.06869491 9019.83869035]
[3842]
[ 5831.88288634 5610.31915313 4995.51428784 ..., 4809.21521664
3805.30629516 7316.08761566]
[1770]
[ 3770.53948395 4046.54927067 5971.03935676 ..., 4227.17080327
3751.46451403 3955.54850811]
[3408]
[ 4230.47030482 4558.41463669 6452.11965171 ..., 4928.21691893
3675.90329035 5031.24109937]
[662]
[ 4431.36277007 6043.36404662 7853.55480022 ..., 5926.77391167
7036.15733195 4228.51463282]
[3048]
[ 5178.24700068 4900.63148992 5268.27970024 ..., 4454.05219996
4628.45827463 5692.10224785]
[4195]
[ 4118.3207743 4355.21055748 6147.32632939 ..., 4593.77393871
4440.36012053 4194.26465546]
[1559]
[ 7659.62655748 6397.34069751 5315.89766643 ..., 6022.63762815
5297.12818421 8549.64636696]
[3452]
[ 3473.87838014 4509.53212651 6315.44915267 ..., 4364.16017121
4849.24024977 3669.97915525]
[1881]
[ 3509.90740619 5091.94923384 6187.79128607 ..., 4269.14593332
5312.20425059 3619.35436231]
[4907]
[ 4222.18308461 4340.21554764 6546.07569464 ..., 4990.47001794
4586.76356487 5470.33472468]
[4808]
[ 5315.61031303 5615.3470062 8373.19317823 ..., 6463.89232584
6176.2455424 5418.54897551]
[2108]
[ 3061.28600428 4776.74920841 5712.50724288 ..., 3901.54520671
3751.25285738 4795.48078924]
[3855]
[ 5509.92967287 5491.21880824 6728.79929854 ..., 5701.43297777
4443.45845035 6725.75847024]
[373]
[ 4372.50843338 4773.64671923 4320.32394619 ..., 3769.75635817
2878.28177912 5772.23301678]
[4954]
[ 3605.15824895 3733.59036318 4556.69189215 ..., 3442.55239612
2980.04463054 4846.84268364]
[2859]
[ 4406.34655923 4541.45802579 4006.67755129 ..., 3338.05347471
3604.13401527 5506.68066988]
[982]
[ 4766.67808856 5345.94397651 4749.92536783 ..., 4067.50377996
4518.9525335 4565.57553875]
[4987]
[ 4763.84235675 4579.56886617 5034.88023691 ..., 4135.65339457
3396.52381119 5509.99491833]
[2867]
[ 5120.83801736 4958.00635336 4574.01956708 ..., 4042.01595742
4559.79999561 5755.67215884]
[271]
[ 5277.6304342 6787.28207753 8059.37367294 ..., 6258.37183299
7585.46471879 4129.20876198]
[4741]
[ 3865.52415592 5175.85876933 7168.33844067 ..., 5235.26847449
4580.31036066 4303.35113603]
[692]
[ 4941.97844997 3996.24498749 3504.98559198 ..., 3477.24028505
3208.15757094 6242.08610963]
[2172]
[ 3873.69139194 5962.3746947 8006.03909558 ..., 5785.97563078
5924.02574269 3331.45868952]
[959]
[ 3795.03833973 4331.72840792 5370.52371748 ..., 3789.81173675
4441.00911956 4266.73950459]
[420]
[ 4601.81724974 5059.80819795 4606.4275746 ..., 3715.06837084
3125.90498896 5705.83683608]
[2583]
[ 5636.91901663 4906.50028024 3738.11061902 ..., 4005.17402868
3562.17265163 6403.36458434]
[1770]
[ 3600.42219747 4050.81337511 4829.28535086 ..., 3331.04833348
3596.71767032 4587.00708524]
[2133]
[ 4042.74374652 3564.60797284 4341.4184318 ..., 3186.87401696
3616.06872169 5011.7947883 ]
[1759]
[ 3519.44811014 4407.51108904 6216.93976165 ..., 4169.24333663
4736.35756674 3889.91658008]
[4755]
[ 4852.69358192 6097.57476379 7912.94812317 ..., 6135.7038716
5206.28687262 4655.46807529]
[4590]
[ 4420.0635742 4182.08835392 4744.99978925 ..., 4011.18598422
2806.05987106 5726.59445046]
[2993]
[ 4352.03607522 4649.34350204 5795.9433227 ..., 4608.71359492
2441.3479883 5664.86804789]
[403]
[ 5951.89020396 5259.92395382 4381.37261597 ..., 4630.80273819
4136.1154481 7442.41298236]
[2362]
[ 5061.85618128 4430.99729181 4035.13878324 ..., 3555.0275667
4082.78287446 5554.68216913]
[3246]
[ 5326.73896488 5936.44279009 6110.54097441 ..., 4853.80294202
4569.80699811 5943.81863788]
[1690]
[ 6090.15607353 5972.1041518 6152.61440365 ..., 5515.23671296
4127.42886068 6505.49559988]
[3411]
[ 4115.01287969 3913.40618899 4972.93193197 ..., 4062.56396873
3445.77872186 5332.35060738]
[767]
[ 5093.94179394 4762.94173804 4049.74048551 ..., 3784.74226335
4853.44959797 5693.30264434]
[4164]
[ 4677.40825672 4542.73518929 4860.73008919 ..., 4108.82623142
3510.28232483 5804.47930481]
[974]
[ 2588.50922347 4265.33246066 5545.77956648 ..., 3511.50295458
3831.7139768 3759.4105921 ]
[3558]
[ 4755.46927232 3925.5502799 4041.9016564 ..., 3643.11364083
3311.12005219 6048.74251394]
[4320]
[ 3427.8809781 3919.49779946 4535.80125226 ..., 3129.2959272
3092.77027922 4727.49701216]
[3164]
[ 4608.26496634 3963.12414643 5186.68767134 ..., 4349.93896509
4302.74865638 6054.97299746]
[4453]
[ 6424.07137258 6009.41078642 5770.87359071 ..., 5280.11363514
4159.67414589 7408.18095081]
[1017]
[ 3658.87523701 4254.31768912 5722.75519309 ..., 4126.63894713
4414.59918905 4316.31416836]
[4956]
[ 5601.08319881 4690.18890878 5778.52264857 ..., 5044.61237361
5245.28712274 6453.23662979]
[562]
[ 5694.83950608 5161.04563049 4126.53971264 ..., 4496.53333136
3892.09904807 7029.85412366]
[4985]
[ 3888.29988555 5529.2682156 6798.27720823 ..., 4921.73373924
6073.15436985 3223.20089352]
[4426]
[ 4926.79236421 5034.85610519 6209.99855072 ..., 4893.41026279
4968.30041362 4755.5713642 ]
[4463]
[ 4563.04887109 5547.63300877 7604.09218776 ..., 5638.93057237
5994.48655016 5011.07144232]
[157]
[ 4408.71897494 4985.11263664 5989.8575943 ..., 4584.55733959
5659.44599762 5032.86707553]
[4283]
[ 5631.44262157 5091.6265574 4668.82437022 ..., 4597.32085023
4398.75368713 6378.20444953]
[600]
[ 5275.1881483 4992.61344388 5352.02438335 ..., 4545.09394842
5535.15492105 5175.33689725]
[101]
[ 4030.13883136 4791.4292231 5352.30324253 ..., 4185.34992563
4792.84351925 4373.11433649]
[710]
[ 5449.60457281 5218.34830191 5366.95043763 ..., 4580.7011472
3931.28859282 6415.93765556]
[341]
[ 5022.10085522 5700.64154284 7091.807527 ..., 5582.33266655
5236.19928956 3958.86486256]
[3670]
[ 3725.92216773 4888.64531338 6573.99596897 ..., 4647.05831683
5033.28918303 3978.15510004]
[1324]
[ 5274.21643469 5009.97584825 5852.8047977 ..., 4968.74873585
3078.16325103 7030.64982772]
[2441]
[ 5216.97901088 4324.00820998 3900.21217372 ..., 3989.02757574
3953.96307519 6308.71444908]
[4834]
[ 3250.6304004 4845.4010154 5992.04597779 ..., 3981.60633413
4114.03913448 4151.83332999]
[2266]
[ 4145.06767134 4076.83958478 4154.02130471 ..., 3377.49448556
3364.07372095 4673.06430514]
[4527]
[ 5664.28459737 5213.75977582 5637.44543211 ..., 5074.15914216
3750.74979171 6536.45163678]
[348]
[ 3927.66584628 5532.15310706 7521.92781141 ..., 5435.98123617
5952.82243982 4006.35732306]
[3189]
[ 4503.51029753 4866.86737029 5817.33375353 ..., 4753.03376803
4757.51121911 5782.11527038]
[3403]
[ 3184.12452646 4362.90476632 5681.06521702 ..., 3931.51853614
4112.88621287 3830.89532616]
[3393]
[ 5701.50252127 4497.15687963 4575.08185719 ..., 4521.11004069
4158.22426043 6430.59211893]
[2881]
[ 4731.34621435 4583.17771857 4362.90591235 ..., 3830.87170237
3732.57565228 5007.33032663]
[4018]
[ 5529.80126225 4297.59479244 3728.5250435 ..., 4005.57698715
3600.62883397 6846.65597208]
[2172]
[ 2811.81916204 4159.0746567 5141.04697508 ..., 3288.26428378
4142.5179541 3453.83858916]
[4550]
[ 5203.22121383 5117.13923985 4657.45466967 ..., 4011.36959155
3476.01251436 6389.15996043]
[2017]
[ 5576.06868681 4956.84405645 3185.94052047 ..., 3608.84843129
4475.64520488 6525.69505877]
[3063]
[ 5135.76274764 4645.99332759 5278.89363409 ..., 4513.89033983
3875.15638394 6839.00380172]
[3039]
[ 5658.26236578 5166.3658407 3978.55878428 ..., 4233.03886115
3740.87142254 6640.96551715]
[898]
[ 4034.71510766 3841.6841359 4318.30672834 ..., 3338.05946622
2797.6776083 4871.78139904]
[592]
[ 4432.733017 4492.61605304 5256.07943243 ..., 4043.79042484
4808.24562601 5171.9706109 ]
[3065]
[ 4176.30267102 4676.69744585 5201.77979157 ..., 3815.75615049
4347.93836203 4062.26291616]
[1826]
[ 6191.71866286 5532.43897391 4565.94623271 ..., 4934.86585431
4879.95922114 6242.17205787]
[1640]
[ 5023.74551505 4739.7419761 5695.58706368 ..., 4492.52913179
4395.17041763 5042.98671424]
[3549]
[ 3637.60044535 4690.8464055 4953.25892721 ..., 3623.27282991
3722.64704209 4754.28385774]
[951]
[ 3554.09636898 4166.91828574 5086.48641009 ..., 3554.66791698
3813.76336445 4382.86493061]
[420]
[ 5619.37825742 5157.31761675 3959.66854673 ..., 4375.11954122
4226.31092089 6526.87704802]
[554]
[ 6163.86161428 5294.73162682 5634.37955768 ..., 4881.51011471
4358.588533 7611.18952595]
[596]
[ 6353.39405357 5912.21980309 5170.27649164 ..., 5305.33344852
4428.29628638 7087.27267713]
[695]
[ 3639.78103737 4342.43330404 5145.45168085 ..., 3808.79705419
3209.93208651 4747.18295413]
[4211]
[ 3254.9938556 3532.2061095 4594.06443142 ..., 3040.65782356
3134.47523519 4216.15334161]
[420]
[ 5567.05658315 5299.72169081 5077.03259789 ..., 4821.84653426
3302.24787077 6501.15274394]
[695]
[ 3990.23796283 3744.72028328 4997.03712214 ..., 3833.67317334
3261.65310847 5294.1884175 ]
[974]
[ 4202.36278777 5847.53948255 6996.50169728 ..., 5134.16692366
6329.56278111 3768.31567149]
[2112]
[ 4351.63291191 4202.2332158 4907.81478868 ..., 3804.4476603
3403.37553026 4849.6328727 ]
[4346]
[ 7161.33353503 6701.49513169 6056.37077795 ..., 5873.45171088
5192.96158276 8234.59203604]
[3482]
[ 6068.77343456 4869.67986627 5079.3753553 ..., 4934.64345217
5266.83785587 6205.80913338]
[4277]
[ 4691.56764845 4713.20039888 4885.15240295 ..., 3901.06857156
3587.70832148 6355.40517984]
[2723]
[ 4064.71388907 4033.73524168 5916.35140944 ..., 4240.50916754
3688.68445384 4577.47736204]
[3587]
[ 4363.14072659 4720.71520005 5222.73338397 ..., 3980.75872165
4155.68345763 5616.00774572]
[1788]
[ 3430.7668239 5074.29581321 6803.60948321 ..., 4947.58183358
5165.66075154 4068.61733271]
[2535]
[ 3317.51051242 4576.26496173 5001.96211501 ..., 3552.3827215
3601.31975809 4157.1723563 ]
[951]
[ 3509.28126544 4874.00143619 6306.1124316 ..., 4440.0914405
5053.63760078 3535.08062143]
[2116]
[ 4839.16697377 4794.96715317 5370.50295596 ..., 4177.20791917
4435.42455691 5945.82332398]
[2979]
[ 6519.98397237 5506.37866479 5934.84624906 ..., 5750.18660567
3842.27289505 8223.76708085]
[2176]
[ 5559.31740414 6648.16523561 7326.90964869 ..., 6172.97861652
6037.79098678 5537.50972911]
[4184]
[ 4105.76046549 4057.06913917 6088.67801744 ..., 4697.62557043
3370.95401927 5204.58307648]
[2567]
[ 4957.64056785 5209.68261989 4871.54749541 ..., 4482.88601238
4369.28689834 5722.55904295]
[18]
[ 5854.15963226 4949.37874889 2999.90933196 ..., 3827.14750173
4362.71417812 6806.45333489]
[4053]
[ 5106.63969749 4579.85960484 4034.28853703 ..., 3643.21808296
3728.34319772 5415.6108612 ]
[554]
[ 4870.62172623 5482.49149566 6587.01335963 ..., 5377.46213376
5423.90578827 5197.01548968]
[910]
[ 4294.39006146 4665.52237161 4914.88829985 ..., 3722.08637729
4922.68341456 4498.95743478]
[2725]
[ 4099.12844395 4238.34932491 5727.50285901 ..., 4235.90922943
2922.53759599 5561.5524811 ]
[403]
[ 4097.34474996 4553.65710172 5890.62297215 ..., 4353.29266188
5527.68939069 4343.63304159]
[2350]
[ 3385.74437901 4383.53145306 5569.51613697 ..., 3723.4615615
3256.21298443 4969.08170591]
[933]
[ 4144.46582807 4580.34343691 5321.35471473 ..., 4053.02528983
2950.09372732 5169.88868352]
[1220]
[ 5508.55552754 4128.12947956 4290.3777223 ..., 4254.25116795
4233.50067911 6932.87862291]
[2171]
[ 3767.5417715 4359.72774379 4304.43097285 ..., 3197.47431577
3457.59150277 4530.47756865]
[1563]
[ 5143.11238454 4626.66294428 4422.67679127 ..., 4071.55596793
4754.66812722 6240.6774472 ]
[121]
[ 6791.63588541 5878.67119339 6575.33641725 ..., 5988.37331836
4834.75128626 8294.97619044]
[3436]
[ 5171.43152328 4833.6349676 3962.47637217 ..., 3745.02403197
4261.12778499 6305.17850659]
[558]
[ 4643.59892756 3994.08262308 4456.75554636 ..., 3593.6624772
3349.34993693 5486.8447217 ]
[2979]
[ 7611.67931537 6715.90075865 6859.41972764 ..., 6780.51819554
4966.74078244 8713.52672573]
[2349]
[ 6976.41577029 6252.86318417 5356.3668657 ..., 5629.87459896
4789.39025347 8019.30127879]
[1593]
[ 5543.99287518 5099.15836193 4127.70202413 ..., 4063.39119456
3874.75095974 6323.14929446]
[3677]
[ 8221.66406514 7074.9461482 7213.41008123 ..., 7257.58299987
5428.8088933 9485.8257416 ]
[4645]
[ 3812.05469531 4496.62851479 5991.98731641 ..., 4446.74959943
3271.95186395 4870.07484542]
[3418]
[ 4921.7226659 4993.62022985 5351.55407335 ..., 4106.59895778
3713.84248454 5434.09219649]
[4706]
[ 3316.85483553 4909.07333414 6354.75562079 ..., 4224.14547571
4718.49848999 4000.93739016]
[336]
[ 4666.778332 4245.19905305 5233.92405371 ..., 4543.11159889
4338.6592399 5948.70237951]
[3623]
[ 3068.92440441 4340.08640467 5572.0773505 ..., 3677.35013291
4559.61237388 3599.29590337]
[2350]
[ 4407.16348687 4882.96190851 4518.37968745 ..., 3621.0289974
4894.54696576 4555.60775309]
[4288]
[ 4630.33951239 5149.21207565 4694.31475298 ..., 4215.8438064
4698.31480427 5096.58061841]
[1809]
[ 4437.18052371 4762.17072353 3882.59449338 ..., 3306.73796966
4058.03388355 5460.47003471]
[558]
[ 4732.38375452 4306.58159101 5359.82938161 ..., 4415.46067812
2667.19665567 6182.3205999 ]
[2543]
[ 6362.46225922 6067.70244821 5974.76652264 ..., 5625.96098458
4004.42879822 7621.42729415]
[2858]
[ 4691.95566901 5102.21001136 5124.02312641 ..., 4390.08120654
4118.62768407 4902.99153579]
[4987]
[ 4745.84997656 6233.58203604 7452.91721408 ..., 5847.01761584
6023.6860808 3477.21411478]
[4108]
[ 6183.80659465 6292.28583267 5002.69617307 ..., 5039.94652749
5296.18088815 7211.85829034]
[3735]
[ 4994.82942652 6166.63668461 7239.68217534 ..., 5937.5092421
5556.21930813 5646.89073739]
[963]
[ 3439.19627239 4754.80220409 6416.69603456 ..., 4502.07285592
4814.7075716 3539.58910045]
[4108]
[ 5076.24871337 4167.64921748 3624.33607713 ..., 3782.86002913
3813.62019609 6658.71977185]
[2172]
[ 5161.64111499 4536.88990389 5545.39448552 ..., 4735.74619252
4531.68588938 5386.62927999]
[2247]
[ 3343.16885604 4711.17448202 5878.72766847 ..., 4106.45698869
5052.02137763 3404.59366151]
[10]
[ 6507.21630192 5724.87842666 3158.60459697 ..., 4396.57241496
5245.98722835 7310.30177216]
[3882]
[ 7438.77073178 6652.62376811 6207.69836574 ..., 6325.67616939
4709.96985128 8700.63112653]
[1618]
[ 6848.2516747 6474.25146252 6639.24995764 ..., 6291.46660168
4420.90364066 8153.39481443]
[2509]
[ 4353.76492246 4934.6594614 6522.91499255 ..., 5277.59831742
5911.71980053 4638.85966591]
[77]
[ 4324.42435476 4176.21970208 4294.87520191 ..., 3618.29476411
3593.14959332 5107.82771832]
[1284]
[ 4433.3805386 4571.73052574 3707.25262155 ..., 3095.90988241
3706.61827007 4989.12026313]
[3116]
[ 5288.89742763 4490.5713445 4494.41998483 ..., 4022.13811299
4238.0922595 6699.1465128 ]
[4477]
[ 5679.92728827 4830.28270394 4963.48274904 ..., 4544.06172933
5098.28794793 5670.15537706]
[2247]
[ 5149.3641355 6165.14914661 8406.48119013 ..., 6200.74414889
6771.50640552 4321.65651111]
[1122]
[ 3440.85672471 4729.35534719 5331.22106088 ..., 3991.09132945
3227.60638864 4473.91830502]
[2605]
[ 4881.84770348 4032.40325364 3580.47706319 ..., 3623.13897056
3728.07121713 6258.52418706]
[4477]
[ 3313.00935706 3800.50680831 5261.62446398 ..., 3418.01404327
3517.21466504 4435.06877061]
[1832]
[ 4752.83147187 6022.17635079 7768.72434831 ..., 5823.1448548
7098.79884206 4804.74796425]
[2507]
[ 4700.22105863 4798.91706534 4763.95959261 ..., 4115.50179201
3334.64390903 5393.76751446]
[3376]
[ 4063.32376264 5284.44273316 6929.48446856 ..., 5349.42697866
5948.29908461 4364.13519497]
[914]
[ 3928.44969422 5123.74765187 5967.72217852 ..., 4725.9005491
4555.20965489 5270.35871644]
[299]
[ 3734.21075999 5241.00496088 5909.36282521 ..., 4258.65319086
5436.64749639 4042.08510549]
[1530]
[ 4006.12593412 4150.64043251 4178.16179677 ..., 3109.4214896
3124.90687861 4687.88150448]
[2831]
[ 5108.58268016 4435.63028216 4243.58103493 ..., 3871.96513414
3105.74226233 5810.02022372]
[982]
[ 3168.15782435 4322.88526334 5733.56006335 ..., 4043.45063034
4649.74106806 4453.5332041 ]
[1881]
[ 6684.82617575 5263.96219591 4932.23174638 ..., 5193.93415438
5343.36158237 8301.43451459]
[2003]
[ 5499.56125523 4527.64210158 3719.64581647 ..., 3902.21872785
3998.95686398 6852.33332523]
[2003]
[ 4721.52676578 5916.51755681 7029.17292432 ..., 5684.12297545
5255.01332063 5091.51342923]
[4801]
[ 3799.7592029 4417.32849129 6486.69985432 ..., 4543.41446492
4863.73333973 5342.00056159]
[2745]
[ 4379.40144312 4436.70869001 5478.04198597 ..., 3923.59885819
4838.31551266 5313.94966103]
[2839]
[ 4434.08333255 5216.79135101 5393.12210134 ..., 4293.05206118
4706.27166662 4177.653528 ]
[4106]
[ 3861.28372436 5047.47669633 5542.49609833 ..., 3902.14236029
5305.86222965 4215.34980755]
[4493]
[ 4976.18096536 4657.34344879 4213.55242046 ..., 3804.86451796
3196.04177069 5795.70591041]
[2213]
[ 5873.65788925 4876.5571872 3817.96647445 ..., 3966.85845475
4163.65716648 7209.3793769 ]
[2096]
[ 4885.66402856 4341.94104059 4176.0780644 ..., 3771.31197331
3704.57136522 5513.49299446]
[2212]
[ 3805.24585277 5411.00332656 6838.19047702 ..., 5081.25978474
5493.56714713 3016.29540994]
[4297]
[ 4257.20072348 4236.53219037 4479.58536028 ..., 3383.63724415
3482.49824121 5365.05265585]
[3627]
[ 6280.25294077 5553.15802044 6001.01174803 ..., 5687.8568899
3653.13331265 7586.53089363]
[1787]
[ 3789.42581403 4297.34464524 5418.62095002 ..., 4058.28572183
2919.67703693 4479.39839711]
[383]
[ 4699.96968075 4840.28449577 6022.04732628 ..., 4558.07766498
3440.45069722 6156.32966954]
[1283]
[ 3767.2655866 5286.16600193 6739.43684591 ..., 4828.77738149
5645.24561025 3852.78418809]
[2150]
[ 5177.46743109 6166.67576576 7234.38138337 ..., 5906.03166263
7124.06197334 4478.88345461]
[3787]
[ 5250.47159787 4546.31708089 3483.81931219 ..., 3644.96159102
3529.25402883 6334.19781819]
[3144]
[ 5150.58462701 5432.53375507 6455.81063849 ..., 5494.30769069
3684.99606513 5828.67840938]
[1027]
[ 5856.57408388 6101.46302128 4615.40994929 ..., 4667.08827857
5394.42323145 5447.53375391]
[4571]
[ 3508.38823393 4714.99490986 5877.56437651 ..., 4277.67471882
4284.01167132 4185.25841496]
[1746]
[ 4216.36217609 4761.6046665 4581.48480299 ..., 3561.12440108
3339.36401131 5226.47472011]
[337]
[ 4039.53351267 5033.71552633 7658.17223625 ..., 5385.1053843
5634.33004003 4569.19653769]
[2684]
[ 4976.57914636 4630.0811008 4775.38155544 ..., 4365.25268455
4479.84865816 5616.69635996]
[3623]
[ 3846.51140646 4807.12294413 5545.99287775 ..., 3976.15002232
4021.29929252 4029.49053852]
[887]
[ 4840.99256351 4691.81009846 4880.36248654 ..., 3960.28231317
2882.95976385 5918.68507356]
[2796]
[ 7249.21306074 6620.17016398 5168.03957028 ..., 5759.20506667
4869.86960811 7941.62942978]
[105]
[ 6203.80173764 5160.39543058 3447.89457495 ..., 4233.91013131
3866.42134279 7150.72373959]
[811]
[ 4168.91484682 4409.82040451 4957.80576465 ..., 3863.52507433
3876.78487925 5156.27801811]
[1826]
[ 5277.17026445 5576.07308058 7274.96632295 ..., 6099.79483262
6885.19426015 5098.1163188 ]
[359]
[ 5320.15178355 4142.33702154 4133.25731113 ..., 3933.10945691
3121.50300336 6518.93158424]
[4540]
[ 5074.71112478 5223.90773272 4495.46504825 ..., 4193.35211972
4309.25504003 5856.33136016]
[69]
[ 5762.98906818 5329.7200677 3944.23731538 ..., 4155.62534404
4112.98711401 6449.7442585 ]
[4594]
[ 4674.8203174 4740.34597893 5881.51154041 ..., 4902.62378732
4832.98034343 5522.47073329]
[1141]
[ 2524.74137289 3601.7590147 5075.51810163 ..., 3110.13986824
3272.80995476 4057.51956249]
[3847]
[ 2938.49161986 4269.49786275 5515.56270928 ..., 3441.13237176
4212.68572291 3273.31559737]
[1838]
[ 4484.43106759 4502.95780571 5286.7416241 ..., 4118.65475611
4960.70055537 5476.27720263]
[2894]
[ 4500.26443667 5331.55033738 6983.4918916 ..., 5480.16049035
5603.43109175 4886.80161251]
[1161]
[ 3265.08728827 3706.23366775 4235.49878999 ..., 2802.06780789
2855.5270967 4315.7679502 ]
[2573]
[ 3804.69749126 5561.30578192 6950.73046521 ..., 4961.43588087
5194.30871243 3659.82882113]
[3166]
[ 7679.63833784 6561.40777577 6072.1617238 ..., 6386.19010052
5255.97650299 8073.17254863]
[1178]
[ 5743.51138242 4953.7422218 5711.5544294 ..., 5083.84500157
4279.35871364 6588.08811416]
[2229]
[ 2933.95773657 4228.17655734 5817.65545559 ..., 3872.40093482
4362.46696263 4025.78166323]
[420]
[ 3708.13659403 5381.68728188 5951.08964812 ..., 4208.01045626
4812.67004894 3672.9839368 ]
[3383]
[ 4082.09333553 4479.50320906 4615.51568083 ..., 3500.75034814
3009.03207028 5441.99356854]
[3608]
[ 3862.49401294 4610.39228266 5313.09900152 ..., 4151.87415513
3701.65503525 4858.19760817]
[337]
[ 4585.25997082 4699.94340391 6110.43468176 ..., 4729.19866362
5045.4683628 4946.62824558]
[986]
[ 2582.52744419 3633.2135913 5372.88032623 ..., 3416.66899187
3502.46741598 3942.6166438 ]
[1677]
[ 5929.91542941 4567.64162342 4233.31973751 ..., 4415.51695728
4055.66776253 7361.15079318]
[2172]
[ 4502.82167091 4716.24278425 4694.55620906 ..., 4001.04761281
4367.27592442 4865.59050887]
[1643]
[ 4359.19361809 4282.62979955 4454.2195725 ..., 3719.62551879
2589.6275794 5461.02014279]
[982]
[ 4126.95190183 4162.17527262 6035.10024772 ..., 4451.35361435
5028.81656058 5412.58718175]
[1933]
[ 2595.86575154 4070.73334916 5189.28280208 ..., 3308.5582963
3612.86576003 3208.02665201]
[1838]
[ 4882.27180726 3618.58936604 4095.50277744 ..., 3629.90096284
3873.23250012 5713.92632084]
[1323]
[ 3285.03652948 4127.35435842 5729.78830324 ..., 3749.9346661
4158.03138516 4204.81830761]
[2730]
[ 4554.90504841 4019.75036538 4511.71574902 ..., 3687.09167231
2699.45364843 5645.4592373 ]
[974]
[ 7076.34658563 6005.97985345 6348.25724116 ..., 6142.8283388
4264.28927255 8428.47845106]
[4645]
[ 4074.4653637 4611.44825407 5637.82183117 ..., 4224.75218208
3604.17646627 5209.03023604]
[2982]
[ 5836.6478393 5520.70276324 5707.93123645 ..., 5032.67632577
4157.20795727 6481.953255 ]
[2017]
[ 4009.05113462 4069.5955573 5090.8657417 ..., 3776.36571322
4246.39034946 3930.03549602]
[4755]
[ 3736.9032634 4289.75372253 5181.0497971 ..., 3729.25180164
3335.00224887 4370.74844849]
[254]
[ 3539.45885694 5291.16074222 6908.63922925 ..., 4889.19093511
4960.48717366 3392.02962841]
[4108]
[ 3309.69741819 3780.79779941 5310.92496652 ..., 3480.07212569
3671.43772928 4509.75819751]
[420]
[ 3414.33727098 4040.69523721 5475.8867775 ..., 3907.73387016
3028.4436597 4863.92650027]
[4808]
[ 3740.50157065 4983.59117505 6494.35008296 ..., 4716.43944093
5029.49679391 4380.58534901]
[1271]
[ 4057.86113612 6073.81379366 7329.25385015 ..., 5531.50775106
6597.71073934 3612.51837366]
[2112]
[ 2951.07488892 4665.42066699 6124.73542286 ..., 4191.82704796
4198.90402367 3023.87086364]
[931]
[ 3421.52422175 5402.84027156 6285.30293622 ..., 4618.98094822
5325.52495065 4452.55926406]
[1016]
[ 4506.17775948 4510.14822373 4883.81909984 ..., 3813.64746666
4645.38545225 5219.11735833]
[2894]
[ 3331.07460139 3786.05929695 4428.73808212 ..., 2995.68072398
3372.35526005 4233.1196534 ]
[420]
[ 3860.02603618 4502.6072447 5442.17346287 ..., 3895.50664227
3319.1500418 5058.29368463]
[2266]
[ 4320.28968936 4683.39684417 4896.41746586 ..., 4268.59930188
4202.7727752 4645.50610806]
[3948]
[ 3844.5980284 4105.0411691 4918.74668996 ..., 3747.22123713
3510.8346586 4839.98884296]
[3077]
[ 4212.29225007 5463.63020345 7280.07960121 ..., 5218.56829025
4972.08085212 4099.05550097]
[4200]
[ 6587.165779 5992.53085098 4350.61719759 ..., 5314.29619047
5325.57048587 7635.54208947]
[2953]
[ 3906.25959199 3982.54755151 4458.77595311 ..., 2992.05330835
3023.621008 4585.34033633]
[3164]
[ 3605.59578988 5358.07446757 7140.27100326 ..., 5020.89055846
5437.26135108 3397.90391271]
[4687]
[ 3414.5068458 4297.2370193 4619.81926053 ..., 3341.82465129
3882.68631234 4392.58568499]
[2573]
[ 4055.0234278 4721.00815504 4683.5330681 ..., 3533.45440044
4423.71484162 5221.26852403]
[4583]
[ 3557.49518622 4577.93588859 5061.87208452 ..., 3589.42404851
3947.19013983 4514.51968652]
[3873]
[ 4938.82749243 3984.37623725 3823.57502869 ..., 3479.82442086
4176.11194773 5962.45511514]
[1797]
[ 6558.89769702 5360.06865628 5095.35415845 ..., 5243.54479336
3986.5976722 7450.44461761]
[4056]
[ 4425.85584944 5145.92761317 4653.42658694 ..., 4111.82088618
3689.01179179 5390.82220074]
[4208]
[ 3254.75744104 3961.63539463 5850.97026142 ..., 4027.66818395
3021.70481682 4633.71621919]
[2106]
[ 3824.24345459 4410.30055665 5588.56645304 ..., 4237.93404857
4175.33591463 4681.11482448]
[985]
[ 5209.93234121 4241.86020515 5047.45876655 ..., 4351.72218782
3225.29456019 6075.34994877]
[2034]
[ 3693.90227267 4066.19515026 6244.59438234 ..., 4579.62607644
3699.56267686 4877.19673583]
[4808]
[ 4341.74676829 3995.94018974 4454.90920222 ..., 3539.37762891
4509.58213142 4925.35125651]
[4577]
[ 4260.28625799 5185.82491027 5997.73057081 ..., 4608.86949262
5295.42113528 4479.2263841 ]
[180]
[ 4847.0687018 5058.76388063 6766.8994377 ..., 5328.72855379
3747.83791005 5846.08817929]
[1221]
[ 3063.71424908 4363.45917822 5201.43710911 ..., 3566.17694457
3646.27686826 4304.01010687]
[804]
[ 4762.57461884 4652.64011073 7096.39204103 ..., 5560.23704531
5125.25735939 6396.52319624]
[1993]
[ 4717.77002407 4483.49941452 4667.76616809 ..., 3731.28597135
4112.33534625 5302.01471141]
[1284]
[ 4598.24607867 5340.46589728 5522.82463962 ..., 4495.58694722
4911.96997141 5660.1299455 ]
[4618]
[ 3930.34120656 5114.78103148 5441.85841418 ..., 4303.24610033
4359.29489711 4372.47481411]
[2595]
[ 6103.12862391 5010.52472302 3120.23268363 ..., 4039.71781193
4843.04212247 7264.88465153]
[2166]
[ 7708.0827707 6488.97811678 6104.15293059 ..., 6365.74528237
5233.32571125 8924.00829224]
[1965]
[ 3426.05385247 4051.55180147 5023.37555833 ..., 3566.79295727
2848.33442559 4656.95190012]
[933]
[ 4958.37372533 4665.63211152 4519.48658589 ..., 4146.98963105
3859.06724481 6124.19692694]
[767]
[ 3372.58936131 4007.94286386 4912.25304723 ..., 3378.80807386
2317.16529406 4882.77328984]
[2796]
[ 3729.0858129 4242.88086092 5042.13803857 ..., 3502.49054246
3668.97792307 4298.47682325]
[951]
[ 4462.79127901 4573.52894382 4671.27809063 ..., 3765.25815848
4406.02678158 5498.2226219 ]
[1092]
[ 5607.47768609 5185.03587259 3011.34571247 ..., 3604.02372356
4969.07677542 6386.04650782]
[1413]
[ 3730.84373835 4771.73741943 5282.39472209 ..., 3971.31111851
4861.29787197 4081.52434759]
[196]
[ 4541.02532475 4608.93089555 5338.90101051 ..., 4475.08971977
3869.46236576 5691.6891166 ]
[2859]
[ 5004.1321925 4383.32453738 5046.54594748 ..., 4307.83866922
4097.89470338 6551.27460881]
[971]
[ 4575.29933447 4063.30911942 5664.60051548 ..., 4237.32734162
4948.42035401 5435.27037046]
[733]
[ 5283.79305045 5125.06682883 4777.03652906 ..., 4262.30289867
3689.47570801 6114.78724078]
[4592]
[ 6628.92774135 5700.02877186 4323.31007447 ..., 4920.91983271
4329.65021682 7531.02907975]
[1770]
[ 3930.51039943 5284.61436625 5208.93242421 ..., 3879.25650093
3859.16467646 4793.70170119]
[2520]
[ 4249.17909719 4233.11114903 5755.76632604 ..., 4089.62614428
4884.83664005 4812.77082355]
[3987]
[ 5135.15170175 5453.90593978 6659.33089732 ..., 5445.53780631
4996.95637363 4704.16528196]
[4919]
[ 3890.17236122 3996.8575156 6401.04475847 ..., 4401.62674474
4150.2564981 4549.79636907]
[4153]
[ 3929.58840084 4264.92672856 4690.76902011 ..., 3589.12189818
2583.06852406 5451.22472478]
[2796]
[ 6287.78800533 5463.8899147 4474.16439126 ..., 4921.39014913
4195.21918379 7306.63876211]
[2833]
[ 5859.51994621 4987.52674178 3701.19075434 ..., 4025.52443788
4417.07052242 6727.22067425]
[2995]
[ 4115.70394951 3889.36292984 3882.07830936 ..., 3143.57821598
3578.13792356 4921.67176882]
[909]
[ 4638.49404441 5384.7282197 6420.16884513 ..., 5112.96880491
5531.68934413 4461.40303044]
[2253]
[ 3580.05237392 4163.86887402 4983.06150875 ..., 3495.86183938
4312.70877756 4633.80934006]
[1273]
[ 7151.02055654 5550.2839567 5027.12661468 ..., 5530.10234987
4911.81667003 8543.07702178]
[4828]
[ 4108.49449312 4220.46229695 4409.59975508 ..., 3132.93983345
3974.88502978 5142.52068542]
[1092]
[ 3215.72293583 4072.40702779 5236.70440258 ..., 3501.09054439
4287.63524568 4039.93613811]
[420]
[ 3317.77982995 4806.34705364 5949.19103744 ..., 3970.48359775
4813.55803954 4048.32273911]
[3193]
[ 3373.34774371 4106.86741934 4829.69025922 ..., 3312.70342772
4055.65716007 4138.61631466]
[420]
[ 5316.18566267 4750.90002 3331.98994596 ..., 3423.96918795
3971.34611939 6550.81002625]
[139]
[ 7981.59464017 7046.87576164 6826.1990888 ..., 7058.5516928
5125.97454149 8893.91887753]
[317]
[ 5464.86321878 4956.08343352 5348.46435905 ..., 4573.56086655
3616.91000717 6693.80444889]
[974]
[ 3335.85970928 4287.00116632 5356.65557974 ..., 3721.72957105
4526.30334821 4013.08758938]
[3178]
[ 8370.30136853 7487.37016582 7295.72244538 ..., 7448.85078385
5472.73249849 9433.67282664]
[4645]
[ 4487.40314659 4424.67309527 3898.30014237 ..., 3507.69696525
4032.12586609 5127.77836885]
[1092]
[ 3289.16828393 5170.56350894 7040.00987215 ..., 4795.93796874
4826.04475736 3904.19671636]
[2712]
[ 4990.11272418 4920.49875521 5361.0403841 ..., 4771.07136815
4149.26897176 5922.10123183]
[2993]
[ 4292.59828076 4364.5369743 4967.89321544 ..., 4001.06448336
3447.37581357 4881.98955345]
[2276]
[ 4009.43225407 4314.89490023 5373.13483918 ..., 3927.53103107
4761.75650364 4692.87811476]
[906]
[ 5496.18440375 4829.5726519 5996.46962804 ..., 4935.07021227
5652.02025828 5548.58044909]
[3259]
[ 3757.86308958 4576.28102284 5148.60427689 ..., 3615.17357813
3396.16121525 4965.91914956]
[3418]
[ 4047.57767066 5563.28194504 7816.57303427 ..., 5561.11697413
5706.05056059 4230.24455558]
[1842]
[ 4364.6868158 4847.96039588 5094.88115661 ..., 4105.9142709
4350.74395937 5050.55610799]
[4007]
[ 2839.88661745 4348.65507945 5770.78148954 ..., 3724.928053
3475.46745057 3769.32699563]
[2465]
[ 3736.38863075 4541.62074595 5545.07231693 ..., 4086.11343455
3878.92768687 5002.36963848]
[420]
[ 4299.90790599 4823.40512501 5414.08173193 ..., 4211.06601706
4377.02181854 4259.50630942]
[1220]
[ 4632.05515943 4267.57425243 4938.58461505 ..., 3868.10573795
4783.08258344 6038.04927108]
[4774]
[ 6166.14960895 5440.66631949 4786.07960653 ..., 4970.43398508
4123.50348611 7544.29287608]
[4221]
[ 5890.48104997 5656.402567 4004.74943036 ..., 4127.91666583
4513.68663068 7199.41879599]
[4858]
[ 4188.67377579 5443.93800479 6789.86295885 ..., 5202.9794349
5641.47090749 4990.87627577]
[1282]
[ 5306.68983454 5149.76271298 5166.02032516 ..., 4606.7196572
3338.67383852 6560.55996086]
[4750]
[ 5613.43370852 4419.7930947 3371.91977959 ..., 3781.5418813
3601.54133671 6533.65410777]
[566]
[ 5507.89024945 5199.48978266 3054.06646948 ..., 3650.31149356
4475.81176995 5697.9642856 ]
[4053]
[ 4022.66503701 5529.0777712 6659.77769899 ..., 4867.79693496
6030.41723266 3423.32411553]
[10]
[ 5543.92460266 5214.87209814 6456.89809429 ..., 5437.62696403
4838.4780665 5675.09700358]
[1533]
[ 4563.70112957 5133.61928857 4962.93370901 ..., 3940.60515657
4627.78932105 4576.11887957]
[1264]
[ 5327.70269441 4254.98260866 4862.5410024 ..., 4430.97494915
3312.94581906 6573.32594658]
[4540]
[ 5624.5881627 4775.38176484 5341.96677264 ..., 5017.24197144
3995.28647283 6324.28383297]
[3328]
[ 4158.84479153 3864.79637238 3990.89551354 ..., 3022.12094397
2991.07806652 5291.24200921]
[1284]
[ 5319.41312552 4598.23520495 4546.7083698 ..., 4403.68311757
3391.79981721 6809.73112538]
[1278]
[ 4716.70213179 4756.18397457 5713.2005041 ..., 4547.9923043
3926.44024531 4916.69045192]
[2540]
[ 2838.25086981 4018.58843377 5381.31312971 ..., 3834.15949068
3531.31533568 4024.81651756]
[1746]
[ 5963.51582542 6042.86223573 6000.77428337 ..., 5222.61792591
5323.22712271 5958.55544574]
[2224]
[ 5639.39908146 5053.88395197 4526.37062115 ..., 4354.16340989
4801.83110907 6945.1050388 ]
[1277]
[ 6270.12862707 5704.79237133 5408.31415508 ..., 5405.96411383
3654.10440464 6808.81274526]
[695]
[ 4519.6696782 5429.37022131 6949.82165239 ..., 5309.14597652
5915.26009572 5140.17567793]
[4393]
[ 2905.8289695 4049.90036914 6339.6576406 ..., 4368.3011572
4022.83134123 4159.2306981 ]
[1881]
[ 4868.28594066 4708.21208103 3708.99245079 ..., 3345.94127265
3895.0304235 5912.85328754]
[3784]
[ 4521.7278777 6190.40531791 7458.16358094 ..., 5820.65546137
6806.69853894 3818.62815681]
[781]
[ 4104.19638906 4741.72827142 6200.63375793 ..., 4603.40189425
3680.72655871 4877.53790349]
[3408]
[ 4530.61143776 4251.19148004 3883.55648858 ..., 3472.85545337
3322.78347173 5620.61437923]
[982]
[ 4337.02271149 5904.29530088 7385.54392039 ..., 5553.82309765
6795.3180941 4240.34857058]
[4087]
[ 3327.92623115 3796.66037459 4794.06257781 ..., 3378.29779623
2132.86028609 4807.98284107]
[933]
[ 5871.32497823 4631.31989826 4561.92875876 ..., 4315.8408219
4461.43015187 6828.54120585]
[2003]
[ 3739.49087444 4542.45869546 6410.5275134 ..., 4644.80989923
5043.21980485 4414.12029741]
[1842]
[ 3282.58952658 4312.3630413 5683.83893157 ..., 4082.53315969
3806.77947877 3794.92608624]
[3377]
[ 4093.42582686 4126.27943794 5341.04914787 ..., 3702.32035351
4539.56749041 4830.8559283 ]
[4491]
[ 6769.72480977 6164.92327608 6008.04951711 ..., 5537.70539122
4572.47438484 7513.75472051]
[3892]
[ 3993.69903723 4392.0741114 5038.02848344 ..., 3606.94510632
3542.40285682 5020.97301327]
[1867]
[ 5582.85500439 4622.23852695 6618.18925387 ..., 5559.29249096
4058.28264171 7314.72788284]
[3493]
[ 3570.03123236 3901.33515607 5421.91811078 ..., 3569.00042029
3345.80109989 4592.74743482]
[3873]
[ 4265.69466793 5278.3554257 5237.0892679 ..., 4457.95423933
4846.20521646 5492.70743805]
[4770]
[ 4478.16636582 4528.32231627 4305.85194822 ..., 3604.39717567
3937.61298251 5628.71530636]
[1092]
[ 3787.39725933 5068.10605651 6670.86553605 ..., 4897.5390759
4408.23842368 3442.41078316]
[2943]
[ 4375.80049819 4184.38346713 4184.14782244 ..., 3484.63097042
3902.86843232 5197.58944127]
[882]
[ 3323.50161727 5052.5122464 6118.41629836 ..., 4172.63705587
4749.60429931 3884.92895688]
[2842]
[ 3960.63378767 5473.66157156 6510.23924292 ..., 4743.28925958
5673.14128151 3955.54926654]
[1530]
[ 3641.5252299 4706.24744356 5548.02532438 ..., 3930.29019285
4428.51239131 4936.09116609]
[4661]
[ 4381.56193611 4025.20384577 5466.52595347 ..., 3953.8277656
3632.1121954 5036.50364837]
[592]
[ 3480.59319657 4624.37909346 5298.3533291 ..., 3866.91065322
4432.83442055 3221.79406542]
[10]
[ 5108.91818294 5055.84256084 4294.04191875 ..., 4070.5950425
4061.60202383 6160.18676665]
[1557]
[ 4487.07399092 3872.68434035 3978.37931827 ..., 3376.16172598
4086.73794119 5555.69896593]
[1711]
[ 4698.29522274 4850.57883144 6338.06950104 ..., 5114.54621643
4871.75245677 4595.78654857]
[3587]
[ 3563.29580585 4863.81599159 5612.82566984 ..., 3964.48987891
3949.54642965 4334.09563808]
[673]
[ 3765.90414111 3328.1026126 4129.81730831 ..., 2928.37856159
2865.46366231 4796.21830195]
[2859]
[ 6943.52331313 5621.35561942 6231.30780816 ..., 6010.26214071
4520.30706922 7826.04740594]
[2460]
[ 4247.23474746 4169.99112709 5094.53079292 ..., 4032.48434591
2416.46870454 5704.0923029 ]
[2543]
[ 4938.16220876 4162.00252282 5035.99453931 ..., 4140.64765466
3175.11291138 5770.72127208]
[2867]
[ 4361.0545743 5172.44777644 4466.19368142 ..., 3570.7534219
3974.88377189 4826.45138792]
[1563]
[ 5335.2443243 4731.44068968 4257.75844782 ..., 4083.02032814
5003.92625845 6725.74427108]
[31]
[ 4146.00904485 4086.08908371 5508.64647622 ..., 4389.04385943
4163.440044 5406.02820932]
[3953]
[ 4504.43170666 4263.18660159 5029.35244341 ..., 4258.21417968
2655.33820821 6158.02330298]
[1686]
[ 5532.74226763 5355.28729388 4173.1985335 ..., 4388.5086305
3891.41426733 5758.29879391]
[3984]
[ 5168.57223999 4980.45238909 5433.85774565 ..., 4486.56282693
3585.92763452 5999.71190975]
[2543]
[ 2687.58739393 4281.33332036 5684.21401779 ..., 3713.04416887
4050.17357653 3742.25039248]
[2983]
[ 3111.49578177 4499.92811054 6097.63454136 ..., 4236.96837373
4192.38977196 3803.26833132]
[2812]
[ 3175.3347855 4904.07279718 6641.27728679 ..., 4526.55321409
4504.98379575 3911.07593892]
[243]
[ 4853.10910654 4109.82809859 3813.42090517 ..., 3685.76979748
3603.89566997 5767.67214741]
[882]
[ 4728.09295594 5750.96165871 7595.40203018 ..., 5700.36226919
5043.1774706 4790.82738157]
[521]
[ 3509.62519366 4338.9139194 5195.27881831 ..., 3370.75807497
3491.33484501 4390.92871725]
[287]
[ 5019.0786007 5021.40289162 5651.80705615 ..., 4335.36238393
4503.09982123 6046.16556174]
[1067]
[ 2983.53531905 3612.63532619 5695.10667152 ..., 3541.21250421
3232.71696874 4231.13377241]
[4905]
[ 4885.10859654 4358.87795195 4074.98773004 ..., 3830.62201215
3168.20801085 5997.38376294]
[2868]
[ 4421.93475755 4478.83533968 4266.40316895 ..., 3536.91730183
2718.96138259 5058.98102388]
[2213]
[ 3850.63890803 5026.1340014 7042.86184729 ..., 5008.08815817
4698.24456579 4595.53631255]
[158]
[ 5346.04816664 4563.95223463 4840.45844936 ..., 4207.76353898
3302.12037939 6529.6683683 ]
[2868]
[ 5428.83136596 5502.69833809 5883.78475133 ..., 4617.51177584
4668.71781113 5902.01033547]
[4294]
[ 3810.97467848 4601.11214817 5460.01382782 ..., 3963.55837601
3643.36245795 4945.37218013]
[1926]
[ 3321.35574728 4900.88798076 6342.42942412 ..., 4428.83856107
5218.30853821 3043.23314914]
[3480]
[ 4939.40259546 5767.60808308 6639.9536896 ..., 5314.26128451
4176.23370994 5383.33855521]
[2553]
[ 5306.32057079 4358.42092965 5392.23673442 ..., 4788.67633068
4723.48134325 6308.05833835]
[328]
[ 4097.67787899 4039.16761227 4679.00320581 ..., 3593.36096155
3302.49299772 4876.81166337]
[2415]
[ 4894.7865122 5735.65863698 7291.90372948 ..., 5999.5469829
5548.1197716 4847.64860525]
[4350]
[ 3856.58514751 4600.84079272 5821.56044373 ..., 4051.05369009
3759.99694149 4471.75793173]
[2922]
[ 3419.95394706 4184.50833432 4647.71535273 ..., 3279.7631012
2934.76251169 4195.99678265]
[4224]
[ 5757.19098172 4907.44791108 3896.18800881 ..., 4205.25944503
4557.52761923 6770.17089888]
[983]
[ 3742.68085735 4510.90511982 5520.97174418 ..., 3911.16440462
3271.26122467 4542.234252 ]
[4703]
[ 3923.16300961 4456.73927889 4159.17864488 ..., 3106.13248269
3409.96304965 4803.72730283]
[558]
[ 5395.0660793 4553.1429804 4478.72381377 ..., 4019.88569489
3678.31156918 6643.879439 ]
[901]
[ 2788.68015376 4462.03787523 5875.61230852 ..., 3835.90328345
4399.66010051 3692.13041481]
[3193]
[ 4287.35979363 3735.0685402 3636.33593058 ..., 2987.71032732
2742.24834762 5296.41841247]
[2859]
[ 3441.83657369 4214.01044137 5805.72079935 ..., 4099.7692618
4201.20089974 3744.04874434]
[2943]
[ 5333.11916237 5240.32661196 5196.94477554 ..., 4548.33431049
3459.28171735 6050.6634347 ]
[820]
[ 4357.08606755 4134.65838976 3520.19374467 ..., 3074.59753464
4093.13461787 4858.9285856 ]
[3874]
[ 5481.29455512 4913.50638546 4017.1386583 ..., 3623.49375603
4036.86883612 5905.14673823]
[1185]
[ 4409.43136924 4818.49105011 5236.38195704 ..., 4039.48189747
4428.1902624 5082.49417117]
[420]
[ 4848.70467238 4054.19955108 4506.57253353 ..., 3756.67219757
3167.90261845 6208.61731789]
[974]
[ 4860.87080676 4081.50192944 5170.81289547 ..., 4329.96166265
3516.32635004 5583.43075537]
[557]
[ 3846.35788766 4388.96001349 5670.49433471 ..., 4235.4650276
4437.38470273 4727.92311697]
[3469]
[ 5805.43857086 5821.09491419 4205.74155174 ..., 4316.33108091
5184.42889815 6202.16486398]
[749]
[ 4707.23623796 4387.57655204 3837.29800771 ..., 3315.60763662
3310.3351794 5503.07704834]
[1431]
[ 3992.63659754 4827.03407902 7058.58101887 ..., 5194.20253744
5163.62982794 3839.86471116]
[2830]
[ 4420.35971387 3626.49927616 4760.42571626 ..., 3749.24512402
4016.24351851 5753.89711413]
[4758]
[ 6641.62645743 5795.25383396 4666.91793371 ..., 4994.676466
4283.40191904 7518.02540565]
[1853]
[ 4366.84428392 5008.8443777 5532.9572563 ..., 3866.32176623
5271.38814735 5300.16782753]
[4283]
[ 5366.93534524 5062.8772452 6361.85774755 ..., 5126.56824786
4537.30613911 5920.94156364]
[4398]
[ 3671.92919322 3858.60765044 4846.88157479 ..., 3521.04515734
3182.3673578 4448.65305458]
[4224]
[ 6960.92443573 6083.71366848 6338.13442584 ..., 6083.55504619
4128.24744898 8041.05223214]
[3979]
Got 137 / 500 correct => accuracy: 0.274000
You should expect to see approximately 27% accuracy. Now lets try out a larger k, say k = 5:
In [10]:
y_test_pred = classifier.predict_labels(dists, k=5)
num_correct = np.sum(y_test_pred == y_test)
accuracy = float(num_correct) / num_test
print 'Got %d / %d correct => accuracy: %f' % (num_correct, num_test, accuracy)
[ 3803.92350081 4210.59603857 5504.0544147 ..., 4007.64756434
4203.28086142 4354.20256764]
[ 420 3684 4224 1161 4550]
[4 4 4 6 6]
--------
[ 6336.83367306 5270.28006846 4040.63608854 ..., 4829.15334194
4694.09767687 7768.33347636]
[2192 4848 2166 2172 3644]
[9 8 8 8 0]
--------
[ 5224.83913628 4250.64289255 3773.94581307 ..., 3766.81549853
4464.99921613 6353.57190878]
[4469 909 3904 1726 139]
[8 8 8 5 8]
--------
[ 5265.83754022 4274.49459001 4593.32254474 ..., 4379.85913015
3793.64455372 6973.20378305]
[ 252 4453 4270 2172 3039]
[8 2 0 8 8]
--------
[ 3163.80277514 4231.52395716 6134.35889071 ..., 4178.39071893
3972.60292504 3877.14405201]
[1881 3949 3797 4604 4262]
[4 5 4 2 4]
--------
[ 3072.51281527 4256.22179873 5351.42317519 ..., 3754.21416544
4142.64854894 3646.74608384]
[2654 347 1983 2372 4130]
[4 6 5 2 6]
--------
[ 4184.89462233 5506.63908387 6925.23934604 ..., 5038.19074669
5926.91209653 4746.98883504]
[4033 831 22 3525 1184]
[3 4 6 6 2]
--------
[ 3356.5065172 4486.25757174 5965.07007503 ..., 4332.44169032
4558.70990523 3726.08776064]
[ 910 4055 1838 2746 347]
[2 4 2 7 6]
--------
[ 4473.69858171 4363.13579894 5621.05772964 ..., 4681.63112601
3155.1476986 6142.73107013]
[4808 1686 1283 4634 4306]
[5 8 2 2 2]
--------
[ 5739.62167743 4728.38555958 3968.28476801 ..., 4002.40752548
4012.45274115 6834.87198124]
[2096 4320 126 193 1462]
[8 8 1 8 9]
--------
[ 4058.38859648 3505.19514435 5098.57480086 ..., 3927.33968482
3423.31184674 5158.35632736]
[ 303 456 1759 4808 1540]
[2 8 0 5 0]
--------
[ 5153.76697184 4265.84845019 4162.67522154 ..., 3624.55169642
3953.39019071 5943.91571273]
[ 139 722 2905 4291 4207]
[8 7 4 9 8]
--------
[ 2942.02107402 4239.19791942 6763.42110178 ..., 4348.83720091
4953.46101226 4095.05995072]
[2745 3540 4124 528 894]
[5 4 3 4 5]
--------
[ 4627.67954811 5665.25030338 7142.30263991 ..., 5682.3863825
6417.46180355 5349.56970232]
[ 825 4279 920 359 3122]
[7 6 6 5 6]
--------
[ 4398.55760449 4804.13696724 4645.84093572 ..., 4209.23009587
4523.35926055 5104.65797091]
[ 271 4066 2749 1264 420]
[2 8 8 4 4]
--------
[ 4330.54984961 4103.7269646 4891.60229373 ..., 3939.09190043
3992.23045427 5313.59990967]
[4183 4453 1832 3121 2749]
[2 2 4 8 8]
--------
[ 4579.17306945 4897.26035657 6908.16437268 ..., 5295.11501292
5126.04447893 5480.34469719]
[4153 1160 2550 4808 1600]
[5 3 2 5 5]
--------
[ 4431.64687221 4923.45681407 5870.27844314 ..., 4502.91738765
3785.2740984 5014.46029 ]
[ 80 4864 4045 254 383]
[3 4 8 4 2]
--------
[ 6675.36748052 5550.12216082 3410.24720512 ..., 4630.4416636
5262.29750204 7676.64568676]
[3059 2192 2670 3115 2166]
[1 9 8 8 8]
--------
[ 3277.60461313 4735.42996992 6488.60008014 ..., 4806.14866603
4282.54503771 4459.69102069]
[1881 4139 4604 4112 2535]
[4 3 2 7 2]
--------
[ 4818.2787383 5257.01712 4803.80255631 ..., 4138.56968046
4339.79907369 4947.18910089]
[2693 1440 1038 3116 4703]
[2 2 6 4 2]
--------
[ 8358.5234342 7612.03947704 7209.52668349 ..., 7374.99891525
5607.20019261 9238.4372055 ]
[1522 3382 3842 2446 650]
[0 0 0 0 0]
--------
[ 4161.58299208 4640.33985824 5649.23870977 ..., 4165.11776544
5174.20148429 3703.73527672]
[4282 2277 2660 906 2350]
[0 0 0 0 0]
--------
[ 4268.78237909 5397.3536108 5867.83264928 ..., 4382.35918199
4749.11370679 4456.55775235]
[ 313 2196 2069 2812 4703]
[6 4 4 2 2]
--------
[ 4295.54897539 4390.43460263 4419.51513178 ..., 3598.51552727
2419.88698083 5356.52844667]
[2764 2859 982 1065 4998]
[2 0 4 2 4]
--------
[ 4245.5072724 4266.64259108 4641.95831519 ..., 3746.83933469
3906.23834398 4863.11340604]
[ 420 4224 3913 1728 4583]
[4 4 4 4 2]
--------
[ 4081.29758778 5313.8201889 6194.72057481 ..., 4474.2153502
4544.80604647 4112.63151765]
[1359 1126 1318 1491 673]
[2 6 6 4 2]
--------
[ 5081.85930541 4426.99841879 3833.71921246 ..., 3417.80704546
3818.87967865 5935.64200403]
[2074 711 3845 2905 898]
[7 4 2 4 7]
--------
[ 5164.73503677 5205.14677987 5306.66420645 ..., 4140.88311837
4181.02762488 5461.74440998]
[2678 571 2481 3061 254]
[2 6 7 9 4]
--------
[ 3452.37860033 4871.44075197 5697.71787648 ..., 3936.1576442
4839.97851235 4020.45892903]
[3712 1692 3178 2812 1530]
[6 4 3 2 2]
--------
[ 3891.64720909 5410.42724745 6272.16716933 ..., 4495.90847327
5491.04616626 3744.62174325]
[2124 1530 1596 626 4509]
[6 2 6 0 0]
--------
[ 3436.51189435 4168.70615419 4809.79012016 ..., 3444.19119678
2992.69343569 4918.1673416 ]
[2133 42 1143 3608 4703]
[2 2 4 2 2]
--------
[ 3076.6717407 3599.00541817 5651.55235312 ..., 3844.27106224
3158.56280609 4480.14966268]
[ 398 2522 130 4905 1677]
[4 5 4 4 2]
--------
[ 4714.41279482 5234.58966873 6054.42557143 ..., 5030.28716874
4311.76761897 5622.552801 ]
[1176 721 1962 3748 4449]
[6 6 3 5 3]
--------
[ 4767.1262832 4768.97389383 4094.15876585 ..., 3315.48578643
4780.3517653 5310.76651718]
[4066 3874 749 2820 2966]
[8 8 9 8 2]
--------
[ 4024.39001589 5124.62135187 6958.02328251 ..., 5535.65786515
5458.0442468 4529.5274588 ]
[3649 4565 1881 2873 3590]
[7 1 4 8 6]
--------
[ 3658.16798411 4170.55727691 4177.07313798 ..., 2880.44371582
3048.12877025 4920.9055061 ]
[2133 4208 3116 3164 2573]
[2 6 4 2 4]
--------
[ 5951.39655879 4927.53975123 4968.4562995 ..., 4847.22869277
4241.61183986 7251.67228989]
[2172 4540 3638 1709 3478]
[8 0 8 0 0]
--------
[ 5026.47122741 4646.61963152 4130.93839218 ..., 3875.12709469
3583.06642417 6224.97847386]
[ 982 1458 1360 3608 3638]
[4 2 6 2 8]
--------
[ 4153.85254914 4213.38509989 6450.09162726 ..., 4763.09395246
4080.55719235 5353.90110107]
[2567 993 1314 3408 3336]
[2 5 8 4 0]
--------
[ 4812.43119431 4516.33557212 5067.20781101 ..., 4297.28600398
4042.17985745 5665.50809725]
[3579 1404 4723 4502 4634]
[8 8 8 8 2]
--------
[ 4244.16917665 5887.33530555 6986.64533235 ..., 5224.32990918
6162.55141966 3787.01148665]
[1596 850 2124 1530 3588]
[6 3 6 2 6]
--------
[ 4806.17394608 5243.01373258 4825.88924448 ..., 4089.63580286
5182.57792995 4987.28062174]
[2966 3768 4066 626 4715]
[2 7 8 0 4]
--------
[ 3755.15472384 5130.8763384 6417.75163122 ..., 4573.10704008
4651.18920277 3363.29109653]
[2943 3670 552 1491 3217]
[4 8 6 4 4]
--------
[ 5499.12911287 4822.4213835 4937.04223194 ..., 4822.97066132
5027.27530577 6093.76771792]
[ 763 365 1999 983 2155]
[9 8 0 0 4]
--------
[ 5224.66180724 4697.41545959 4712.48851457 ..., 4512.34617466
4014.63958532 6207.85526571]
[1759 4540 1065 3745 2979]
[0 0 2 8 8]
--------
[ 3708.9315173 4830.66227344 6079.46757537 ..., 4180.46313224
4392.41425642 4828.2252433 ]
[1355 3935 2266 3173 3043]
[5 1 5 5 3]
--------
[ 3856.42230571 4291.71597383 5212.69623132 ..., 3841.30316429
4557.54659877 4798.08347155]
[ 564 1162 906 3065 2610]
[0 8 0 8 2]
--------
[ 2863.12696191 3984.09199191 5628.84206565 ..., 3741.81226146
3487.58971211 3761.76873292]
[3718 1746 3797 4262 622]
[4 4 4 4 4]
--------
[ 2914.81628924 4314.15240806 5279.99441288 ..., 3228.15256765
3939.64998445 3491.4108896 ]
[2812 4732 2983 2725 622]
[2 2 2 4 4]
--------
[ 5629.73187639 4981.01435453 3864.77476705 ..., 4155.70860384
5133.96328386 6423.57229274]
[4134 3640 1711 135 2664]
[7 8 0 8 9]
--------
[ 3932.81400526 3943.75062599 4663.98531301 ..., 3567.70276228
4212.54768519 4748.82743422]
[1092 906 3065 420 1141]
[8 0 8 4 8]
--------
[ 3008.85243905 4707.23931833 6684.6513746 ..., 4602.89104803
5305.96353173 3887.27603856]
[ 3 961 3170 132 3540]
[4 6 8 6 4]
--------
[ 3897.42042895 4573.09009314 5086.91547011 ..., 3498.99171191
4800.00145833 4581.38559827]
[3178 2966 4135 2372 2725]
[3 2 5 2 4]
--------
[ 5699.15011208 4213.03370506 4313.57241738 ..., 4016.1144157
4834.9595655 6841.48668054]
[2344 2003 1711 3904 4226]
[8 8 0 8 8]
--------
[ 4063.18594209 3371.6546383 3664.67147232 ..., 2817.18884706
3157.80335043 5321.91845109]
[1229 4298 1284 1323 2962]
[8 8 4 8 0]
--------
[ 4449.09811085 5011.09059986 6777.3048478 ..., 5097.81512023
4752.30996464 4917.22706411]
[3031 3408 4905 4153 1600]
[5 4 4 5 5]
--------
[ 4749.90357797 6037.73608234 7582.39889481 ..., 6009.57610818
6789.09021887 5085.43193839]
[3136 2602 3467 2134 850]
[0 6 1 6 3]
--------
[ 4221.78564117 3872.66407012 4291.01002096 ..., 3441.97777448
2977.89254339 5470.97340516]
[1759 1065 3627 4683 2859]
[0 2 7 0 0]
--------
[ 4036.86388178 4043.9160476 5418.53734877 ..., 3762.13808891
3225.44911601 4286.33083184]
[ 254 658 4398 349 2476]
[4 0 2 0 2]
--------
[ 4029.28455188 4620.30334502 5827.45836536 ..., 4364.32778329
2870.34353345 5024.88129213]
[ 254 1027 933 3326 42]
[4 6 2 4 2]
--------
[ 3617.02709418 5510.79232053 6697.39441873 ..., 4913.11550851
4705.6059121 4268.51976685]
[1537 1716 217 243 692]
[6 7 5 6 6]
--------
[ 4142.43756742 5722.50941458 7663.25753189 ..., 5936.03790419
6520.42414265 4559.51302224]
[2112 682 4284 4279 4126]
[6 6 6 6 6]
--------
[ 5751.90272866 5166.58223587 4162.54057037 ..., 3789.05766649
4538.58645395 6003.55136565]
[4128 4053 1726 3998 1185]
[3 4 5 8 0]
--------
[ 3513.53838744 4207.88391 4896.18024587 ..., 3525.65298916
3679.83668116 4051.73098811]
[4007 2695 4715 4224 1500]
[3 4 4 4 2]
--------
[ 3485.52248594 4910.88321995 6000.09516591 ..., 4361.53917786
4836.68388465 3194.09940359]
[ 910 180 1207 10 3528]
[2 4 2 4 6]
--------
[ 4157.34001496 3947.09323427 4926.94012547 ..., 3828.13387958
3778.06537794 5047.58060857]
[ 716 1404 1284 1973 4868]
[8 8 4 1 0]
--------
[ 6353.09656782 5298.91696481 5692.01062894 ..., 5279.38528619
4573.27847392 7029.50040899]
[ 786 3254 3918 2034 1620]
[8 2 0 0 2]
--------
[ 4559.41476508 5579.90842219 5659.64751553 ..., 4600.51671011
5599.18788754 4494.4711591 ]
[1345 3178 838 1530 2616]
[3 3 6 2 7]
--------
[ 5284.58002116 5056.84318523 3223.95176763 ..., 3685.3185751
4796.45723425 6122.02009144]
[ 749 4684 4775 139 1726]
[9 9 1 8 5]
--------
[ 4681.0371714 4087.96183935 4490.87274369 ..., 3833.51222771
2247.34621276 5985.47299718]
[2543 4683 1065 557 2867]
[2 0 2 0 2]
--------
[ 3324.74450146 4830.37068971 6475.32261745 ..., 4594.25086385
4822.28514296 3327.94080476]
[1695 1917 347 4510 2812]
[4 6 6 7 2]
--------
[ 4943.90665365 3964.63012146 4150.47129854 ..., 3726.81392076
2735.79622779 6389.54043731]
[3579 4540 4807 1686 1106]
[8 0 8 8 8]
--------
[ 3995.9639638 3787.62418938 4688.156674 ..., 3674.68760577
3912.5273162 5289.57994552]
[1039 3121 1162 1092 4758]
[0 8 8 8 8]
--------
[ 5973.57991493 5612.49712695 3073.81066431 ..., 3931.46028849
4567.24085198 6709.02832011]
[4053 3304 4544 407 3882]
[4 0 7 0 9]
--------
[ 3756.28380184 4339.38348156 5374.2321312 ..., 3665.94776286
3092.8249223 4726.415132 ]
[3418 2197 800 933 2415]
[4 3 2 2 4]
--------
[ 4609.0845078 4360.7505088 4425.32202218 ..., 3694.97916097
3755.96671977 5366.34624302]
[1360 4228 4527 1759 2540]
[6 2 4 0 2]
--------
[ 3769.56111504 4608.81112653 6102.5394714 ..., 4270.41660731
5041.77062152 4823.44472343]
[4310 2745 2181 197 4755]
[3 5 3 3 2]
--------
[ 3748.41379786 5362.00904512 6661.81604369 ..., 4858.57911328
5717.11325758 4283.14043664]
[4907 4324 2842 4103 4946]
[6 6 4 4 6]
--------
[ 7573.20084244 6364.44043102 5709.50435677 ..., 6085.26153916
4752.26966827 8823.96095866]
[3503 2176 782 1618 2464]
[8 8 0 5 8]
--------
[ 5737.06553911 4639.05248946 3802.73164975 ..., 4117.02101039
3512.50352313 6987.2076683 ]
[3638 2172 4540 4724 1119]
[8 8 0 8 0]
--------
[ 4581.18008814 5945.5818891 7699.29074656 ..., 5787.91430483
6851.54092157 5391.95947685]
[ 850 1367 1351 1982 3664]
[3 6 3 6 4]
--------
[ 3760.95413426 4617.53429874 5751.88934177 ..., 4155.21611953
3858.62281131 4536.53678482]
[3949 3841 420 4685 830]
[5 6 4 6 2]
--------
[ 6090.10878392 5158.12310826 5516.53876992 ..., 5219.27523704
3584.4214317 7342.74179037]
[2341 4056 2441 3669 3263]
[0 2 8 2 0]
--------
[ 6325.78872553 5204.58201972 5109.50095411 ..., 5266.6387763
3783.6118987 7696.19834724]
[1118 2346 4471 4056 3263]
[7 2 2 2 0]
--------
[ 5152.01853646 5099.68410786 4005.02334575 ..., 3832.87281292
4596.83662968 5222.30973804]
[3116 2840 4066 271 111]
[4 9 8 2 8]
--------
[ 5045.3214962 4844.92394161 5557.41774568 ..., 4913.83780766
5222.08646041 4929.05782072]
[4827 4034 1469 47 4577]
[3 2 7 2 0]
--------
[ 6754.31891459 5330.86981646 4532.39594475 ..., 5201.2926278
4644.08957709 8273.5453102 ]
[2172 2577 185 3449 676]
[8 8 0 8 1]
--------
[ 5887.95550255 5099.76401415 3780.54295042 ..., 4486.54488443
4023.97117286 7366.22141943]
[2172 1770 3304 3215 566]
[8 8 0 8 8]
--------
[ 4482.22121275 4192.79429498 4170.05611473 ..., 3369.6667491
3695.37210576 5330.27400797]
[1229 1431 1999 69 1166]
[8 8 0 8 0]
--------
[ 4168.97349476 3680.52971731 5076.74708844 ..., 3704.31788593
3654.34481132 5400.47590496]
[1759 4861 3034 1973 3157]
[0 0 1 1 7]
--------
[ 3170.1892688 4747.643942 5913.72327726 ..., 4147.72431581
4573.78486595 3640.86253517]
[ 979 4550 1530 1838 2812]
[4 6 2 2 2]
--------
[ 6382.8256282 4955.39060014 4972.46035681 ..., 5162.5838492
4463.0284561 8020.21502206]
[2172 1278 3215 2462 2707]
[8 0 8 8 0]
--------
[ 4916.61763817 4754.31214793 4070.25846845 ..., 3582.5055478
3923.12592202 5646.34864315]
[4172 1458 1563 2989 909]
[1 2 6 6 8]
--------
[ 3397.22533842 4439.02478029 5235.63606451 ..., 3569.22722729
4483.718323 3471.2450216 ]
[ 10 2253 2725 3226 1798]
[4 4 4 2 2]
--------
[ 3946.48793233 4481.74809645 4901.45264182 ..., 3861.16744004
3558.74542501 5292.67541041]
[1759 933 2576 130 1677]
[0 2 4 4 2]
--------
[ 3034.29547012 4288.91244956 5681.02261921 ..., 3926.79003768
3978.70519139 4044.56066835]
[ 347 420 3684 1968 4429]
[6 4 4 4 4]
--------
[ 3911.04269984 3579.76814892 4606.81495179 ..., 3562.89713576
2811.41903671 4950.84507938]
[1759 2859 303 974 2534]
[0 0 2 0 8]
--------
[ 8149.92343522 7187.84578299 7461.71528538 ..., 7237.60740853
5488.06869491 9019.83869035]
[3842 266 317 108 3892]
[0 3 0 2 6]
--------
[ 5831.88288634 5610.31915313 4995.51428784 ..., 4809.21521664
3805.30629516 7316.08761566]
[1770 1882 2233 982 4082]
[8 4 0 4 6]
--------
[ 3770.53948395 4046.54927067 5971.03935676 ..., 4227.17080327
3751.46451403 3955.54850811]
[3408 2922 2301 4905 3377]
[4 4 7 4 4]
--------
[ 4230.47030482 4558.41463669 6452.11965171 ..., 4928.21691893
3675.90329035 5031.24109937]
[ 662 1221 2922 373 1366]
[7 4 4 0 4]
--------
[ 4431.36277007 6043.36404662 7853.55480022 ..., 5926.77391167
7036.15733195 4228.51463282]
[3048 1351 4087 918 1730]
[6 3 3 5 6]
--------
[ 5178.24700068 4900.63148992 5268.27970024 ..., 4454.05219996
4628.45827463 5692.10224785]
[4195 3654 4445 3749 3077]
[4 3 7 3 4]
--------
[ 4118.3207743 4355.21055748 6147.32632939 ..., 4593.77393871
4440.36012053 4194.26465546]
[1559 2922 250 4224 149]
[1 4 1 4 4]
--------
[ 7659.62655748 6397.34069751 5315.89766643 ..., 6022.63762815
5297.12818421 8549.64636696]
[3452 524 1597 676 1392]
[1 1 8 1 8]
--------
[ 3473.87838014 4509.53212651 6315.44915267 ..., 4364.16017121
4849.24024977 3669.97915525]
[1881 3528 1917 4421 3260]
[4 6 6 6 4]
--------
[ 3509.90740619 5091.94923384 6187.79128607 ..., 4269.14593332
5312.20425059 3619.35436231]
[4907 2650 4732 2124 3226]
[6 6 2 6 2]
--------
[ 4222.18308461 4340.21554764 6546.07569464 ..., 4990.47001794
4586.76356487 5470.33472468]
[4808 1091 1933 4923 1161]
[5 5 6 8 6]
--------
[ 5315.61031303 5615.3470062 8373.19317823 ..., 6463.89232584
6176.2455424 5418.54897551]
[2108 3303 4153 4881 157]
[5 8 5 6 5]
--------
[ 3061.28600428 4776.74920841 5712.50724288 ..., 3901.54520671
3751.25285738 4795.48078924]
[3855 804 2041 4349 58]
[4 2 2 3 4]
--------
[ 5509.92967287 5491.21880824 6728.79929854 ..., 5701.43297777
4443.45845035 6725.75847024]
[ 373 4190 4588 4353 1283]
[0 6 2 0 2]
--------
[ 4372.50843338 4773.64671923 4320.32394619 ..., 3769.75635817
2878.28177912 5772.23301678]
[4954 4752 1132 4208 4789]
[3 6 6 6 6]
--------
[ 3605.15824895 3733.59036318 4556.69189215 ..., 3442.55239612
2980.04463054 4846.84268364]
[2859 4224 1143 1759 3164]
[0 4 4 0 2]
--------
[ 4406.34655923 4541.45802579 4006.67755129 ..., 3338.05347471
3604.13401527 5506.68066988]
[ 982 1284 102 4254 4119]
[4 4 9 7 7]
--------
[ 4766.67808856 5345.94397651 4749.92536783 ..., 4067.50377996
4518.9525335 4565.57553875]
[4987 2678 1937 1101 3835]
[4 2 4 6 7]
--------
[ 4763.84235675 4579.56886617 5034.88023691 ..., 4135.65339457
3396.52381119 5509.99491833]
[2867 2066 153 4398 303]
[2 0 4 2 2]
--------
[ 5120.83801736 4958.00635336 4574.01956708 ..., 4042.01595742
4559.79999561 5755.67215884]
[ 271 4066 3919 2905 909]
[2 8 4 4 8]
--------
[ 5277.6304342 6787.28207753 8059.37367294 ..., 6258.37183299
7585.46471879 4129.20876198]
[4741 1843 781 918 1387]
[4 8 6 5 4]
--------
[ 3865.52415592 5175.85876933 7168.33844067 ..., 5235.26847449
4580.31036066 4303.35113603]
[ 692 521 3182 86 2990]
[6 4 4 4 4]
--------
[ 4941.97844997 3996.24498749 3504.98559198 ..., 3477.24028505
3208.15757094 6242.08610963]
[2172 3638 4540 199 4226]
[8 8 0 0 8]
--------
[ 3873.69139194 5962.3746947 8006.03909558 ..., 5785.97563078
5924.02574269 3331.45868952]
[ 959 3219 3897 4108 1122]
[4 4 4 3 2]
--------
[ 3795.03833973 4331.72840792 5370.52371748 ..., 3789.81173675
4441.00911956 4266.73950459]
[ 420 2812 4647 564 906]
[4 2 2 0 0]
--------
[ 4601.81724974 5059.80819795 4606.4275746 ..., 3715.06837084
3125.90498896 5705.83683608]
[2583 2982 4208 3608 3181]
[6 3 6 2 2]
--------
[ 5636.91901663 4906.50028024 3738.11061902 ..., 4005.17402868
3562.17265163 6403.36458434]
[1770 987 554 1665 600]
[8 8 8 8 0]
--------
[ 3600.42219747 4050.81337511 4829.28535086 ..., 3331.04833348
3596.71767032 4587.00708524]
[2133 4224 420 4429 3164]
[2 4 4 4 2]
--------
[ 4042.74374652 3564.60797284 4341.4184318 ..., 3186.87401696
3616.06872169 5011.7947883 ]
[1759 2310 3246 592 1643]
[0 6 0 8 8]
--------
[ 3519.44811014 4407.51108904 6216.93976165 ..., 4169.24333663
4736.35756674 3889.91658008]
[4755 2730 197 1842 1207]
[2 5 3 6 2]
--------
[ 4852.69358192 6097.57476379 7912.94812317 ..., 6135.7038716
5206.28687262 4655.46807529]
[4590 4801 3989 4773 4969]
[6 4 7 4 4]
--------
[ 4420.0635742 4182.08835392 4744.99978925 ..., 4011.18598422
2806.05987106 5726.59445046]
[2993 120 827 1065 1759]
[2 2 2 2 0]
--------
[ 4352.03607522 4649.34350204 5795.9433227 ..., 4608.71359492
2441.3479883 5664.86804789]
[ 403 2543 1283 4998 383]
[2 2 2 4 2]
--------
[ 5951.89020396 5259.92395382 4381.37261597 ..., 4630.80273819
4136.1154481 7442.41298236]
[2362 2768 3922 4540 2172]
[1 9 1 0 8]
--------
[ 5061.85618128 4430.99729181 4035.13878324 ..., 3555.0275667
4082.78287446 5554.68216913]
[3246 1708 4794 592 4277]
[0 0 8 8 8]
--------
[ 5326.73896488 5936.44279009 6110.54097441 ..., 4853.80294202
4569.80699811 5943.81863788]
[1690 4472 2017 4452 2084]
[6 3 5 6 1]
--------
[ 6090.15607353 5972.1041518 6152.61440365 ..., 5515.23671296
4127.42886068 6505.49559988]
[3411 2017 203 695 820]
[6 5 3 0 2]
--------
[ 4115.01287969 3913.40618899 4972.93193197 ..., 4062.56396873
3445.77872186 5332.35060738]
[ 767 3077 2093 557 2993]
[5 4 2 0 2]
--------
[ 5093.94179394 4762.94173804 4049.74048551 ..., 3784.74226335
4853.44959797 5693.30264434]
[4164 4128 4545 1711 4775]
[9 3 9 0 1]
--------
[ 4677.40825672 4542.73518929 4860.73008919 ..., 4108.82623142
3510.28232483 5804.47930481]
[ 974 3376 1759 982 1065]
[0 3 0 4 2]
--------
[ 2588.50922347 4265.33246066 5545.77956648 ..., 3511.50295458
3831.7139768 3759.4105921 ]
[3558 622 2983 1184 4732]
[2 4 2 2 2]
--------
[ 4755.46927232 3925.5502799 4041.9016564 ..., 3643.11364083
3311.12005219 6048.74251394]
[4320 3039 793 1229 3579]
[8 8 8 8 8]
--------
[ 3427.8809781 3919.49779946 4535.80125226 ..., 3129.2959272
3092.77027922 4727.49701216]
[3164 130 1759 933 4224]
[2 4 0 2 4]
--------
[ 4608.26496634 3963.12414643 5186.68767134 ..., 4349.93896509
4302.74865638 6054.97299746]
[4453 1759 3121 1873 4032]
[2 0 8 5 4]
--------
[ 6424.07137258 6009.41078642 5770.87359071 ..., 5280.11363514
4159.67414589 7408.18095081]
[1017 3985 3634 3892 4027]
[6 4 8 6 0]
--------
[ 3658.87523701 4254.31768912 5722.75519309 ..., 4126.63894713
4414.59918905 4316.31416836]
[4956 849 784 4583 986]
[5 2 5 2 2]
--------
[ 5601.08319881 4690.18890878 5778.52264857 ..., 5044.61237361
5245.28712274 6453.23662979]
[ 562 2272 252 1398 3995]
[8 8 8 8 5]
--------
[ 5694.83950608 5161.04563049 4126.53971264 ..., 4496.53333136
3892.09904807 7029.85412366]
[4985 4113 1139 1665 3438]
[4 2 2 8 0]
--------
[ 3888.29988555 5529.2682156 6798.27720823 ..., 4921.73373924
6073.15436985 3223.20089352]
[4426 1136 2112 1596 3843]
[2 5 6 6 3]
--------
[ 4926.79236421 5034.85610519 6209.99855072 ..., 4893.41026279
4968.30041362 4755.5713642 ]
[4463 3194 1600 4755 986]
[5 3 5 2 2]
--------
[ 4563.04887109 5547.63300877 7604.09218776 ..., 5638.93057237
5994.48655016 5011.07144232]
[ 157 1160 931 197 1600]
[5 3 6 3 5]
--------
[ 4408.71897494 4985.11263664 5989.8575943 ..., 4584.55733959
5659.44599762 5032.86707553]
[4283 1036 4166 4579 3152]
[8 8 3 5 5]
--------
[ 5631.44262157 5091.6265574 4668.82437022 ..., 4597.32085023
4398.75368713 6378.20444953]
[ 600 3246 2868 3617 1593]
[0 0 2 3 0]
--------
[ 5275.1881483 4992.61344388 5352.02438335 ..., 4545.09394842
5535.15492105 5175.33689725]
[ 101 338 2472 4164 1120]
[3 7 7 9 3]
--------
[ 4030.13883136 4791.4292231 5352.30324253 ..., 4185.34992563
4792.84351925 4373.11433649]
[ 710 2595 2782 1798 2350]
[6 2 3 2 0]
--------
[ 5449.60457281 5218.34830191 5366.95043763 ..., 4580.7011472
3931.28859282 6415.93765556]
[ 341 974 2193 987 1972]
[0 0 2 8 9]
--------
[ 5022.10085522 5700.64154284 7091.807527 ..., 5582.33266655
5236.19928956 3958.86486256]
[3670 4773 1491 2943 4801]
[8 4 4 4 4]
--------
[ 3725.92216773 4888.64531338 6573.99596897 ..., 4647.05831683
5033.28918303 3978.15510004]
[1324 1881 2116 2130 2694]
[4 4 4 3 6]
--------
[ 5274.21643469 5009.97584825 5852.8047977 ..., 4968.74873585
3078.16325103 7030.64982772]
[2441 957 2034 1432 2617]
[8 2 0 0 0]
--------
[ 5216.97901088 4324.00820998 3900.21217372 ..., 3989.02757574
3953.96307519 6308.71444908]
[4834 2483 139 793 1711]
[8 8 8 8 0]
--------
[ 3250.6304004 4845.4010154 5992.04597779 ..., 3981.60633413
4114.03913448 4151.83332999]
[2266 3949 2400 3873 3684]
[5 5 6 6 4]
--------
[ 4145.06767134 4076.83958478 4154.02130471 ..., 3377.49448556
3364.07372095 4673.06430514]
[4527 1500 4868 592 716]
[4 2 0 8 8]
--------
[ 5664.28459737 5213.75977582 5637.44543211 ..., 5074.15914216
3750.74979171 6536.45163678]
[ 348 2017 820 2598 349]
[0 5 2 0 0]
--------
[ 3927.66584628 5532.15310706 7521.92781141 ..., 5435.98123617
5952.82243982 4006.35732306]
[3189 1299 2112 4213 2535]
[4 4 6 4 2]
--------
[ 4503.51029753 4866.86737029 5817.33375353 ..., 4753.03376803
4757.51121911 5782.11527038]
[3403 3080 1164 1542 773]
[6 5 3 2 8]
--------
[ 3184.12452646 4362.90476632 5681.06521702 ..., 3931.51853614
4112.88621287 3830.89532616]
[3393 2983 1838 1746 622]
[4 2 2 4 4]
--------
[ 5701.50252127 4497.15687963 4575.08185719 ..., 4521.11004069
4158.22426043 6430.59211893]
[2881 659 3438 2675 1278]
[8 9 0 0 0]
--------
[ 4731.34621435 4583.17771857 4362.90591235 ..., 3830.87170237
3732.57565228 5007.33032663]
[4018 4527 898 3878 3438]
[0 4 7 9 0]
--------
[ 5529.80126225 4297.59479244 3728.5250435 ..., 4005.57698715
3600.62883397 6846.65597208]
[2172 4540 566 252 3638]
[8 0 8 8 8]
--------
[ 2811.81916204 4159.0746567 5141.04697508 ..., 3288.26428378
4142.5179541 3453.83858916]
[4550 2372 2812 1838 347]
[6 2 2 2 6]
--------
[ 5203.22121383 5117.13923985 4657.45466967 ..., 4011.36959155
3476.01251436 6389.15996043]
[2017 4804 762 2893 820]
[5 8 5 6 2]
--------
[ 5576.06868681 4956.84405645 3185.94052047 ..., 3608.84843129
4475.64520488 6525.69505877]
[3063 749 4544 165 4053]
[0 9 7 0 4]
--------
[ 5135.76274764 4645.99332759 5278.89363409 ..., 4513.89033983
3875.15638394 6839.00380172]
[3039 3579 1439 4489 1106]
[8 8 8 9 8]
--------
[ 5658.26236578 5166.3658407 3978.55878428 ..., 4233.03886115
3740.87142254 6640.96551715]
[ 898 4427 4794 3573 982]
[7 7 8 7 4]
--------
[ 4034.71510766 3841.6841359 4318.30672834 ..., 3338.05946622
2797.6776083 4871.78139904]
[ 592 1759 2993 2213 383]
[8 0 2 4 2]
--------
[ 4432.733017 4492.61605304 5256.07943243 ..., 4043.79042484
4808.24562601 5171.9706109 ]
[3065 1162 4925 2894 4758]
[8 8 0 2 8]
--------
[ 4176.30267102 4676.69744585 5201.77979157 ..., 3815.75615049
4347.93836203 4062.26291616]
[1826 887 4224 2966 1776]
[4 4 4 2 7]
--------
[ 6191.71866286 5532.43897391 4565.94623271 ..., 4934.86585431
4879.95922114 6242.17205787]
[1640 4557 4291 1195 2905]
[4 1 9 0 4]
--------
[ 5023.74551505 4739.7419761 5695.58706368 ..., 4492.52913179
4395.17041763 5042.98671424]
[3549 2777 3049 1713 2247]
[0 6 0 5 2]
--------
[ 3637.60044535 4690.8464055 4953.25892721 ..., 3623.27282991
3722.64704209 4754.28385774]
[ 951 4703 337 3403 2069]
[4 2 5 6 4]
--------
[ 3554.09636898 4166.91828574 5086.48641009 ..., 3554.66791698
3813.76336445 4382.86493061]
[ 420 3873 2595 4235 4868]
[4 6 2 6 0]
--------
[ 5619.37825742 5157.31761675 3959.66854673 ..., 4375.11954122
4226.31092089 6526.87704802]
[ 554 2882 4060 1139 4571]
[8 0 0 2 0]
--------
[ 6163.86161428 5294.73162682 5634.37955768 ..., 4881.51011471
4358.588533 7611.18952595]
[ 596 2162 743 3860 1439]
[8 3 1 8 8]
--------
[ 6353.39405357 5912.21980309 5170.27649164 ..., 5305.33344852
4428.29628638 7087.27267713]
[ 695 3985 1158 3634 1722]
[0 4 4 8 6]
--------
[ 3639.78103737 4342.43330404 5145.45168085 ..., 3808.79705419
3209.93208651 4747.18295413]
[4211 933 990 2133 3506]
[2 2 2 2 2]
--------
[ 3254.9938556 3532.2061095 4594.06443142 ..., 3040.65782356
3134.47523519 4216.15334161]
[ 420 1500 4868 4224 564]
[4 2 0 4 0]
--------
[ 5567.05658315 5299.72169081 5077.03259789 ..., 4821.84653426
3302.24787077 6501.15274394]
[ 695 2794 3010 2977 3962]
[0 5 6 7 0]
--------
[ 3990.23796283 3744.72028328 4997.03712214 ..., 3833.67317334
3261.65310847 5294.1884175 ]
[ 974 1720 3157 1759 4453]
[0 8 7 0 2]
--------
[ 4202.36278777 5847.53948255 6996.50169728 ..., 5134.16692366
6329.56278111 3768.31567149]
[2112 2507 4217 1596 2124]
[6 2 6 6 6]
--------
[ 4351.63291191 4202.2332158 4907.81478868 ..., 3804.4476603
3403.37553026 4849.6328727 ]
[4346 2875 3739 571 2310]
[3 2 6 6 6]
--------
[ 7161.33353503 6701.49513169 6056.37077795 ..., 5873.45171088
5192.96158276 8234.59203604]
[3482 691 4322 3004 1028]
[8 3 0 6 9]
--------
[ 6068.77343456 4869.67986627 5079.3753553 ..., 4934.64345217
5266.83785587 6205.80913338]
[4277 1243 3745 1323 3829]
[8 0 8 8 8]
--------
[ 4691.56764845 4713.20039888 4885.15240295 ..., 3901.06857156
3587.70832148 6355.40517984]
[2723 144 3359 4954 2543]
[3 2 8 3 2]
--------
[ 4064.71388907 4033.73524168 5916.35140944 ..., 4240.50916754
3688.68445384 4577.47736204]
[3587 254 4808 3408 2426]
[4 4 5 4 8]
--------
[ 4363.14072659 4720.71520005 5222.73338397 ..., 3980.75872165
4155.68345763 5616.00774572]
[1788 1143 2133 3535 1404]
[2 4 2 2 8]
--------
[ 3430.7668239 5074.29581321 6803.60948321 ..., 4947.58183358
5165.66075154 4068.61733271]
[2535 2130 243 4628 1881]
[2 3 6 3 4]
--------
[ 3317.51051242 4576.26496173 5001.96211501 ..., 3552.3827215
3601.31975809 4157.1723563 ]
[ 951 4703 1220 1126 4429]
[4 2 6 6 4]
--------
[ 3509.28126544 4874.00143619 6306.1124316 ..., 4440.0914405
5053.63760078 3535.08062143]
[2116 4628 54 2650 3226]
[4 3 2 6 2]
--------
[ 4839.16697377 4794.96715317 5370.50295596 ..., 4177.20791917
4435.42455691 5945.82332398]
[2979 1463 2344 1564 1926]
[8 0 8 8 0]
--------
[ 6519.98397237 5506.37866479 5934.84624906 ..., 5750.18660567
3842.27289505 8223.76708085]
[2176 2391 1432 4056 4765]
[8 0 0 2 0]
--------
[ 5559.31740414 6648.16523561 7326.90964869 ..., 6172.97861652
6037.79098678 5537.50972911]
[4184 2699 2223 4790 4232]
[4 3 3 7 4]
--------
[ 4105.76046549 4057.06913917 6088.67801744 ..., 4697.62557043
3370.95401927 5204.58307648]
[2567 3458 4808 3738 952]
[2 6 5 8 7]
--------
[ 4957.64056785 5209.68261989 4871.54749541 ..., 4482.88601238
4369.28689834 5722.55904295]
[ 18 3939 1220 3617 560]
[2 7 6 3 2]
--------
[ 5854.15963226 4949.37874889 2999.90933196 ..., 3827.14750173
4362.71417812 6806.45333489]
[4053 448 3573 3304 3882]
[4 0 7 0 9]
--------
[ 5106.63969749 4579.85960484 4034.28853703 ..., 3643.21808296
3728.34319772 5415.6108612 ]
[ 554 1323 379 3829 1229]
[8 8 8 8 8]
--------
[ 4870.62172623 5482.49149566 6587.01335963 ..., 5377.46213376
5423.90578827 5197.01548968]
[ 910 2018 263 4007 3581]
[2 8 4 3 7]
--------
[ 4294.39006146 4665.52237161 4914.88829985 ..., 3722.08637729
4922.68341456 4498.95743478]
[2725 4647 3178 4066 4304]
[4 2 3 8 8]
--------
[ 4099.12844395 4238.34932491 5727.50285901 ..., 4235.90922943
2922.53759599 5561.5524811 ]
[ 403 4808 3046 2106 3759]
[2 5 4 4 4]
--------
[ 4097.34474996 4553.65710172 5890.62297215 ..., 4353.29266188
5527.68939069 4343.63304159]
[2350 2277 2789 3789 1282]
[0 0 2 0 8]
--------
[ 3385.74437901 4383.53145306 5569.51613697 ..., 3723.4615615
3256.21298443 4969.08170591]
[ 933 4521 4211 3418 2133]
[2 2 2 4 2]
--------
[ 4144.46582807 4580.34343691 5321.35471473 ..., 4053.02528983
2950.09372732 5169.88868352]
[1220 383 933 120 254]
[6 2 2 2 4]
--------
[ 5508.55552754 4128.12947956 4290.3777223 ..., 4254.25116795
4233.50067911 6932.87862291]
[2171 4455 252 309 3039]
[0 2 8 8 8]
--------
[ 3767.5417715 4359.72774379 4304.43097285 ..., 3197.47431577
3457.59150277 4530.47756865]
[1563 2875 4224 951 2695]
[6 2 4 4 4]
--------
[ 5143.11238454 4626.66294428 4422.67679127 ..., 4071.55596793
4754.66812722 6240.6774472 ]
[ 121 1506 909 3967 3236]
[2 8 8 8 4]
--------
[ 6791.63588541 5878.67119339 6575.33641725 ..., 5988.37331836
4834.75128626 8294.97619044]
[3436 4552 2079 2858 3979]
[2 0 2 4 0]
--------
[ 5171.43152328 4833.6349676 3962.47637217 ..., 3745.02403197
4261.12778499 6305.17850659]
[ 558 4254 3784 909 3919]
[2 7 4 8 4]
--------
[ 4643.59892756 3994.08262308 4456.75554636 ..., 3593.6624772
3349.34993693 5486.8447217 ]
[2979 4226 766 1624 3246]
[8 8 8 4 0]
--------
[ 7611.67931537 6715.90075865 6859.41972764 ..., 6780.51819554
4966.74078244 8713.52672573]
[2349 3163 3277 4418 2509]
[2 5 0 2 5]
--------
[ 6976.41577029 6252.86318417 5356.3668657 ..., 5629.87459896
4789.39025347 8019.30127879]
[1593 866 441 4746 2438]
[0 0 8 0 8]
--------
[ 5543.99287518 5099.15836193 4127.70202413 ..., 4063.39119456
3874.75095974 6323.14929446]
[3677 2635 4953 898 1195]
[9 8 1 7 0]
--------
[ 8221.66406514 7074.9461482 7213.41008123 ..., 7257.58299987
5428.8088933 9485.8257416 ]
[4645 4601 4355 4697 1527]
[0 0 5 3 2]
--------
[ 3812.05469531 4496.62851479 5991.98731641 ..., 4446.74959943
3271.95186395 4870.07484542]
[3418 2716 933 2106 3164]
[4 7 2 4 2]
--------
[ 4921.7226659 4993.62022985 5351.55407335 ..., 4106.59895778
3713.84248454 5434.09219649]
[4706 4147 2213 3326 2796]
[7 6 4 4 6]
--------
[ 3316.85483553 4909.07333414 6354.75562079 ..., 4224.14547571
4718.49848999 4000.93739016]
[ 336 2594 2252 217 2842]
[4 3 6 5 4]
--------
[ 4666.778332 4245.19905305 5233.92405371 ..., 4543.11159889
4338.6592399 5948.70237951]
[3623 4191 4453 1759 4298]
[7 8 2 0 8]
--------
[ 3068.92440441 4340.08640467 5572.0773505 ..., 3677.35013291
4559.61237388 3599.29590337]
[2350 2594 710 2116 673]
[0 3 6 4 2]
--------
[ 4407.16348687 4882.96190851 4518.37968745 ..., 3621.0289974
4894.54696576 4555.60775309]
[4288 4827 4491 2966 4304]
[3 3 2 2 8]
--------
[ 4630.33951239 5149.21207565 4694.31475298 ..., 4215.8438064
4698.31480427 5096.58061841]
[1809 4715 3138 411 3768]
[6 4 7 2 7]
--------
[ 4437.18052371 4762.17072353 3882.59449338 ..., 3306.73796966
4058.03388355 5460.47003471]
[ 558 3886 2905 4254 3919]
[2 1 4 7 4]
--------
[ 4732.38375452 4306.58159101 5359.82938161 ..., 4415.46067812
2667.19665567 6182.3205999 ]
[2543 1686 1283 852 2341]
[2 8 2 5 0]
--------
[ 6362.46225922 6067.70244821 5974.76652264 ..., 5625.96098458
4004.42879822 7621.42729415]
[2858 4082 2441 3979 1625]
[4 6 8 0 3]
--------
[ 4691.95566901 5102.21001136 5124.02312641 ..., 4390.08120654
4118.62768407 4902.99153579]
[4987 4693 951 2695 3739]
[4 6 4 4 6]
--------
[ 4745.84997656 6233.58203604 7452.91721408 ..., 5847.01761584
6023.6860808 3477.21411478]
[4108 2766 3670 2943 4125]
[3 3 8 4 5]
--------
[ 6183.80659465 6292.28583267 5002.69617307 ..., 5039.94652749
5296.18088815 7211.85829034]
[3735 364 2664 2893 2055]
[1 1 9 6 9]
--------
[ 4994.82942652 6166.63668461 7239.68217534 ..., 5937.5092421
5556.21930813 5646.89073739]
[ 963 2116 4733 3193 399]
[2 4 5 2 4]
--------
[ 3439.19627239 4754.80220409 6416.69603456 ..., 4502.07285592
4814.7075716 3539.58910045]
[4108 673 3670 1311 1791]
[3 2 8 4 4]
--------
[ 5076.24871337 4167.64921748 3624.33607713 ..., 3782.86002913
3813.62019609 6658.71977185]
[2172 4477 3607 1130 4834]
[8 0 0 0 8]
--------
[ 5161.64111499 4536.88990389 5545.39448552 ..., 4735.74619252
4531.68588938 5386.62927999]
[2247 1243 3049 456 3869]
[2 0 0 8 2]
--------
[ 3343.16885604 4711.17448202 5878.72766847 ..., 4106.45698869
5052.02137763 3404.59366151]
[ 10 1530 3560 910 3883]
[4 2 4 2 8]
--------
[ 6507.21630192 5724.87842666 3158.60459697 ..., 4396.57241496
5245.98722835 7310.30177216]
[3882 3501 1490 1413 4053]
[9 9 7 1 4]
--------
[ 7438.77073178 6652.62376811 6207.69836574 ..., 6325.67616939
4709.96985128 8700.63112653]
[1618 1211 4322 2176 3024]
[5 0 0 8 0]
--------
[ 6848.2516747 6474.25146252 6639.24995764 ..., 6291.46660168
4420.90364066 8153.39481443]
[2509 2674 1674 2926 2227]
[5 6 0 4 1]
--------
[ 4353.76492246 4934.6594614 6522.91499255 ..., 5277.59831742
5911.71980053 4638.85966591]
[ 77 1470 1201 1990 670]
[0 0 9 2 5]
--------
[ 4324.42435476 4176.21970208 4294.87520191 ..., 3618.29476411
3593.14959332 5107.82771832]
[1284 69 1166 3230 2221]
[4 8 0 1 8]
--------
[ 4433.3805386 4571.73052574 3707.25262155 ..., 3095.90988241
3706.61827007 4989.12026313]
[3116 3845 69 909 3874]
[4 2 8 8 8]
--------
[ 5288.89742763 4490.5713445 4494.41998483 ..., 4022.13811299
4238.0922595 6699.1465128 ]
[4477 2156 3607 2166 199]
[0 0 0 8 0]
--------
[ 5679.92728827 4830.28270394 4963.48274904 ..., 4544.06172933
5098.28794793 5670.15537706]
[2247 1243 3829 3259 2610]
[2 0 8 2 2]
--------
[ 5149.3641355 6165.14914661 8406.48119013 ..., 6200.74414889
6771.50640552 4321.65651111]
[1122 1613 856 142 3540]
[2 6 4 3 4]
--------
[ 3440.85672471 4729.35534719 5331.22106088 ..., 3991.09132945
3227.60638864 4473.91830502]
[2605 2106 3739 2465 951]
[6 4 6 4 4]
--------
[ 4881.84770348 4032.40325364 3580.47706319 ..., 3623.13897056
3728.07121713 6258.52418706]
[4477 2156 3607 4298 2483]
[0 0 0 8 8]
--------
[ 3313.00935706 3800.50680831 5261.62446398 ..., 3418.01404327
3517.21466504 4435.06877061]
[1832 4905 4224 1677 1760]
[4 4 4 2 6]
--------
[ 4752.83147187 6022.17635079 7768.72434831 ..., 5823.1448548
7098.79884206 4804.74796425]
[2507 850 2959 1351 3621]
[2 3 0 3 6]
--------
[ 4700.22105863 4798.91706534 4763.95959261 ..., 4115.50179201
3334.64390903 5393.76751446]
[3376 4208 2867 2868 1816]
[3 6 2 2 0]
--------
[ 4063.32376264 5284.44273316 6929.48446856 ..., 5349.42697866
5948.29908461 4364.13519497]
[ 914 1367 4033 4720 4579]
[6 6 3 3 5]
--------
[ 3928.44969422 5123.74765187 5967.72217852 ..., 4725.9005491
4555.20965489 5270.35871644]
[ 299 3412 1991 345 990]
[4 6 5 4 2]
--------
[ 3734.21075999 5241.00496088 5909.36282521 ..., 4258.65319086
5436.64749639 4042.08510549]
[1530 2666 2211 3843 1596]
[2 8 7 3 6]
--------
[ 4006.12593412 4150.64043251 4178.16179677 ..., 3109.4214896
3124.90687861 4687.88150448]
[2831 2764 2573 1521 4789]
[6 2 4 5 6]
--------
[ 5108.58268016 4435.63028216 4243.58103493 ..., 3871.96513414
3105.74226233 5810.02022372]
[ 982 4029 4159 987 898]
[4 8 8 8 7]
--------
[ 3168.15782435 4322.88526334 5733.56006335 ..., 4043.45063034
4649.74106806 4453.5332041 ]
[1881 2730 420 347 2983]
[4 5 4 6 2]
--------
[ 6684.82617575 5263.96219591 4932.23174638 ..., 5193.93415438
5343.36158237 8301.43451459]
[2003 185 3478 444 2172]
[8 0 0 9 8]
--------
[ 5499.56125523 4527.64210158 3719.64581647 ..., 3902.21872785
3998.95686398 6852.33332523]
[2003 3573 2137 909 4469]
[8 7 3 8 8]
--------
[ 4721.52676578 5916.51755681 7029.17292432 ..., 5684.12297545
5255.01332063 5091.51342923]
[4801 399 4969 2216 1126]
[4 4 4 4 6]
--------
[ 3799.7592029 4417.32849129 6486.69985432 ..., 4543.41446492
4863.73333973 5342.00056159]
[2745 4310 3529 1991 107]
[5 3 8 5 5]
--------
[ 4379.40144312 4436.70869001 5478.04198597 ..., 3923.59885819
4838.31551266 5313.94966103]
[2839 4758 1162 3970 1141]
[4 8 8 4 8]
--------
[ 4434.08333255 5216.79135101 5393.12210134 ..., 4293.05206118
4706.27166662 4177.653528 ]
[4106 878 1427 4715 1563]
[4 3 3 4 6]
--------
[ 3861.28372436 5047.47669633 5542.49609833 ..., 3902.14236029
5305.86222965 4215.34980755]
[4493 626 2968 2725 4304]
[2 0 6 4 8]
--------
[ 4976.18096536 4657.34344879 4213.55242046 ..., 3804.86451796
3196.04177069 5795.70591041]
[2213 2859 69 1065 2867]
[4 0 8 2 2]
--------
[ 5873.65788925 4876.5571872 3817.96647445 ..., 3966.85845475
4163.65716648 7209.3793769 ]
[2096 126 1770 2192 704]
[8 1 8 9 8]
--------
[ 4885.66402856 4341.94104059 4176.0780644 ..., 3771.31197331
3704.57136522 5513.49299446]
[2212 2546 2859 2333 1065]
[8 2 0 8 2]
--------
[ 3805.24585277 5411.00332656 6838.19047702 ..., 5081.25978474
5493.56714713 3016.29540994]
[4297 4426 10 2830 1436]
[4 2 4 4 6]
--------
[ 4257.20072348 4236.53219037 4479.58536028 ..., 3383.63724415
3482.49824121 5365.05265585]
[3627 2859 982 1759 592]
[7 0 4 0 8]
--------
[ 6280.25294077 5553.15802044 6001.01174803 ..., 5687.8568899
3653.13331265 7586.53089363]
[1787 3979 2079 2617 4056]
[2 0 2 0 2]
--------
[ 3789.42581403 4297.34464524 5418.62095002 ..., 4058.28572183
2919.67703693 4479.39839711]
[ 383 254 4398 3759 2993]
[2 4 2 4 2]
--------
[ 4699.96968075 4840.28449577 6022.04732628 ..., 4558.07766498
3440.45069722 6156.32966954]
[1283 3376 383 3703 2796]
[2 3 2 3 6]
--------
[ 3767.2655866 5286.16600193 6739.43684591 ..., 4828.77738149
5645.24561025 3852.78418809]
[2150 1367 4946 3560 1692]
[6 6 6 4 4]
--------
[ 5177.46743109 6166.67576576 7234.38138337 ..., 5906.03166263
7124.06197334 4478.88345461]
[3787 4197 918 3742 3920]
[3 3 5 6 7]
--------
[ 5250.47159787 4546.31708089 3483.81931219 ..., 3644.96159102
3529.25402883 6334.19781819]
[3144 3607 2172 1794 1229]
[8 0 8 8 8]
--------
[ 5150.58462701 5432.53375507 6455.81063849 ..., 5494.30769069
3684.99606513 5828.67840938]
[1027 2154 3376 4568 2993]
[6 3 3 6 2]
--------
[ 5856.57408388 6101.46302128 4615.40994929 ..., 4667.08827857
5394.42323145 5447.53375391]
[4571 3977 1431 475 1049]
[0 9 8 8 9]
--------
[ 3508.38823393 4714.99490986 5877.56437651 ..., 4277.67471882
4284.01167132 4185.25841496]
[1746 2983 2698 3797 3418]
[4 2 2 4 4]
--------
[ 4216.36217609 4761.6046665 4581.48480299 ..., 3561.12440108
3339.36401131 5226.47472011]
[ 337 3739 951 3845 2875]
[5 6 4 2 2]
--------
[ 4039.53351267 5033.71552633 7658.17223625 ..., 5385.1053843
5634.33004003 4569.19653769]
[2684 2946 3249 894 4309]
[6 0 5 5 6]
--------
[ 4976.57914636 4630.0811008 4775.38155544 ..., 4365.25268455
4479.84865816 5616.69635996]
[3623 1284 1235 1973 1404]
[7 4 9 1 8]
--------
[ 3846.51140646 4807.12294413 5545.99287775 ..., 3976.15002232
4021.29929252 4029.49053852]
[ 887 552 372 1038 1746]
[4 6 4 6 4]
--------
[ 4840.99256351 4691.81009846 4880.36248654 ..., 3960.28231317
2882.95976385 5918.68507356]
[2796 3376 2867 2710 2193]
[6 3 2 4 2]
--------
[ 7249.21306074 6620.17016398 5168.03957028 ..., 5759.20506667
4869.86960811 7941.62942978]
[ 105 1853 207 3294 3127]
[1 8 3 8 9]
--------
[ 6203.80173764 5160.39543058 3447.89457495 ..., 4233.91013131
3866.42134279 7150.72373959]
[ 811 2715 3304 448 3438]
[8 7 0 0 0]
--------
[ 4168.91484682 4409.82040451 4957.80576465 ..., 3863.52507433
3876.78487925 5156.27801811]
[1826 4527 1500 4868 1229]
[4 4 2 0 8]
--------
[ 5277.17026445 5576.07308058 7274.96632295 ..., 6099.79483262
6885.19426015 5098.1163188 ]
[ 359 4579 1201 1730 670]
[5 5 9 6 5]
--------
[ 5320.15178355 4142.33702154 4133.25731113 ..., 3933.10945691
3121.50300336 6518.93158424]
[4540 4096 1439 3039 4617]
[0 0 8 8 8]
--------
[ 5074.71112478 5223.90773272 4495.46504825 ..., 4193.35211972
4309.25504003 5856.33136016]
[ 69 3939 2603 3845 2875]
[8 7 8 2 2]
--------
[ 5762.98906818 5329.7200677 3944.23731538 ..., 4155.62534404
4112.98711401 6449.7442585 ]
[4594 1640 4643 4053 3677]
[8 4 9 4 9]
--------
[ 4674.8203174 4740.34597893 5881.51154041 ..., 4902.62378732
4832.98034343 5522.47073329]
[1141 3043 420 1542 4868]
[8 3 4 2 0]
--------
[ 2524.74137289 3601.7590147 5075.51810163 ..., 3110.13986824
3272.80995476 4057.51956249]
[3847 420 2372 3684 58]
[2 4 2 4 4]
--------
[ 2938.49161986 4269.49786275 5515.56270928 ..., 3441.13237176
4212.68572291 3273.31559737]
[1838 347 2372 2730 2812]
[2 6 2 5 2]
--------
[ 4484.43106759 4502.95780571 5286.7416241 ..., 4118.65475611
4960.70055537 5476.27720263]
[2894 1162 3065 4925 4286]
[2 8 8 0 4]
--------
[ 4500.26443667 5331.55033738 6983.4918916 ..., 5480.16049035
5603.43109175 4886.80161251]
[1161 1535 1271 4193 3960]
[6 4 3 4 5]
--------
[ 3265.08728827 3706.23366775 4235.49878999 ..., 2802.06780789
2855.5270967 4315.7679502 ]
[2573 4224 1832 1728 2875]
[4 4 4 4 2]
--------
[ 3804.69749126 5561.30578192 6950.73046521 ..., 4961.43588087
5194.30871243 3659.82882113]
[3166 1777 243 1917 3383]
[4 2 6 6 4]
--------
[ 7679.63833784 6561.40777577 6072.1617238 ..., 6386.19010052
5255.97650299 8073.17254863]
[1178 4941 757 3918 3184]
[0 0 0 0 0]
--------
[ 5743.51138242 4953.7422218 5711.5544294 ..., 5083.84500157
4279.35871364 6588.08811416]
[2229 3579 557 1249 4723]
[8 8 0 0 8]
--------
[ 2933.95773657 4228.17655734 5817.65545559 ..., 3872.40093482
4362.46696263 4025.78166323]
[ 420 1838 4550 2983 1881]
[4 2 6 2 4]
--------
[ 3708.13659403 5381.68728188 5951.08964812 ..., 4208.01045626
4812.67004894 3672.9839368 ]
[3383 4106 4482 4732 1530]
[4 4 2 2 2]
--------
[ 4082.09333553 4479.50320906 4615.51568083 ..., 3500.75034814
3009.03207028 5441.99356854]
[3608 3997 982 1067 2998]
[2 3 4 2 6]
--------
[ 3862.49401294 4610.39228266 5313.09900152 ..., 4151.87415513
3701.65503525 4858.19760817]
[ 337 4695 951 1500 2875]
[5 4 4 2 2]
--------
[ 4585.25997082 4699.94340391 6110.43468176 ..., 4729.19866362
5045.4683628 4946.62824558]
[ 986 3423 420 1553 4755]
[2 2 4 3 2]
--------
[ 2582.52744419 3633.2135913 5372.88032623 ..., 3416.66899187
3502.46741598 3942.6166438 ]
[1677 4905 2779 1881 2522]
[2 4 4 4 5]
--------
[ 5929.91542941 4567.64162342 4233.31973751 ..., 4415.51695728
4055.66776253 7361.15079318]
[2172 406 2192 676 3039]
[8 9 9 1 8]
--------
[ 4502.82167091 4716.24278425 4694.55620906 ..., 4001.04761281
4367.27592442 4865.59050887]
[1643 420 4577 4066 1264]
[8 4 0 8 4]
--------
[ 4359.19361809 4282.62979955 4454.2195725 ..., 3719.62551879
2589.6275794 5461.02014279]
[ 982 4527 120 2868 3376]
[4 4 2 2 3]
--------
[ 4126.95190183 4162.17527262 6035.10024772 ..., 4451.35361435
5028.81656058 5412.58718175]
[1933 2005 2745 3469 3065]
[6 1 5 8 8]
--------
[ 2595.86575154 4070.73334916 5189.28280208 ..., 3308.5582963
3612.86576003 3208.02665201]
[1838 2812 622 2983 3797]
[2 2 4 2 4]
--------
[ 4882.27180726 3618.58936604 4095.50277744 ..., 3629.90096284
3873.23250012 5713.92632084]
[1323 1229 4320 1166 4861]
[8 8 8 0 0]
--------
[ 3285.03652948 4127.35435842 5729.78830324 ..., 3749.9346661
4158.03138516 4204.81830761]
[2730 3797 452 3944 3684]
[5 4 6 2 4]
--------
[ 4554.90504841 4019.75036538 4511.71574902 ..., 3687.09167231
2699.45364843 5645.4592373 ]
[ 974 2034 4683 557 1340]
[0 0 0 0 0]
--------
[ 7076.34658563 6005.97985345 6348.25724116 ..., 6142.8283388
4264.28927255 8428.47845106]
[4645 2176 1787 4056 3382]
[0 8 2 2 0]
--------
[ 4074.4653637 4611.44825407 5637.82183117 ..., 4224.75218208
3604.17646627 5209.03023604]
[2982 2066 80 3949 3376]
[3 0 3 5 3]
--------
[ 5836.6478393 5520.70276324 5707.93123645 ..., 5032.67632577
4157.20795727 6481.953255 ]
[2017 820 3962 1104 1878]
[5 2 0 3 0]
--------
[ 4009.05113462 4069.5955573 5090.8657417 ..., 3776.36571322
4246.39034946 3930.03549602]
[4755 1120 4224 3235 4491]
[2 3 4 2 2]
--------
[ 3736.9032634 4289.75372253 5181.0497971 ..., 3729.25180164
3335.00224887 4370.74844849]
[ 254 933 1500 130 951]
[4 2 2 4 4]
--------
[ 3539.45885694 5291.16074222 6908.63922925 ..., 4889.19093511
4960.48717366 3392.02962841]
[4108 1777 3524 2943 1917]
[3 2 3 4 6]
--------
[ 3309.69741819 3780.79779941 5310.92496652 ..., 3480.07212569
3671.43772928 4509.75819751]
[ 420 3684 564 3949 4224]
[4 4 0 5 4]
--------
[ 3414.33727098 4040.69523721 5475.8867775 ..., 3907.73387016
3028.4436597 4863.92650027]
[4808 2522 1991 933 3458]
[5 5 5 2 6]
--------
[ 3740.50157065 4983.59117505 6494.35008296 ..., 4716.43944093
5029.49679391 4380.58534901]
[1271 3960 4637 1842 2730]
[3 5 6 6 5]
--------
[ 4057.86113612 6073.81379366 7329.25385015 ..., 5531.50775106
6597.71073934 3612.51837366]
[2112 4426 1596 961 4284]
[6 2 6 6 6]
--------
[ 2951.07488892 4665.42066699 6124.73542286 ..., 4191.82704796
4198.90402367 3023.87086364]
[ 931 4969 2943 3797 4905]
[6 4 4 4 4]
--------
[ 3421.52422175 5402.84027156 6285.30293622 ..., 4618.98094822
5325.52495065 4452.55926406]
[1016 2836 3 2372 2178]
[6 6 4 2 4]
--------
[ 4506.17775948 4510.14822373 4883.81909984 ..., 3813.64746666
4645.38545225 5219.11735833]
[2894 1092 526 4066 4774]
[2 8 4 8 0]
--------
[ 3331.07460139 3786.05929695 4428.73808212 ..., 2995.68072398
3372.35526005 4233.1196534 ]
[ 420 4224 1500 1092 1728]
[4 4 2 8 4]
--------
[ 3860.02603618 4502.6072447 5442.17346287 ..., 3895.50664227
3319.1500418 5058.29368463]
[2266 2197 42 933 1220]
[5 3 2 2 6]
--------
[ 4320.28968936 4683.39684417 4896.41746586 ..., 4268.59930188
4202.7727752 4645.50610806]
[3948 716 1500 564 3913]
[4 8 2 0 4]
--------
[ 3844.5980284 4105.0411691 4918.74668996 ..., 3747.22123713
3510.8346586 4839.98884296]
[3077 2310 4090 392 3213]
[4 6 2 0 7]
--------
[ 4212.29225007 5463.63020345 7280.07960121 ..., 5218.56829025
4972.08085212 4099.05550097]
[4200 3693 4801 3670 3166]
[1 2 4 8 4]
--------
[ 6587.165779 5992.53085098 4350.61719759 ..., 5314.29619047
5325.57048587 7635.54208947]
[2953 4134 2690 2086 2882]
[9 7 6 9 0]
--------
[ 3906.25959199 3982.54755151 4458.77595311 ..., 2992.05330835
3023.621008 4585.34033633]
[3164 2213 4224 592 1500]
[2 4 4 8 2]
--------
[ 3605.59578988 5358.07446757 7140.27100326 ..., 5020.89055846
5437.26135108 3397.90391271]
[4687 3245 3540 1917 1436]
[4 2 4 6 6]
--------
[ 3414.5068458 4297.2370193 4619.81926053 ..., 3341.82465129
3882.68631234 4392.58568499]
[2573 1746 2121 2983 622]
[4 4 2 2 4]
--------
[ 4055.0234278 4721.00815504 4683.5330681 ..., 3533.45440044
4423.71484162 5221.26852403]
[4583 3178 3663 2573 2894]
[2 3 2 4 2]
--------
[ 3557.49518622 4577.93588859 5061.87208452 ..., 3589.42404851
3947.19013983 4514.51968652]
[3873 420 4959 4235 3684]
[6 4 6 6 4]
--------
[ 4938.82749243 3984.37623725 3823.57502869 ..., 3479.82442086
4176.11194773 5962.45511514]
[1797 2797 2483 1711 1999]
[8 8 8 0 0]
--------
[ 6558.89769702 5360.06865628 5095.35415845 ..., 5243.54479336
3986.5976722 7450.44461761]
[4056 2598 2478 2987 3669]
[2 0 0 8 2]
--------
[ 4425.85584944 5145.92761317 4653.42658694 ..., 4111.82088618
3689.01179179 5390.82220074]
[4208 982 4527 4954 1441]
[6 4 4 3 7]
--------
[ 3254.75744104 3961.63539463 5850.97026142 ..., 4027.66818395
3021.70481682 4633.71621919]
[2106 3408 933 3759 383]
[4 4 2 4 2]
--------
[ 3824.24345459 4410.30055665 5588.56645304 ..., 4237.93404857
4175.33591463 4681.11482448]
[ 985 3506 1959 2749 986]
[6 2 6 8 2]
--------
[ 5209.93234121 4241.86020515 5047.45876655 ..., 4351.72218782
3225.29456019 6075.34994877]
[2034 3918 557 1664 1340]
[0 0 0 0 0]
--------
[ 3693.90227267 4066.19515026 6244.59438234 ..., 4579.62607644
3699.56267686 4877.19673583]
[4808 4163 4905 952 2522]
[5 0 4 7 5]
--------
[ 4341.74676829 3995.94018974 4454.90920222 ..., 3539.37762891
4509.58213142 4925.35125651]
[4577 1162 4066 2610 1092]
[0 8 8 2 8]
--------
[ 4260.28625799 5185.82491027 5997.73057081 ..., 4608.86949262
5295.42113528 4479.2263841 ]
[ 180 3423 2730 1070 1207]
[4 2 5 3 2]
--------
[ 4847.0687018 5058.76388063 6766.8994377 ..., 5328.72855379
3747.83791005 5846.08817929]
[1221 1366 2949 4588 4190]
[4 4 0 2 6]
--------
[ 3063.71424908 4363.45917822 5201.43710911 ..., 3566.17694457
3646.27686826 4304.01010687]
[ 804 2133 4703 4130 1968]
[2 2 2 6 4]
--------
[ 4762.57461884 4652.64011073 7096.39204103 ..., 5560.23704531
5125.25735939 6396.52319624]
[1993 1261 1056 1375 4292]
[5 8 8 8 8]
--------
[ 4717.77002407 4483.49941452 4667.76616809 ..., 3731.28597135
4112.33534625 5302.01471141]
[1284 716 3948 4371 2962]
[4 8 4 9 0]
--------
[ 4598.24607867 5340.46589728 5522.82463962 ..., 4495.58694722
4911.96997141 5660.1299455 ]
[4618 4770 849 345 865]
[9 6 2 4 3]
--------
[ 3930.34120656 5114.78103148 5441.85841418 ..., 4303.24610033
4359.29489711 4372.47481411]
[2595 420 399 4235 3949]
[2 4 4 6 5]
--------
[ 6103.12862391 5010.52472302 3120.23268363 ..., 4039.71781193
4843.04212247 7264.88465153]
[2166 2192 3665 3882 139]
[8 9 0 9 8]
--------
[ 7708.0827707 6488.97811678 6104.15293059 ..., 6365.74528237
5233.32571125 8924.00829224]
[1965 3586 4897 897 284]
[3 2 8 8 0]
--------
[ 3426.05385247 4051.55180147 5023.37555833 ..., 3566.79295727
2848.33442559 4656.95190012]
[ 933 2796 130 4090 3506]
[2 6 4 2 2]
--------
[ 4958.37372533 4665.63211152 4519.48658589 ..., 4146.98963105
3859.06724481 6124.19692694]
[ 767 2794 2868 827 4989]
[5 5 2 2 4]
--------
[ 3372.58936131 4007.94286386 4912.25304723 ..., 3378.80807386
2317.16529406 4882.77328984]
[2796 3376 403 3759 933]
[6 3 2 4 2]
--------
[ 3729.0858129 4242.88086092 5042.13803857 ..., 3502.49054246
3668.97792307 4298.47682325]
[ 951 337 537 4703 2678]
[4 5 7 2 2]
--------
[ 4462.79127901 4573.52894382 4671.27809063 ..., 3765.25815848
4406.02678158 5498.2226219 ]
[1092 170 4583 1506 3403]
[8 8 2 8 6]
--------
[ 5607.47768609 5185.03587259 3011.34571247 ..., 3604.02372356
4969.07677542 6386.04650782]
[1413 3063 2526 2325 165]
[1 0 9 8 0]
--------
[ 3730.84373835 4771.73741943 5282.39472209 ..., 3971.31111851
4861.29787197 4081.52434759]
[ 196 4304 2725 4715 1838]
[2 8 4 4 2]
--------
[ 4541.02532475 4608.93089555 5338.90101051 ..., 4475.08971977
3869.46236576 5691.6891166 ]
[2859 490 3028 4361 3476]
[0 4 5 3 2]
--------
[ 5004.1321925 4383.32453738 5046.54594748 ..., 4307.83866922
4097.89470338 6551.27460881]
[ 971 1720 1261 2003 2031]
[8 8 8 8 8]
--------
[ 4575.29933447 4063.30911942 5664.60051548 ..., 4237.32734162
4948.42035401 5435.27037046]
[ 733 2330 1162 3971 2610]
[0 0 8 0 2]
--------
[ 5283.79305045 5125.06682883 4777.03652906 ..., 4262.30289867
3689.47570801 6114.78724078]
[4592 4683 4527 1065 1707]
[0 0 4 2 1]
--------
[ 6628.92774135 5700.02877186 4323.31007447 ..., 4920.91983271
4329.65021682 7531.02907975]
[1770 1597 4539 4717 4222]
[8 8 8 0 8]
--------
[ 3930.51039943 5284.61436625 5208.93242421 ..., 3879.25650093
3859.16467646 4793.70170119]
[2520 1459 622 835 1018]
[4 7 4 1 4]
--------
[ 4249.17909719 4233.11114903 5755.76632604 ..., 4089.62614428
4884.83664005 4812.77082355]
[3987 4755 1162 526 4647]
[0 2 8 4 2]
--------
[ 5135.15170175 5453.90593978 6659.33089732 ..., 5445.53780631
4996.95637363 4704.16528196]
[4919 3549 3259 1491 4773]
[0 0 2 4 4]
--------
[ 3890.17236122 3996.8575156 6401.04475847 ..., 4401.62674474
4150.2564981 4549.79636907]
[4153 980 2922 4905 3377]
[5 1 4 4 4]
--------
[ 3929.58840084 4264.92672856 4690.76902011 ..., 3589.12189818
2583.06852406 5451.22472478]
[2796 383 3376 4156 1283]
[6 2 3 4 2]
--------
[ 6287.78800533 5463.8899147 4474.16439126 ..., 4921.39014913
4195.21918379 7306.63876211]
[2833 600 1770 3330 987]
[2 0 8 8 8]
--------
[ 5859.51994621 4987.52674178 3701.19075434 ..., 4025.52443788
4417.07052242 6727.22067425]
[2995 3380 3573 1711 4053]
[4 8 7 0 4]
--------
[ 4115.70394951 3889.36292984 3882.07830936 ..., 3143.57821598
3578.13792356 4921.67176882]
[ 909 1166 1284 1404 3246]
[8 0 4 8 0]
--------
[ 4638.49404441 5384.7282197 6420.16884513 ..., 5112.96880491
5531.68934413 4461.40303044]
[2253 3226 2787 196 10]
[4 2 4 2 4]
--------
[ 3580.05237392 4163.86887402 4983.06150875 ..., 3495.86183938
4312.70877756 4633.80934006]
[1273 271 3606 420 4304]
[7 2 7 4 8]
--------
[ 7151.02055654 5550.2839567 5027.12661468 ..., 5530.10234987
4911.81667003 8543.07702178]
[4828 290 3250 2798 2593]
[8 8 8 8 8]
--------
[ 4108.49449312 4220.46229695 4409.59975508 ..., 3132.93983345
3974.88502978 5142.52068542]
[1092 558 1295 1404 1431]
[8 2 2 8 8]
--------
[ 3215.72293583 4072.40702779 5236.70440258 ..., 3501.09054439
4287.63524568 4039.93613811]
[ 420 2372 3178 3970 2983]
[4 2 3 4 2]
--------
[ 3317.77982995 4806.34705364 5949.19103744 ..., 3970.48359775
4813.55803954 4048.32273911]
[3193 2372 2983 3797 1184]
[2 2 2 4 2]
--------
[ 3373.34774371 4106.86741934 4829.69025922 ..., 3312.70342772
4055.65716007 4138.61631466]
[ 420 4583 2725 2812 1838]
[4 2 4 2 2]
--------
[ 5316.18566267 4750.90002 3331.98994596 ..., 3423.96918795
3971.34611939 6550.81002625]
[ 139 909 1711 4053 1726]
[8 8 0 4 5]
--------
[ 7981.59464017 7046.87576164 6826.1990888 ..., 7058.5516928
5125.97454149 8893.91887753]
[ 317 4573 2349 3251 4601]
[0 4 2 7 0]
--------
[ 5464.86321878 4956.08343352 5348.46435905 ..., 4573.56086655
3616.91000717 6693.80444889]
[ 974 743 3579 2034 2513]
[0 1 8 0 0]
--------
[ 3335.85970928 4287.00116632 5356.65557974 ..., 3721.72957105
4526.30334821 4013.08758938]
[3178 2983 1838 2372 684]
[3 2 2 2 3]
--------
[ 8370.30136853 7487.37016582 7295.72244538 ..., 7448.85078385
5472.73249849 9433.67282664]
[4645 2744 4601 4559 790]
[0 2 0 0 2]
--------
[ 4487.40314659 4424.67309527 3898.30014237 ..., 3507.69696525
4032.12586609 5127.77836885]
[1092 4887 909 2389 1404]
[8 3 8 1 8]
--------
[ 3289.16828393 5170.56350894 7040.00987215 ..., 4795.93796874
4826.04475736 3904.19671636]
[2712 3569 3797 1752 1184]
[4 2 4 2 2]
--------
[ 4990.11272418 4920.49875521 5361.0403841 ..., 4771.07136815
4149.26897176 5922.10123183]
[2993 2540 767 392 3372]
[2 2 5 0 2]
--------
[ 4292.59828076 4364.5369743 4967.89321544 ..., 4001.06448336
3447.37581357 4881.98955345]
[2276 2925 827 3074 2310]
[6 6 2 2 6]
--------
[ 4009.43225407 4314.89490023 5373.13483918 ..., 3927.53103107
4761.75650364 4692.87811476]
[ 906 420 4235 1688 2812]
[0 4 6 8 2]
--------
[ 5496.18440375 4829.5726519 5996.46962804 ..., 4935.07021227
5652.02025828 5548.58044909]
[3259 220 2610 2247 733]
[2 0 2 2 0]
--------
[ 3757.86308958 4576.28102284 5148.60427689 ..., 3615.17357813
3396.16121525 4965.91914956]
[3418 990 933 4211 2133]
[4 2 2 2 2]
--------
[ 4047.57767066 5563.28194504 7816.57303427 ..., 5561.11697413
5706.05056059 4230.24455558]
[1842 2479 291 4479 157]
[6 6 8 5 5]
--------
[ 4364.6868158 4847.96039588 5094.88115661 ..., 4105.9142709
4350.74395937 5050.55610799]
[4007 3768 1521 4224 1563]
[3 7 5 4 6]
--------
[ 2839.88661745 4348.65507945 5770.78148954 ..., 3724.928053
3475.46745057 3769.32699563]
[2465 2106 692 58 3797]
[4 4 6 4 4]
--------
[ 3736.38863075 4541.62074595 5545.07231693 ..., 4086.11343455
3878.92768687 5002.36963848]
[ 420 2854 1867 4235 830]
[4 2 2 6 2]
--------
[ 4299.90790599 4823.40512501 5414.08173193 ..., 4211.06601706
4377.02181854 4259.50630942]
[1220 3213 4772 705 951]
[6 7 3 4 4]
--------
[ 4632.05515943 4267.57425243 4938.58461505 ..., 3868.10573795
4783.08258344 6038.04927108]
[4774 2894 2156 365 2820]
[0 2 0 8 8]
--------
[ 6166.14960895 5440.66631949 4786.07960653 ..., 4970.43398508
4123.50348611 7544.29287608]
[4221 3634 3263 3931 2162]
[3 8 0 8 3]
--------
[ 5890.48104997 5656.402567 4004.74943036 ..., 4127.91666583
4513.68663068 7199.41879599]
[4858 219 1171 644 1252]
[1 9 9 1 3]
--------
[ 4188.67377579 5443.93800479 6789.86295885 ..., 5202.9794349
5641.47090749 4990.87627577]
[1282 336 3826 2788 2210]
[8 4 6 5 4]
--------
[ 5306.68983454 5149.76271298 5166.02032516 ..., 4606.7196572
3338.67383852 6560.55996086]
[4750 1158 4935 820 4943]
[4 4 0 2 4]
--------
[ 5613.43370852 4419.7930947 3371.91977959 ..., 3781.5418813
3601.54133671 6533.65410777]
[ 566 4287 811 2172 987]
[8 8 8 8 8]
--------
[ 5507.89024945 5199.48978266 3054.06646948 ..., 3650.31149356
4475.81176995 5697.9642856 ]
[4053 749 2325 2905 4571]
[4 9 8 4 0]
--------
[ 4022.66503701 5529.0777712 6659.77769899 ..., 4867.79693496
6030.41723266 3423.32411553]
[ 10 4217 2124 1596 918]
[4 6 6 6 5]
--------
[ 5543.92460266 5214.87209814 6456.89809429 ..., 5437.62696403
4838.4780665 5675.09700358]
[1533 456 1376 1243 4919]
[2 8 0 0 0]
--------
[ 4563.70112957 5133.61928857 4962.93370901 ..., 3940.60515657
4627.78932105 4576.11887957]
[1264 4715 927 3318 2840]
[4 4 0 0 9]
--------
[ 5327.70269441 4254.98260866 4862.5410024 ..., 4430.97494915
3312.94581906 6573.32594658]
[4540 698 3634 3579 2034]
[0 0 8 8 0]
--------
[ 5624.5881627 4775.38176484 5341.96677264 ..., 5017.24197144
3995.28647283 6324.28383297]
[3328 3889 557 3634 2868]
[3 2 0 8 2]
--------
[ 4158.84479153 3864.79637238 3990.89551354 ..., 3022.12094397
2991.07806652 5291.24200921]
[1284 2859 982 1759 1229]
[4 0 4 0 8]
--------
[ 5319.41312552 4598.23520495 4546.7083698 ..., 4403.68311757
3391.79981721 6809.73112538]
[1278 2918 2172 1439 4489]
[0 8 8 8 9]
--------
[ 4716.70213179 4756.18397457 5713.2005041 ..., 4547.9923043
3926.44024531 4916.69045192]
[2540 658 3372 2922 1025]
[2 0 2 4 3]
--------
[ 2838.25086981 4018.58843377 5381.31312971 ..., 3834.15949068
3531.31533568 4024.81651756]
[1746 4905 58 3684 3944]
[4 4 4 4 2]
--------
[ 5963.51582542 6042.86223573 6000.77428337 ..., 5222.61792591
5323.22712271 5958.55544574]
[2224 408 1361 4736 1467]
[2 9 9 7 9]
--------
[ 5639.39908146 5053.88395197 4526.37062115 ..., 4354.16340989
4801.83110907 6945.1050388 ]
[1277 4812 139 704 2642]
[9 8 8 8 0]
--------
[ 6270.12862707 5704.79237133 5408.31415508 ..., 5405.96411383
3654.10440464 6808.81274526]
[ 695 2598 3438 441 820]
[0 0 0 8 2]
--------
[ 4519.6696782 5429.37022131 6949.82165239 ..., 5309.14597652
5915.26009572 5140.17567793]
[4393 2745 1053 4014 1006]
[7 5 6 2 1]
--------
[ 2905.8289695 4049.90036914 6339.6576406 ..., 4368.3011572
4022.83134123 4159.2306981 ]
[1881 4411 4604 197 3684]
[4 0 2 3 4]
--------
[ 4868.28594066 4708.21208103 3708.99245079 ..., 3345.94127265
3895.0304235 5912.85328754]
[3784 558 722 4254 909]
[4 2 7 7 8]
--------
[ 4521.7278777 6190.40531791 7458.16358094 ..., 5820.65546137
6806.69853894 3818.62815681]
[ 781 850 4426 4122 2112]
[6 3 2 2 6]
--------
[ 4104.19638906 4741.72827142 6200.63375793 ..., 4603.40189425
3680.72655871 4877.53790349]
[3408 3031 2716 3759 3377]
[4 5 7 4 4]
--------
[ 4530.61143776 4251.19148004 3883.55648858 ..., 3472.85545337
3322.78347173 5620.61437923]
[ 982 69 4277 558 1759]
[4 8 8 2 0]
--------
[ 4337.02271149 5904.29530088 7385.54392039 ..., 5553.82309765
6795.3180941 4240.34857058]
[4087 918 682 3676 1351]
[3 5 6 6 3]
--------
[ 3327.92623115 3796.66037459 4794.06257781 ..., 3378.29779623
2132.86028609 4807.98284107]
[ 933 403 4090 2796 383]
[2 2 2 6 2]
--------
[ 5871.32497823 4631.31989826 4561.92875876 ..., 4315.8408219
4461.43015187 6828.54120585]
[2003 4226 2160 2344 4274]
[8 8 8 8 8]
--------
[ 3739.49087444 4542.45869546 6410.5275134 ..., 4644.80989923
5043.21980485 4414.12029741]
[1842 3060 1600 2986 1503]
[6 5 5 3 5]
--------
[ 3282.58952658 4312.3630413 5683.83893157 ..., 4082.53315969
3806.77947877 3794.92608624]
[3377 4224 2922 4905 1881]
[4 4 4 4 4]
--------
[ 4093.42582686 4126.27943794 5341.04914787 ..., 3702.32035351
4539.56749041 4830.8559283 ]
[4491 1525 2966 4182 1577]
[2 5 2 4 7]
--------
[ 6769.72480977 6164.92327608 6008.04951711 ..., 5537.70539122
4572.47438484 7513.75472051]
[3892 2127 3411 1362 1017]
[6 3 6 6 6]
--------
[ 3993.69903723 4392.0741114 5038.02848344 ..., 3606.94510632
3542.40285682 5020.97301327]
[1867 1910 80 2678 121]
[2 4 3 2 2]
--------
[ 5582.85500439 4622.23852695 6618.18925387 ..., 5559.29249096
4058.28264171 7314.72788284]
[3493 2707 3176 4466 1686]
[8 0 4 8 8]
--------
[ 3570.03123236 3901.33515607 5421.91811078 ..., 3569.00042029
3345.80109989 4592.74743482]
[3873 1314 3173 3949 2567]
[6 8 5 5 2]
--------
[ 4265.69466793 5278.3554257 5237.0892679 ..., 4457.95423933
4846.20521646 5492.70743805]
[4770 299 345 2666 26]
[6 4 4 8 3]
--------
[ 4478.16636582 4528.32231627 4305.85194822 ..., 3604.39717567
3937.61298251 5628.71530636]
[1092 1284 4887 69 3874]
[8 4 3 8 8]
--------
[ 3787.39725933 5068.10605651 6670.86553605 ..., 4897.5390759
4408.23842368 3442.41078316]
[2943 1875 4969 552 1491]
[4 5 4 6 4]
--------
[ 4375.80049819 4184.38346713 4184.14782244 ..., 3484.63097042
3902.86843232 5197.58944127]
[ 882 1284 4298 1711 3246]
[3 4 8 0 0]
--------
[ 3323.50161727 5052.5122464 6118.41629836 ..., 4172.63705587
4749.60429931 3884.92895688]
[2842 3245 2116 1268 3193]
[4 2 4 4 2]
--------
[ 3960.63378767 5473.66157156 6510.23924292 ..., 4743.28925958
5673.14128151 3955.54926654]
[1530 334 1596 1436 1367]
[2 3 6 6 6]
--------
[ 3641.5252299 4706.24744356 5548.02532438 ..., 3930.29019285
4428.51239131 4936.09116609]
[4661 4349 804 4144 622]
[1 3 2 6 4]
--------
[ 4381.56193611 4025.20384577 5466.52595347 ..., 3953.8277656
3632.1121954 5036.50364837]
[ 592 2575 1832 4808 3627]
[8 2 4 5 7]
--------
[ 3480.59319657 4624.37909346 5298.3533291 ..., 3866.91065322
4432.83442055 3221.79406542]
[ 10 910 4007 2812 2018]
[4 2 3 2 8]
--------
[ 5108.91818294 5055.84256084 4294.04191875 ..., 4070.5950425
4061.60202383 6160.18676665]
[1557 4492 4643 1472 4594]
[4 1 9 9 8]
--------
[ 4487.07399092 3872.68434035 3978.37931827 ..., 3376.16172598
4086.73794119 5555.69896593]
[1711 1141 139 1633 2962]
[0 8 8 9 0]
--------
[ 4698.29522274 4850.57883144 6338.06950104 ..., 5114.54621643
4871.75245677 4595.78654857]
[3587 171 2550 4893 4905]
[4 2 2 5 4]
--------
[ 3563.29580585 4863.81599159 5612.82566984 ..., 3964.48987891
3949.54642965 4334.09563808]
[ 673 1126 4232 4857 3717]
[2 6 4 4 4]
--------
[ 3765.90414111 3328.1026126 4129.81730831 ..., 2928.37856159
2865.46366231 4796.21830195]
[2859 1284 4868 1759 1404]
[0 4 0 0 8]
--------
[ 6943.52331313 5621.35561942 6231.30780816 ..., 6010.26214071
4520.30706922 7826.04740594]
[2460 1787 2808 3918 3979]
[0 2 0 0 0]
--------
[ 4247.23474746 4169.99112709 5094.53079292 ..., 4032.48434591
2416.46870454 5704.0923029 ]
[2543 3376 1283 957 383]
[2 3 2 2 2]
--------
[ 4938.16220876 4162.00252282 5035.99453931 ..., 4140.64765466
3175.11291138 5770.72127208]
[2867 2034 348 3669 349]
[2 0 0 2 0]
--------
[ 4361.0545743 5172.44777644 4466.19368142 ..., 3570.7534219
3974.88377189 4826.45138792]
[1563 1374 2510 2998 4429]
[6 6 6 6 4]
--------
[ 5335.2443243 4731.44068968 4257.75844782 ..., 4083.02032814
5003.92625845 6725.74427108]
[ 31 1156 170 2086 1468]
[9 5 8 9 8]
--------
[ 4146.00904485 4086.08908371 5508.64647622 ..., 4389.04385943
4163.440044 5406.02820932]
[3953 882 2779 1759 4868]
[7 3 4 0 0]
--------
[ 4504.43170666 4263.18660159 5029.35244341 ..., 4258.21417968
2655.33820821 6158.02330298]
[1686 1065 2543 3579 403]
[8 2 2 8 2]
--------
[ 5532.74226763 5355.28729388 4173.1985335 ..., 4388.5086305
3891.41426733 5758.29879391]
[3984 1897 1253 1714 4527]
[1 3 9 9 4]
--------
[ 5168.57223999 4980.45238909 5433.85774565 ..., 4486.56282693
3585.92763452 5999.71190975]
[2543 2710 1030 4198 3326]
[2 4 3 2 4]
--------
[ 2687.58739393 4281.33332036 5684.21401779 ..., 3713.04416887
4050.17357653 3742.25039248]
[2983 3797 3558 242 2787]
[2 4 2 6 4]
--------
[ 3111.49578177 4499.92811054 6097.63454136 ..., 4236.96837373
4192.38977196 3803.26833132]
[2812 1968 830 347 4106]
[2 4 2 6 4]
--------
[ 3175.3347855 4904.07279718 6641.27728679 ..., 4526.55321409
4504.98379575 3911.07593892]
[ 243 2130 4108 2535 3841]
[6 3 3 2 6]
--------
[ 4853.10910654 4109.82809859 3813.42090517 ..., 3685.76979748
3603.89566997 5767.67214741]
[ 882 2881 3246 2483 1711]
[3 8 0 8 0]
--------
[ 4728.09295594 5750.96165871 7595.40203018 ..., 5700.36226919
5043.1774706 4790.82738157]
[ 521 4015 1762 3670 3524]
[4 6 4 8 3]
--------
[ 3509.62519366 4338.9139194 5195.27881831 ..., 3370.75807497
3491.33484501 4390.92871725]
[ 287 4429 4703 337 2069]
[3 4 2 5 4]
--------
[ 5019.0786007 5021.40289162 5651.80705615 ..., 4335.36238393
4503.09982123 6046.16556174]
[1067 2998 1542 1295 1867]
[2 6 2 2 2]
--------
[ 2983.53531905 3612.63532619 5695.10667152 ..., 3541.21250421
3232.71696874 4231.13377241]
[4905 2266 3684 3506 3949]
[4 5 4 2 5]
--------
[ 4885.10859654 4358.87795195 4074.98773004 ..., 3830.62201215
3168.20801085 5997.38376294]
[2868 982 4113 1004 987]
[2 4 2 4 8]
--------
[ 4421.93475755 4478.83533968 4266.40316895 ..., 3536.91730183
2718.96138259 5058.98102388]
[2213 2091 571 1714 1333]
[4 2 6 9 4]
--------
[ 3850.63890803 5026.1340014 7042.86184729 ..., 5008.08815817
4698.24456579 4595.53631255]
[ 158 1019 3167 4301 1047]
[4 7 5 4 6]
--------
[ 5346.04816664 4563.95223463 4840.45844936 ..., 4207.76353898
3302.12037939 6529.6683683 ]
[2868 4540 2867 3579 4617]
[2 0 2 8 8]
--------
[ 5428.83136596 5502.69833809 5883.78475133 ..., 4617.51177584
4668.71781113 5902.01033547]
[4294 3632 337 703 2521]
[3 5 5 9 3]
--------
[ 3810.97467848 4601.11214817 5460.01382782 ..., 3963.55837601
3643.36245795 4945.37218013]
[1926 933 216 1851 303]
[0 2 8 4 2]
--------
[ 3321.35574728 4900.88798076 6342.42942412 ..., 4428.83856107
5218.30853821 3043.23314914]
[3480 10 2372 3528 2116]
[2 4 2 6 4]
--------
[ 4939.40259546 5767.60808308 6639.9536896 ..., 5314.26128451
4176.23370994 5383.33855521]
[2553 1366 272 2742 1471]
[7 4 4 2 4]
--------
[ 5306.32057079 4358.42092965 5392.23673442 ..., 4788.67633068
4723.48134325 6308.05833835]
[ 328 4338 1166 1763 2330]
[8 0 0 8 0]
--------
[ 4097.67787899 4039.16761227 4679.00320581 ..., 3593.36096155
3302.49299772 4876.81166337]
[2415 4723 1404 2310 1500]
[4 8 8 6 2]
--------
[ 4894.7865122 5735.65863698 7291.90372948 ..., 5999.5469829
5548.1197716 4847.64860525]
[4350 3448 2378 1523 4817]
[3 5 2 2 5]
--------
[ 3856.58514751 4600.84079272 5821.56044373 ..., 4051.05369009
3759.99694149 4471.75793173]
[2922 1318 4864 1910 728]
[4 6 4 4 6]
--------
[ 3419.95394706 4184.50833432 4647.71535273 ..., 3279.7631012
2934.76251169 4195.99678265]
[4224 3164 3418 1220 3213]
[4 2 4 6 7]
--------
[ 5757.19098172 4907.44791108 3896.18800881 ..., 4205.25944503
4557.52761923 6770.17089888]
[ 983 126 704 2156 407]
[0 1 8 0 0]
--------
[ 3742.68085735 4510.90511982 5520.97174418 ..., 3911.16440462
3271.26122467 4542.234252 ]
[4703 1018 1038 622 3739]
[2 4 6 4 6]
--------
[ 3923.16300961 4456.73927889 4159.17864488 ..., 3106.13248269
3409.96304965 4803.72730283]
[ 558 3116 2069 4703 1826]
[2 4 4 2 4]
--------
[ 5395.0660793 4553.1429804 4478.72381377 ..., 4019.88569489
3678.31156918 6643.879439 ]
[ 901 4159 4935 4540 4953]
[8 8 0 0 1]
--------
[ 2788.68015376 4462.03787523 5875.61230852 ..., 3835.90328345
4399.66010051 3692.13041481]
[3193 2836 3797 2372 2812]
[2 6 4 2 2]
--------
[ 4287.35979363 3735.0685402 3636.33593058 ..., 2987.71032732
2742.24834762 5296.41841247]
[2859 69 600 199 1431]
[0 8 0 0 8]
--------
[ 3441.83657369 4214.01044137 5805.72079935 ..., 4099.7692618
4201.20089974 3744.04874434]
[2943 4905 3377 673 3949]
[4 4 4 2 5]
--------
[ 5333.11916237 5240.32661196 5196.94477554 ..., 4548.33431049
3459.28171735 6050.6634347 ]
[ 820 3554 571 4242 762]
[2 6 6 2 5]
--------
[ 4357.08606755 4134.65838976 3520.19374467 ..., 3074.59753464
4093.13461787 4858.9285856 ]
[3874 1092 3063 1431 1726]
[8 8 0 8 5]
--------
[ 5481.29455512 4913.50638546 4017.1386583 ..., 3623.49375603
4036.86883612 5905.14673823]
[1185 3677 753 4215 2635]
[0 9 1 9 8]
--------
[ 4409.43136924 4818.49105011 5236.38195704 ..., 4039.48189747
4428.1902624 5082.49417117]
[ 420 1867 2989 1264 4715]
[4 2 6 4 4]
--------
[ 4848.70467238 4054.19955108 4506.57253353 ..., 3756.67219757
3167.90261845 6208.61731789]
[ 974 4540 3039 4466 1759]
[0 0 8 8 0]
--------
[ 4860.87080676 4081.50192944 5170.81289547 ..., 4329.96166265
3516.32635004 5583.43075537]
[ 557 1009 2333 1664 456]
[0 2 8 0 8]
--------
[ 3846.35788766 4388.96001349 5670.49433471 ..., 4235.4650276
4437.38470273 4727.92311697]
[3469 716 564 452 1881]
[8 8 0 6 4]
--------
[ 5805.43857086 5821.09491419 4205.74155174 ..., 4316.33108091
5184.42889815 6202.16486398]
[ 749 2325 3488 1821 2721]
[9 8 2 8 8]
--------
[ 4707.23623796 4387.57655204 3837.29800771 ..., 3315.60763662
3310.3351794 5503.07704834]
[1431 982 4303 554 69]
[8 4 8 8 8]
--------
[ 3992.63659754 4827.03407902 7058.58101887 ..., 5194.20253744
5163.62982794 3839.86471116]
[2830 3678 1917 1559 1777]
[4 1 6 1 2]
--------
[ 4420.35971387 3626.49927616 4760.42571626 ..., 3749.24512402
4016.24351851 5753.89711413]
[4758 1162 4233 62 1141]
[8 8 8 8 8]
--------
[ 6641.62645743 5795.25383396 4666.91793371 ..., 4994.676466
4283.40191904 7518.02540565]
[1853 4082 2014 2858 4892]
[8 6 0 4 8]
--------
[ 4366.84428392 5008.8443777 5532.9572563 ..., 3866.32176623
5271.38814735 5300.16782753]
[4283 529 3970 170 4633]
[8 6 4 8 2]
--------
[ 5366.93534524 5062.8772452 6361.85774755 ..., 5126.56824786
4537.30613911 5920.94156364]
[4398 765 349 153 3254]
[2 0 0 4 2]
--------
[ 3671.92919322 3858.60765044 4846.88157479 ..., 3521.04515734
3182.3673578 4448.65305458]
[4224 2875 933 951 3213]
[4 2 2 4 7]
--------
[ 6960.92443573 6083.71366848 6338.13442584 ..., 6083.55504619
4128.24744898 8041.05223214]
[3979 3382 4645 1787 2441]
[0 0 0 2 8]
--------
Got 139 / 500 correct => accuracy: 0.278000
You should expect to see a slightly better performance than with k = 1.
In [11]:
# Now lets speed up distance matrix computation by using partial vectorization
# with one loop. Implement the function compute_distances_one_loop and run the
# code below:
dists_one = classifier.compute_distances_one_loop(X_test)
# To ensure that our vectorized implementation is correct, we make sure that it
# agrees with the naive implementation. There are many ways to decide whether
# two matrices are similar; one of the simplest is the Frobenius norm. In case
# you haven't seen it before, the Frobenius norm of two matrices is the square
# root of the squared sum of differences of all elements; in other words, reshape
# the matrices into vectors and compute the Euclidean distance between them.
difference = np.linalg.norm(dists - dists_one, ord='fro')
print 'Difference was: %f' % (difference, )
if difference < 0.001:
print 'Good! The distance matrices are the same'
else:
print 'Uh-oh! The distance matrices are different'
Difference was: 0.000000
Good! The distance matrices are the same
In [12]:
# Now implement the fully vectorized version inside compute_distances_no_loops
# and run the code
dists_two = classifier.compute_distances_no_loops(X_test)
# check that the distance matrix agrees with the one we computed before:
difference = np.linalg.norm(dists - dists_two, ord='fro')
print 'Difference was: %f' % (difference, )
if difference < 0.001:
print 'Good! The distance matrices are the same'
else:
print 'Uh-oh! The distance matrices are different'
Difference was: 0.000000
Good! The distance matrices are the same
In [13]:
# Let's compare how fast the implementations are
def time_function(f, *args):
"""
Call a function f with args and return the time (in seconds) that it took to execute.
"""
import time
tic = time.time()
f(*args)
toc = time.time()
return toc - tic
two_loop_time = time_function(classifier.compute_distances_two_loops, X_test)
print 'Two loop version took %f seconds' % two_loop_time
one_loop_time = time_function(classifier.compute_distances_one_loop, X_test)
print 'One loop version took %f seconds' % one_loop_time
no_loop_time = time_function(classifier.compute_distances_no_loops, X_test)
print 'No loop version took %f seconds' % no_loop_time
# you should see significantly faster performance with the fully vectorized implementation
Two loop version took 125.785984 seconds
One loop version took 98.384855 seconds
No loop version took 0.583737 seconds
In [22]:
num_folds = 5
k_choices = [1, 3, 5, 8, 10, 12, 15, 20, 50, 100]
X_train_folds = []
y_train_folds = []
################################################################################
# TODO: #
# Split up the training data into folds. After splitting, X_train_folds and #
# y_train_folds should each be lists of length num_folds, where #
# y_train_folds[i] is the label vector for the points in X_train_folds[i]. #
# Hint: Look up the numpy array_split function. #
################################################################################
# shuffle data first
shuffle_indices = np.random.permutation(np.arange(len(X_train)))
X_train = X_train[shuffle_indices]
y_train = y_train[shuffle_indices]
# split data into folds
X_train_folds = np.array(np.array_split(X_train, num_folds))
y_train_folds = np.array(np.array_split(y_train, num_folds))
################################################################################
# END OF YOUR CODE #
################################################################################
# A dictionary holding the accuracies for different values of k that we find
# when running cross-validation. After running cross-validation,
# k_to_accuracies[k] should be a list of length num_folds giving the different
# accuracy values that we found when using that value of k.
k_to_accuracies = {}
################################################################################
# TODO: #
# Perform k-fold cross validation to find the best value of k. For each #
# possible value of k, run the k-nearest-neighbor algorithm num_folds times, #
# where in each case you use all but one of the folds as training data and the #
# last fold as a validation set. Store the accuracies for all fold and all #
# values of k in the k_to_accuracies dictionary. #
################################################################################
for kk in k_choices:
for i in range(num_folds):
combinat = [x for x in xrange(num_folds) if x != i]
X_train_this_time = np.concatenate(X_train_folds[combinat])
y_train_this_time = np.concatenate(y_train_folds[combinat])
classifier_k = KNearestNeighbor()
classifier_k.train(X_train_this_time, y_train_this_time)
dists_fold = classifier_k.compute_distances_no_loops(X_train_folds[i])
y_test_pred = classifier_k.predict_labels(dists_fold, k=kk)
num_correct = np.sum(y_test_pred == y_train_folds[i])
accuracy = float(num_correct) / len(X_train_folds[i])
k_to_accuracies.setdefault(kk, []).append(accuracy)
################################################################################
# END OF YOUR CODE #
################################################################################
# Print out the computed accuracies
for k in sorted(k_to_accuracies):
for accuracy in k_to_accuracies[k]:
print 'k = %d, accuracy = %f' % (k, accuracy)
---###########---
[[ 5595.21420501 3810.06561623 4279.4749678 ..., 2559.60328957
3548.35032092 3532.89880976]]
[[3688 2443 1928 ..., 2082 2628 2408]]
[[6 2 2 ..., 2 2 0]]
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-22-1f45229d8bc8> in <module>()
51 dists_fold = classifier_k.compute_distances_no_loops(X_train_folds[i])
52 dists_fold = np.asmatrix(dists_fold)
---> 53 y_test_pred = classifier_k.predict_labels(dists_fold, k=kk)
54 num_correct = np.sum(y_test_pred == y_train_folds[i])
55 accuracy = float(num_correct) / len(X_train_folds[i])
/home/ubuntu/Desktop/assignment1/cs231n/classifiers/k_nearest_neighbor.py in predict_labels(self, dists, k)
172 #########################################################################
173 # print(closest_y)
--> 174 counts = np.bincount(closest_y)
175 y_pred[i] = np.argmax(counts)
176
ValueError: object too deep for desired array
In [ ]:
# plot the raw observations
for k in k_choices:
accuracies = k_to_accuracies[k]
plt.scatter([k] * len(accuracies), accuracies)
# plot the trend line with error bars that correspond to standard deviation
accuracies_mean = np.array([np.mean(v) for k,v in sorted(k_to_accuracies.items())])
accuracies_std = np.array([np.std(v) for k,v in sorted(k_to_accuracies.items())])
plt.errorbar(k_choices, accuracies_mean, yerr=accuracies_std)
plt.title('Cross-validation on k')
plt.xlabel('k')
plt.ylabel('Cross-validation accuracy')
plt.show()
In [ ]:
# Based on the cross-validation results above, choose the best value for k,
# retrain the classifier using all the training data, and test it on the test
# data. You should be able to get above 28% accuracy on the test data.
best_k = 1
classifier = KNearestNeighbor()
classifier.train(X_train, y_train)
y_test_pred = classifier.predict(X_test, k=best_k)
# Compute and display the accuracy
num_correct = np.sum(y_test_pred == y_test)
accuracy = float(num_correct) / num_test
print 'Got %d / %d correct => accuracy: %f' % (num_correct, num_test, accuracy)