low memory rnns for emoji
play

Low memory RNNs... for emoji! Xavier Snelgrove , CTO & - PowerPoint PPT Presentation

Low memory RNNs... for emoji! Xavier Snelgrove , CTO & Co-Founder, Whirlscape @wxswxs March 2017 Me, me, me! Me, me, me! Me, me, me! Minuum Dango http:/ /minuum.com http:/ /getdango.com Me, me, me! Minuum Dango http:/


  1. Low memory RNNs... for emoji! Xavier Snelgrove , CTO & Co-Founder, Whirlscape @wxswxs March 2017

  2. Me, me, me!

  3. Me, me, me!

  4. Me, me, me! Minuum Dango http:/ /minuum.com http:/ /getdango.com

  5. Me, me, me! Minuum Dango http:/ /minuum.com http:/ /getdango.com

  6. Title Text

  7. Title Text

  8. Title Text

  9. Title Text

  10. Title Text

  11. Title Text

  12. Title Text

  13. With Dango

  14. With Dango

  15. With Dango

  16. With Dango

  17. With Dango

  18. Hi prince 👒 Never mind. I forgot I’m single 😓😪 that's what I like to hear 😈❤ Highway driving in the morning 🌆👍 happy bro bro it was cool chilling with you in line for Travis gotta catch another show turn up one time 🙐😝 100s of Millions of Examples

  19. 100s of Millions of Examples

  20. 100s of Millions of Examples 💮 💮 GPUs crunch away 💮 for days

  21. 100s of Millions of Examples 💮 💮 GPUs crunch away 💮 for days 💮 💭 Trained Model 📛

  22. Let’s eat lunch later

  23. Let’s eat lunch later

  24. Let’s eat lunch later Let’

  25. Let’s eat lunch later Let’

  26. Let’s eat lunch later Let’ 🍵😌🍞

  27. Emoji in semantic-space

  28. How can we run this on device?

  29. Let’s eat lunch later Word Embedding Recurrent Layers Dense Output Layers

  30. Embedding memory the and cat yesterday eggplant . . . alchemist missspellling

  31. Embedding memory } the and cat yesterday eggplant . 100,000 . . alchemist missspellling } 512

  32. Embedding memory 512 × 100,000 × 4 bytes

  33. Embedding memory 512 × 100,000 × 4 bytes =200 MB

  34. Embedding memory 512 × 100,000 × 4 bytes =200 MB SQLite

  35. Embedding memory Quantize 3 bits 512 × 100,000 × 4 bytes =200 MB 20 MB SQLite

  36. Embedding memory Distribution of embedding values SQLite Hu fg man coding? Depends on quantization

  37. Let’s eat lunch later Word Embedding Recurrent Layers Dense Output Layers

  38. Recurrent Layer Memory Input Vector Previous State + Next State Output Vector

  39. Recurrent Layer Memory

  40. Recurrent Layer Memory } 768 } 768

  41. Recurrent Layer Memory 768 × 768 × 3 × 2 layers × 4 bytes = 14MB

  42. Recurrent Layer Memory Quantize (float16) 2 bytes 768 × 768 × 3 × 2 layers × 4 bytes = 14MB 7MB

  43. Recurrent Layer Memory Distribution of weight values

  44. Recurrent Layer Memory Distribution of weight values Many near-zero values

  45. Recurrent Layer Memory

  46. Recurrent Layer Memory Prune 50% of weights closest to 0

  47. Recurrent Layer Memory Prune 50% of weights closest to 0 Train the rest of the network

  48. Recurrent Layer Memory Prune 50% of weights closest to 0 Train the rest of the network Repeat, pruning more each iteration

  49. Recurrent Layer Memory Prune 50% of weights closest to 0 Train the rest of the network Repeat, pruning more each iteration 90% prune 7MB × 0.1 = 700 kB

  50. Recurrent Layer Memory Prune 50% of weights closest to 0 Train the rest of the network Repeat, pruning more each iteration 90% prune 7MB × 0.1 = 700 kB

  51. Questions? http:/ /getdango.com Xavier Snelgrove , CTO & Co-Founder @wxswxs

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend