learning to map between ferns with

Learning to map between ferns with differentiable binary embedding - PowerPoint PPT Presentation

DIFFERENTIABLE BINARY EMBEDDING USING FERNS Learning to map between ferns with differentiable binary embedding networks Maximilian Blendowski & Mattias P. Heinrich Institute of Medical Informatics University of Lbeck Short paper @ MIDL


  1. DIFFERENTIABLE BINARY EMBEDDING USING FERNS Learning to map between ferns with differentiable binary embedding networks Maximilian Blendowski & Mattias P. Heinrich Institute of Medical Informatics University of Lรผbeck Short paper @ MIDL 2020

  2. DIFFERENTIABLE BINARY EMBEDDING USING FERNS Random Fern Basics Ozuysal , Mustafa, et al. "Fast keypoint recognition using random ferns." IEEE transactions on pattern analysis and machine intelligence 32.3 (2009): 448-461. Dimension Threshold depth binary code ๐บ๐‘“๐‘ ๐‘œ ๐‘™ , โ€ฆ , ๐‘’ ๐‘› ๐บ๐‘“๐‘ ๐‘œ ๐‘™ ๐บ๐‘“๐‘ ๐‘œ ๐‘™ , โ€ฆ , ๐‘ข ๐‘› ๐บ๐‘“๐‘ ๐‘œ ๐‘™ 0 1 2 3 4 5 ๐‘› = 2 ๐‘’ 1 ๐‘ข 1 ๐บ๐‘“๐‘ ๐‘œ ๐‘™ ๐’ˆ ๐ธ๐‘—๐‘› +4 -2 +10 -6 +8 +1 โˆ’2 < โˆ’3 ? , +10 < 1? ๐‘”๐‘“๐‘๐‘ข๐‘ฃ๐‘ ๐‘“ ๐’ˆ ๐บ๐‘“๐‘ ๐‘œ 1 1,2 โˆ’3,1 ๐Ÿ๐Ÿ 1 ๐Ÿ ๐บ๐‘“๐‘ ๐‘œ 2 5,0 2,0 +1 < +2 ? , +4 < 0? +8 < +3 ? , โˆ’6 < โˆ’3? ๐บ๐‘“๐‘ ๐‘œ 3 4,3 3, โˆ’1 ๐Ÿ๐Ÿ ๐‘ฎ๐’‡๐’”๐’ ๐Ÿ Class A ๐‘ฎ๐’‡๐’”๐’ ๐Ÿ‘ Class A ๐‘ฎ๐’‡๐’”๐’ ๐Ÿ’ Class A 0.5 0.5 0.5 0.25 0.25 0.25 ๐‘„ ๐’ˆ|๐ต = 0.5 โˆ— 0.25 โˆ— 0.5 = 0.0625 0.0 0.0 0.0 ๐‘„ ๐’ˆ|๐ถ = 0.25 โˆ— 0.4 โˆ— 0.125 = 0.0125 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 ๐‘ฎ๐’‡๐’”๐’ ๐Ÿ Class B ๐‘ฎ๐’‡๐’”๐’ ๐Ÿ‘ Class B ๐‘ฎ๐’‡๐’”๐’ ๐Ÿ’ Class B 0.5 0.5 0.5 ๐‘„ ๐’ˆ|๐ต > ๐‘„ ๐’ˆ|๐ถ โ†’ ๐‘‘๐‘š๐‘๐‘ก๐‘ก๐‘—๐‘”๐‘ง ๐’ˆ ๐‘๐‘ก ๐ต 0.25 0.25 0.25 0.0 0.0 0.0 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1

  3. DIFFERENTIABLE BINARY EMBEDDING USING FERNS Standard convolution ๐‘ ๐‘— (: ) ๐‘ ๐‘— (: ) ๐‘ ๐‘— 1) unfold ๐ท๐‘๐‘œ๐‘ค๐‘๐‘š๐‘ฃ๐‘ข๐‘—๐‘๐‘œ ๐‘ ๐บ๐‘—๐‘š๐‘ข๐‘“๐‘  ๐‘ ๐‘— ๐‘˜ ๐‘ ๐‘˜ (: ) ๐‘ ๐‘˜ (: ) ๐‘™ 2 โˆ™ ๐‘‘ ๐‘—๐‘œ ๐‘œ ๐‘ฃ ๐‘‹๐‘“๐‘—๐‘•โ„Ž๐‘ข๐‘ก ๐‘ ๐‘˜ ๐‘™ ๐‘‰๐บ๐‘ โ„Ž ๐‘—๐‘œ ๐‘™ ๐‘™ 2 โˆ™ ๐‘‘ ๐‘—๐‘œ ๐‘ฅ ๐‘—๐‘œ ๐‘‘ ๐‘๐‘ฃ๐‘ข ๐‘๐‘ฃ๐‘ข ๐‘”๐‘“๐‘๐‘ข ๐‘— Matrix Multiplication ๐‘๐‘ฃ๐‘ข ๐‘”๐‘“๐‘๐‘ข ๐‘˜ 4) fold โ„Ž ๐‘๐‘ฃ๐‘ข ๐‘‘ ๐‘๐‘ฃ๐‘ข ๐‘ฅ ๐‘๐‘ฃ๐‘ข 3

  4. DIFFERENTIABLE BINARY EMBEDDING USING FERNS Drop-in replacement > 0 ? โ†’ 01 โ€ฆ 0 + ๐‘ก ๐‘ž = ๐‘—๐‘’๐‘ฆ ๐‘— ๐‘ ๐‘— (: ) ๐‘ž = tanh ๐‘‰๐บ๐‘ ๐‘— ๐‘ ๐‘— (: ) 2) Generate ๐‘ž , โ€ฆ , ๐‘’ ๐‘› ๐‘ž ๐‘ž , โ€ฆ , ๐‘ข ๐‘› ๐‘ž ๐‘ž ๐‘‘ ๐‘— ๐‘’ 1 โˆ’ ๐‘ข 1 ๐‘ ๐‘— Binary codes on ๐‘— LUT 1) unfold > 0 ? โ†’ 00 โ€ฆ 1 + ๐‘ก ๐‘Ÿ = ๐‘—๐‘’๐‘ฆ ๐‘— ๐‘Ÿ = tanh ๐‘‰๐บ๐‘ ๐‘— ๐‘Ÿ , โ€ฆ , ๐‘’ ๐‘› ๐‘Ÿ ๐‘Ÿ , โ€ฆ , ๐‘ข ๐‘› ๐‘Ÿ ๐‘Ÿ ๐‘‘ ๐‘— ๐‘’ 1 โˆ’ ๐‘ข 1 codes ๐‘ > 0 ? โ†’ 01 โ€ฆ 0 + ๐‘ก ๐‘ž = ๐‘—๐‘’๐‘ฆ ๐‘˜ ๐‘ ๐‘— ๐‘˜ ๐‘ž = tanh ๐‘‰๐บ๐‘ ๐‘˜ ๐‘ž , โ€ฆ , ๐‘’ ๐‘› ๐‘ž ๐‘ž , โ€ฆ , ๐‘ข ๐‘› ๐‘ž ๐‘ž ๐‘‘ ๐‘’ 1 โˆ’ ๐‘ข 1 ๐บ๐‘“๐‘ ๐‘œ ๐‘ž ๐‘ ๐‘˜ (: ) ๐‘ ๐‘˜ (: ) ๐‘˜ Binary codes on ๐‘˜ ๐‘œ ๐‘ฃ > 0 ? โ†’ 01 โ€ฆ 1 + ๐‘ก ๐‘Ÿ = ๐‘—๐‘’๐‘ฆ ๐‘˜ ๐‘Ÿ = tanh ๐‘‰๐บ๐‘ ๐‘˜ ๐‘Ÿ , โ€ฆ , ๐‘’ ๐‘› ๐‘Ÿ ๐‘Ÿ , โ€ฆ , ๐‘ข ๐‘› ๐‘Ÿ ๐‘Ÿ ๐บ๐‘“๐‘ ๐‘œ ๐‘Ÿ ๐‘‘ ๐‘’ 1 โˆ’ ๐‘ข 1 ๐‘ ๐‘˜ ๐‘˜ ๐‘™ ๐‘‰๐บ๐‘ combination 3) weigthed โ„Ž ๐‘—๐‘œ LUT entry ๐‘™ ๐‘Ÿ ๐‘ž ๐‘ž ๐‘ž ๐‘’ 1 ๐‘’ ๐‘› ๐‘’ 1 ๐‘’ ๐‘› ๐‘™ 2 โˆ™ ๐‘‘ ๐‘—๐‘œ Differentiable ferns ๐‘ฅ ๐‘—๐‘œ ๐‘ž ๐‘ž + โ‹ฏ + ๐‘€๐‘‰๐‘ˆ ๐‘—๐‘’๐‘ฆ ๐‘— ๐‘ž ๐‘Ÿ ๐‘Ÿ ๐‘—๐‘’๐‘ฆ ๐‘— = ๐‘€๐‘‰๐‘ˆ ๐‘—๐‘’๐‘ฆ ๐‘— โˆ™ ๐‘ฅ ๐‘— โˆ™ ๐‘ฅ ๐‘— ๐‘๐‘ฃ๐‘ข ๐‘”๐‘“๐‘๐‘ข ๐‘— ๐‘ž ๐‘—๐‘’๐‘ฆ ๐‘˜ #๐‘”๐‘“๐‘ ๐‘œ๐‘ก โˆ™ 2 ๐‘’๐‘“๐‘ž๐‘ขโ„Ž ๐‘ž + โ‹ฏ + ๐‘€๐‘‰๐‘ˆ ๐‘—๐‘’๐‘ฆ ๐‘˜ ๐‘€๐‘‰๐‘ˆ ๐‘ž ๐‘Ÿ ๐‘Ÿ ๐‘๐‘ฃ๐‘ข = ๐‘€๐‘‰๐‘ˆ ๐‘—๐‘’๐‘ฆ ๐‘˜ โˆ™ ๐‘ฅ โˆ™ ๐‘ฅ ๐‘”๐‘“๐‘๐‘ข ๐‘˜ ๐‘˜ ๐‘˜ 4) fold ๐‘Ÿ ๐‘—๐‘’๐‘ฆ ๐‘˜ โ„Ž ๐‘๐‘ฃ๐‘ข ๐‘Ÿ ๐‘—๐‘’๐‘ฆ ๐‘— trainable ๐‘‘ ๐‘๐‘ฃ๐‘ข ๐‘ฅ ๐‘๐‘ฃ๐‘ข weights ๐‘‘ ๐‘๐‘ฃ๐‘ข 4

  5. DIFFERENTIABLE BINARY EMBEDDING USING FERNS Evaluation c in : 3 c in : 64 c in : 64 c in : 64 Global Input c out : 64 c out : 64 c out : 64 c out : 2 Tumor: Average Patch Yes/no? Kernelsize: 5 Kernelsize: 3 Kernelsize: 3 Kernelsize: 1 Pooling Stride: 2 Stride: 2 Stride: 2 Stride: 1 BatchNorm BatchNorm BatchNorm --- [1] [2] [3] [1] Hubara, Itay, et al. "Binarized neural networks." Advances in neural information processing systems . 2016. [2] Rastegari, Mohammad, et al. "Xnor-net: Imagenet classification using binary convolutional neural networks." European conference on computer vision . Springer, Cham, 2016. [3] Veta, Mitko, et al. "Predicting breast tumor proliferation from whole-slide images: the TUPAC16 challenge." Medical image analysis 54 (2019): 111-121. 5

Recommend


More recommend