Slide 1

Slide 1 text

1 Pop Your Filter Bubble

Slide 2

Slide 2 text

2 ML and Me Dinesh Vadhia Systems background ML 10+ years Python, Numpy and Scipy since 2007 Collaboration with Professor Zoubin Ghahramani at Cambridge University www.xyggy.com © 2019

Slide 3

Slide 3 text

3 1. Bubble 2. Your filter 3. Pop www.xyggy.com © 2019

Slide 4

Slide 4 text

4 Bubble 2016 Brexit referendum and US election a turning point Bad stuff happened and continues to happen Social media and recommendation engines implicated www.xyggy.com © 2019

Slide 5

Slide 5 text

5 The worm has turned Up Next: A Better Recommendation System, Renne Diresta, Wired, April ‘18 We are all trapped in the “Feed”, Om Malik, May ’18 The Expensive Education of Mark Zuckerberg and Silicon Valley, Kara Swisher, New York Times, Aug ‘18 www.xyggy.com © 2019

Slide 6

Slide 6 text

6 Francois Chollet asks … Is “super intelligence” the real danger or … … the scalable manipulation of human behavior AI enables, … and its malicious use by corporations and governments? What worries me about AI Francois Chollet, creator of Keras, neural networks library Medium, Mar ‘18 www.xyggy.com © 2019

Slide 7

Slide 7 text

7 www.xyggy.com © 2019 Villain is the ScreenSlayer It takes over people’s mind and agency

Slide 8

Slide 8 text

8 1. Bubble 2. Your filter 3. Pop www.xyggy.com © 2019

Slide 9

Slide 9 text

9 AI has all the control Recommendation engines have spread like a virus because open source makes it easy … All behave the same, with each consumer … … in a single lane without control … not an open road with control www.xyggy.com © 2019

Slide 10

Slide 10 text

10 Static AI in the enterprise Built over decades, integrated enterprise workflows are dynamic AI is static Caveat emptor www.xyggy.com © 2019

Slide 11

Slide 11 text

11 Learning algorithms Invented by academics for experimental research (50’s to 90’s). Not designed for: i. Real-world use (not dynamic) ii. Interactivity (no control) iii. Scalability (in production) www.xyggy.com © 2019

Slide 12

Slide 12 text

12 Machine learning pipeline machine learning model data feature engineering unseen data train test deploy production offline www.xyggy.com © 2019 manual or deep learning predictions

Slide 13

Slide 13 text

13 Static machine leaning machine learning static model new data feature engineering unseen data retrain retest redeploy www.xyggy.com © 2019 production offline predictions

Slide 14

Slide 14 text

14 Dynamic machine learning www.xyggy.com © 2019 predictions production data feature engineering dynamic machine learning unseen data

Slide 15

Slide 15 text

15 1. Bubble 2. Your filter 3. Pop www.xyggy.com © 2019

Slide 16

Slide 16 text

16 data: add update delete read query: standard more like this/these more or less anomaly detection dynamic automatic generalization interactive Thingy A P I A P I Thingy is a dynamic recommendation engine www.xyggy.com © 2019

Slide 17

Slide 17 text

17 www.xyggy.com © 2019 Thingy query of things things results ranked by how well each thing “fits into” universe of things including the query

Slide 18

Slide 18 text

18 query www.xyggy.com © 2019

Slide 19

Slide 19 text

19 Query images Result images Query Dataset: wikiart images - https://www.wikiart.org/. No image pre-processing performed. No textual data used. Feature vectors generated automatically with deep learning. www.xyggy.com © 2019

Slide 20

Slide 20 text

20 Add 2nd image to query www.xyggy.com © 2019 Query images Result images

Slide 21

Slide 21 text

21 www.xyggy.com © 2019 Add 3rd image to query Query images Result images

Slide 22

Slide 22 text

22 Add 4th image to query www.xyggy.com © 2019 Query images Result images

Slide 23

Slide 23 text

23 query: add & remove www.xyggy.com © 2019

Slide 24

Slide 24 text

24 Add and remove images Query images Result images Dataset: wikiart images - https://www.wikiart.org/. No image pre-processing performed. No textual data used. Feature vectors generated automatically with deep learning. www.xyggy.com © 2019

Slide 25

Slide 25 text

25 Add 2nd image to query www.xyggy.com © 2019 Query images Result images

Slide 26

Slide 26 text

26 Add two more images to query www.xyggy.com © 2019 Query images Result images

Slide 27

Slide 27 text

27 Remove two images from query www.xyggy.com © 2019 Query images Result images

Slide 28

Slide 28 text

28 API www.xyggy.com © 2019

Slide 29

Slide 29 text

29 API v0.3: Request / Response www.xyggy.com © 2019 import json, requests url = ‘http://127.0.0.1:8181’ + ‘/thingy/api/v0.3’ headers = {‘content-type’:’application/json’} data = json.dumps(payload) response = requests.post(url, headers, data) results = response.json()

Slide 30

Slide 30 text

30 API: query www.xyggy.com © 2019 # query request_type = query|query_more|query_pos|query_neg # detect query request_type = detect # crud request_type = crud_add|crud_read|crud_update|crud_delete request_type = “query” number_of_results = 10 include_scores = True payload = { 'meta': {'request_type':request_type, 'number_of_results':number_of_results, 'include_scores': include_scores}, 'unknown_items': unknown_items, 'known_items': known_items}

Slide 31

Slide 31 text

31 query: more like this/these www.xyggy.com © 2019

Slide 32

Slide 32 text

32 More like this Query images Result images Dataset: 110K Visual Genome images - http://visualgenome.org/ No image pre-processing performed. No textual data used. Feature vectors generated automatically with deep learning. www.xyggy.com © 2019

Slide 33

Slide 33 text

33 More like this www.xyggy.com © 2019 Query images Result images

Slide 34

Slide 34 text

34 More like these Query images Result images www.xyggy.com © 2019

Slide 35

Slide 35 text

35 More like these www.xyggy.com © 2019 Query images Result images

Slide 36

Slide 36 text

36 query: more like these, less like others www.xyggy.com © 2019

Slide 37

Slide 37 text

37 More like these, less like others Query images Result images Dataset: wikiart images - https://www.wikiart.org/. No image pre-processing performed. No textual data used. Feature vectors generated automatically with deep learning. www.xyggy.com © 2019

Slide 38

Slide 38 text

38 More like +’s, less like –’s www.xyggy.com © 2019 Query images Query images

Slide 39

Slide 39 text

39 More like +’s, less like –’s www.xyggy.com © 2019 Result images

Slide 40

Slide 40 text

40 More like –’s, less like +’s www.xyggy.com © 2019 Query images Query images

Slide 41

Slide 41 text

41 More like –’s, less like +’s www.xyggy.com © 2019 Result images

Slide 42

Slide 42 text

42 Yin and Yang www.xyggy.com © 2019

Slide 43

Slide 43 text

43 crud: add data www.xyggy.com © 2019

Slide 44

Slide 44 text

44 Litmus test to add unknown image 1. Query with an unknown image. If image is known to Thingy, duplicate will show as the first result. It doesn’t (next slide). 2. Add a copy of the unknown image to Thingy. 3. Query with the unknown image again. If image is known to Thingy, duplicate will show as the first result. www.xyggy.com © 2019

Slide 45

Slide 45 text

45 1. Query with unknown image Dataset: wikiart images - https://www.wikiart.org/. No image pre-processing performed. No textual data used. Feature vectors generated automatically from deep learning model. Unknown image U U not in Thingy www.xyggy.com © 2019

Slide 46

Slide 46 text

46 2. Add image Add a copy of unknown image U to Thingy in realtime www.xyggy.com © 2019

Slide 47

Slide 47 text

47 3. Query with unknown image again Unknown image U Copy of U is first result www.xyggy.com © 2019

Slide 48

Slide 48 text

48 Test to add 3 unknown images 1. Query with 3 unknown images. If images are known, duplicates will show in results. They don’t (see next slide). 2. Add copies of 3 unknown images to Thingy. 3. Query with 3 unknown images again. If images are known, duplicates will show in results. www.xyggy.com © 2019

Slide 49

Slide 49 text

49 1. Query with 3 unknown images Unknown images U1, U2, U3 U1, U2, U3 not in Thingy www.xyggy.com © 2019

Slide 50

Slide 50 text

50 2. Add 3 images Add copies of 3 unknown images U1, U2, U3 to Thingy in realtime www.xyggy.com © 2019

Slide 51

Slide 51 text

51 3. Query with 3 unknown images again Unknown images U1, U2, U3 Copies of U1, U2, U3 appear in results www.xyggy.com © 2019

Slide 52

Slide 52 text

52 www.xyggy.com © 2019 Control with UIX less … and many other UIX functions built with API

Slide 53

Slide 53 text

53 Roadmap www.xyggy.com © 2019 recommendation engine for all kinds of things

Slide 54

Slide 54 text

54 We want to: Give people control of their AI Enable a new generation of dynamic recommendation services for consumers and enterprises Make dynamic AI a focus of ML research www.xyggy.com © 2019

Slide 55

Slide 55 text

55 www.xyggy.com © 2019 “If you use an old tool to tackle a problem you’ve got to be really smarter than the rest of the folks because everybody has this tool. If you are the first to look with something new it’s like starting a new world. You just look around and everything you see is going to be new.” Steven Chu, Nobel Laureate, Physics

Slide 56

Slide 56 text

56 Dinesh Vadhia [email protected] www.xyggy.com @DineshVadhia www.xyggy.com © 2019