[ML NEWS] Apple scans your phone | Master Faces beat face recognition | WALL-E is real
deep learning machine learning arxiv explained neural networks ai artificial intelligence paper what is deep learning deep learning tutorial introduction to deep learning ml news machine learning news kilcher news mlnews apple privacy european union lsh locality sensitive hashing on device adversarial attack database hash collision wall-e beachbot pentagon fruit fly word embeddings master faces
#mlnews #apple #nolamarck

Your update on the latest news in the AI and Machine Learning world.

OUTLINE:
0:00 - Intro
0:15 - Sponsor: Weights & Biases
3:30 - Apple to scan iDevices for illegal content
14:10 - EU approves chatcontrol
15:20 - Machine Learning FAQ book
17:40 - TimeDial & Disfl-QA Conversation Datasets
20:30 - VoxPopuli Speech Dataset
21:00 - Google Tensor chip coming to Pixel 6
21:30 - Pentagon uses AI to predict events
23:10 - Sketch your own GAN
24:45 - Can a Fruit Fly learn Word Embeddings?
26:00 - Master Faces beat facial recognition system
27:25 - PyTorch profiler 1.9
27:55 - 0 A.D. gets reinforcement learning interface
28:40 - BeatBot cleans up cigarette butts on the beach

Sponsor: Weights & Biases
https://wandb.ai

References:
Apple to scan iDevices for illegal content
https://techcrunch.com/2021/08/05/apple-icloud-photos-scanning/
http://tylerneylon.com/a/lsh1/

EU approves chatcontrol
https://european-pirateparty.eu/parliament-approves-chatcontrol/

Machine Learning FAQ book
https://rentruewang.github.io/learning-machine/layers/emb/emb.html

TimeDial & Disfl-QA: New datasets for conversational NLP
https://ai.googleblog.com/2021/08/two-new-datasets-for-conversational-nlp.html

VoxPopuli: Giant partially labeled speech dataset
https://github.com/facebookresearch/voxpopuli

Google's Tensor chip coming to Pixel 6
https://blog.google/products/pixel/google-tensor-debuts-new-pixel-6-fall/

Pentagon uses AI for predicting relevant events in advance
https://www.engadget.com/pentagon-ai-predicts-days-in-advance-135509604.html?utm_source=pocket_mylist

Sketch Your Own GAN
https://peterwang512.github.io/GANSketching/

Can a fruit fly learn word embeddings?
https://arxiv.org/pdf/2101.06887.pdf

Master Faces for attacking facial recognition systems
https://arxiv.org/pdf/2108.01077.pdf

PyTorch Profiler v1.9
https://www.marktechpost.com/2021/08/06/pytorch-releases-pytorch-profiler-v1-9-with-new-features-to-help-diagnose-and-fix-machine-learning-performance-issues/

0 A.D. adds Reinforcement Learning interface
https://play0ad.com/media/screenshots/
https://trac.wildfiregames.com/wiki/GettingStartedReinforcementLearning

BeachBot cleans up cigarette butts on the beach
https://news.yahoo.com/beachbot-rover-uses-artificial-intelligence-130031052.html

Links:
TabNine Code Completion (Referral): http://bit.ly/tabnine-yannick
YouTube: https://www.youtube.com/c/yannickilcher
Twitter: https://twitter.com/ykilcher
Discord: https://discord.gg/4H8xxDF
BitChute: https://www.bitchute.com/channel/yannic-kilcher
Minds: https://www.minds.com/ykilcher
Parler: https://parler.com/profile/YannicKilcher
LinkedIn: https://www.linkedin.com/in/yannic-kilcher-488534136/
BiliBili: https://space.bilibili.com/1824646584

If you want to support me, the best thing to do is to share out the content :)

If you want to support me financially (completely optional and voluntary, but a lot of people have asked for this):
SubscribeStar: https://www.subscribestar.com/yannickilcher
Patreon: https://www.patreon.com/yannickilcher
Bitcoin (BTC): bc1q49lsw3q325tr58ygf8sudx2dqfguclvngvy2cq
Ethereum (ETH): 0x7ad3513E3B8f66799f507Aa7874b1B0eBC7F85e2
Litecoin (LTC): LQW2TRyKYetVC8WjFkhpPhtpbDM4Vw7r9m
Monero (XMR): 4ACL8AGrEo5hAir8A9CeVrW8pEauWvnp1WnSDZxW7tziCDLhZAGsgzhRQABDnFy8yuM9fWJDviJPHKRjV4FWt19CJZN9D4n
 Apple scans your phone for illegal content, master faces are able to bypass almost any facial recognition software, and Wally is real. Welcome to ML News. It's Monday. All right, before we get into things, this video is sponsored by weights and biases. Weights and biases is of course the one stop shop for any machine learning researcher or practitioners. weights and biases can track your experiments with a single line of code, it lets you reproduce and analyze your experiments, it lets you understand your data, it's with you all the way from conception, idea, research development up until deployment. Today I want to talk to you about a feature called sweeps. Now a sweep in weights and biases is a hyper parameter optimization search, if you will. The cool thing is you define your experiment, you define the range of parameters you want to search over, and then the system does the rest for you. You can even run this in a distributed fashion, you can have lots of agents at lots of different places, they are going to pull the code from the central server, pull the new hyper parameters, try them out, and then report back. In the background, there is a Bayesian optimization algorithm going on deciding what parameters to try next to optimize your objective. They even have early stopping so you don't waste resources on runs that are clearly going nowhere. And have I mentioned you can run this in a distributed fashion. So here's one of my sweeps. As you can see, you get your output as you're used to from weights and biases in a neat dashboard, you get an overview over all your runs. But in addition, you're able to see the progress of the sweep, you're able to see which one succeeded and which ones didn't, it will analyze directly how important each one of the parameters is individually. So here it tells me that the learning rate is the most important parameter, and it has a positive correlation with my objective function. One of the coolest views is this one here that tells me which of the combinations of hyper parameter ended up at a certain place. So I can filter for runs with particularly low validation loss. And then I can see what are the learning rates, what are the epochs like in this particular runs. Now there's obviously much more you can do in terms of analyzing sweeps, you can run this much larger, you can look at individual samples of your best runs, pretty much everything you're used to from weights and biases. So if until now you've tuned your hyper parameters manually, try this out, let it do the work for you go to bed and in the morning come back to find the system has found the best possible hyper parameters for your problem. Not only is it easier, but you'll understand more about your problem. Once you see it in this light, of course, this is only one of the features of weights and biases, they have many, many more, including ways to analyze your data, ways to export your models, ways to keep track of everything that you're doing, and ways to send reports around to other people or generally work in teams. Personal accounts are free with unlimited experiments for you. If you're an enterprise, that'll cost a bit of money. But hey, you're an enterprise. And there are free options for academic teams, there are even options to self host if you need to be compliant with any sort of regulation. So give it a try go over to weights and biases. That's one DB I think at least that's how you pronounce it one DB dot AI and have fun. Ciao. All right, our first story today is not a particularly fun story. TechCrunch writes, Apple confirms it will begin scanning iCloud photos for child abuse images. This has caused quite a bit of stir in the community, especially since Apple had all these adverts in the previous series about what happens on your phone stays on your phone was very privacy related, end to end encryption friendly, and all of these kinds of stuff. And now all of a sudden, it seems like they're going to scan all your data for things they don't like. Of course, it's not a case in favor of child abuse images or any kind of illegal content, people are worried about privacy more generally. So I think it's important to say what exactly is going to happen here, or at least from what we know, Apple will scan your photos that you are about to upload to iCloud. As I understand it, iCloud itself is encrypted. So Apple technically has no way to scan the iCloud photos because they are encrypted with your key that rests on your devices. However, they can scan content that's on your phone, I'm going to guess there might be a legal reason for it in that they might sort of kind of be responsible for that content once it goes to their online service. However, that's not something I know. But of course, once the technical methodology is in place to scan the photos that are about to be uploaded to iCloud from your device, you can use the same technology to essentially get access to any data of any user, there's no technical limitation after all why only these photos should be scanned. And just because Apple promises that it won't do it doesn't mean they won't do it in the future or they can't do it. And that already tells you a little bit why some people say it is a problem. Because of course, there is also no technical limitation that says that it can only scan for child abuse images or any sort of illegal content. And for that, it's a little bit important to dig into what the system actually does. So the way this works is there's no classifier essentially in there to classify child abuse images from non child abuse images, there is a database. So the police essentially collects databases of these materials, which means that those are individual photographs or movies that are sent around by certain people that are illegal, and the police keeps track exactly of the files that go around. So this is the first important thing they only want to detect if you on your phone have one of the files that they already have in their database classified as illegal content. And the way they do it is by comparing hashes. Now traditionally, a hash would only match if the file is exactly the same bit for bit. So what you do as your phone would download the database of hashes would hash all the photos on your device that are about to be uploaded to iCloud, wink, and then it would compare those hashes to the database of bad hashes. And if one matches, it would upload it to the police. Alternatively, it could just hash all the contents upload that to the police and then the police could do the comparison. In any way, if these are actually true hashes, they are unlikely to reveal what data you have on your phone. And that's likely the argument that Apple is going to make right here in that just because you upload the hashes of what's on your phone, you can't necessarily reconstruct the images from that. So your personal photos are safe, even more so if your phone downloads all of these hashes, and then compares them locally and only sends if in fact there is a match. However, there are multiple problems with this. First of all, you don't know what's going in this database. Technically, some political party could simply enter things into that database that they know are likely the opposition or some rebel group is likely to share around amongst themselves, they could even instigate such material, and then they could just wait and see what phones blip up. So you confiscate one phone from your political opponent, you run all these hashes, and you put them in the database. And all the phones of the associates of that person would then be automatically reported by the system. So the potential for abuse here of the people who control what's in the database is enormous. Second, as I understand it, the hashes that are used right here aren't like classic cryptographic hashes, they are what Apple calls neural hash, but what is in effect a locality sensitive hashing algorithm. So here's an article by Tyler nail on about locality sensitive hashing, which explains the concept fairly well. And it makes sense to use a locality sensitive hash in this case, because what you want to detect is if two images are the same, meaning display the same thing. For example, if I take an image and then run some sort of JPEG compression on it, it still shows me the same thing. However, the bits have all changed. So a classic hash would not be able to recognize that image anymore. However, a content aware hash would or should at least be able to recognize that this is the same image. YouTube has been doing this for a long time with their content ID system, detecting when someone re uploads a video by someone else, even if that video has been re encoded. So as far as I understand it, what Apple does is they train some kind of neural network that gives them a representation of what is in an image. And then they run that through a locality sensitive hashing procedure. locality sensitive hashing is essentially a system that allows you to find neighbors in very high dimensional space very efficiently. So the neural network would produce a space of images and place each image somewhere with the intention that images containing similar or the same thing would fall very close to each other. And you can do that with neural network. The question is, you don't want to run an inner product search over this whole space all the time, like that would fry your phone probably. So what locality sensitive hashing does essentially, it divides up the space into buckets. So here, it's straight buckets. And then these kinds of buckets, once you combine all these buckets, you get the sub buckets. So you get sort of a division of space. And for each point, you can check is it to the left or to the right of a particular line. And if two points match in being to the left or to the right, or up or down respectively, for any particular line, that means they're in the same bucket and probably very close together. At that point, then you can actually go ahead and check if they are actually close together or not. This is a good way to find approximately nearest neighbors in high dimensions. So real LSH algorithms are a bit more sophisticated, but that's the essential concept they work by. So is this going to help? Well, I would say yes, in first instance, but then I think very, very quickly, you'll realize that adversarial attacks, for example, can be crafted against these kinds of system, given that the system computes the hash on your phone, that means you have access to the model on your phone. And having access to a model is a very, very, very good target for crafting adversarial attacks. Technically, there could now be an entire market of systems that perturb images on your phone automatically such that they just scrambled the LSH because most of these hashes aren't going to be in the database. So if I just assign my image some random hash, meaning I run an adversarial attack such that it is just going to be somewhere in this space, most likely I won't hit any of the hashes in the database. And therefore, all my photos are not going to cause any hash collisions. And therefore, I completely evade that system. Now, the question is, of course, how easy is this going to be especially a given that it is supposed to circumvent detection of illegal content, there's going to be a bit of resistance, but there's definitely quite easy ways it seems to circumvent this system. And we have to ask ourselves, are we really ready to give up basic privacy? Are we really ready to let the companies build in these giant back doors that have massive potential for abuse for what is essentially a method that can be pretty easily evaded when it's used for what it's really supposed to be used for? I don't have the answers, but I would err on the side of user privacy. So that's my take on it. Tell me what you think in the comments. Alright, a quick afterthought here, we now also have the technical summary of Apple, there's a lot of content in here, notably goes into a lot of detail on how exactly the technology works, what neural hash is supposed to do. For example, you can see that the left and middle image have the same neural hash, whereas the right image does not have the same neural hash. So the neural hash is supposed to be robust to certain transformations that you might do with the image while still preserving its content. Therefore, as I said, you couldn't just compress the image or change its color saturation a little bit and evade the neural hash. Apparently, though, after the neural hash is computed, there is also this blinding step, which means that it essentially goes through a classic hash function. And therefore, the adversarial attacks on the system become a little bit more difficult. Now, since this is all still on device, it's absolutely possible to evade the neural hash using an adversarial attack, what is less possible is to frame someone, meaning that you send someone an image that is specifically crafted to hit the neural hash filters as illegal content, but is actually just kind of a normal image that you have adversarially crafted. Now with an untargeted adversarial attack, you can evade the filter. But if you want to trip the filter, you really need a targeted adversarial attack. And because of this blinding step, you don't know what to target. So the only way to actually craft such an adversarial image to frame someone is if you yourself already have an illegal image that you can target with the adversarial attack. So there's a lot more in this technical report right here. And I invite you to read it if you are interested. And I might actually do a full video on this if this is interesting enough to people. It's not necessarily machine learning, it's more cryptography and systems design, but still is pretty cool. All right, while we're on privacy, the EU Parliament approves mass surveillance of private communications from the European Pirate Party, writing today the European Parliament approved the e privacy delegation, allowing providers of email and messaging services to automatically search all personal messages of each citizen for presumed suspect content and report suspected cases to the police. European Pirates delegation in the Greens EFA group strongly condemns this automated mass surveillance, which effectively means the end privacy in digital correspondence. So this sounds kind of the same, but it is slightly different. While Apple announced that it will do something, this is simply the EU saying that you can do something. However, what you can do now seems to be a pretty big breach of privacy. Now, of course, just because companies now are allowed to do something doesn't mean they will do it, but probably it means they will do it. So yeah, but what are you going to do you signal? Well, then just Apple swoops in and scans your messages before you send them. So I guess we'll just go back to sending pigeons around. All right, on a bit on a lighter note, I stumbled across this book by Arun Chow Wang that explains machine learning as answering two basic questions. So this companies a machine learning class and explains machine learning in the essentially answering FAQs. So this is a big FAQ of that class. And it's quite good. It's explained very concisely what do embedding layers do embedding layers converted token and integer to a vector a list of floating point numbers. That's fairly concise. And then you say when do you use embedding layers when you want to process text, text can be converted to integers, but because neural networks are don't directly understand integers, a bit of a typo here, I guess could I change this, I can make a poll request, suggest edit for check. Cool. I was pretty stupid. And actually, the recording you're seeing is the second recording. In fact, I forgot the first time to record my screen. And what happened is pretty funny in that. So I was presenting this book, and I actually saw a typo in the book. And then I immediately opened a poll request and fix the typo and the poll request got approved. And I was like, Yay, ml news and all. And I thought that will make for some pretty good content. And I was really happy with myself. And it was really neat and all. And then I realized I forgot to record the screen. So now I'm just going to show you a compilation of me being absolutely self congratulatory for finding a typo. Have fun. Good job ml news community. We did something. Give yourselves a pat on the shoulders. This is this is unplanned. Yeah, ml news improving the world, story by story. So as you can see, it is not entirely thorough or particularly technically accurate or anything like this. If you're a beginner, if you're new into a particular subfield of machine learning that's treated here, this might be a good place seems fairly concise way to learn about the fundamentals of given subfields. Okay, we have some new data sets coming out to data sets by Google, both are for NLP, especially for conversation, what is called time dial, and it tests the models understanding of sort of the sequence of things whether or not it understands the flow of time. And especially if the participants in the conversation talk about things that happen one after another, if the model can correctly infer things about this. So here you can see what's the date today. Today is September 28 2007. I have a meeting this afternoon, when will it begin? I'll begin at three o'clock. What's the time now? And then the model is asked to fill in this blank, it is something something, and then continues I have to go now I don't want to be late. The model says don't worry time is enough. What's the most likely filling in the blank so you'd have to reason okay meeting is this afternoon, it will begin at three yet after that it says okay, I have to go now but time is enough. So maybe it's a bit before three, you know, not like one to three or something like this, but also not the day before or so. So out of the four options you have here, the first ones would be okay, because they fit the constraints, the last ones would not be okay. And in fact, in this absolutely not cherry picked example, I'm sure the T5 both T5 and bird assign most mass to the last examples, the data set is essentially made up of all kinds of these conversations and giving you options to fill in and you have to determine the ones that fit the constraints most. The other data set is called disfull QA and tests disfluent questions. So it takes the squad data set, which is a question answering data set and it rewrites it into questions where the speaker just kind of turns around mid question or corrects themselves or insert something or says like, Oh, no, that's not what I meant, I meant this other thing. And this can get quite complicated, because you can start with an entity and then say, Oh, no, no, no, no, no, but then still refer to that entity when you rephrase your question. So the data set is supposed to test the models abilities to handle that data sets like this in general are pretty cool because they test sort of human aspects of conversation. However, state of the art on these data sets is probably going to be reached by models that just heavily overfit to whatever the problems that data set construction mechanism is. So if you evaluate things on these data sets, what I think should be done is you should just train like your regular model without these things in mind, and then evaluate on them as sort of one of the things maybe we can add those to to to the super glue suite or something like this, which gives us a more accurate picture than simply releasing them and then and then have a leaderboard for them. That's just my opinion. In other data set news, Facebook research releases Vox populi, which is a speech data set. So their speech data from the European Parliament event recordings, some of them are even annotated or translated interpreted into other languages. So this is a very big data set unlabeled and labeled speech data. So if you work with speech, this might be something interesting for you. Next news, Google tensor debuts on the new pixel six this fall, Google tensor apparently is some sort of hardware, I don't know, this is a giant marketing piece, it just says the Google tensor chip will make everything very, very fast and machine learning and the new UI. And they know this and so the editor actually say anything about the chip. So your phone is going to be able to do numbery numbery, crunchy, crunchy way faster than it used to be able to do it. That's all I can say for now. The Pentagon believes its pre cognitive AI can predict events days in advance machine learning could help the military make proactive decisions rights and gadget. So this is an article and it sounds a bit like out of a dystopian movie, but apparently the US military has very large efforts into using ML to sort of predict icky situations that are about to happen. And once you read into it, it's apparently not that different from what they've done so far. So far, they just had like a whole bunch of people analyze all kinds of satellite imagery or emails from people that they just found on their computer, like people sent it to them, their private emails, that's why they can read them legally. And they just had all these people go through all this data essentially manually maybe with some assistance. And now AI is supposed to just be able to go through this data a lot quicker and flag any information that might be relevant for the human reviewers. The technology itself seems fairly neutral and actually pretty useful in certain situations. Given that it's the military using it, it might have a bit of a bad rep. But again, it demonstrates that most technology doesn't really have a sort of moral underpinning by itself. It's mostly in most cases about the deployment of any type of technology, like you could use the same thing to predict days or minutes or hours in advance when ICU patients will become unstable, people actually do it and the underlying core technology is not going to look very different from what is done here. So researchers from MIT and CMU release Sketch Your Own GAN, which is a paper and the method in the paper is essentially you take a GAN that you have trained on some sort of data set here, for example, on a cat data set, and you're able to additionally input a sketch, as you can see right here, and the system will adapt the GAN such that the outputs sort of match that sketch. Of course, there's quite a number of hyper parameters in here, a lot of engineering decisions. But in essence, it's a pretty, pretty cool way to control the output of GANs. And this is quite a hard thing to do. And it's not entirely clear how to do it. A lot of people research sort of disentanglement of features in GANs. So you could control individual dimensions directly, but that kind of requires you to have either a data set of these individual dimensions, so you can actually really take them apart, or you just end up with some dimensions, and you have to figure out what they are in order to control seems like a pretty cool thing, you can give the GAN a sample, and in this case, not even a sample of real data, you can actually give the GAN sort of a steering direction directly of what you want it to output. So I can see this has many more applications beyond images and sketches. Technically, you could apply this to a lot more stuff where you need to control the output of a generative model by some sort of demonstration, which doesn't even necessarily have to be in the same space as the things you're trying to produce. So overall, very cool. Check it out. Next paper that caught my attention can a fruit fly learn word embeddings by a whole consortium of researchers of different labs working together on this paper. Now, it's clickbait. Let me explain that the paper itself is actually pretty cool. So we understand fruit fly brains fairly well, they're approximately like this. Now when I read the title of this paper is I want to see a fruit fly learn word embeddings or at least an attempt at doing these kinds of things. However, it turns out that the paper constructs a sort of abstract model of the fruit fly brain and then shows that that abstract model can in fact learn word embeddings much like the word embedding methods that we know from NLP. Again, the research itself is completely valid and very cool. I was just sort of caught out by how important a title of a paper is because had it been for a different title, technical title, I probably would not have clicked on it. So the lesson is, if you're trying to get people to read your paper, a good title can go a long way. Okay, the last paper that caught my eye is generating master faces for dictionary attacks with a network assisted latent space evolution. This by the Blavatnik School of Computer Science in Tel Aviv and by the School of Electrical Engineering in Tel Aviv. This paper essentially uses evolutionary algorithms and I love the Darwinian in this picture. Just to make clear, we mean Darwinian evolution and not Lamarckian evolution. Hashtag no Lamarck. So this paper constructs what they call master faces and apparently just these faces just 10 faces. So each of these rows are these master faces, just these faces combined are able to match a vast number of facial detection algorithms. So what that means is if I go out and I encounter a facial recognition system to like let me into a door or into a phone or anything like this, I can just try out these 10 faces and there is a high likelihood, something like 40 to 50% that one of them will actually work, which is insane. This shows sort of the brittleness of the identification part of these facial recognition algorithms, the potential for abuse for this is large, like someone could get access to all the photos that you're about to upload to iCloud or something like this, like imagine that that'd be terrible. Fix this. All right, we just have one helpful library this week, PyTorch releases the PyTorch profiler version 1.9. So this seems to be a rather major upgrade that includes distributed training view, memory view, GPU utilization view, cloud storage support and jump to source code, which replaces the old feature of walk to source code. Well, in any case, if you use PyTorch, and you ask yourself why your code is so slow, maybe try giving the PyTorch profiler a look. Next news, zero AD is getting reinforcement learning capabilities. This is a strategy game that is kind of popular with some people. The cool thing is that it has now a direct interface for reinforcement learning, meaning that it exposes an API that is essentially compatible with the gym interface that you know from basic RL. So they even go through setting up some sort of a task for you with these five spearmen fighting against these five cavalry, and they take you through training a DQN agent and then evaluating it directly in their game. So if you're interested in reinforcement learning as it pertains to controlling games, maybe this is a good topic for you to dive in. And the last news Yahoo news writes Beachbot Rover uses artificial intelligence to clean up cigarette butts. So apparently there once was an engineer whose son dug up a cigarette butt at the beach, and the engineer looked around and saw all kinds of cigarette butts lying around, realized that they're quite bad for the environment and also not very pleasant to step into. So he teamed up with his friend and build this thing called Beachbot or BB for short. So this is essentially an incarnation of Wally, it goes around and automatically picks up cigarette butts at the beach. How cute is that? How neat. So it does that fully automatically. I think the bigger goal here is to sort of develop AI and robotics applications for sustainability. The project in itself is not going to save the world here they writes it can scoop up about 10 cigarette butts with its grippers within 30 minutes, and it has to recharge about once every hour. So pretty much it's out competed hopelessly by a single chain smoker. But what can I say it's very, very cool. But I think such a robot could be better used to actually go and just poke people who smoke at the beach in the first place. So BB will get a companion Pokey BB and Pokey best friends on the beach. Let's go stab some smokers and then pick up a cigarette butt. All right, that was already it for this week's ML news on this beautiful, beautiful Monday. I hope you learned something today. If you did subscribe if you did not watch the video again, then subscribe. Please check out weights and biases and I wish you a very pleasant week. I'll see you around. Bye bye.
 Apple scans your phone for illegal content, master faces are able to bypass almost any
 facial recognition software, and Wally is real. Welcome to ML News. It's Monday.
 All right, before we get into things, this video is sponsored by weights and biases. Weights and
 biases is of course the one stop shop for any machine learning researcher or practitioners.
 weights and biases can track your experiments with a single line of code, it lets you reproduce and
 analyze your experiments, it lets you understand your data, it's with you all the way from
 conception, idea, research development up until deployment. Today I want to talk to you about a
 feature called sweeps. Now a sweep in weights and biases is a hyper parameter optimization search,
 if you will. The cool thing is you define your experiment, you define the range of parameters
 you want to search over, and then the system does the rest for you. You can even run this in a
 distributed fashion, you can have lots of agents at lots of different places, they are going to
 pull the code from the central server, pull the new hyper parameters, try them out, and then report
 back. In the background, there is a Bayesian optimization algorithm going on deciding what
 parameters to try next to optimize your objective. They even have early stopping so you don't waste
 resources on runs that are clearly going nowhere. And have I mentioned you can run this in a
 distributed fashion. So here's one of my sweeps. As you can see, you get your output as you're used
 to from weights and biases in a neat dashboard, you get an overview over all your runs. But in
 addition, you're able to see the progress of the sweep, you're able to see which one succeeded and
 which ones didn't, it will analyze directly how important each one of the parameters is individually.
 So here it tells me that the learning rate is the most important parameter, and it has a positive
 correlation with my objective function. One of the coolest views is this one here that tells me
 which of the combinations of hyper parameter ended up at a certain place. So I can filter for runs
 with particularly low validation loss. And then I can see what are the learning rates, what are the
 epochs like in this particular runs. Now there's obviously much more you can do in terms of
 analyzing sweeps, you can run this much larger, you can look at individual samples of your best runs,
 pretty much everything you're used to from weights and biases. So if until now you've
 tuned your hyper parameters manually, try this out, let it do the work for you go to bed and in
 the morning come back to find the system has found the best possible hyper parameters for your problem.
 Not only is it easier, but you'll understand more about your problem. Once you see it in this light,
 of course, this is only one of the features of weights and biases, they have many, many more,
 including ways to analyze your data, ways to export your models, ways to keep track of everything that
 you're doing, and ways to send reports around to other people or generally work in teams.
 Personal accounts are free with unlimited experiments for you. If you're an enterprise,
 that'll cost a bit of money. But hey, you're an enterprise. And there are free options for
 academic teams, there are even options to self host if you need to be compliant with any sort
 of regulation. So give it a try go over to weights and biases. That's one DB I think at least that's
 how you pronounce it one DB dot AI and have fun. Ciao. All right, our first story today is not a
 particularly fun story. TechCrunch writes, Apple confirms it will begin scanning iCloud photos
 for child abuse images. This has caused quite a bit of stir in the community, especially since
 Apple had all these adverts in the previous series about what happens on your phone stays on your
 phone was very privacy related, end to end encryption friendly, and all of these kinds of
 stuff. And now all of a sudden, it seems like they're going to scan all your data for things
 they don't like. Of course, it's not a case in favor of child abuse images or any kind of illegal
 content, people are worried about privacy more generally. So I think it's important to say what
 exactly is going to happen here, or at least from what we know, Apple will scan your photos that you
 are about to upload to iCloud. As I understand it, iCloud itself is encrypted. So Apple technically
 has no way to scan the iCloud photos because they are encrypted with your key that rests on your
 devices. However, they can scan content that's on your phone, I'm going to guess there might be a
 legal reason for it in that they might sort of kind of be responsible for that content once it
 goes to their online service. However, that's not something I know. But of course, once the technical
 methodology is in place to scan the photos that are about to be uploaded to iCloud from your device,
 you can use the same technology to essentially get access to any data of any user, there's no
 technical limitation after all why only these photos should be scanned. And just because Apple
 promises that it won't do it doesn't mean they won't do it in the future or they can't do it.
 And that already tells you a little bit why some people say it is a problem. Because of course,
 there is also no technical limitation that says that it can only scan for child abuse images or
 any sort of illegal content. And for that, it's a little bit important to dig into what the system
 actually does. So the way this works is there's no classifier essentially in there to classify
 child abuse images from non child abuse images, there is a database. So the police essentially
 collects databases of these materials, which means that those are individual photographs or movies
 that are sent around by certain people that are illegal, and the police keeps track exactly of the
 files that go around. So this is the first important thing they only want to detect if you
 on your phone have one of the files that they already have in their database classified as
 illegal content. And the way they do it is by comparing hashes. Now traditionally, a hash would
 only match if the file is exactly the same bit for bit. So what you do as your phone would download
 the database of hashes would hash all the photos on your device that are about to be uploaded to
 iCloud, wink, and then it would compare those hashes to the database of bad hashes. And if one
 matches, it would upload it to the police. Alternatively, it could just hash all the
 contents upload that to the police and then the police could do the comparison. In any way, if
 these are actually true hashes, they are unlikely to reveal what data you have on your phone. And
 that's likely the argument that Apple is going to make right here in that just because you upload
 the hashes of what's on your phone, you can't necessarily reconstruct the images from that.
 So your personal photos are safe, even more so if your phone downloads all of these hashes,
 and then compares them locally and only sends if in fact there is a match. However, there are
 multiple problems with this. First of all, you don't know what's going in this database.
 Technically, some political party could simply enter things into that database that they know
 are likely the opposition or some rebel group is likely to share around amongst themselves,
 they could even instigate such material, and then they could just wait and see what phones blip up.
 So you confiscate one phone from your political opponent, you run all these hashes, and you put
 them in the database. And all the phones of the associates of that person would then be automatically
 reported by the system. So the potential for abuse here of the people who control what's in the
 database is enormous. Second, as I understand it, the hashes that are used right here aren't like
 classic cryptographic hashes, they are what Apple calls neural hash, but what is in effect a locality
 sensitive hashing algorithm. So here's an article by Tyler nail on about locality sensitive hashing,
 which explains the concept fairly well. And it makes sense to use a locality sensitive hash
 in this case, because what you want to detect is if two images are the same, meaning display the
 same thing. For example, if I take an image and then run some sort of JPEG compression on it,
 it still shows me the same thing. However, the bits have all changed. So a classic hash would not
 be able to recognize that image anymore. However, a content aware hash would or should at least be
 able to recognize that this is the same image. YouTube has been doing this for a long time with
 their content ID system, detecting when someone re uploads a video by someone else, even if that
 video has been re encoded. So as far as I understand it, what Apple does is they train some kind of
 neural network that gives them a representation of what is in an image. And then they run that
 through a locality sensitive hashing procedure. locality sensitive hashing is essentially a system
 that allows you to find neighbors in very high dimensional space very efficiently. So the neural
 network would produce a space of images and place each image somewhere with the intention that
 images containing similar or the same thing would fall very close to each other. And you can do that
 with neural network. The question is, you don't want to run an inner product search over this whole
 space all the time, like that would fry your phone probably. So what locality sensitive hashing does
 essentially, it divides up the space into buckets. So here, it's straight buckets. And then these kinds
 of buckets, once you combine all these buckets, you get the sub buckets. So you get sort of a division
 of space. And for each point, you can check is it to the left or to the right of a particular line.
 And if two points match in being to the left or to the right, or up or down respectively,
 for any particular line, that means they're in the same bucket and probably very close together.
 At that point, then you can actually go ahead and check if they are actually close together or not.
 This is a good way to find approximately nearest neighbors in high dimensions. So real LSH algorithms
 are a bit more sophisticated, but that's the essential concept they work by. So is this going
 to help? Well, I would say yes, in first instance, but then I think very, very quickly, you'll realize
 that adversarial attacks, for example, can be crafted against these kinds of system, given that
 the system computes the hash on your phone, that means you have access to the model on your phone.
 And having access to a model is a very, very, very good target for crafting adversarial attacks.
 Technically, there could now be an entire market of systems that perturb images on your phone
 automatically such that they just scrambled the LSH because most of these hashes aren't going to
 be in the database. So if I just assign my image some random hash, meaning I run an adversarial
 attack such that it is just going to be somewhere in this space, most likely I won't hit any of the
 hashes in the database. And therefore, all my photos are not going to cause any hash collisions.
 And therefore, I completely evade that system. Now, the question is, of course, how easy is this
 going to be especially a given that it is supposed to circumvent detection of illegal content,
 there's going to be a bit of resistance, but there's definitely quite easy ways it seems
 to circumvent this system. And we have to ask ourselves, are we really ready to give up
 basic privacy? Are we really ready to let the companies build in these giant back doors that
 have massive potential for abuse for what is essentially a method that can be pretty easily
 evaded when it's used for what it's really supposed to be used for? I don't have the answers, but
 I would err on the side of user privacy. So that's my take on it. Tell me what you think in the
 comments. Alright, a quick afterthought here, we now also have the technical summary of Apple,
 there's a lot of content in here, notably goes into a lot of detail on how exactly the technology
 works, what neural hash is supposed to do. For example, you can see that the left and middle
 image have the same neural hash, whereas the right image does not have the same neural hash. So the
 neural hash is supposed to be robust to certain transformations that you might do with the image
 while still preserving its content. Therefore, as I said, you couldn't just compress the image or
 change its color saturation a little bit and evade the neural hash. Apparently, though, after the
 neural hash is computed, there is also this blinding step, which means that it essentially
 goes through a classic hash function. And therefore, the adversarial attacks on the system become a
 little bit more difficult. Now, since this is all still on device, it's absolutely possible to evade
 the neural hash using an adversarial attack, what is less possible is to frame someone, meaning that
 you send someone an image that is specifically crafted to hit the neural hash filters as illegal
 content, but is actually just kind of a normal image that you have adversarially crafted. Now
 with an untargeted adversarial attack, you can evade the filter. But if you want to trip the
 filter, you really need a targeted adversarial attack. And because of this blinding step,
 you don't know what to target. So the only way to actually craft such an adversarial image to frame
 someone is if you yourself already have an illegal image that you can target with the adversarial
 attack. So there's a lot more in this technical report right here. And I invite you to read it
 if you are interested. And I might actually do a full video on this if this is interesting enough
 to people. It's not necessarily machine learning, it's more cryptography and systems design,
 but still is pretty cool. All right, while we're on privacy, the EU Parliament approves mass
 surveillance of private communications from the European Pirate Party, writing today the
 European Parliament approved the e privacy delegation, allowing providers of email and
 messaging services to automatically search all personal messages of each citizen for presumed
 suspect content and report suspected cases to the police. European Pirates delegation in the
 Greens EFA group strongly condemns this automated mass surveillance, which effectively means the
 end privacy in digital correspondence. So this sounds kind of the same, but it is slightly
 different. While Apple announced that it will do something, this is simply the EU saying that you
 can do something. However, what you can do now seems to be a pretty big breach of privacy. Now,
 of course, just because companies now are allowed to do something doesn't mean they will do it,
 but probably it means they will do it. So yeah, but what are you going to do you signal? Well,
 then just Apple swoops in and scans your messages before you send them. So I guess we'll just go
 back to sending pigeons around. All right, on a bit on a lighter note, I stumbled across this book
 by Arun Chow Wang that explains machine learning as answering two basic questions. So this
 companies a machine learning class and explains machine learning in the essentially answering
 FAQs. So this is a big FAQ of that class. And it's quite good. It's explained very
 concisely what do embedding layers do embedding layers converted token and integer to a vector
 a list of floating point numbers. That's fairly concise. And then you say when do you use embedding
 layers when you want to process text, text can be converted to integers, but because neural networks
 are don't directly understand integers, a bit of a typo here, I guess could I change this,
 I can make a poll request, suggest edit for check. Cool. I was pretty stupid. And actually,
 the recording you're seeing is the second recording. In fact, I forgot the first time
 to record my screen. And what happened is pretty funny in that. So I was presenting this book,
 and I actually saw a typo in the book. And then I immediately opened a poll request
 and fix the typo and the poll request got approved. And I was like, Yay, ml news and all.
 And I thought that will make for some pretty good content. And I was really happy with myself. And
 it was really neat and all. And then I realized I forgot to record the screen. So now I'm just
 going to show you a compilation of me being absolutely self congratulatory for finding a
 typo. Have fun. Good job ml news community. We did something. Give yourselves a pat on the
 shoulders. This is this is unplanned. Yeah, ml news improving the world, story by story. So as you can
 see, it is not entirely thorough or particularly technically accurate or anything like this. If
 you're a beginner, if you're new into a particular subfield of machine learning that's treated here,
 this might be a good place seems fairly concise way to learn about the fundamentals of given subfields.
 Okay, we have some new data sets coming out to data sets by Google, both are for NLP,
 especially for conversation, what is called time dial, and it tests the models understanding
 of sort of the sequence of things whether or not it understands the flow of time. And especially if
 the participants in the conversation talk about things that happen one after another, if the model
 can correctly infer things about this. So here you can see what's the date today. Today is September
 28 2007. I have a meeting this afternoon, when will it begin? I'll begin at three o'clock. What's
 the time now? And then the model is asked to fill in this blank, it is something something, and then
 continues I have to go now I don't want to be late. The model says don't worry time is enough. What's
 the most likely filling in the blank so you'd have to reason okay meeting is this afternoon,
 it will begin at three yet after that it says okay, I have to go now but time is enough. So maybe it's
 a bit before three, you know, not like one to three or something like this, but also not the day before
 or so. So out of the four options you have here, the first ones would be okay, because they fit the
 constraints, the last ones would not be okay. And in fact, in this absolutely not cherry picked
 example, I'm sure the T5 both T5 and bird assign most mass to the last examples, the data set
 is essentially made up of all kinds of these conversations and giving you options to fill in
 and you have to determine the ones that fit the constraints most. The other data set is called
 disfull QA and tests disfluent questions. So it takes the squad data set, which is a question
 answering data set and it rewrites it into questions where the speaker just kind of turns
 around mid question or corrects themselves or insert something or says like, Oh, no, that's not
 what I meant, I meant this other thing. And this can get quite complicated, because you can start
 with an entity and then say, Oh, no, no, no, no, no, but then still refer to that entity when you
 rephrase your question. So the data set is supposed to test the models abilities to handle that data
 sets like this in general are pretty cool because they test sort of human aspects of conversation.
 However, state of the art on these data sets is probably going to be reached by models that just
 heavily overfit to whatever the problems that data set construction mechanism is. So if you evaluate
 things on these data sets, what I think should be done is you should just train like your regular
 model without these things in mind, and then evaluate on them as sort of one of the things
 maybe we can add those to to to the super glue suite or something like this, which gives us a
 more accurate picture than simply releasing them and then and then have a leaderboard for them.
 That's just my opinion. In other data set news, Facebook research releases Vox populi, which is
 a speech data set. So their speech data from the European Parliament event recordings, some of them
 are even annotated or translated interpreted into other languages. So this is a very big data set
 unlabeled and labeled speech data. So if you work with speech, this might be something interesting
 for you. Next news, Google tensor debuts on the new pixel six this fall, Google tensor apparently
 is some sort of hardware, I don't know, this is a giant marketing piece, it just says the Google
 tensor chip will make everything very, very fast and machine learning and the new UI. And they know
 this and so the editor actually say anything about the chip. So your phone is going to be able to do
 numbery numbery, crunchy, crunchy way faster than it used to be able to do it. That's all I can say
 for now. The Pentagon believes its pre cognitive AI can predict events days in advance machine
 learning could help the military make proactive decisions rights and gadget. So this is an article
 and it sounds a bit like out of a dystopian movie, but apparently the US military has very large
 efforts into using ML to sort of predict icky situations that are about to happen. And once
 you read into it, it's apparently not that different from what they've done so far. So far,
 they just had like a whole bunch of people analyze all kinds of satellite imagery or emails from
 people that they just found on their computer, like people sent it to them, their private emails,
 that's why they can read them legally. And they just had all these people go through all this data
 essentially manually maybe with some assistance. And now AI is supposed to just be able to go
 through this data a lot quicker and flag any information that might be relevant for the human
 reviewers. The technology itself seems fairly neutral and actually pretty useful in certain
 situations. Given that it's the military using it, it might have a bit of a bad rep. But again,
 it demonstrates that most technology doesn't really have a sort of moral underpinning by itself. It's
 mostly in most cases about the deployment of any type of technology, like you could use the same
 thing to predict days or minutes or hours in advance when ICU patients will become unstable,
 people actually do it and the underlying core technology is not going to look very different
 from what is done here. So researchers from MIT and CMU release Sketch Your Own GAN, which is a
 paper and the method in the paper is essentially you take a GAN that you have trained on some sort
 of data set here, for example, on a cat data set, and you're able to additionally input a sketch,
 as you can see right here, and the system will adapt the GAN such that the outputs sort of match
 that sketch. Of course, there's quite a number of hyper parameters in here, a lot of engineering
 decisions. But in essence, it's a pretty, pretty cool way to control the output of GANs. And this
 is quite a hard thing to do. And it's not entirely clear how to do it. A lot of people research sort
 of disentanglement of features in GANs. So you could control individual dimensions directly,
 but that kind of requires you to have either a data set of these individual dimensions, so you
 can actually really take them apart, or you just end up with some dimensions, and you have to figure
 out what they are in order to control seems like a pretty cool thing, you can give the GAN a sample,
 and in this case, not even a sample of real data, you can actually give the GAN sort of a steering
 direction directly of what you want it to output. So I can see this has many more applications beyond
 images and sketches. Technically, you could apply this to a lot more stuff where you need to control
 the output of a generative model by some sort of demonstration, which doesn't even necessarily have
 to be in the same space as the things you're trying to produce. So overall, very cool. Check it out.
 Next paper that caught my attention can a fruit fly learn word embeddings by a whole consortium
 of researchers of different labs working together on this paper. Now, it's clickbait. Let me explain
 that the paper itself is actually pretty cool. So we understand fruit fly brains fairly well,
 they're approximately like this. Now when I read the title of this paper is I want to see a fruit
 fly learn word embeddings or at least an attempt at doing these kinds of things. However, it turns
 out that the paper constructs a sort of abstract model of the fruit fly brain and then shows that
 that abstract model can in fact learn word embeddings much like the word embedding methods
 that we know from NLP. Again, the research itself is completely valid and very cool. I was just sort
 of caught out by how important a title of a paper is because had it been for a different title,
 technical title, I probably would not have clicked on it. So the lesson is, if you're trying to get
 people to read your paper, a good title can go a long way. Okay, the last paper that caught my eye
 is generating master faces for dictionary attacks with a network assisted latent space evolution.
 This by the Blavatnik School of Computer Science in Tel Aviv and by the School of Electrical
 Engineering in Tel Aviv. This paper essentially uses evolutionary algorithms and I love the
 Darwinian in this picture. Just to make clear, we mean Darwinian evolution and not Lamarckian
 evolution. Hashtag no Lamarck. So this paper constructs what they call master faces and
 apparently just these faces just 10 faces. So each of these rows are these master faces, just
 these faces combined are able to match a vast number of facial detection algorithms. So what
 that means is if I go out and I encounter a facial recognition system to like let me into a door or
 into a phone or anything like this, I can just try out these 10 faces and there is a high likelihood,
 something like 40 to 50% that one of them will actually work, which is insane. This shows sort
 of the brittleness of the identification part of these facial recognition algorithms, the potential
 for abuse for this is large, like someone could get access to all the photos that you're about
 to upload to iCloud or something like this, like imagine that that'd be terrible. Fix this.
 All right, we just have one helpful library this week, PyTorch releases the PyTorch profiler version
 1.9. So this seems to be a rather major upgrade that includes distributed training view, memory
 view, GPU utilization view, cloud storage support and jump to source code, which replaces the old
 feature of walk to source code. Well, in any case, if you use PyTorch, and you ask yourself why your
 code is so slow, maybe try giving the PyTorch profiler a look. Next news, zero AD is getting
 reinforcement learning capabilities. This is a strategy game that is kind of popular with some
 people. The cool thing is that it has now a direct interface for reinforcement learning, meaning that
 it exposes an API that is essentially compatible with the gym interface that you know from basic
 RL. So they even go through setting up some sort of a task for you with these five spearmen fighting
 against these five cavalry, and they take you through training a DQN agent and then evaluating
 it directly in their game. So if you're interested in reinforcement learning as it pertains to
 controlling games, maybe this is a good topic for you to dive in. And the last news Yahoo news
 writes Beachbot Rover uses artificial intelligence to clean up cigarette butts. So apparently there
 once was an engineer whose son dug up a cigarette butt at the beach, and the engineer looked around
 and saw all kinds of cigarette butts lying around, realized that they're quite bad for the
 environment and also not very pleasant to step into. So he teamed up with his friend and build
 this thing called Beachbot or BB for short. So this is essentially an incarnation of Wally,
 it goes around and automatically picks up cigarette butts at the beach. How cute is that? How neat. So
 it does that fully automatically. I think the bigger goal here is to sort of develop AI and
 robotics applications for sustainability. The project in itself is not going to save the world
 here they writes it can scoop up about 10 cigarette butts with its grippers within 30 minutes,
 and it has to recharge about once every hour. So pretty much it's out competed hopelessly by a
 single chain smoker. But what can I say it's very, very cool. But I think such a robot could be better
 used to actually go and just poke people who smoke at the beach in the first place. So BB will get a
 companion Pokey BB and Pokey best friends on the beach. Let's go stab some smokers and then pick
 up a cigarette butt. All right, that was already it for this week's ML news on this beautiful,
 beautiful Monday. I hope you learned something today. If you did subscribe if you did not watch
 the video again, then subscribe. Please check out weights and biases and I wish you a very
 pleasant week. I'll see you around. Bye bye.