Home

Awesome

Sunnet is a light deep learning library.

Linux/WindowsLicense
Build StatusLicense: MIT

ResNet cpp-example for Win

<img src="https://github.com/Tyill/sunnet/blob/master/docs/resnetExample.gif" width="600" height="300" />

Compare with Tensorflow, inference ResNet50. PC: i5-2400, GF1050, Win7, MSVC12.

CPU: time/img, msGPU: time/img, msCPU: RAM, MbGPU: RAM, Mb
Sunnet19515600800
Tensorflow250254001400

Features

Python example


# create net
net = snNet.Net()
net.addNode('In', snOperator.Input(), 'C1') \
   .addNode('C1', snOperator.Convolution(15), 'C2') \
   .addNode('C2', snOperator.Convolution(25), 'P1') \
   .addNode('P1', snOperator.Pooling(), 'F1') \
   .addNode('F1', snOperator.FullyConnected(256), 'F2') \
   .addNode('F2', snOperator.FullyConnected(10), 'LS') \
   .addNode('LS', snOperator.LossFunction(snType.lossType.softMaxToCrossEntropy), 'Output')
   
   .............

# cycle lern
for n in range(1000):
   acc = [0]  
   net.training(lr, inLayer, outLayer, targLayer, acc)

   # calc accurate
   acc[0] = 0
   for i in range(bsz):
       if (np.argmax(outLayer[i][0][0]) == np.argmax(targLayer[i][0][0])):
           acc[0] += 1

   accuratSumm += acc[0]/bsz

   print(datetime.datetime.now().strftime('%H:%M:%S'), n, "accurate", accuratSumm / (n + 1))

Wiki

Examples

License

Licensed under an [MIT-2.0]-license.