GithubHelp home page GithubHelp logo

fftnn-tensorflowml's Introduction

FFTNN-TensorflowML

CNN made out of fft, for classification tasks. This Classification Neural Network is made with tensorflow, make sure you have it installed, before you try this script. I got inspired from a class i had, where the teacher told us that convolution in the time domain, was equivalent to a multiplication in a frequancy domain. i tried it and compared it with the CNN from Tensorflow's examples CNN. i stared this repo if you want to check it out, aymericdamien/TensorFlow-Examples.

Applied to the MNIST

i have reached accuracy of about 99% with CNN, where as with the fftnn i reached around 95% the main interest for the FFTNN is that it offers way better performances concerning fps. 5 batches of 128 on CNN, against 60 batches on FFTNN

check this out on your setup ;)

Details and thoughs on this

This algorithm is just like a convolution (the fftnn) it is concidered that converting a convolution in time domain, into a multiplication in an transformed domain, would be equivalent. and it is. This algorithm is a proof, if you were still skeptical, like i was. the main advantages from this algorithm are dense, it can be applied to a 2d image since images have a determined width. this makes a dot on a drawing periodic. It can adapt from slightly different sizes (i runned this algorithm with an fftlength shorter than the images one, and it stills perform pretty good. i have to check one thing about reshaping an array in tensorflow. this might be the reason why fft was faster than cnn, because of resize time. which i realized recently can be really slow in some computers, like mine.

fftnn-tensorflowml's People

Contributors

yannoux2000 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.