 Hello and welcome. My name is Shannon Kemp and I'm the executive editor of Data Diversity. We'd like to thank you for joining the current installment of the Monthly Data Diversity Smart Data Webinar Series with host Adrienne Bowles. Today, Adrienne will discuss modern AI and cognitive computing, boundaries, and opportunities. Just a couple of points to get us started, due to the large number of people that attend these sessions. You will be muted during the webinar. For questions, we'll be collecting them via the Q&A in the bottom right-hand corner of your screen. Or if you'd like to tweet, we encourage you to share our highlights or questions by Twitter using hashtags, smart data. If you'd like to chat with us and with each other, we certainly encourage you to do so. Just click the icon in the top right for that feature. As always, we will send a follow-up email within two business days containing links to the slides, the recording of the session, and additional information requested throughout the webinar. Now let me introduce to you our speaker for today, Adrienne. Adrienne is an industry analyst and recovering academic providing research and advisory services for buyers, sellers, and investors in emerging technology markets. His coverage areas include cognitive computing, big data analytics, the Internet of Things, and cloud computing. Adrienne co-authored cognitive computing and big data analytics published by Wiley in 2015 and is currently writing a book on the business and societal impact of these emerging technologies. Adrienne earned his BA in psychology and MS in computer science from SU New York Binghamton and his PhD in computer science from Northwestern University. And with that, I will give the floor to Adrienne to get today's webinar started. Hello and welcome. Thank you, Shannon. And happy new year to everybody. It's great to be back. It seems like just yesterday that we did the December one. I don't know what's going on here. I think you're moving the calendar a little too fast for me. As Shannon said, the topic today is modern AI and cognitive computing. And we have a subtitle of Boundaries and Opportunities. Since we're kicking off a new year, what I wanted to do is sort of level set. We tend to have a lot of folks that come back and stay with us for different topics. I want to make sure that we have a common understanding this year of what I mean by modern AI as opposed to traditional or conventional AI. And what are the distinctions between AI in general and cognitive computing in particular? And take a look at what's going on in the marketplace. Where are there some interesting developments, some interesting opportunities? Just give you the overview of the talk today. So go in that order. What is modern AI? What makes it different? What's happening in it? What is cognitive computing? Why should you care, basically? And why is it where it is? Look at a few trends and then look at the maturity in the market for the technologies for each of these. So I'm going to start off with what I call conventional AI. Sometimes I think of this as traditional or classical AI. Artificial intelligence as a discipline has been around for years. I don't want to spend time today getting back to the 50s and the Dartmouth Conference or some of the early efforts to simulate human intelligence. But basically throughout the early days of artificial intelligence, there were a number of topics that people thought were in bounds, if you will. So what we have here, perception, understanding, learning, planning, motivation, all as applied in general to problem solving. So the A in AI started and for the most part remains artificial, although today we're seeing it used as augmented intelligence. And as we go through the presentation today and perhaps in the Q&A, we'll talk a little bit more about why things are changing from just artificial to augmented and where things are going in terms of replacement of human activity versus sort of collaboration with the human. But from the beginning and certainly in the first few decades, if someone said they were working in AI, I was likely that they were looking at some aspect of the set here of perception, understanding, planning, learning, and motivation, which you'd find in any good undergraduate psychology curriculum. And of course, AI was actually started as a discipline before there really was a computer science curriculum. Going back in history, there was no real curriculum for an undergraduate computer science degree. 1980s was the first time that the ACM actually did that. So it started out in the world of psychology but applying computer technology to problem solving by breaking up problems into these various steps and looking at it as you would from a human perspective. Within AI, we've had always a couple of different approaches. And I've broken it out here into doing things in hardware versus software and what I call Mimic versus Model. The distinction is almost universally when we're trying to solve complex problems, we start out by trying to solve them in software or write an application. And particularly today as a lot of the constraints that we faced early on in terms of available hardware power have been relaxed, we still tend to do things in software first. And the arrow there is just to indicate that a lot of times once we've matured in our progress within trying to solve something, it then gets pushed into hardware. I often say that anything you can do in software, you can do in hardware, it just takes you longer to build it. And so we tend to work these two together. The left-right distinction between Mimic and Model is very important and we're going to spend quite a bit of time on it today. When we look at mimicry in artificial intelligence and in some other fields, basically what we're saying is that we're trying to solve these problems using a process that approximates the way the natural process works. So if we're looking at perception and within perception that we were looking at vision, we may try and build a system that mimics the way the human eye processes data. Modeling it is very different. It's more like a black box. We don't necessarily care how it's done internally or biologically in the natural system. We just want to be able to have the same sort of results from the same input. So if you think of this as engineering and airplanes as an example, mimicry would be the early attempts to build flying machines that followed some of the laws of nature with flapping wings. Whereas modeling would look and say, OK, the essential elements of a wing is the shape and the curvature of the shape that changes the speed of the air, which changes the drag, et cetera. So what we've done in many of the engineering disciplines is to move from mimicry as we understand the systems and model them. What we're going to look at today is where are we in terms of maturity for these different types of problems or different types of components for problem solving? What's best handled by mimicry? What's handled by modeling? And what's in software and what are we already putting into hardware? So that's kind of the starting point for AI. Now I make a distinction because in the last several years, all of this has been almost turned on its head. All of this is still true. We still look at those areas of problem solving. We still look at those sub areas. And we're still dealing with hardware versus software and mimicking versus modeling. But what's changed is in our environment, we have a lot more to play with than we had just a few years ago. And by that I mean machine learning. On the previous slide, I mentioned learning as one of the approaches, one of the problems that we were trying to solve with AI. But now machine learning is almost taken on the life of its own. And if you read the popular press or the business press or even some specialty articles, you may think that machine learning has replaced or is all of AI. And it's not the case. The issue is that the predominant approach to machine learning or approaches are things that have deep roots. But up until fairly recently, we're kind of out of the mainstream. So there were pockets within the AI research community. But since we're really generally focused on commercialization in this webinar series, I would say that machine learning is really way off to the side. Within machine learning, we talk about supervised unsupervised reinforcement learning, deep learning. You'll hear these terms a lot. And I'll be happy to get into as much detail as we have time for in the Q&A if there are questions. But I'll just sort of give you a foreshadowing. The April webinar in this series is all about machine learning and going from what we had a few years ago to where I see is going in the next few years. So within modern AI, I'm taking all of the conventional approaches, but having a much bigger emphasis on machine learning. There's still things that we're doing in AI that don't use machine learning. But really, these are kind of coming together. The third thing is the rapid uptake of big data. And if you've looked at most of the literature on big data, it looks at the three Vs. That kind of drives me crazy because to me, the only big and big data that counts is the volume. If you're dealing with the complexity, that's an issue, but it's not really an issue of size. It has nothing to do with big. It's a separate issue. But we'll just put it all together here because this is the way most of the publications are looking at data now. So if you have something that's very large, very complex or fast moving, and I'm going to focus on large and complex, we now have available to us. Not only do we have the data that's available to us that we didn't have five, 10, certainly 15 years ago, but we also have an infrastructure for big data. It allows us to either process it in a streaming fashion. So as it's coming through, think of the stream of water. If you're able to sample it without disrupting it, we don't need to get into Heisenberg's uncertainty term here. But basically, we have the ability to take a lot of data that either wasn't available to us before or wasn't accessible, even if it was being captured. And this includes things like data from sensors, from IoT, internet of things, internet of everything, if you will. So just much larger organizations are putting systems together and collecting more data, more customer data, using one of the open source frameworks, everything from Hadoop to Spark. So all of this has been developed in parallel with what was going on with conventional AI, in parallel with what was going on with machine learning. And now we're really starting to put it together in a way that you can look at it and go, oh, okay. So AI today, the kinds of problems that we can attack and the way that we go after it is different fundamentally from what we did 10 or 15 years ago, even though we're still looking at many of the same problems, we're still trying to look at reasoning and planning and problem solving, we're able to do it in a way that leverages the advances in big data and the advances in machine learning algorithms and tools. So take it to the next step. And what I wanted to do is sort of wrapping up this little section. Look at what's the state today of mimicking and modeling and hardware versus software once you put all of these together. And this one slide basically summarizes what I see as AI today. So on the chart on the right, the two by two chart, what we have for mimicking is research that tries to build systems that will solve those problems by an understanding and an analogy, if you will, to the natural processes. And if we look at things in software as a starting point, because that's usually the place to start, right now there's a lot of work in neural nets. And a lot of that is in the machine learning area. The other two that I want to make sure people are aware of. HEM is the Hierarchical Temporal Memory Approach, which looks at the world as a set of layers in the neocortex. It's been popularized by a company called NuMenta. NuMenta is working with a number of other firms. It's actually an interesting company in California that was founded by Jeff Hawkins, a fellow that founded Palm and Handspring. So NuMenta is doing research into how does the brain actually function in helping people to build systems that are using this model. MBR is memory-based reasoning. And when I first talk to people about that, sometimes there's some confusion. But what I'm looking at for memory-based reasoning is really what we thought of years ago as associative memory, where the placement of data or information within memory is based on attributes of the data. So you don't just put things in sequentially, filling up, trying to minimize empty space, if you will. Things are close to each other in physical memory, which may be within software, maybe in a data structure. But these things are close to each other because there's some relationship. If in traditional applications you may put things together because you're sorting them in alphabetical order, for example, so that's the model you're dealing with. But if you're dealing with concepts and you're dealing with data that you don't understand the relationships as they're coming in, you have to have a way of identifying where it's going to go. Sorry, now for memory-based reasoning or associative memory, that's being commercialized, among others, by Intel with the Saffron business that they acquired about a year ago, a year and a half ago. So those are three different approaches that can all be modeled in software that are mimicking the way some groups understand. And obviously there's no complete consensus in the neurobiology or neuropsychology world. We're not building processors that directly one-to-one correspond to physical elements in the brain. But the interesting thing is as we do this, and we make some progress when we want to scale, that's when we have to start looking at hardware to support it. On the right-hand side, I'll just start with a question mark there, basically if we're trying to model something, we're trying to model human memory, human learning, human vision as an example, and we can treat it as a black box, you can have a term for that. That would be through the conventional modeling approach where you're just trying to build that essence. Today, a lot of the systems that are starting to scale up and use big data are able to leverage massive parallelism, and that's why in the modeling side and on the mimic side, they say that the hardware to support this is predominantly GPUs or graphical processing units. Things that were several years ago really primarily envisioned as processors to speed up graphic processing largely in the game and interface industry. Now, many of the algorithms that are being developed for the problem-solving components of AI are amenable to massively parallel execution, so GPUs are being used both as the speed-up device of choice, if you will, for mimicking and modeling. Now, within the mimic side, though, we do get into a couple of other things. The general term for hardware that is modeled, so the hardware relationships, the components of the hardware are modeling, sorry, mimicking. There's a subtle distinction there, but the hardware that is intended to function the same way and is partitioned the same way, if you will, as the biological analog. Those are things like NVUs or neural processing units or neuromorphic chips, and this is starting to really get a lot of investment and a lot of interest. So I wanted to bring it to your attention because I think a lot of times people are just getting started and they're looking at the applications, and there seems to be this perception that, well, whatever we're doing, you're going to throw it in the cloud and just use whatever is in the back there. But it's important to note that there is some very interesting parallel work going on in both the more conventional types of hardware, which will be augmented by the GPUs. Using things like TPUs, which is the tensor processing unit from Google, all of these things are starting to come together. And we'll see that kind of the state of the art right now is you're getting the ability to leverage this modern hardware in some cases, even as a cloud-based service. So the market right now for AI hardware is real, and I just break it up into these two sides. One is the GPU and memory acceleration, and the other is neuromorphic, where the form of the chip set itself looks more like a biological system. So I've got kind of a quick summary of the market on the GPU side. The key players today, NVIDIA, Intel, AMD is doing quite a bit of work in this area. But you'll also start to see a trend that I'm going to come back to explicitly, which is open source. So Facebook is building some of their own systems, and they've open sourced the plans to the hardware. The hardware itself isn't just being given away, but the architecture and the details of how that's being built is shared with the community. You've got, again, with Intel besides the GPUs, they acquired a company called Nirvana Systems, which is building specialized processing for artificial intelligence. On the neuromorphic side, from the people that I talk to in the markets that I look at, right now it's not something where you're not likely to go out and buy a neuromorphic system at the desktop server or higher-end level. You'd probably use something like a rack or a computer that's heavily populated with GPUs. But for some of these things, at the pocket level, if you will, it's already available in commercial form. So in particular, at the handset level, Qualcomm's been working on this for a while and have in commercial production what they call the zeroeth chip set. So it's already there. The distinction is once you're on the neuromorphic side, there's a different programming model. So you need to be aware or have the intermediate software, if you will, the middleware that's going to translate things for you. But if you've been something that's based on a model of connectivity of neurons in the brain, you're probably better off programming for the hardware than you are trying to program conventionally and have that intermediate translator, if you will. It's hard to compile conventional code from conventional thinking into massively parallel code. So that's looking at, let's say, what I call modern AI. Now I want to move over a little bit into cognitive computing, because just as the machine learning is really sort of a subset, cognitive computing is a huge overlap. What we're dealing with in cognitive computing, we're getting a lot of press, but I don't want it to be confused that it's a completely new entity. Basically, we're packaging pieces of this to solve very specific types of problems. So this framework that I use on the left shows that you need the foundation of these tools, the data management tools, the big data tools, analytics. And there is some confusion, because it looks like there's a little bit of an overlap with analytics and cognitive or AI. And I'll try and straighten that out in a minute. And cloud is a way of deploying it, because just about everybody today, when you're building these systems and getting started, you're going to be testing, prototyping, doing early stage analysis using the hardware and software. And it adds a service environment, so that means cloud. So once we have all that, the fundamental, if you will, for cognitive computing, you have to have a learning system. And then we could envision a learning system that does hypothesis generation, that actually goes out and does computation, but doesn't really do much interaction. You might have a cognitive system that is, let's say, monitoring network intrusion, trying to do that in a way that looks like the way a human would, except very highly scale. It wouldn't be a lot of interaction there. It wouldn't be a lot of what I have at the expansion level, where we actually start to integrate augmented and virtual reality with the model of the system that we're building. And the reason I show it this way, side by side, is that when you're dealing with psychology or psychobiology, computational approach to looking at psychology, the fundamentals that we deal with in psychology, we have learning and perception, which is how you get the information that we're going to start to process with our learning. And at the highest level, almost abstract level, if you will, you have motivation, why are we doing some of these things? And right now, the state of the market is that we've got some pretty good progress on the learning and the subtasks there, and I'm going to go into much more detail in a minute, perception. How do we get, how do we understand our environment around us, which is where we start to go on the interaction side, or on the interaction level on the left? But we really don't understand, if you will, or have in our systems a good analog for study of motivation that we have in human cognitive computing, human cognitive processing, if you will. So just to give you an order of magnitude on the scale, because we're going to look at this whole thing of perception versus learning. If we're trying to model it, sorry, mimic using a distinction between a mimic and a model, if we were trying to mimic the way humans hear, we would have to have processing. This is on the audioception on the upper left here, that act as if they were the 12,000 outer hair cells and the 3,500 inner hair cells in your ear. So all of those are being vibrated by the external source. That's a lot, but in general, we have better ways of processing that. So that's not a really difficult problem to process sound coming in. And certainly if you listen to music or even other audio forms, you know that we can sample at a reasonable rate and have the clarity and most of the features that you would have with analog recording with digital. And it's a pretty low end problem to be able to capture that. Vision is a little more complicated. We're dealing with rods and cones in the high. Again, if you were trying to do that and build a system that looked at images or looked at continuously that tried to capture activity, we think of that as video, but it doesn't have to be video. There are other ways to capture it. If you tried to do that as mimicry rather than a model, you'd be dealing with hundreds of thousands of neural processors just for that. But those things are really very well, again, adapted to simplification and modeling. So we don't need 120,000 rod cells modeled as individual perceptrons in a computer system. We can sample and we can get that information. And that's why we're making some pretty good progress in vision as an example. But just to look at the scale, when we're looking at human cognition for learning, understanding, reasoning, and planning, and that's what we're going to get into in this next section. The human brain has about 100 billion neurons and between 100 and 500 trillion synapses if we try and do everything the way the brain does it. Even with all the advances in hardware and our processing of big data, we're really kind of hamstringing ourselves. So what I want to focus on in the next section for the next few minutes is how we can take this middle circle and build systems that do what we're calling cognitive computing, which have these four elements, the learning, understanding, reasoning, and planning. And so that brings us to the model. And one of the things that comes up often when I talk to people is they've read an article or somebody has told them, well, you know, the really advanced stuff is the stuff that doesn't have any preconceptions. It doesn't have a model. It just looks at data and figures it out. And I would like to sort of clarify here, when I think of a model, I think of an abstract representation of reality. And I'm going to say something that you may or may not agree with, but I think that we're going to make the case that every system that you would think of as cognitive does have a model, even if it's not explicit. And when we're dealing with a model versus reality, the model is, as I say, the abstraction. If the model doesn't agree, then the model is wrong. And that's how we test these things, and that's how we learn. So saying, it was a guidebook for the Swedish Army that says if the map and the territory don't agree, believe the territory. I was at the orthopedist yesterday looking at X-ray of my son's foot after some surgery. And I looked at it and I thought, you know, if I could just take that X-ray and put it in Photoshop, I could fix this problem. Unfortunately, it doesn't work that way. The representation isn't reality, but it has to capture enough of it that we can go sort of bi-directionally. So let's look at what I mean by a model and then how that's used in all of these systems. Then I'll show you where we are. So when I say model, I'm talking about the corpus, the assumptions, and the algorithms that are in the system that are used to either generate and score hypotheses if we're doing problem solving, we have to test and understand if something, do a test of a reasonable list. Or the assumptions and algorithms that are used to calculate distance in anything that's analogous to associative memory. And so for that, we'll just quickly kind of go through these. Corpus just means the complete set of data in machine-readable form. It's the complete record of a specific domain. So if your problem is working on, you're building a cognitive system to help you understand the complete works of Shakespeare, you might have all of the actual manuscripts that are in there. But if you're trying to understand it in context of the time when it was authored, you would have additional data that would be required for the corpus. It might be news reports from that time. It could be subsequent analysis. So the corpus just means that you have sufficient data about a specific area to analyze it in context. Now, you don't necessarily have to have a big corpus. You don't have to have a corpus at all. If instantiated in your model, it is a set of algorithms or assumptions that allow you to interpret, if you will, on the fly. And that's going to be a very important concept that I think most people when starting like this kind of leave out. So you either have corpus. You've decided what you're working on. You bring all this in. And then you have the explicit or implicit assumptions. Explicit in this case would be how you choose what goes in the corpus. Implicit would be perhaps how you store it in. It's actually explicit even if it's not documented. What are the algorithms and assumptions that you use inside where things are stored so that when you're doing, you're problem solving with it? But all of that is the model. And this associated distance or proximity, basically when you're putting information in, when you're capturing it, when you're interacting with the world, as a cognitive system, you're looking for relationships. You're looking for associations between data, if you will. You take two things in. You say, are these related? I don't know. I have to store both of them. Maybe I'll find out later how they're related. That's how people do it. You don't automatically understand relationships. But the way you store it is going to impact the types of questions that you can ask. So that's the model. So what was at the center here? Just a quick example. I've used this one before. Just when I talk about distance, you have to have an algorithm that allows the system to compare, at least pairwise, between pieces of data and see if there's a relationship. And so you would use a different algorithm to store data or a different tuning of the algorithm, if you will, to store data. Let's say on the left, we're writing a system that's going to do autocorrect or it's going to learn to do autocorrect. Well, things that are most often typed in one way when something else is meant may be associated based on the length of the word, the number of letters that are in common. But it's not at that level of analysis, at that level of system. It's not by the underlying meaning of the words. So if I'm typing map and I meant may, then we may take it up a level in context if the system is sophisticated or not. But if we're building for meaning, as we have it on the right, we're going to put two words that have, let's see, map and bay. The only thing they have in common is one letter. If you're doing this as a syntactic analysis, if you didn't understand the language, you wouldn't see why those were later. Boy in man, there's no letters in common. But there's a construct there. And so you have to have an algorithm that can look at each of these. Once it's been parsed and you know that boy is the whole word, it's not boyer or manslaughter or whatever. Look at those and then where it goes, where they go in memory is going to be determined by this algorithm. And that can be something as simple as, you know, word length. It can be looking it up in online ontologies. It can be as complex as a column of complexity where you're looking at the content. But that, my contention, this is where it comes back to the assertion, is that having a way of determining where something gets stored and where it is in terms of proximity to another piece of data, another point, that is your model now. I mentioned the idea of analytics and I just wanted to show this slide to show where there is an overlap but where there's also a distinction. So statistical algorithms for analytics are pretty straightforward. They may not be simple, but they're pretty straightforward. The same input is going to give you the same output. There's no real variability there. You have a set of algorithms. You have your data that you're looking at and you have your assumptions. So you can think of this as the model. The assumptions in general when we're dealing with analytics are assumptions about the structure, if you will, of the data. So is it randomly distributed? What does it represent? And then you can use, depending on the data, how it's sampled or if it's a full population, different statistical techniques will allow you to predict either, let's say, the next item in a series. So when we're doing forecasting, if we're doing weather forecasting using predictive analytics, we're doing it based on our data but also the assumptions about the data that under certain circumstances, certain constraints, the same inputs are going to give the same outputs. There's nothing there that's wildly off base. There's nothing there that's learning from the environment. So with predictive analytics, you may also be filling in missing data. It may not be something that's in the future. You're predicting that that's predicting you're projecting, if you will, you're hypothesizing that the value that you're coming up with is something that fits an existing set that maybe you just can't see at this point. So it doesn't have to be predicting the future. It's predicting a value. But because of the way we've defined AI in terms of the natural processes and the natural problems that we solve and the way that we've defined cognitive computing in terms of building on this model and learning, we wouldn't include predictive analytics, even though they may be used in these systems as AI in and of themselves or as cognitive in and of themselves. So now I'm going to go quickly through the other pieces and as we do this, start to see where we are in the market. So we say that we have the model, which as I said may have data in it or it may just have an instance or an instantiation of the assumptions and the algorithms. To be cognitive in the way we use the term today, the system at the very core has to understand and learn and we build on that. So it's a simple way of looking at it. Understanding means an awareness of the meaning of the data and learn is related concept. You learn something you acquire that understanding. So it's not enough to just import a lot of data from sensors. You have to have a context or framework or model from which you can derive, if you will, meaning from the data. If you get the number 50 coming in on your stream, it doesn't mean anything unless you know that it's coming from a blood pressure sensor. And if it's coming from a blood pressure sensor, it means more if you know if it's coming from a blood pressure sensor that's attached to a child or a middle-aged person or an aging person. So all of that context, all of that metadata, if you will, fits with the model with how the data is stored and that's how we kind of upgrade the understanding. But I will say that we're still at the point where the lingering question for natural language processing, which is a huge part of any of these systems, is at what level do we have understanding? I've used this picture in the past. It was an ad campaign for IBM Watson where Bob Dylan was talking to Watson and Watson was analyzing and talking about understanding the lyrics from the song. And the point of this is there are limits to understanding, but in large part the limits are similar for humans as they are for these systems. If you look at it and say, well, you know, the Watson understanding of Dylan lyrics was pretty simplistic. It was only simplistic because it looked only at the lyrics themselves. It didn't look at the context. It wasn't reading about the war. It wasn't reading other things. So the corpus, if you will, that was used in that model was very limited. And you would find the same thing for people doing it, which is not to say that these systems are anywhere near what we have with human understanding. But if we take it to the next level and we're going beyond just the words in language, if we get into things like sentiment analysis and emotion analysis, then we have a whole different level of understanding because, again, the same word, you know, that if you're on the telephone, you're talking to somebody and you know that person well, there are things in their voice that will indicate to you that they're under stress, that there's some issue. If you have kids, you'll know that trying to analyze the tone and understand when they're really annoyed or when you're really annoying them. The whole tone, that is situation-specific, speaker-specific. But we are seeing some reasonable efforts to try and provide access to analysis of tone for voice or for writing. You say things in a different way, depending on context. So this can be either. The point is that we're getting to the point now where you can go out and you can start to build systems using these sub-pieces of analysis via APIs. So that's where I see so many interesting work being done in understanding. The other two parts we said you have to understand and learn are reasoning and planning. Everything is related in here, of course. So we had the understanding, we had to learn. Reasoning is an evidence-based process. You have to be able to look at some data and decide whether or not it's true. And it may be that you can't decide whether or not it's true. Maybe it's true today, but it won't be true tomorrow. And reasoning involves all the different approaches to using the evidence that you have to come to a conclusion about the validity or the probability of validity of some relationship. So that's also, in a way, you can think of that as being predictive. You're trying to look and say, okay, what's the missing value? I don't know if this makes sense if I can get from one to the next. And I'll come back to that just a little bit at the very end. Most of the systems today, when people talk cognitive, those are the three things they're talking. Learning, understanding, and reasoning. The model may be kind of hidden in the background, if you will. But going back to the beginning of AI as a discipline, we've looked at planning. And the idea of planning is to have a system. If AI is artificial intelligence instead of augmented intelligence, then planning says that what we're looking at is being able to represent a current state of affairs, a state of the world, all the information about the relevant data, identifying a goal state, and then the steps to get you to that goal state. So it's related, if you will, to reasoning. If you ever do logical proofs, for example, planning is involved. It's similar in that you're creating a hypothesis. This is a desired state, and then finding the way there. So those are the major components. To build a system, I mentioned the big data. And so we need all of these things surrounded by data management because you've got to get data and do each of these things. And I'm going to go kind of quickly here so that we can get some questions. But now we get into communications and control. As I said, you don't necessarily have to have any human input in a cognitive system. You can think of this as being a system that's monitoring water pollution. And maybe the only output is going to another system that starts or stops flows of water. So you've got a system that's providing information and systems that are acting upon the information, but you're still dealing with learning and reasoning and figuring out what the next step is. At the highest level, this is where things are going, this is where the stuff that I was talking about in terms of perception comes in. So now at the top of the diagram, we've got input on the left and output on the right. At the top, we're looking for a perception that either mimics or models human perception. Language is very well understood. We've been working on this for a long time. The approaches to do language analysis, to natural language understanding as part of natural language processing, have made much more rapid progress in the last few years in systems that have adopted some high-end machine learning algorithms. But now we're also looking at those both within the sphere of machine learning and outside for emotions and gestures. And I'll take one second to look at that in a minute. But on the output side, we're getting better at having systems that can actually create output in human processable form, so systems that will generate narratives, generate actual texts, and more than the early chatbots or even chatbots today if you're dealing with Siri and you say the same thing today, tomorrow and three weeks from now, you're probably going to get the same answer because it's not looking at the context of what's going on inside. It hasn't learned since then. It may learn to understand your voice a little better or your tone a little better, but that's about it. So that's not what I'm talking about here in terms of narrative generation. I'm talking about things that can actually create a new or novel representation based on context. Moving in. The key trends that I want to highlight today. Open source, the relationship between open source and machine learning in particular. Machine learning and perception as services. So some of the things that are really changing the boundaries, if you will, of cognitive and also what the opportunities are based on the availability. So open source in machine learning is one of the critical changes in the last five to eight years, I would say. And a lot of it is based on the dominance of the open source model for data management. Things from Hadoop to Spark. And now we're seeing open source projects that build on those to do machine learning or the data for machine learning. I just have a couple of examples here. I mentioned the one on the upper right from IBM. Contributing system ML, a machine learning language that's been contributed to the open source community. Lower right is TensorFlow, excuse me from, excuse me. TensorFlow came out of some of the Google research. And if you were really observant, you might remember that one of the pictures early on was from Google. It was a TPU, a TensorFlow processing unit that was used to scale up this open source language instead of libraries. So people are building things for their own advantage as they will always do. But a lot of it is being contributed to the open source community through things like the Apache Foundation so that we can build up and get there faster. The other trend that I think is important is machine learning as a service so that you don't need to have a massive investment in infrastructure or in personnel and data scientists. Just two examples here, Amazon machine learning and Azure from Microsoft, that you can have access to a number of the more popular algorithms. Some of these are kind of borderline between predictive analytics and truly what I would think of as machine learning. But you can start to assemble these and assemble your own portfolio and your own solutions with a very small investment. So we're getting a lot more experimentation. And the beauty of these is that because they're cloud based, in most of the applications, I don't have an actual figure for this, but in most of the applications, the place where you compute down is not IO, so you can start to hand things off. And that's why we see systems that are becoming commercially available or what we think of as consumer level are actually sending information off to the cloud because the processing, if you will, is still fast enough if we do the IO via the cloud. And just a couple of years ago, that really wasn't true. Here's one example where we have machine learning and perception services available as a service business model via APIs. And this one happens to be IBM, a lot of the Watson stuff you can get to today via APIs like this. Also in the perceptions of service, emotions. I think Affectiva has a really interesting one here and I would encourage you, they're not a client. I've only spoken with them a couple of times. Affectiva, you can go on their site and just watch a TV commercial. And if you allow the camera to watch you, your computer camera to watch you as you're watching it, it can synchronize and try and do seven basic emotions that they're looking for. And it will show you at which point in the video, you express these different emotions. If you start to think about that in terms of, okay, well now I'm building a system that's going to allow someone to speak to me. Not only can I do tone analysis in terms of strict audio analysis, I can do analysis of the emotion based on emotion detection and emotion recognition from the video. You can start to imagine building a system that's now going to respond to someone differently if they're smiling when they speak to you, your system, or if they're frowning. In the past, a good customer service person would be a human being that could understand what level of frustration you were exhibiting in a phone call. Well, now we can automate a lot of these things. You start to move it closer to the customer. You can have this in a kiosk. It doesn't need to augment, but you could do it either as something that augments or something that artificially replaces that part of the task. And it just builds a much richer interface between people and the systems. So we're going to wrap up here. What I wanted to do is try and capture for modern AI and for cognitive what I think of as maturity. And so in these two diagrams, there's no science involved in this at all. I will tell you that that's why there's no scale. For each of the main components, where we are on a maturity scale, how advanced it is, but also how much progress we've made recently and the trends. So the height of a line in the next two charts indicates how much progress we've made toward a presumable goal state, and the width is the amount of investment today. Big data management, obviously big data management is a very huge area. I'm just talking about the investments that's been made in it, looking at it for AI purposes. Machine learning, it's not as advanced, but the investment is huge. Perception, I think we've had very good progress. It's seen as something that's more special purpose, if you will, than machine learning or big data. And so the amount of investment in the market is lower. And with motivation, frankly, I still see that as a huge opportunity, and I see that we will start to integrate some of these things, like when you're looking at motivation and you're trying to understand why somebody is doing what they're doing. We start to look at gesture analysis and emotion analysis and tone analysis and put it all together. I think that will get factored into motivation and will have much better systems just really two or three years down the road. On the cognitive side, it's a similar thing here, understanding. The big research in that area tends to be stuff in ontologies and taxonomies. How do we represent this? So understanding learning and memory all fits together. Machine learning is, you can't go anywhere without looking at investments that people are putting in it. And so whether it's internal work or whether it's going into services, I'll give one example in just a second. That's where the money is right now. It's in machine learning. Reasoning is already more advanced because deductive reasoning, for example, follows basic rules of logic. And if you have the representation down, then we know how to do that. Frankly, that part of reasoning isn't even AI. It's part of mathematics, if you will. When I was studying, we had to do mechanical theorem proving. So how would you automate the proving of theorems? And as long as you can do the representation so you have some level of understanding, that part of reasoning is very advanced. But as we get into other approaches where you're trying to go from bottom up and understand the abstract, that's where we need more work, frankly, to get where we want to go. And planning, it's kind of been the forgotten child in recent years for these types of systems. So I'm going to close with this slide. This is actually, I use this slide, I think, let's see. Data, yes, December of 2015. So over a year ago, when we were first seeing Ethel and Alexa coming to the market, I will fully acknowledge that I did not think this would be as big a hit as it was. And so the issue here is how much of this is cognitive or AI. And the reason I put this in is because over the Christmas holiday here, we ended up, my son got one of these for Christmas and within probably two hours of having it in the kitchen, my wife went on Amazon and bought one for the house. It's like, how did we live without this? And just two questions here that we've happened to ask in the last few days. Alexa, who's smarter, you or Siri? I'll invite you to try that. And having a conversation with my son about something I read from Dan Rather and he said, how old was he? I didn't know, but just instinctively after having this tool available, I just said, Alexa, how old is Dan Rather? And you get an answer. So what's interesting about this to me is that this is just the tip of the iceberg. The language processing is still pretty rudimentary, although it requires no training from what I can see. All of the processing is really going on in the background. It's got to be connected. You're not doing all this locally. But the opportunity to start collecting data, Amazon could be giving these things away and they practically are at the prices they are. Really the data that they can collect brings up a complete different topic that would be a good hour-long topic, at least on ethics, on what you let it collect. And all of these things are listening before you speak. So there's a lot of information. In the case of Amazon Echo, I think it's like 60 seconds at the max. And it's supposed to be an ongoing loop, so stuff isn't kept. But as we start to look at it, we've already blown past 1984, but now we're really starting to see the availability of data sources that were predicted a long time ago. And now it's all being done voluntarily. So there's so many issues here that I think we're going to have a lot to talk about this year. And with that, I should probably stop and see if there are any questions. Adrian, thank you so much for this great presentation to kick off the new year. I very much appreciate it. And may I recommend asking Alexa to sing you a song? It's hilarious. It didn't work with you. Why would it work with Alexa? You did play 20 questions with Alexa. That's fun. If anybody has any questions, submit them in the Q&A section. And to answer the most common question that we get, I will be sending a follow-up email by end of day Monday with links to the slides, links to the recording of this session as well. And, you know, Adrian, may I say too, you know, I just love that personalities, quote unquote personalities that they're building into the AIs, the humor. Yeah. You know, when you start having the devices talk to each other, that can be entertaining too. I would like to see, actually, just to throw it out there, I would like to see Alexa be a little edgier. I did mention one time in one of the webinars last year that I swore and Siri thought I was talking to my phone. I wasn't talking to the driver. But the response was something like, hey, I don't think I deserve that. And I thought, wow, okay, somebody's really thinking about this. Yeah, I agree. I use Siri a lot for timing when I'm cooking to set timers. And if you save enough time, she'll come back and say, just remember, Shannon, a watch Siri never boils. All right. Well, we are just right at the top of the hour here. So that is all we have time for today. But thank you, everyone, for attending today. Again, happy New Year. And, Andrea, thank you for this fantastic presentation. I really look forward to this series. We've got schedule coming up in over the next year. You can always check them out at datareceive.net. And again, I'll send a follow-up email by end of day Monday with all the information. I hope everyone has a good day. I'll mention quickly though, Shannon, that I'll be at the Smart Data Conference in San Francisco at the end of the month. Oh, yes. How negligent of me. Absolutely. And yeah, I look forward to, well, unfortunately, I won't be there. But Tony will be there, our founder and CEO. So January 30th through February 2nd or 1st. I'll have to do it. I should know that off the top of my head. But it's on the website. It's smart data. And we are also running a graph forum about graph databases in conjunction with that. So I know it's going to be a great talk for you there. Excellent. Thanks again. Thanks again. Thank you. Thanks, everyone.