pjreddie / darknet

Convolutional Neural Networks
http://pjreddie.com/darknet/
Other
25.68k stars 21.32k forks source link

Can you please tell me what does AI2 flag mean in src/convolutional_layer.c? #1931

Open KienPM opened 4 years ago

KienPM commented 4 years ago

Can you please tell me what does AI2 flag mean and how to turn it on? Thank you very much!

https://github.com/pjreddie/darknet/blob/master/src/convolutional_layer.c#L11

ptkahl commented 4 years ago

This appears to be an artifact left over from an experiment for approximating convolutions using binary operations that involved the Allen Institute for Artificial Intelligence (AI2) -- hence, the "AI2" flag name. As long as AI2 is not defined, this is harmless. Nonetheless, you may wish to delete lines 11-13 to avoid confusion, particularly since the file "xnor_layer.h" is not included with the github distribution of Darknet.

Per the article at https://news.cs.washington.edu/2018/04/05/allen-schools-joseph-redmon-wins-google-ph-d-fellowship/, Joseph Redmon was "an intern at AI2 — and later, spinout company XNOR.ai" where he "worked with Farhadi and research scientists Mohammad Rastegari and Vicente Ordóñez on XNOR-Net, which introduced binary approximations for standard convolutional neural networks to enable fast and efficient object recognition and detection on mobile devices." At the time of the experiment (~2016), fellow UW student Carlo C. del Mundo (who also worked at AI2) is believed to have worked with Redmon to code the binary operations.