Computer Vision News - February 2020
2 Summary We Tried for You 1 Since AlexNet won the 2012 ImageNet challenge, Convolutional Neural Networks (CNN) have become the most widespread solution to image classification tasks. Many lines of works have improved AlexNet results mainly by scaling the model - go deeper, wider and change the input image resolution. This raises the dependency between model capacity and model accuracy which means that as the model size increases, the model accuracy also improves. Efficient-Net exploits the dependency between the model capacity and the model accuracy, looking to design more efficient and more accurate architectures. Prior to Efficient-Net, there were several methods to increase the efficiency of the model: pruning, quantization and network search. On the other hand, Efficient- Net has taken a different approach: to scale the model systematically. Today we will review how to scale the model in this way and we will demonstrate how to use the Efficient-Net scheme. Model Scaling To better understand how to scale the model, we first need to understand what each parameter of the architecture does. The depth of the model affects its ability to encode levels of abstraction of the input image. A CNN with a large number of layers can hold richer details and therefore it usually is more accurate. The model width can compensate on the model depth and typically wider and shallower networks are easier to train. The input image resolution can dramatically increase the efficiency of the network, while preserving accuracy. There are two crucial observations that stand behind Efficient-Net 1) Scaling up any dimension of the network width, depth, or resolution improves accuracy but the accuracy gain diminishes for bigger models. by Amnon Geifman Efficient-Net with PyTorch In this article we demonstrate how to run Efficient- Net with PyTorch and we perform a small experiment to compare it to its baseline models - ResNet and MobileNet.
Made with FlippingBook
RkJQdWJsaXNoZXIy NTc3NzU=