Git Product home page Git Product logo

Comments (11)

dgschwend avatar dgschwend commented on September 23, 2024 1

You can compare the networks using Netscope here:
AlexNet, SqueezeNet v1.0, SqueezeNet v1.1

This table gives a summary:

comparison_cnns

Problem 2) is definitely because SqueezeNet uses more activation memory than AlexNet (5x as much in v1.0 and 3x as much in v1.1). The largest output feature map in SqNet v1.1 is 817k pixels, in AlexNet 290k pixels.

Problem 1) could have different reasons:

  • SqueezeNet v1.0 has approximately the same computational complexity as AlexNet (860 million vs. 1140 million multiply-accumulate operations), SqueezeNet v1.1 should be less complex (390 million MACCs).
  • SqueezeNet has many more layers than AlexNet (26 CONV layers versus 5 CONV layers), and switching the layers takes some time on the CPU and GPU
  • SqueezeNet has larger output feature maps (compare Problem 2 above). Moving this data around between GPU and Memory takes some time, too.

So I don't think you're doing anything wrong, this is probably the price you have to pay for the increased network complexity. I you haven't done already, definitely give SqueezeNet v1.1 a try!

from squeezenet.

dgschwend avatar dgschwend commented on September 23, 2024 1

You can use the Netscope CNN Analyzer tool: https://dgschwend.github.io/netscope/
The actual code for the calculation is here:
https://github.com/dgschwend/netscope/blob/gh-pages/src/analyzer.coffee
The formulas are pretty self-explanatory.

from squeezenet.

Grabber avatar Grabber commented on September 23, 2024

Maybe it is caused because of concat layers?

from squeezenet.

wenwei202 avatar wenwei202 commented on September 23, 2024

@dgschwend Thank u so much for so many details. The Netscope is such a cool tool! I was using v1.1. I guess the problem comes from the increased activations and layers as you pointed and the concat layers as @Grabber mentioned.

from squeezenet.

dgschwend avatar dgschwend commented on September 23, 2024

You are welcome, glad I could help! ;)

from squeezenet.

argman avatar argman commented on September 23, 2024

@dgschwend , is there any document about how to compute the macc, memory of a network? tks

from squeezenet.

forresti avatar forresti commented on September 23, 2024

@dgschwend Nice work on that table. Is "Table 4.1" part of a longer paper that I could read (and cite)?

from squeezenet.

dgschwend avatar dgschwend commented on September 23, 2024

@forresti Yes, I just published my Master Thesis.

The project report and all code for "ZynqNet: An FPGA-Accelerated Embedded Convolutional Neural Network" are public. The whole work is based on SqueezeNet, and the report contains a detailed analysis + comparison of prior CNN topologies.

from squeezenet.

davidbrai avatar davidbrai commented on September 23, 2024

@dgschwend hi, can you share the reference to "SqueezeNet++" in your table? couldn't find it

from squeezenet.

dgschwend avatar dgschwend commented on September 23, 2024

That's the work-in-progress codename of ZynqNet CNN from my Master Thesis (see post above). See https://github.com/dgschwend/zynqnet

from squeezenet.

mrgloom avatar mrgloom commented on September 23, 2024

Have the same issue that SqeezeNet v1.1 is slower then AlexNet, i.e. 3.91 ms vs 3.01 ms.
https://github.com/mrgloom/kaggle-dogs-vs-cats-solution

from squeezenet.

Related Issues (20)

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.