In [1]:
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
matplotlib.style.use('ggplot')
from mpl_toolkits.mplot3d import Axes3D
import IPython.html.widgets as widg
from IPython.display import clear_output
import sys
%matplotlib inline


:0: FutureWarning: IPython widgets are experimental and may change in the future.

In [23]:
class Network:
    def __init__(self, shape):
        """The base network class. This defines a simple feed-forward network with appropriate weights and biases.
        
        Arguments:
        shape (list-like): This defines the # of layers and # of neurons per layer in your network.
                           Each element of the array or list adds a new layer with the number neurons specified by the element.
        Variables:
        self.shape: see shape.
        self.weights: A list of numpy arrays containing the weights corresponding to each channel between neurons.
        self.biases: A list of numpy arrays containing the biases corresponding to each neuron.
        self.errors: A list of numpy arrays containing the error of each neurons in any iteration of the training process.
        self.eta: A float representing the learning rate.
        self.lam: A scale factor used in L2 regularization
        """
        
        self.shape = np.array(shape) #shape is array-like, i.e. (2,3,4) is a 2 input, 3 hidden node, 4 output network
        self.weights = [np.random.ranf((self.shape[i],self.shape[i-1]))*.1 for i in range(1,len(self.shape))]
        self.biases = [np.random.ranf((self.shape[i],))*.1 for i in range(1,len(self.shape))]
        self.errors = [np.random.ranf((self.shape[i],)) for i in range(1,len(self.shape))]
        self.eta = .2
        self.lam = .01
    def sigmoid(self, inputs):
        """Computes the sigmoid function of some input.
        
        Arguments:
        inputs (float or numpy array): The input or inputs to be fed through the sigmoid function.
        """
        
        return 1/(1+np.exp(-inputs))
    def feedforward(self, inputs):
        """Feeds inputs through the network and returns the output.
        
        Arguments:
        inputs (numpy array): The inputs to the network, must be the same size as the first(input) layer.
        
        Variables:
        self.activation: A list of numpy arrays corresponding to the output of each neuron in your network.
        """
        
        assert inputs.shape==self.shape[0] #inputs must feed directly into the first layer.
        self.activation = [np.zeros((self.shape[i],)) for i in range(len(self.shape))]
        self.activation[0] = inputs
        for i in range(1,len(self.shape)):
            self.activation[i]=self.sigmoid(np.dot(self.weights[i-1],self.activation[i-1])+self.biases[i-1])
        return self.activation[-1]
    def comp_error(self, answer):
        """Computes the errors of each neuron.(Typically called Back Propagation)
        
        Arguments:
        answers (numpy array): The expected output from the network.
        """
        
        assert answer.shape==self.activation[-1].shape
        self.errors[-1] = (self.activation[-1]-answer)*np.exp(np.dot(self.weights[-1],self.activation[-2])+self.biases[-1])/(np.exp(np.dot(self.weights[-1],self.activation[-2])+self.biases[-1])+1)**2
        for i in range(len(self.shape)-2, 0, -1):
            self.errors[i-1] = self.weights[i].transpose().dot(self.errors[i])*np.exp(np.dot(self.weights[i-1],self.activation[i-1])+self.biases[i-1])/(np.exp(np.dot(self.weights[i-1],self.activation[i-1])+self.biases[i-1])+1)**2
    def grad_descent(self):
        """Changes each variable based on the gradient descent algorithm."""
        
        for i in range(len(self.biases)):
            self.biases[i]=self.biases[i]-self.eta*self.errors[i]
        for i in range(len(self.weights)):
            for j in range(self.weights[i].shape[0]):
                for k in range(self.weights[i].shape[1]):
                    self.weights[i][j,k] = (1-self.eta*self.lam/1000)*self.weights[i][j,k] - self.eta*self.activation[i][k]*self.errors[i][j]
    def train(self, inputs, answer):
        """Trains the network.
        
        Arguments:
        inputs (numpy array): The inputs to the network, must be the same size as the first(input) layer.
        answers (numpy array): The expected output from the network, must be the same size as the last(output) layer.
        """
        
        self.feedforward(inputs)
        self.comp_error(answer)
        self.grad_descent()

In [24]:
n1 = Network([2,15,1])
print n1.feedforward(np.array([1,2]))
for i in range(1000):
    n1.train(np.array([1,200]), np.array([.5]))
print n1.feedforward(np.array([1,2]))


[ 0.60529536]
[ 0.50609999]

In [25]:
from sklearn.datasets import load_digits
digits = load_digits()
print(digits.data[0]*.01)


[ 0.    0.    0.05  0.13  0.09  0.01  0.    0.    0.    0.    0.13  0.15
  0.1   0.15  0.05  0.    0.    0.03  0.15  0.02  0.    0.11  0.08  0.    0.
  0.04  0.12  0.    0.    0.08  0.08  0.    0.    0.05  0.08  0.    0.
  0.09  0.08  0.    0.    0.04  0.11  0.    0.01  0.12  0.07  0.    0.
  0.02  0.14  0.05  0.1   0.12  0.    0.    0.    0.    0.06  0.13  0.1   0.
  0.    0.  ]

In [26]:
iden = np.eye(10)
acc = np.zeros((50,))
num = Network([64, 5, 10])
print num.feedforward(digits.data[89]*.01)
for i in range(50):
    for dig, ans in zip(digits.data[1:1000],digits.target[1:1000]):
        num.train(dig*.01,iden[ans])
    cor = 0
    tot = 0
    for dig, ans in zip(digits.data, digits.target):
        if num.feedforward(dig*.01).argmax()==ans:
            cor += 1
        tot += 1
    acc[i] = cor/float(tot)
print num.feedforward(digits.data[90]*.01), digits.target[90]


[ 0.55845237  0.5453556   0.52995047  0.54498899  0.54384175  0.53586123
  0.5352318   0.55207884  0.5252875   0.55129577]
[  3.05219492e-04   7.50116524e-01   1.56664095e-02   2.06285173e-02
   1.33233171e-01   1.33844476e-01   5.95690981e-04   1.77829130e-01
   1.12695650e-01   1.03732185e-01] 1

In [27]:
plt.figure(figsize=(15,10))
plt.plot(np.linspace(0,50,50),acc)


Out[27]:
[<matplotlib.lines.Line2D at 0x7f39ff8ebe90>]

In [36]:
iden = np.eye(10)
acc = np.zeros((7,500))
f = plt.figure(figsize = (15,50))
for h in range(8,15):
    num = Network([64, h, 10])
    for i in range(500):
        print str(((i+500*(h-8))/(500.*(7))))
        for dig, ans in zip(digits.data[1:1000],digits.target[1:1000]):
            num.train(dig*.01,iden[ans])
        cor = 0
        tot = 0
        for dig, ans in zip(digits.data, digits.target):
            if num.feedforward(dig*.01).argmax()==ans:
                cor += 1
            tot += 1
        acc[h-8,i] = cor/float(tot)
    plt.subplot(7,1,h-7)
    plt.plot(np.linspace(0,500,500),acc[h-8])


0.0
0.000285714285714
0.000571428571429
0.000857142857143
0.00114285714286
0.00142857142857
0.00171428571429
0.002
0.00228571428571
0.00257142857143
0.00285714285714
0.00314285714286
0.00342857142857
0.00371428571429
0.004
0.00428571428571
0.00457142857143
0.00485714285714
0.00514285714286
0.00542857142857
0.00571428571429
0.006
0.00628571428571
0.00657142857143
0.00685714285714
0.00714285714286
0.00742857142857
0.00771428571429
0.008
0.00828571428571
0.00857142857143
0.00885714285714
0.00914285714286
0.00942857142857
0.00971428571429
0.01
0.0102857142857
0.0105714285714
0.0108571428571
0.0111428571429
0.0114285714286
0.0117142857143
0.012
0.0122857142857
0.0125714285714
0.0128571428571
0.0131428571429
0.0134285714286
0.0137142857143
0.014
0.0142857142857
0.0145714285714
0.0148571428571
0.0151428571429
0.0154285714286
0.0157142857143
0.016
0.0162857142857
0.0165714285714
0.0168571428571
0.0171428571429
0.0174285714286
0.0177142857143
0.018
0.0182857142857
0.0185714285714
0.0188571428571
0.0191428571429
0.0194285714286
0.0197142857143
0.02
0.0202857142857
0.0205714285714
0.0208571428571
0.0211428571429
0.0214285714286
0.0217142857143
0.022
0.0222857142857
0.0225714285714
0.0228571428571
0.0231428571429
0.0234285714286
0.0237142857143
0.024
0.0242857142857
0.0245714285714
0.0248571428571
0.0251428571429
0.0254285714286
0.0257142857143
0.026
0.0262857142857
0.0265714285714
0.0268571428571
0.0271428571429
0.0274285714286
0.0277142857143
0.028
0.0282857142857
0.0285714285714
0.0288571428571
0.0291428571429
0.0294285714286
0.0297142857143
0.03
0.0302857142857
0.0305714285714
0.0308571428571
0.0311428571429
0.0314285714286
0.0317142857143
0.032
0.0322857142857
0.0325714285714
0.0328571428571
0.0331428571429
0.0334285714286
0.0337142857143
0.034
0.0342857142857
0.0345714285714
0.0348571428571
0.0351428571429
0.0354285714286
0.0357142857143
0.036
0.0362857142857
0.0365714285714
0.0368571428571
0.0371428571429
0.0374285714286
0.0377142857143
0.038
0.0382857142857
0.0385714285714
0.0388571428571
0.0391428571429
0.0394285714286
0.0397142857143
0.04
0.0402857142857
0.0405714285714
0.0408571428571
0.0411428571429
0.0414285714286
0.0417142857143
0.042
0.0422857142857
0.0425714285714
0.0428571428571
0.0431428571429
0.0434285714286
0.0437142857143
0.044
0.0442857142857
0.0445714285714
0.0448571428571
0.0451428571429
0.0454285714286
0.0457142857143
0.046
0.0462857142857
0.0465714285714
0.0468571428571
0.0471428571429
0.0474285714286
0.0477142857143
0.048
0.0482857142857
0.0485714285714
0.0488571428571
0.0491428571429
0.0494285714286
0.0497142857143
0.05
0.0502857142857
0.0505714285714
0.0508571428571
0.0511428571429
0.0514285714286
0.0517142857143
0.052
0.0522857142857
0.0525714285714
0.0528571428571
0.0531428571429
0.0534285714286
0.0537142857143
0.054
0.0542857142857
0.0545714285714
0.0548571428571
0.0551428571429
0.0554285714286
0.0557142857143
0.056
0.0562857142857
0.0565714285714
0.0568571428571
0.0571428571429
0.0574285714286
0.0577142857143
0.058
0.0582857142857
0.0585714285714
0.0588571428571
0.0591428571429
0.0594285714286
0.0597142857143
0.06
0.0602857142857
0.0605714285714
0.0608571428571
0.0611428571429
0.0614285714286
0.0617142857143
0.062
0.0622857142857
0.0625714285714
0.0628571428571
0.0631428571429
0.0634285714286
0.0637142857143
0.064
0.0642857142857
0.0645714285714
0.0648571428571
0.0651428571429
0.0654285714286
0.0657142857143
0.066
0.0662857142857
0.0665714285714
0.0668571428571
0.0671428571429
0.0674285714286
0.0677142857143
0.068
0.0682857142857
0.0685714285714
0.0688571428571
0.0691428571429
0.0694285714286
0.0697142857143
0.07
0.0702857142857
0.0705714285714
0.0708571428571
0.0711428571429
0.0714285714286
0.0717142857143
0.072
0.0722857142857
0.0725714285714
0.0728571428571
0.0731428571429
0.0734285714286
0.0737142857143
0.074
0.0742857142857
0.0745714285714
0.0748571428571
0.0751428571429
0.0754285714286
0.0757142857143
0.076
0.0762857142857
0.0765714285714
0.0768571428571
0.0771428571429
0.0774285714286
0.0777142857143
0.078
0.0782857142857
0.0785714285714
0.0788571428571
0.0791428571429
0.0794285714286
0.0797142857143
0.08
0.0802857142857
0.0805714285714
0.0808571428571
0.0811428571429
0.0814285714286
0.0817142857143
0.082
0.0822857142857
0.0825714285714
0.0828571428571
0.0831428571429
0.0834285714286
0.0837142857143
0.084
0.0842857142857
0.0845714285714
0.0848571428571
0.0851428571429
0.0854285714286
0.0857142857143
0.086
0.0862857142857
0.0865714285714
0.0868571428571
0.0871428571429
0.0874285714286
0.0877142857143
0.088
0.0882857142857
0.0885714285714
0.0888571428571
0.0891428571429
0.0894285714286
0.0897142857143
0.09
0.0902857142857
0.0905714285714
0.0908571428571
0.0911428571429
0.0914285714286
0.0917142857143
0.092
0.0922857142857
0.0925714285714
0.0928571428571
0.0931428571429
0.0934285714286
0.0937142857143
0.094
0.0942857142857
0.0945714285714
0.0948571428571
0.0951428571429
0.0954285714286
0.0957142857143
0.096
0.0962857142857
0.0965714285714
0.0968571428571
0.0971428571429
0.0974285714286
0.0977142857143
0.098
0.0982857142857
0.0985714285714
0.0988571428571
0.0991428571429
0.0994285714286
0.0997142857143
0.1
0.100285714286
0.100571428571
0.100857142857
0.101142857143
0.101428571429
0.101714285714
0.102
0.102285714286
0.102571428571
0.102857142857
0.103142857143
0.103428571429
0.103714285714
0.104
0.104285714286
0.104571428571
0.104857142857
0.105142857143
0.105428571429
0.105714285714
0.106
0.106285714286
0.106571428571
0.106857142857
0.107142857143
0.107428571429
0.107714285714
0.108
0.108285714286
0.108571428571
0.108857142857
0.109142857143
0.109428571429
0.109714285714
0.11
0.110285714286
0.110571428571
0.110857142857
0.111142857143
0.111428571429
0.111714285714
0.112
0.112285714286
0.112571428571
0.112857142857
0.113142857143
0.113428571429
0.113714285714
0.114
0.114285714286
0.114571428571
0.114857142857
0.115142857143
0.115428571429
0.115714285714
0.116
0.116285714286
0.116571428571
0.116857142857
0.117142857143
0.117428571429
0.117714285714
0.118
0.118285714286
0.118571428571
0.118857142857
0.119142857143
0.119428571429
0.119714285714
0.12
0.120285714286
0.120571428571
0.120857142857
0.121142857143
0.121428571429
0.121714285714
0.122
0.122285714286
0.122571428571
0.122857142857
0.123142857143
0.123428571429
0.123714285714
0.124
0.124285714286
0.124571428571
0.124857142857
0.125142857143
0.125428571429
0.125714285714
0.126
0.126285714286
0.126571428571
0.126857142857
0.127142857143
0.127428571429
0.127714285714
0.128
0.128285714286
0.128571428571
0.128857142857
0.129142857143
0.129428571429
0.129714285714
0.13
0.130285714286
0.130571428571
0.130857142857
0.131142857143
0.131428571429
0.131714285714
0.132
0.132285714286
0.132571428571
0.132857142857
0.133142857143
0.133428571429
0.133714285714
0.134
0.134285714286
0.134571428571
0.134857142857
0.135142857143
0.135428571429
0.135714285714
0.136
0.136285714286
0.136571428571
0.136857142857
0.137142857143
0.137428571429
0.137714285714
0.138
0.138285714286
0.138571428571
0.138857142857
0.139142857143
0.139428571429
0.139714285714
0.14
0.140285714286
0.140571428571
0.140857142857
0.141142857143
0.141428571429
0.141714285714
0.142
0.142285714286
0.142571428571
0.142857142857
0.143142857143
0.143428571429
0.143714285714
0.144
0.144285714286
0.144571428571
0.144857142857
0.145142857143
0.145428571429
0.145714285714
0.146
0.146285714286
0.146571428571
0.146857142857
0.147142857143
0.147428571429
0.147714285714
0.148
0.148285714286
0.148571428571
0.148857142857
0.149142857143
0.149428571429
0.149714285714
0.15
0.150285714286
0.150571428571
0.150857142857
0.151142857143
0.151428571429
0.151714285714
0.152
0.152285714286
0.152571428571
0.152857142857
0.153142857143
0.153428571429
0.153714285714
0.154
0.154285714286
0.154571428571
0.154857142857
0.155142857143
0.155428571429
0.155714285714
0.156
0.156285714286
0.156571428571
0.156857142857
0.157142857143
0.157428571429
0.157714285714
0.158
0.158285714286
0.158571428571
0.158857142857
0.159142857143
0.159428571429
0.159714285714
0.16
0.160285714286
0.160571428571
0.160857142857
0.161142857143
0.161428571429
0.161714285714
0.162
0.162285714286
0.162571428571
0.162857142857
0.163142857143
0.163428571429
0.163714285714
0.164
0.164285714286
0.164571428571
0.164857142857
0.165142857143
0.165428571429
0.165714285714
0.166
0.166285714286
0.166571428571
0.166857142857
0.167142857143
0.167428571429
0.167714285714
0.168
0.168285714286
0.168571428571
0.168857142857
0.169142857143
0.169428571429
0.169714285714
0.17
0.170285714286
0.170571428571
0.170857142857
0.171142857143
0.171428571429
0.171714285714
0.172
0.172285714286
0.172571428571
0.172857142857
0.173142857143
0.173428571429
0.173714285714
0.174
0.174285714286
0.174571428571
0.174857142857
0.175142857143
0.175428571429
0.175714285714
0.176
0.176285714286
0.176571428571
0.176857142857
0.177142857143
0.177428571429
0.177714285714
0.178
0.178285714286
0.178571428571
0.178857142857
0.179142857143
0.179428571429
0.179714285714
0.18
0.180285714286
0.180571428571
0.180857142857
0.181142857143
0.181428571429
0.181714285714
0.182
0.182285714286
0.182571428571
0.182857142857
0.183142857143
0.183428571429
0.183714285714
0.184
0.184285714286
0.184571428571
0.184857142857
0.185142857143
0.185428571429
0.185714285714
0.186
0.186285714286
0.186571428571
0.186857142857
0.187142857143
0.187428571429
0.187714285714
0.188
0.188285714286
0.188571428571
0.188857142857
0.189142857143
0.189428571429
0.189714285714
0.19
0.190285714286
0.190571428571
0.190857142857
0.191142857143
0.191428571429
0.191714285714
0.192
0.192285714286
0.192571428571
0.192857142857
0.193142857143
0.193428571429
0.193714285714
0.194
0.194285714286
0.194571428571
0.194857142857
0.195142857143
0.195428571429
0.195714285714
0.196
0.196285714286
0.196571428571
0.196857142857
0.197142857143
0.197428571429
0.197714285714
0.198
0.198285714286
0.198571428571
0.198857142857
0.199142857143
0.199428571429
0.199714285714
0.2
0.200285714286
0.200571428571
0.200857142857
0.201142857143
0.201428571429
0.201714285714
0.202
0.202285714286
0.202571428571
0.202857142857
0.203142857143
0.203428571429
0.203714285714
0.204
0.204285714286
0.204571428571
0.204857142857
0.205142857143
0.205428571429
0.205714285714
0.206
0.206285714286
0.206571428571
0.206857142857
0.207142857143
0.207428571429
0.207714285714
0.208
0.208285714286
0.208571428571
0.208857142857
0.209142857143
0.209428571429
0.209714285714
0.21
0.210285714286
0.210571428571
0.210857142857
0.211142857143
0.211428571429
0.211714285714
0.212
0.212285714286
0.212571428571
0.212857142857
0.213142857143
0.213428571429
0.213714285714
0.214
0.214285714286
0.214571428571
0.214857142857
0.215142857143
0.215428571429
0.215714285714
0.216
0.216285714286
0.216571428571
0.216857142857
0.217142857143
0.217428571429
0.217714285714
0.218
0.218285714286
0.218571428571
0.218857142857
0.219142857143
0.219428571429
0.219714285714
0.22
0.220285714286
0.220571428571
0.220857142857
0.221142857143
0.221428571429
0.221714285714
0.222
0.222285714286
0.222571428571
0.222857142857
0.223142857143
0.223428571429
0.223714285714
0.224
0.224285714286
0.224571428571
0.224857142857
0.225142857143
0.225428571429
0.225714285714
0.226
0.226285714286
0.226571428571
0.226857142857
0.227142857143
0.227428571429
0.227714285714
0.228
0.228285714286
0.228571428571
0.228857142857
0.229142857143
0.229428571429
0.229714285714
0.23
0.230285714286
0.230571428571
0.230857142857
0.231142857143
0.231428571429
0.231714285714
0.232
0.232285714286
0.232571428571
0.232857142857
0.233142857143
0.233428571429
0.233714285714
0.234
0.234285714286
0.234571428571
0.234857142857
0.235142857143
0.235428571429
0.235714285714
0.236
0.236285714286
0.236571428571
0.236857142857
0.237142857143
0.237428571429
0.237714285714
0.238
0.238285714286
0.238571428571
0.238857142857
0.239142857143
0.239428571429
0.239714285714
0.24
0.240285714286
0.240571428571
0.240857142857
0.241142857143
0.241428571429
0.241714285714
0.242
0.242285714286
0.242571428571
0.242857142857
0.243142857143
0.243428571429
0.243714285714
0.244
0.244285714286
0.244571428571
0.244857142857
0.245142857143
0.245428571429
0.245714285714
0.246
0.246285714286
0.246571428571
0.246857142857
0.247142857143
0.247428571429
0.247714285714
0.248
0.248285714286
0.248571428571
0.248857142857
0.249142857143
0.249428571429
0.249714285714
0.25
0.250285714286
0.250571428571
0.250857142857
0.251142857143
0.251428571429
0.251714285714
0.252
0.252285714286
0.252571428571
0.252857142857
0.253142857143
0.253428571429
0.253714285714
0.254
0.254285714286
0.254571428571
0.254857142857
0.255142857143
0.255428571429
0.255714285714
0.256
0.256285714286
0.256571428571
0.256857142857
0.257142857143
0.257428571429
0.257714285714
0.258
0.258285714286
0.258571428571
0.258857142857
0.259142857143
0.259428571429
0.259714285714
0.26
0.260285714286
0.260571428571
0.260857142857
0.261142857143
0.261428571429
0.261714285714
0.262
0.262285714286
0.262571428571
0.262857142857
0.263142857143
0.263428571429
0.263714285714
0.264
0.264285714286
0.264571428571
0.264857142857
0.265142857143
0.265428571429
0.265714285714
0.266
0.266285714286
0.266571428571
0.266857142857
0.267142857143
0.267428571429
0.267714285714
0.268
0.268285714286
0.268571428571
0.268857142857
0.269142857143
0.269428571429
0.269714285714
0.27
0.270285714286
0.270571428571
0.270857142857
0.271142857143
0.271428571429
0.271714285714
0.272
0.272285714286
0.272571428571
0.272857142857
0.273142857143
0.273428571429
0.273714285714
0.274
0.274285714286
0.274571428571
0.274857142857
0.275142857143
0.275428571429
0.275714285714
0.276
0.276285714286
0.276571428571
0.276857142857
0.277142857143
0.277428571429
0.277714285714
0.278
0.278285714286
0.278571428571
0.278857142857
0.279142857143
0.279428571429
0.279714285714
0.28
0.280285714286
0.280571428571
0.280857142857
0.281142857143
0.281428571429
0.281714285714
0.282
0.282285714286
0.282571428571
0.282857142857
0.283142857143
0.283428571429
0.283714285714
0.284
0.284285714286
0.284571428571
0.284857142857
0.285142857143
0.285428571429
0.285714285714
0.286
0.286285714286
0.286571428571
0.286857142857
0.287142857143
0.287428571429
0.287714285714
0.288
0.288285714286
0.288571428571
0.288857142857
0.289142857143
0.289428571429
0.289714285714
0.29
0.290285714286
0.290571428571
0.290857142857
0.291142857143
0.291428571429
0.291714285714
0.292
0.292285714286
0.292571428571
0.292857142857
0.293142857143
0.293428571429
0.293714285714
0.294
0.294285714286
0.294571428571
0.294857142857
0.295142857143
0.295428571429
0.295714285714
0.296
0.296285714286
0.296571428571
0.296857142857
0.297142857143
0.297428571429
0.297714285714
0.298
0.298285714286
0.298571428571
0.298857142857
0.299142857143
0.299428571429
0.299714285714
0.3
0.300285714286
0.300571428571
0.300857142857
0.301142857143
0.301428571429
0.301714285714
0.302
0.302285714286
0.302571428571
0.302857142857
0.303142857143
0.303428571429
0.303714285714
0.304
0.304285714286
0.304571428571
0.304857142857
0.305142857143
0.305428571429
0.305714285714
0.306
0.306285714286
0.306571428571
0.306857142857
0.307142857143
0.307428571429
0.307714285714
0.308
0.308285714286
0.308571428571
0.308857142857
0.309142857143
0.309428571429
0.309714285714
0.31
0.310285714286
0.310571428571
0.310857142857
0.311142857143
0.311428571429
0.311714285714
0.312
0.312285714286
0.312571428571
0.312857142857
0.313142857143
0.313428571429
0.313714285714
0.314
0.314285714286
0.314571428571
0.314857142857
0.315142857143
0.315428571429
0.315714285714
0.316
0.316285714286
0.316571428571
0.316857142857
0.317142857143
0.317428571429
0.317714285714
0.318
0.318285714286
0.318571428571
0.318857142857
0.319142857143
0.319428571429
0.319714285714
0.32
0.320285714286
0.320571428571
0.320857142857
0.321142857143
0.321428571429
0.321714285714
0.322
0.322285714286
0.322571428571
0.322857142857
0.323142857143
0.323428571429
0.323714285714
0.324
0.324285714286
0.324571428571
0.324857142857
0.325142857143
0.325428571429
0.325714285714
0.326
0.326285714286
0.326571428571
0.326857142857
0.327142857143
0.327428571429
0.327714285714
0.328
0.328285714286
0.328571428571
0.328857142857
0.329142857143
0.329428571429
0.329714285714
0.33
0.330285714286
0.330571428571
0.330857142857
0.331142857143
0.331428571429
0.331714285714
0.332
0.332285714286
0.332571428571
0.332857142857
0.333142857143
0.333428571429
0.333714285714
0.334
0.334285714286
0.334571428571
0.334857142857
0.335142857143
0.335428571429
0.335714285714
0.336
0.336285714286
0.336571428571
0.336857142857
0.337142857143
0.337428571429
0.337714285714
0.338
0.338285714286
0.338571428571
0.338857142857
0.339142857143
0.339428571429
0.339714285714
0.34
0.340285714286
0.340571428571
0.340857142857
0.341142857143
0.341428571429
0.341714285714
0.342
0.342285714286
0.342571428571
0.342857142857
0.343142857143
0.343428571429
0.343714285714
0.344
0.344285714286
0.344571428571
0.344857142857
0.345142857143
0.345428571429
0.345714285714
0.346
0.346285714286
0.346571428571
0.346857142857
0.347142857143
0.347428571429
0.347714285714
0.348
0.348285714286
0.348571428571
0.348857142857
0.349142857143
0.349428571429
0.349714285714
0.35
0.350285714286
0.350571428571
0.350857142857
0.351142857143
0.351428571429
0.351714285714
0.352
0.352285714286
0.352571428571
0.352857142857
0.353142857143
0.353428571429
0.353714285714
0.354
0.354285714286
0.354571428571
0.354857142857
0.355142857143
0.355428571429
0.355714285714
0.356
0.356285714286
0.356571428571
0.356857142857
0.357142857143
0.357428571429
0.357714285714
0.358
0.358285714286
0.358571428571
0.358857142857
0.359142857143
0.359428571429
0.359714285714
0.36
0.360285714286
0.360571428571
0.360857142857
0.361142857143
0.361428571429
0.361714285714
0.362
0.362285714286
0.362571428571
0.362857142857
0.363142857143
0.363428571429
0.363714285714
0.364
0.364285714286
0.364571428571
0.364857142857
0.365142857143
0.365428571429
0.365714285714
0.366
0.366285714286
0.366571428571
0.366857142857
0.367142857143
0.367428571429
0.367714285714
0.368
0.368285714286
0.368571428571
0.368857142857
0.369142857143
0.369428571429
0.369714285714
0.37
0.370285714286
0.370571428571
0.370857142857
0.371142857143
0.371428571429
0.371714285714
0.372
0.372285714286
0.372571428571
0.372857142857
0.373142857143
0.373428571429
0.373714285714
0.374
0.374285714286
0.374571428571
0.374857142857
0.375142857143
0.375428571429
0.375714285714
0.376
0.376285714286
0.376571428571
0.376857142857
0.377142857143
0.377428571429
0.377714285714
0.378
0.378285714286
0.378571428571
0.378857142857
0.379142857143
0.379428571429
0.379714285714
0.38
0.380285714286
0.380571428571
0.380857142857
0.381142857143
0.381428571429
0.381714285714
0.382
0.382285714286
0.382571428571
0.382857142857
0.383142857143
0.383428571429
0.383714285714
0.384
0.384285714286
0.384571428571
0.384857142857
0.385142857143
0.385428571429
0.385714285714
0.386
0.386285714286
0.386571428571
0.386857142857
0.387142857143
0.387428571429
0.387714285714
0.388
0.388285714286
0.388571428571
0.388857142857
0.389142857143
0.389428571429
0.389714285714
0.39
0.390285714286
0.390571428571
0.390857142857
0.391142857143
0.391428571429
0.391714285714
0.392
0.392285714286
0.392571428571
0.392857142857
0.393142857143
0.393428571429
0.393714285714
0.394
0.394285714286
0.394571428571
0.394857142857
0.395142857143
0.395428571429
0.395714285714
0.396
0.396285714286
0.396571428571
0.396857142857
0.397142857143
0.397428571429
0.397714285714
0.398
0.398285714286
0.398571428571
0.398857142857
0.399142857143
0.399428571429
0.399714285714
0.4
0.400285714286
0.400571428571
0.400857142857
0.401142857143
0.401428571429
0.401714285714
0.402
0.402285714286
0.402571428571
0.402857142857
0.403142857143
0.403428571429
0.403714285714
0.404
0.404285714286
0.404571428571
0.404857142857
0.405142857143
0.405428571429
0.405714285714
0.406
0.406285714286
0.406571428571
0.406857142857
0.407142857143
0.407428571429
0.407714285714
0.408
0.408285714286
0.408571428571
0.408857142857
0.409142857143
0.409428571429
0.409714285714
0.41
0.410285714286
0.410571428571
0.410857142857
0.411142857143
0.411428571429
0.411714285714
0.412
0.412285714286
0.412571428571
0.412857142857
0.413142857143
0.413428571429
0.413714285714
0.414
0.414285714286
0.414571428571
0.414857142857
0.415142857143
0.415428571429
0.415714285714
0.416
0.416285714286
0.416571428571
0.416857142857
0.417142857143
0.417428571429
0.417714285714
0.418
0.418285714286
0.418571428571
0.418857142857
0.419142857143
0.419428571429
0.419714285714
0.42
0.420285714286
0.420571428571
0.420857142857
0.421142857143
0.421428571429
0.421714285714
0.422
0.422285714286
0.422571428571
0.422857142857
0.423142857143
0.423428571429
0.423714285714
0.424
0.424285714286
0.424571428571
0.424857142857
0.425142857143
0.425428571429
0.425714285714
0.426
0.426285714286
0.426571428571
0.426857142857
0.427142857143
0.427428571429
0.427714285714
0.428
0.428285714286
0.428571428571
0.428857142857
0.429142857143
0.429428571429
0.429714285714
0.43
0.430285714286
0.430571428571
0.430857142857
0.431142857143
0.431428571429
0.431714285714
0.432
0.432285714286
0.432571428571
0.432857142857
0.433142857143
0.433428571429
0.433714285714
0.434
0.434285714286
0.434571428571
0.434857142857
0.435142857143
0.435428571429
0.435714285714
0.436
0.436285714286
0.436571428571
0.436857142857
0.437142857143
0.437428571429
0.437714285714
0.438
0.438285714286
0.438571428571
0.438857142857
0.439142857143
0.439428571429
0.439714285714
0.44
0.440285714286
0.440571428571
0.440857142857
0.441142857143
0.441428571429
0.441714285714
0.442
0.442285714286
0.442571428571
0.442857142857
0.443142857143
0.443428571429
0.443714285714
0.444
0.444285714286
0.444571428571
0.444857142857
0.445142857143
0.445428571429
0.445714285714
0.446
0.446285714286
0.446571428571
0.446857142857
0.447142857143
0.447428571429
0.447714285714
0.448
0.448285714286
0.448571428571
0.448857142857
0.449142857143
0.449428571429
0.449714285714
0.45
0.450285714286
0.450571428571
0.450857142857
0.451142857143
0.451428571429
0.451714285714
0.452
0.452285714286
0.452571428571
0.452857142857
0.453142857143
0.453428571429
0.453714285714
0.454
0.454285714286
0.454571428571
0.454857142857
0.455142857143
0.455428571429
0.455714285714
0.456
0.456285714286
0.456571428571
0.456857142857
0.457142857143
0.457428571429
0.457714285714
0.458
0.458285714286
0.458571428571
0.458857142857
0.459142857143
0.459428571429
0.459714285714
0.46
0.460285714286
0.460571428571
0.460857142857
0.461142857143
0.461428571429
0.461714285714
0.462
0.462285714286
0.462571428571
0.462857142857
0.463142857143
0.463428571429
0.463714285714
0.464
0.464285714286
0.464571428571
0.464857142857
0.465142857143
0.465428571429
0.465714285714
0.466
0.466285714286
0.466571428571
0.466857142857
0.467142857143
0.467428571429
0.467714285714
0.468
0.468285714286
0.468571428571
0.468857142857
0.469142857143
0.469428571429
0.469714285714
0.47
0.470285714286
0.470571428571
0.470857142857
0.471142857143
0.471428571429
0.471714285714
0.472
0.472285714286
0.472571428571
0.472857142857
0.473142857143
0.473428571429
0.473714285714
0.474
0.474285714286
0.474571428571
0.474857142857
0.475142857143
0.475428571429
0.475714285714
0.476
0.476285714286
0.476571428571
0.476857142857
0.477142857143
0.477428571429
0.477714285714
0.478
0.478285714286
0.478571428571
0.478857142857
0.479142857143
0.479428571429
0.479714285714
0.48
0.480285714286
0.480571428571
0.480857142857
0.481142857143
0.481428571429
0.481714285714
0.482
0.482285714286
0.482571428571
0.482857142857
0.483142857143
0.483428571429
0.483714285714
0.484
0.484285714286
0.484571428571
0.484857142857
0.485142857143
0.485428571429
0.485714285714
0.486
0.486285714286
0.486571428571
0.486857142857
0.487142857143
0.487428571429
0.487714285714
0.488
0.488285714286
0.488571428571
0.488857142857
0.489142857143
0.489428571429
0.489714285714
0.49
0.490285714286
0.490571428571
0.490857142857
0.491142857143
0.491428571429
0.491714285714
0.492
0.492285714286
0.492571428571
0.492857142857
0.493142857143
0.493428571429
0.493714285714
0.494
0.494285714286
0.494571428571
0.494857142857
0.495142857143
0.495428571429
0.495714285714
0.496
0.496285714286
0.496571428571
0.496857142857
0.497142857143
0.497428571429
0.497714285714
0.498
0.498285714286
0.498571428571
0.498857142857
0.499142857143
0.499428571429
0.499714285714
0.5
0.500285714286
0.500571428571
0.500857142857
0.501142857143
0.501428571429
0.501714285714
0.502
0.502285714286
0.502571428571
0.502857142857
0.503142857143
0.503428571429
0.503714285714
0.504
0.504285714286
0.504571428571
0.504857142857
0.505142857143
0.505428571429
0.505714285714
0.506
0.506285714286
0.506571428571
0.506857142857
0.507142857143
0.507428571429
0.507714285714
0.508
0.508285714286
0.508571428571
0.508857142857
0.509142857143
0.509428571429
0.509714285714
0.51
0.510285714286
0.510571428571
0.510857142857
0.511142857143
0.511428571429
0.511714285714
0.512
0.512285714286
0.512571428571
0.512857142857
0.513142857143
0.513428571429
0.513714285714
0.514
0.514285714286
0.514571428571
0.514857142857
0.515142857143
0.515428571429
0.515714285714
0.516
0.516285714286
0.516571428571
0.516857142857
0.517142857143
0.517428571429
0.517714285714
0.518
0.518285714286
0.518571428571
0.518857142857
0.519142857143
0.519428571429
0.519714285714
0.52
0.520285714286
0.520571428571
0.520857142857
0.521142857143
0.521428571429
0.521714285714
0.522
0.522285714286
0.522571428571
0.522857142857
0.523142857143
0.523428571429
0.523714285714
0.524
0.524285714286
0.524571428571
0.524857142857
0.525142857143
0.525428571429
0.525714285714
0.526
0.526285714286
0.526571428571
0.526857142857
0.527142857143
0.527428571429
0.527714285714
0.528
0.528285714286
0.528571428571
0.528857142857
0.529142857143
0.529428571429
0.529714285714
0.53
0.530285714286
0.530571428571
0.530857142857
0.531142857143
0.531428571429
0.531714285714
0.532
0.532285714286
0.532571428571
0.532857142857
0.533142857143
0.533428571429
0.533714285714
0.534
0.534285714286
0.534571428571
0.534857142857
0.535142857143
0.535428571429
0.535714285714
0.536
0.536285714286
0.536571428571
0.536857142857
0.537142857143
0.537428571429
0.537714285714
0.538
0.538285714286
0.538571428571
0.538857142857
0.539142857143
0.539428571429
0.539714285714
0.54
0.540285714286
0.540571428571
0.540857142857
0.541142857143
0.541428571429
0.541714285714
0.542
0.542285714286
0.542571428571
0.542857142857
0.543142857143
0.543428571429
0.543714285714
0.544
0.544285714286
0.544571428571
0.544857142857
0.545142857143
0.545428571429
0.545714285714
0.546
0.546285714286
0.546571428571
0.546857142857
0.547142857143
0.547428571429
0.547714285714
0.548
0.548285714286
0.548571428571
0.548857142857
0.549142857143
0.549428571429
0.549714285714
0.55
0.550285714286
0.550571428571
0.550857142857
0.551142857143
0.551428571429
0.551714285714
0.552
0.552285714286
0.552571428571
0.552857142857
0.553142857143
0.553428571429
0.553714285714
0.554
0.554285714286
0.554571428571
0.554857142857
0.555142857143
0.555428571429
0.555714285714
0.556
0.556285714286
0.556571428571
0.556857142857
0.557142857143
0.557428571429
0.557714285714
0.558
0.558285714286
0.558571428571
0.558857142857
0.559142857143
0.559428571429
0.559714285714
0.56
0.560285714286
0.560571428571
0.560857142857
0.561142857143
0.561428571429
0.561714285714
0.562
0.562285714286
0.562571428571
0.562857142857
0.563142857143
0.563428571429
0.563714285714
0.564
0.564285714286
0.564571428571
0.564857142857
0.565142857143
0.565428571429
0.565714285714
0.566
0.566285714286
0.566571428571
0.566857142857
0.567142857143
0.567428571429
0.567714285714
0.568
0.568285714286
0.568571428571
0.568857142857
0.569142857143
0.569428571429
0.569714285714
0.57
0.570285714286
0.570571428571
0.570857142857
0.571142857143
0.571428571429
0.571714285714
0.572
0.572285714286
0.572571428571
0.572857142857
0.573142857143
0.573428571429
0.573714285714
0.574
0.574285714286
0.574571428571
0.574857142857
0.575142857143
0.575428571429
0.575714285714
0.576
0.576285714286
0.576571428571
0.576857142857
0.577142857143
0.577428571429
0.577714285714
0.578
0.578285714286
0.578571428571
0.578857142857
0.579142857143
0.579428571429
0.579714285714
0.58
0.580285714286
0.580571428571
0.580857142857
0.581142857143
0.581428571429
0.581714285714
0.582
0.582285714286
0.582571428571
0.582857142857
0.583142857143
0.583428571429
0.583714285714
0.584
0.584285714286
0.584571428571
0.584857142857
0.585142857143
0.585428571429
0.585714285714
0.586
0.586285714286
0.586571428571
0.586857142857
0.587142857143
0.587428571429
0.587714285714
0.588
0.588285714286
0.588571428571
0.588857142857
0.589142857143
0.589428571429
0.589714285714
0.59
0.590285714286
0.590571428571
0.590857142857
0.591142857143
0.591428571429
0.591714285714
0.592
0.592285714286
0.592571428571
0.592857142857
0.593142857143
0.593428571429
0.593714285714
0.594
0.594285714286
0.594571428571
0.594857142857
0.595142857143
0.595428571429
0.595714285714
0.596
0.596285714286
0.596571428571
0.596857142857
0.597142857143
0.597428571429
0.597714285714
0.598
0.598285714286
0.598571428571
0.598857142857
0.599142857143
0.599428571429
0.599714285714
0.6
0.600285714286
0.600571428571
0.600857142857
0.601142857143
0.601428571429
0.601714285714
0.602
0.602285714286
0.602571428571
0.602857142857
0.603142857143
0.603428571429
0.603714285714
0.604
0.604285714286
0.604571428571
0.604857142857
0.605142857143
0.605428571429
0.605714285714
0.606
0.606285714286
0.606571428571
0.606857142857
0.607142857143
0.607428571429
0.607714285714
0.608
0.608285714286
0.608571428571
0.608857142857
0.609142857143
0.609428571429
0.609714285714
0.61
0.610285714286
0.610571428571
0.610857142857
0.611142857143
0.611428571429
0.611714285714
0.612
0.612285714286
0.612571428571
0.612857142857
0.613142857143
0.613428571429
0.613714285714
0.614
0.614285714286
0.614571428571
0.614857142857
0.615142857143
0.615428571429
0.615714285714
0.616
0.616285714286
0.616571428571
0.616857142857
0.617142857143
0.617428571429
0.617714285714
0.618
0.618285714286
0.618571428571
0.618857142857
0.619142857143
0.619428571429
0.619714285714
0.62
0.620285714286
0.620571428571
0.620857142857
0.621142857143
0.621428571429
0.621714285714
0.622
0.622285714286
0.622571428571
0.622857142857
0.623142857143
0.623428571429
0.623714285714
0.624
0.624285714286
0.624571428571
0.624857142857
0.625142857143
0.625428571429
0.625714285714
0.626
0.626285714286
0.626571428571
0.626857142857
0.627142857143
0.627428571429
0.627714285714
0.628
0.628285714286
0.628571428571
0.628857142857
0.629142857143
0.629428571429
0.629714285714
0.63
0.630285714286
0.630571428571
0.630857142857
0.631142857143
0.631428571429
0.631714285714
0.632
0.632285714286
0.632571428571
0.632857142857
0.633142857143
0.633428571429
0.633714285714
0.634
0.634285714286
0.634571428571
0.634857142857
0.635142857143
0.635428571429
0.635714285714
0.636
0.636285714286
0.636571428571
0.636857142857
0.637142857143
0.637428571429
0.637714285714
0.638
0.638285714286
0.638571428571
0.638857142857
0.639142857143
0.639428571429
0.639714285714
0.64
0.640285714286
0.640571428571
0.640857142857
0.641142857143
0.641428571429
0.641714285714
0.642
0.642285714286
0.642571428571
0.642857142857
0.643142857143
0.643428571429
0.643714285714
0.644
0.644285714286
0.644571428571
0.644857142857
0.645142857143
0.645428571429
0.645714285714
0.646
0.646285714286
0.646571428571
0.646857142857
0.647142857143
0.647428571429
0.647714285714
0.648
0.648285714286
0.648571428571
0.648857142857
0.649142857143
0.649428571429
0.649714285714
0.65
0.650285714286
0.650571428571
0.650857142857
0.651142857143
0.651428571429
0.651714285714
0.652
0.652285714286
0.652571428571
0.652857142857
0.653142857143
0.653428571429
0.653714285714
0.654
0.654285714286
0.654571428571
0.654857142857
0.655142857143
0.655428571429
0.655714285714
0.656
0.656285714286
0.656571428571
0.656857142857
0.657142857143
0.657428571429
0.657714285714
0.658
0.658285714286
0.658571428571
0.658857142857
0.659142857143
0.659428571429
0.659714285714
0.66
0.660285714286
0.660571428571
0.660857142857
0.661142857143
0.661428571429
0.661714285714
0.662
0.662285714286
0.662571428571
0.662857142857
0.663142857143
0.663428571429
0.663714285714
0.664
0.664285714286
0.664571428571
0.664857142857
0.665142857143
0.665428571429
0.665714285714
0.666
0.666285714286
0.666571428571
0.666857142857
0.667142857143
0.667428571429
0.667714285714
0.668
0.668285714286
0.668571428571
0.668857142857
0.669142857143
0.669428571429
0.669714285714
0.67
0.670285714286
0.670571428571
0.670857142857
0.671142857143
0.671428571429
0.671714285714
0.672
0.672285714286
0.672571428571
0.672857142857
0.673142857143
0.673428571429
0.673714285714
0.674
0.674285714286
0.674571428571
0.674857142857
0.675142857143
0.675428571429
0.675714285714
0.676
0.676285714286
0.676571428571
0.676857142857
0.677142857143
0.677428571429
0.677714285714
0.678
0.678285714286
0.678571428571
0.678857142857
0.679142857143
0.679428571429
0.679714285714
0.68
0.680285714286
0.680571428571
0.680857142857
0.681142857143
0.681428571429
0.681714285714
0.682
0.682285714286
0.682571428571
0.682857142857
0.683142857143
0.683428571429
0.683714285714
0.684
0.684285714286
0.684571428571
0.684857142857
0.685142857143
0.685428571429
0.685714285714
0.686
0.686285714286
0.686571428571
0.686857142857
0.687142857143
0.687428571429
0.687714285714
0.688
0.688285714286
0.688571428571
0.688857142857
0.689142857143
0.689428571429
0.689714285714
0.69
0.690285714286
0.690571428571
0.690857142857
0.691142857143
0.691428571429
0.691714285714
0.692
0.692285714286
0.692571428571
0.692857142857
0.693142857143
0.693428571429
0.693714285714
0.694
0.694285714286
0.694571428571
0.694857142857
0.695142857143
0.695428571429
0.695714285714
0.696
0.696285714286
0.696571428571
0.696857142857
0.697142857143
0.697428571429
0.697714285714
0.698
0.698285714286
0.698571428571
0.698857142857
0.699142857143
0.699428571429
0.699714285714
0.7
0.700285714286
0.700571428571
0.700857142857
0.701142857143
0.701428571429
0.701714285714
0.702
0.702285714286
0.702571428571
0.702857142857
0.703142857143
0.703428571429
0.703714285714
0.704
0.704285714286
0.704571428571
0.704857142857
0.705142857143
0.705428571429
0.705714285714
0.706
0.706285714286
0.706571428571
0.706857142857
0.707142857143
0.707428571429
0.707714285714
0.708
0.708285714286
0.708571428571
0.708857142857
0.709142857143
0.709428571429
0.709714285714
0.71
0.710285714286
0.710571428571
0.710857142857
0.711142857143
0.711428571429
0.711714285714
0.712
0.712285714286
0.712571428571
0.712857142857
0.713142857143
0.713428571429
0.713714285714
0.714
0.714285714286
0.714571428571
0.714857142857
0.715142857143
0.715428571429
0.715714285714
0.716
0.716285714286
0.716571428571
0.716857142857
0.717142857143
0.717428571429
0.717714285714
0.718
0.718285714286
0.718571428571
0.718857142857
0.719142857143
0.719428571429
0.719714285714
0.72
0.720285714286
0.720571428571
0.720857142857
0.721142857143
0.721428571429
0.721714285714
0.722
0.722285714286
0.722571428571
0.722857142857
0.723142857143
0.723428571429
0.723714285714
0.724
0.724285714286
0.724571428571
0.724857142857
0.725142857143
0.725428571429
0.725714285714
0.726
0.726285714286
0.726571428571
0.726857142857
0.727142857143
0.727428571429
0.727714285714
0.728
0.728285714286
0.728571428571
0.728857142857
0.729142857143
0.729428571429
0.729714285714
0.73
0.730285714286
0.730571428571
0.730857142857
0.731142857143
0.731428571429
0.731714285714
0.732
0.732285714286
0.732571428571
0.732857142857
0.733142857143
0.733428571429
0.733714285714
0.734
0.734285714286
0.734571428571
0.734857142857
0.735142857143
0.735428571429
0.735714285714
0.736
0.736285714286
0.736571428571
0.736857142857
0.737142857143
0.737428571429
0.737714285714
0.738
0.738285714286
0.738571428571
0.738857142857
0.739142857143
0.739428571429
0.739714285714
0.74
0.740285714286
0.740571428571
0.740857142857
0.741142857143
0.741428571429
0.741714285714
0.742
0.742285714286
0.742571428571
0.742857142857
0.743142857143
0.743428571429
0.743714285714
0.744
0.744285714286
0.744571428571
0.744857142857
0.745142857143
0.745428571429
0.745714285714
0.746
0.746285714286
0.746571428571
0.746857142857
0.747142857143
0.747428571429
0.747714285714
0.748
0.748285714286
0.748571428571
0.748857142857
0.749142857143
0.749428571429
0.749714285714
0.75
0.750285714286
0.750571428571
0.750857142857
0.751142857143
0.751428571429
0.751714285714
0.752
0.752285714286
0.752571428571
0.752857142857
0.753142857143
0.753428571429
0.753714285714
0.754
0.754285714286
0.754571428571
0.754857142857
0.755142857143
0.755428571429
0.755714285714
0.756
0.756285714286
0.756571428571
0.756857142857
0.757142857143
0.757428571429
0.757714285714
0.758
0.758285714286
0.758571428571
0.758857142857
0.759142857143
0.759428571429
0.759714285714
0.76
0.760285714286
0.760571428571
0.760857142857
0.761142857143
0.761428571429
0.761714285714
0.762
0.762285714286
0.762571428571
0.762857142857
0.763142857143
0.763428571429
0.763714285714
0.764
0.764285714286
0.764571428571
0.764857142857
0.765142857143
0.765428571429
0.765714285714
0.766
0.766285714286
0.766571428571
0.766857142857
0.767142857143
0.767428571429
0.767714285714
0.768
0.768285714286
0.768571428571
0.768857142857
0.769142857143
0.769428571429
0.769714285714
0.77
0.770285714286
0.770571428571
0.770857142857
0.771142857143
0.771428571429
0.771714285714
0.772
0.772285714286
0.772571428571
0.772857142857
0.773142857143
0.773428571429
0.773714285714
0.774
0.774285714286
0.774571428571
0.774857142857
0.775142857143
0.775428571429
0.775714285714
0.776
0.776285714286
0.776571428571
0.776857142857
0.777142857143
0.777428571429
0.777714285714
0.778
0.778285714286
0.778571428571
0.778857142857
0.779142857143
0.779428571429
0.779714285714
0.78
0.780285714286
0.780571428571
0.780857142857
0.781142857143
0.781428571429
0.781714285714
0.782
0.782285714286
0.782571428571
0.782857142857
0.783142857143
0.783428571429
0.783714285714
0.784
0.784285714286
0.784571428571
0.784857142857
0.785142857143
0.785428571429
0.785714285714
0.786
0.786285714286
0.786571428571
0.786857142857
0.787142857143
0.787428571429
0.787714285714
0.788
0.788285714286
0.788571428571
0.788857142857
0.789142857143
0.789428571429
0.789714285714
0.79
0.790285714286
0.790571428571
0.790857142857
0.791142857143
0.791428571429
0.791714285714
0.792
0.792285714286
0.792571428571
0.792857142857
0.793142857143
0.793428571429
0.793714285714
0.794
0.794285714286
0.794571428571
0.794857142857
0.795142857143
0.795428571429
0.795714285714
0.796
0.796285714286
0.796571428571
0.796857142857
0.797142857143
0.797428571429
0.797714285714
0.798
0.798285714286
0.798571428571
0.798857142857
0.799142857143
0.799428571429
0.799714285714
0.8
0.800285714286
0.800571428571
0.800857142857
0.801142857143
0.801428571429
0.801714285714
0.802
0.802285714286
0.802571428571
0.802857142857
0.803142857143
0.803428571429
0.803714285714
0.804
0.804285714286
0.804571428571
0.804857142857
0.805142857143
0.805428571429
0.805714285714
0.806
0.806285714286
0.806571428571
0.806857142857
0.807142857143
0.807428571429
0.807714285714
0.808
0.808285714286
0.808571428571
0.808857142857
0.809142857143
0.809428571429
0.809714285714
0.81
0.810285714286
0.810571428571
0.810857142857
0.811142857143
0.811428571429
0.811714285714
0.812
0.812285714286
0.812571428571
0.812857142857
0.813142857143
0.813428571429
0.813714285714
0.814
0.814285714286
0.814571428571
0.814857142857
0.815142857143
0.815428571429
0.815714285714
0.816
0.816285714286
0.816571428571
0.816857142857
0.817142857143
0.817428571429
0.817714285714
0.818
0.818285714286
0.818571428571
0.818857142857
0.819142857143
0.819428571429
0.819714285714
0.82
0.820285714286
0.820571428571
0.820857142857
0.821142857143
0.821428571429
0.821714285714
0.822
0.822285714286
0.822571428571
0.822857142857
0.823142857143
0.823428571429
0.823714285714
0.824
0.824285714286
0.824571428571
0.824857142857
0.825142857143
0.825428571429
0.825714285714
0.826
0.826285714286
0.826571428571
0.826857142857
0.827142857143
0.827428571429
0.827714285714
0.828
0.828285714286
0.828571428571
0.828857142857
0.829142857143
0.829428571429
0.829714285714
0.83
0.830285714286
0.830571428571
0.830857142857
0.831142857143
0.831428571429
0.831714285714
0.832
0.832285714286
0.832571428571
0.832857142857
0.833142857143
0.833428571429
0.833714285714
0.834
0.834285714286
0.834571428571
0.834857142857
0.835142857143
0.835428571429
0.835714285714
0.836
0.836285714286
0.836571428571
0.836857142857
0.837142857143
0.837428571429
0.837714285714
0.838
0.838285714286
0.838571428571
0.838857142857
0.839142857143
0.839428571429
0.839714285714
0.84
0.840285714286
0.840571428571
0.840857142857
0.841142857143
0.841428571429
0.841714285714
0.842
0.842285714286
0.842571428571
0.842857142857
0.843142857143
0.843428571429
0.843714285714
0.844
0.844285714286
0.844571428571
0.844857142857
0.845142857143
0.845428571429
0.845714285714
0.846
0.846285714286
0.846571428571
0.846857142857
0.847142857143
0.847428571429
0.847714285714
0.848
0.848285714286
0.848571428571
0.848857142857
0.849142857143
0.849428571429
0.849714285714
0.85
0.850285714286
0.850571428571
0.850857142857
0.851142857143
0.851428571429
0.851714285714
0.852
0.852285714286
0.852571428571
0.852857142857
0.853142857143
0.853428571429
0.853714285714
0.854
0.854285714286
0.854571428571
0.854857142857
0.855142857143
0.855428571429
0.855714285714
0.856
0.856285714286
0.856571428571
0.856857142857
0.857142857143
0.857428571429
0.857714285714
0.858
0.858285714286
0.858571428571
0.858857142857
0.859142857143
0.859428571429
0.859714285714
0.86
0.860285714286
0.860571428571
0.860857142857
0.861142857143
0.861428571429
0.861714285714
0.862
0.862285714286
0.862571428571
0.862857142857
0.863142857143
0.863428571429
0.863714285714
0.864
0.864285714286
0.864571428571
0.864857142857
0.865142857143
0.865428571429
0.865714285714
0.866
0.866285714286
0.866571428571
0.866857142857
0.867142857143
0.867428571429
0.867714285714
0.868
0.868285714286
0.868571428571
0.868857142857
0.869142857143
0.869428571429
0.869714285714
0.87
0.870285714286
0.870571428571
0.870857142857
0.871142857143
0.871428571429
0.871714285714
0.872
0.872285714286
0.872571428571
0.872857142857
0.873142857143
0.873428571429
0.873714285714
0.874
0.874285714286
0.874571428571
0.874857142857
0.875142857143
0.875428571429
0.875714285714
0.876
0.876285714286
0.876571428571
0.876857142857
0.877142857143
0.877428571429
0.877714285714
0.878
0.878285714286
0.878571428571
0.878857142857
0.879142857143
0.879428571429
0.879714285714
0.88
0.880285714286
0.880571428571
0.880857142857
0.881142857143
0.881428571429
0.881714285714
0.882
0.882285714286
0.882571428571
0.882857142857
0.883142857143
0.883428571429
0.883714285714
0.884
0.884285714286
0.884571428571
0.884857142857
0.885142857143
0.885428571429
0.885714285714
0.886
0.886285714286
0.886571428571
0.886857142857
0.887142857143
0.887428571429
0.887714285714
0.888
0.888285714286
0.888571428571
0.888857142857
0.889142857143
0.889428571429
0.889714285714
0.89
0.890285714286
0.890571428571
0.890857142857
0.891142857143
0.891428571429
0.891714285714
0.892
0.892285714286
0.892571428571
0.892857142857
0.893142857143
0.893428571429
0.893714285714
0.894
0.894285714286
0.894571428571
0.894857142857
0.895142857143
0.895428571429
0.895714285714
0.896
0.896285714286
0.896571428571
0.896857142857
0.897142857143
0.897428571429
0.897714285714
0.898
0.898285714286
0.898571428571
0.898857142857
0.899142857143
0.899428571429
0.899714285714
0.9
0.900285714286
0.900571428571
0.900857142857
0.901142857143
0.901428571429
0.901714285714
0.902
0.902285714286
0.902571428571
0.902857142857
0.903142857143
0.903428571429
0.903714285714
0.904
0.904285714286
0.904571428571
0.904857142857
0.905142857143
0.905428571429
0.905714285714
0.906
0.906285714286
0.906571428571
0.906857142857
0.907142857143
0.907428571429
0.907714285714
0.908
0.908285714286
0.908571428571
0.908857142857
0.909142857143
0.909428571429
0.909714285714
0.91
0.910285714286
0.910571428571
0.910857142857
0.911142857143
0.911428571429
0.911714285714
0.912
0.912285714286
0.912571428571
0.912857142857
0.913142857143
0.913428571429
0.913714285714
0.914
0.914285714286
0.914571428571
0.914857142857
0.915142857143
0.915428571429
0.915714285714
0.916
0.916285714286
0.916571428571
0.916857142857
0.917142857143
0.917428571429
0.917714285714
0.918
0.918285714286
0.918571428571
0.918857142857
0.919142857143
0.919428571429
0.919714285714
0.92
0.920285714286
0.920571428571
0.920857142857
0.921142857143
0.921428571429
0.921714285714
0.922
0.922285714286
0.922571428571
0.922857142857
0.923142857143
0.923428571429
0.923714285714
0.924
0.924285714286
0.924571428571
0.924857142857
0.925142857143
0.925428571429
0.925714285714
0.926
0.926285714286
0.926571428571
0.926857142857
0.927142857143
0.927428571429
0.927714285714
0.928
0.928285714286
0.928571428571
0.928857142857
0.929142857143
0.929428571429
0.929714285714
0.93
0.930285714286
0.930571428571
0.930857142857
0.931142857143
0.931428571429
0.931714285714
0.932
0.932285714286
0.932571428571
0.932857142857
0.933142857143
0.933428571429
0.933714285714
0.934
0.934285714286
0.934571428571
0.934857142857
0.935142857143
0.935428571429
0.935714285714
0.936
0.936285714286
0.936571428571
0.936857142857
0.937142857143
0.937428571429
0.937714285714
0.938
0.938285714286
0.938571428571
0.938857142857
0.939142857143
0.939428571429
0.939714285714
0.94
0.940285714286
0.940571428571
0.940857142857
0.941142857143
0.941428571429
0.941714285714
0.942
0.942285714286
0.942571428571
0.942857142857
0.943142857143
0.943428571429
0.943714285714
0.944
0.944285714286
0.944571428571
0.944857142857
0.945142857143
0.945428571429
0.945714285714
0.946
0.946285714286
0.946571428571
0.946857142857
0.947142857143
0.947428571429
0.947714285714
0.948
0.948285714286
0.948571428571
0.948857142857
0.949142857143
0.949428571429
0.949714285714
0.95
0.950285714286
0.950571428571
0.950857142857
0.951142857143
0.951428571429
0.951714285714
0.952
0.952285714286
0.952571428571
0.952857142857
0.953142857143
0.953428571429
0.953714285714
0.954
0.954285714286
0.954571428571
0.954857142857
0.955142857143
0.955428571429
0.955714285714
0.956
0.956285714286
0.956571428571
0.956857142857
0.957142857143
0.957428571429
0.957714285714
0.958
0.958285714286
0.958571428571
0.958857142857
0.959142857143
0.959428571429
0.959714285714
0.96
0.960285714286
0.960571428571
0.960857142857
0.961142857143
0.961428571429
0.961714285714
0.962
0.962285714286
0.962571428571
0.962857142857
0.963142857143
0.963428571429
0.963714285714
0.964
0.964285714286
0.964571428571
0.964857142857
0.965142857143
0.965428571429
0.965714285714
0.966
0.966285714286
0.966571428571
0.966857142857
0.967142857143
0.967428571429
0.967714285714
0.968
0.968285714286
0.968571428571
0.968857142857
0.969142857143
0.969428571429
0.969714285714
0.97
0.970285714286
0.970571428571
0.970857142857
0.971142857143
0.971428571429
0.971714285714
0.972
0.972285714286
0.972571428571
0.972857142857
0.973142857143
0.973428571429
0.973714285714
0.974
0.974285714286
0.974571428571
0.974857142857
0.975142857143
0.975428571429
0.975714285714
0.976
0.976285714286
0.976571428571
0.976857142857
0.977142857143
0.977428571429
0.977714285714
0.978
0.978285714286
0.978571428571
0.978857142857
0.979142857143
0.979428571429
0.979714285714
0.98
0.980285714286
0.980571428571
0.980857142857
0.981142857143
0.981428571429
0.981714285714
0.982
0.982285714286
0.982571428571
0.982857142857
0.983142857143
0.983428571429
0.983714285714
0.984
0.984285714286
0.984571428571
0.984857142857
0.985142857143
0.985428571429
0.985714285714
0.986
0.986285714286
0.986571428571
0.986857142857
0.987142857143
0.987428571429
0.987714285714
0.988
0.988285714286
0.988571428571
0.988857142857
0.989142857143
0.989428571429
0.989714285714
0.99
0.990285714286
0.990571428571
0.990857142857
0.991142857143
0.991428571429
0.991714285714
0.992
0.992285714286
0.992571428571
0.992857142857
0.993142857143
0.993428571429
0.993714285714
0.994
0.994285714286
0.994571428571
0.994857142857
0.995142857143
0.995428571429
0.995714285714
0.996
0.996285714286
0.996571428571
0.996857142857
0.997142857143
0.997428571429
0.997714285714
0.998
0.998285714286
0.998571428571
0.998857142857
0.999142857143
0.999428571429
0.999714285714

In [37]:
np.savetxt("Accuracy_Data_run_2.dat", acc)

In [40]:
def plot_epochs(az_angle, eleva):
    fig = plt.figure(figsize=(15, 10))
    ax = fig.add_subplot(111, projection='3d')
    X, Y = np.meshgrid(np.linspace(0,500,500), np.linspace(8,14, 7))
    ax.plot_surface(X, Y, acc)
    ax.view_init(elev=eleva, azim=az_angle)

In [41]:
widg.interact(plot_epochs, az_angle=(0, 360, 1), eleva=(0,20,1))



In [42]:
print acc


[[ 0.10183639  0.10183639  0.10183639 ...,  0.97161937  0.97161937
   0.97161937]
 [ 0.10183639  0.10183639  0.10183639 ...,  0.97328881  0.97328881
   0.97328881]
 [ 0.10183639  0.10183639  0.10183639 ...,  0.97217585  0.97217585
   0.97217585]
 ..., 
 [ 0.10183639  0.10183639  0.10183639 ...,  0.96939343  0.96939343
   0.96939343]
 [ 0.10183639  0.10183639  0.10183639 ...,  0.97273233  0.97273233
   0.97273233]
 [ 0.10183639  0.10183639  0.10183639 ...,  0.97106288  0.97106288
   0.97106288]]

In [ ]: