Ep.16 John Liu, Jimmy Whitaker, Uday Kamath | Deep Learning for NLP and Speech Recognition

podcast default

In this episode of the Cybrary Podcast, we sit down with Uday Kamath the Chief Analytics Officer at Digital Reasoning, Jimmy Whitaker the Director of Applied Research (Audio) at Digital Reasoning and John Liu, the CEO of Intelluron. Speaking with Leif Jackson, Cybrary's VP of Content and Community, they discuss their book Deep Learning for NLP and Speech Recognition, which includes case studies and implementation of machine learning that are beneficial to both researchers and engineers alike.

Hosted by: Leif Jackson, Uday Kamath, Jimmy Whitaker, John Liu
Length: 22 minutes
Released on: March 25th, 2020
Listen to the Audio
Enjoyed this podcast?
Share it with friends now!

Uday Kamath, Chief Analytics Officer at Digital Reasoning, Jim Whitaker, Director of Applied ML at Digital Reasoning and John Liu, Founder, and CEO of Intelluron have come together in this episode of Cybrary podcast with the host Leif Jackson to discuss AI-related stuff and their book called Deep Learning for NLP and Speech Recognition.

There were a wide variety of cookbooks in Python, ML basics, and step by step tutorials, but there was not anything tying them together and leading them toward a single focal point. The authors of the book realized a lack of resources that bring together application and theory in great detail on areas that are important to focus, and they all came up with the idea of publishing such a priceless book. The main application of this book in cyberspace is communication. If we think of it, generally, attacks start with communication. So understanding normal communication patterns in an organization among chats, emails and logs can be way beneficial for mitigating the risk of being attacked by detecting suspicious emails for instance. There are different useful concepts covered in this book such as embedding which is good for capturing interesting relationship patterns, and that is way good for capturing malware to use in firewalls. And after all, recognizing the data patterns can help way more than what we think in decreasing the chance of being breached.

The most interesting chapter according to Uday is Reinforcement Learning which is that part of learning, which is more AI than like any other technique because you understand just like humans if you are following certain actions, how do you learn from that actions? How do you understand the policies or rules that have guided you through the actions and whether it is a normal action or an anomalous action, like in malware attacks, you normally say you can train a reinforcement agent to understand, make it more explainable, and even have a policy-based system that guides you through that. This book has some very useful resources from theories to practical part snippets that can be run even with real-world data. It can be applied to Cybersecurity. Security Researchers, for instance, can use it as well as Security Engineers.

The Major skill set that needed for taking on this path is understanding data at the foundation level, structuring problems, getting creative, manipulating data, and figuring out the right tool in the right situation. These skills are pretty crucial for someone who wants to take on this path and have a go with AI, ML, DL, and particularly NLP. All these science are based on data that is served to the machine, and the machine decides based on those provided data. Structuring data is domain-specific. For example, health care would do it differently capturing the patient records and capturing the doctors’ notes and finding interesting patterns across to help automate some stuff around. Jimmy thinks he would call it software 2.0 because it is getting a key focus in the world and shortly nearly all the software will be machine-learning oriented. It can be used in the bug fixing process, and one can make it automated and all those bug fixes can be done periodically and completely automatically.

There are many techniques exposed in this book such as semi-supervised learning, one-shot learning, and series-shot learning. Some of these techniques are being at the moment which addresses small sets of data and labeling them. Labeling data can be used in prediction in block-chain markets for example. Uday, Jimmy, and John encourage people to take on this path because it is getting an important science at the moment and they have brought up almost everything needed in their book for the people to enable them to learn AI.


Leif: Hello everyone. Leif Jackson here, VP of content and community at Cybrary. Just so excited for our guests today. Uday Kamath, nice to see you.

Uday: My name is Uday Kamath. I work as a chief analytics officer for digital reasoning, and the author of the book Deep Learning for NLP and Speech Recognition.

Leif: Fantastic. Fantastic. James, You want to introduce yourself?

Jimmy: Sure. I'm James Whitaker. I also go by Jimmy...

Leif: Jimmy works

Jimmy: Either way. I'm easygoing, and yes, I'm actually a director of applied machine learning at digital reasoning, mainly focusing on speech recognition there.

Leif: Fantastic. And John?

John: Yes, happy to be here. My name is John Liu. I am currently, I guess founder and CEO of a AI startup. Previously, I was head of data science at digital reasoning, and that's where I met my compatriots here so.

Leif: fantastic. Well, so excited to have you here. Just, would you mind just telling us a little bit about your book?

Uday: Yeah. I can start and Jimmy and John can give more color. The prime reason was there were lots of tutorials. There were few academic papers. There were like cookbooks in Python. There were cookbooks in deep learning, but there was nothing tying everything together in terms of what are the basics of machine learning needed? How do you go from machine learning to deep learning? What are the different areas in NLP that deep learning addresses? What are the different things in speech recognition that deep learning can enable you and tying that together with practicality in terms of case studies, hands-on, tools, techniques, the practical insights. So we found that there are pieces around, but there is nothing that puts them together. So, that is how the idea started.

Leif: Gotcha.

Uday: Jimmy, John.

Jimmy: Yeah, just a couple of things that I would add. So, it was a pretty heavy focus even on the case studies and mixing that with the theory itself. So there are a lot of papers that were that would touch on kind of these theoretical aspects, but you wouldn't actually see much of the implementation itself or you wouldn't see. Sometimes you would have a, exactly what Uday was saying, but the cookbooks, but they wouldn't actually go into great detail on what's important to focus on from a broader scenario from kind of application rather than just theory.

John: Yeah. And I would say I was very selfish, right. So, I saw a gap out in the landscape where we had a lot of interesting projects that were applying very interesting ideas we had very little theory behind it. At the same time we had a plethora of papers. I mean, the amount of research has really exploded in the past few years in terms of innovative research, but very little of those that research is finding its way into application. And so all three of us decided this was a perfect opportunity. Let's try to bridge these gaps. And I should write a book that can unite both the theory and practice and, and apply it to applications that are, you know, very novel, but really about to go mainstream. And that's why we came up with the book.

Leif: Interesting. Well, I'd love to hear some more about those applications, particularly in the cyberspace. Particularly because that's a lot of our audience, right. Cybersecurity, and IT, we have two and a half million professionals all over the world, and they're very interested in this.

Uday: I would start with basic communications, since speech and language. What the book is geared towards that, just like the main aspect of communication. And if you see like most of the cyber attacks or intrusions or insiders, how some pieces or behaviors or anomalies that is related to communication, including things like phishing, or like any of these behaviors starts with communications. Yes. So understanding what normal communication is, how these different human behaviors from an attack perspective can start with natural language with speech, with text happening on different data sources, like chats, emails, and there, as John mentioned this like lots of data. If you track a company's emails and chats and phones, it would be millions and billions of Gbs. And to find out that interesting language or interesting speech pattern that can give you a pointer that this in indeed is an interesting information or this is different from what the person was communicating or his voice sample doesn't resemble the CEO's voice sample or the metrics here are completely different is what. You would need an AI system that can scale, that can learn, that can find these interesting patterns in the large volume.

Leif: Absolutely. And you have an extensive background in cybersecurity, correct?

Uday: Yeah. Previously, before I joined DR, I used to head the cyber security and fraud in BAEAI and had more than hundred and 50 customers across financial institutions.

Leif: Wow. Wow. I used to work at a couple myself. I worked at Equifax, Barclays and capital one.

John: So if I could add too, right. So, you know, there's actually some very innovative concepts in, natural language processing called embeddings. And really it's mapping, you know, words to embeddings that can actually capture a structural and relationships between actual words between actual concepts. This is actually a concept as being applied in, you know, interestingly in malware, And what you can do is actually, you know, some, it seems a very innovative work in terms of building our learning embeddings of malware and therefore identifying their footprint and in doing so you can actually even probably increase the, you know, accuracy in probability of capturing some of this basically entering within the firewall within the companies

Uday: And many of their techniques, which are related to deep learning, but not kind of constrained only to NLP and speech are like transfer learning domain adaptation are kind of like what you can use irrespective of whether you are in computer vision or insecurity or any other field.

John: And it goes back that we wrote this book really to provide a foundation, an educational foundation for people interested in machine learning and the deep learning. And then the more higher concepts of deep learning, such as domain adaptation, such as reinforcement learning and, you know, learning these concepts in the domain of natural language and speech recognition hopefully will set someone up to actually apply them elsewhere.

Jimmy: Yeah. Just to follow along with that, I think there's a lot of, kind of basics of kind of these machine learning and deep learning components that are in the earlier stages of the book that are really crucial in a number of ways. I mean, a lot of them get their grounding and computer vision and then have been adapted exactly what John was saying. The fundamental building blocks of it allow you to do things that can be like spatial relationships between either numbers or variables or different types of incident entities. I've seen some people use instruction sets as these kinds of input variables, or even learning sequential type modeling of like if there's a. I've actually, a friend of mine has worked on this, but sequences of instructions, very similar to some of these NLP tasks but looking at what the relationships between these different entities are over time and how you can model these things, and yeah, just actually be able to classify certain types of behavior or something like that. It's all, it's very similar to NLP in that regard.

Uday: And I think one of the most interesting chapter is on the reinforcement learning. And even though we applied it for NLP and speech, as Jimmy mentioned. Reinforcement learning is that part of learning, which is more AI than like any other techniques, because you understand just like humans, if you are following certain actions, how do you learn from that actions? How do you understand the policies or rules that have guided you through the actions and whether it is a normal action or an anomalous action, like in malware attacks, you normally say you can train a reinforcement agent to actually understand, make it more explainable, and even have a policy based system that guides you through that.

John: Absolutely. It goes back to say like, language is very sequential based like a language is a set of sequences. When you actually can learn and identify a set of sequences, you can also do that in terms of actual Malware intrusions. And so there's some very interesting concepts I think that will come out of NLP and be applied to, as we speak now are being applied to cybersecurity.

Leif: Absolutely. Are there, you know, particular work roles in Cybrary that you think would, could especially benefit from the book.

John: Yeah. So I think, to be speak first, I think that obviously Cybrary’s security researchers will find the book very useful. At the same time I would add that, you know, especially with the case studies, I think, cybersecurity engineers. So we'll find that, in fact, there's a lot of very interesting information, interesting code snippets that can be applied practically for some of their problems.

Uday: Yeah, I think you're right. Like researchers, data, scientists, data engineers, we try to touch everyone through the book. If you have a data set, we have like a Docker Eye service, which can run through the Jupiter platform, like the entire notebooks, which has snippets of the code working really on the data, using the tools, using the libraries to give that practical understanding. And even though the data can be coming from the cyber world, they can just work on those case studies and see it live, understand it, and just modify things to their record and make it practical for them.

Leif: So what are some of the, like the major skill sets that you would anticipate in the field that somebody would need, particularly in the cyberspace.

Jimmy: For these types of applications in particular?

Leif: Yeah.

Jimmy: So I think probably one of the main ones is just kind of an understanding of the data itself. So just usually whether this is either I don't know if they're just like kind of infiltration logs or whatever else they might be by these types of things. But, the understanding of the data is pretty crucial from the start. And then also some of the fundamentals of deep learning in particular on how you would structure a problem for instance, is it a classification type problem Are you trying to say, this is a vulnerability? This isn't a vulnerability, or this is an attack. This is an attack. From that perspective or, and how you would actually structure the components of the deep learning network to actually perform a task that, a task on something like that. And then I think another Aspect that I would imagine is just kind of getting creative with it and seeing what things are just kind of imaginative on what things could be captured in something like an embedding space. And so I don't know how familiar people are with embedding spaces, but essentially it's the idea is, at least from an NLP perspective, you have a sequence of words. You just turn each of those words into a, like a vector of numbers that represents the meaning that's derived for that word. And you usually learn that through looking at a lot of data and given the context, you start to actual actually understand what the meaning of representation of that work is. So, you, you start to learn things like, I know I'm tangent take off the question

Leif: that was fine.

Jimmy: You start to learn things like these types of instructions are usually seen in similar context and therefore, but this one's only seen in the particular case of vulnerability. So then maybe you can start to classify some of those things. So I think it would be definitely a data science type of skillset is probably essential and knowing how to manipulate data and some of the caveats and some of the gotchas that can come in with that. But then also just kind of an interest in and how you can structure something to learn the underlying representation of what you're really trying to target and how to kind of tweak these building blocks to get there.

John: The number of tools in toolbox is growing exponentially these days. Right? So, I think it's actually a very important skill to have to actually figure out what's the right tool for the right job and, or it's a sequence of tools, but what you don't want to do. And I've seen a lot of people do is throw everything, including the kitchen sink at a problem.

You don't want to take a data set. You don't want to upload and PCA it and cluster it and apply it through a neural network. That would be what we call overkill. Right? So if I run it over a couple of times, so I think where students as they gain more I guess a vocation in this in this field, it's actually learning and understanding what tools are, what used for, what techniques or why are they used, how are they useful? When are they useful? Because you could actually short-circuit a lot of time and a lot of resources if you actually throw the right tool at the problem. And so I hope that, you know, people reading our book will gain some of that insight, but what we call practical knowledge. It's definitely was one of the focuses in our book.

Leif: So in terms of data, right? So it sounds like, I mean, there's a lot of unstructured data out there. So how are some of the best companies in the world, some, you know, really structuring this data and using it to their advantage?

Uday: I mean, like it is domain specific, right? Like the way healthcare is working. How to capture the patient records, how to capture the doctor notes, how to capture the pathology reports and actually find interesting patterns across so that it helps whether finding certain things or automating certain stuff. So it has to start not from the data, but from what you are trying to automate or what you're trying to find, which is kind of the ROI or reducing your work.

And once you have that fixed, then mapping it to a process and eventually to the data is what happens. So, finally the answer lies in the data, but you need to start from the top level goal of like how, what are the things you're trying to automate? Or what are the things you're trying to learn or predict or invent? And from that, what is the process normally a human would do, or you want a machine to follow and then comes the data aspect of it to healthcare would do it differently. Finance would do it differently. Trade, traders and trading world would do it differently. Google, which keeps a record of like everything that is going on from emails to processing of communication, does it differently, Amazon, which stores information in terms of what you are buying, whom, what resources you are using and what is your profile of buying things, keeps the data and mines differently. So for me, it is like completely dependent on who it is and what they are solving for.

Jimmy: Yeah. I think one thing that we kind of touched on towards the end of the book, maybe in the conclusions and few future outlooks is the way like data is going to become kind of a key. I mean, it's already a key focus with most problems, but it's going to become a resource almost like the code itself. So there's kind of this idea. And I know I get some eye-rolls on this one potentially, but how software 2.0 is kind of the kitschy term for it. But how all software will eventually be learning based in some way in the near future and machine-learning oriented. And so just like your code is versioned and you're tracking bugs and you're maintaining that code over time and doing these bug fixes based on that, the data is, that you're learning from is then becoming a contributor to that code. So how you're tracking that and learning from it is going to be an iterative process as well. So. And this and this has like a few different components to it, obviously, which is, I mean, the collection process, that's probably the furthest upstream, the models that you're training, how that training data is changing over time, and then even like the models and other types of things. I mean, we're also in the, in the dawning of a lot of the deep learning stuff, so there's plenty more that's going to be coming out. And so the newer techniques that are obviously going to be used with the same types of data, or same data that you've collected, it's going to be reused for a long time. So just a lot of the things on that are going to be really interesting as they go.

John: So actually in our book, we actually do cover some of the more leading techniques in terms of semi-supervised learning, one-shot learning series-shot learning. These are techniques that are being developed right now and really have been, some of them have developed in research specifically to address learning from small data. Well, you have only a small set of labeled data because you know, the reality is in our world, there's a lot of unstructured data. There's very little labeled data, and unfortunately it's very expensive to label and there's lots of injury, lots of concerns about, you know, how label enter annotator agreement. There's lots of issues with that. The one other trick that we have seen taking place in the industry is to, you know, try to self label. And I say self label. It's actually a very interesting technique in language modeling, for instance, where we have a stream of words, sentence, and we try to use the previous words predict the next word because we know what the next word is.

Leif: : Right.

John: But that word becomes a label then. And so if you think about sequences that you can take the ability to do that, you know, whether in a, you know, for instance, a lot of people are interested in blockchain markets right now and again, in price prediction. Well, in fact, if you think about all their previous price history as use of features to predict the next data point, you do actually have a labeled data set in that sense. I should have too much labeled data. The last thing I would say is you know, people think language is an easy thing to train for computers.

Leif: Right?

John: Right. Or if you think about, it takes a baby a year to acquire language. And before that it took probably $800,000 of development evolution so that the neural pathways were set up for that baby to learn that language. It's a very tough problem, and, you know, so we deal with many ways, many things, obviously, you know, AI is, AI research is evolving at a very rapid pace. There's still gaps. And so we encourage people to actually learn about AI because in fact, you may be the one to actually fill that gap and create something very innovative.

Leif: That's fantastic. Well, I appreciate you guys coming today. I really appreciate it. Any last thoughts or words for the audience?

Uday: I think it's an, as Jimmy and John mentioned, like, this is like the great time for people to take on AI. If you are not already doing some form of AI because from hardware, tools, data, resources, you have almost everything available to you. And with this book, we have tried to put all the things together and enable you to do that to all the power to the readers and the podcast. Here’s to take on that. Thank you so much for doing this.

Leif: Thank you for coming. I really appreciate it.

John: Yeah. Thank you very much.