Introduction to "Intelligence and Learning"

hello welcome to the first video in a new course on a series set of videos that I am here me dan Shipman presenting to you on my youtube channel decoding dreams okay so what is it you might be aware remember me from such videos as the nature of code I have a playlist of videos most these videos were recorded probably several years ago and they cover I'm going to zoom in here all of these topics one through eight and I have a book which covers all these topics one through eight and I've been teaching a class at about this stuff for a bunch of years many years almost like seven or eight years in fact and so this year I am trying something new with this course and therefore also on the few Tube channel now what is this new things on try what always happens when I teach this course is if it's a full semester course that I like kind of universally like plates there are here in my class over here there are these ten tops so you can't see the bottom let's see I'm not zoomed properly okay there we go there are these ten topics and what happens is you know this here the first half of it is really about physics simulation animation moving things on the screen and all the kind of stuff you could do with that and by the time we get to this people are on their way and they've been overloaded they're trying to learn all this stuff that what's here in nine and ten chapters nine and ten gets lost so what I'm doing this year is and starting right now is I would like to take what's in this book here nine and ten chapters 9 and 10 and expand the material out which is something that would be several you know many sessions about seven five or six or seven or eight I have no idea some amount of sessions of content where I take a closer look at topics related to and here's the title of this course intelligence and learning I'm going to come over here and I'm going to write that down this is like what people who are teachers I've been watching some like OpenCourseWare you have a big chalkboard and then you just like make a point and you write it down so I'm going to do that intelligent and learning now I am specific first of all well as I'm specifically not calling this a course like artificial intelligence nor am i calling this a course like introduction to machine learning nor am i saying it's a course called say introduction to deep learning so what's one reason why I'm not calling it that well first of all I'm afraid of all these things so I feel like if I call it this is a course on artificial intelligence or machine learning that's a little bit scary to me so the other reason why I want to call it intelligence and learning is I want to take the broadest approach possible so you watching this course whether if you implement the latest and greatest perfect machine learning neural network convolutional recurrent magical system thing that does something you read about in some academic paper or you make some crazy projects where it seems like the computer is playing this goofy game with you in it and how could it possibly be doing that so there's a lot of space in between and for me I want to just really take a broad approach to this not just look at only you know neural networks and machine learning and not just look at only these topics in artificial intelligence and okay so first of all listen I'm kind of blending all these terms let's try to at least define them so let's I saw the chart in the book somewhere I'm going to recreate it so artificial intelligence of the topic those the white has artificial intelligence well I actually just recently watched a lecture by professor at MIT Patrick Langston Patrick Winston I think it says that the opening of the lecture models so it'll correct me if I'm wrong for thinking perception and action so this is a very broad term so let's think about this for a second let me go back to some of my other examples to come over here and I'm going to open it where if we were falling along with the third piece if we stop here at week six or session six or chapter six for everyone to call it and I ran this flocking simulation I could ask the question is this artificial intelligence we nobody can answer the question I want to hear from you so I want to asking this question like but what's interesting whether or not you want to say yes or no I'm going to go back to here for a second models for thinking perception and action so one thing if you remember if you look at steering behaviors and steering behaviors pioneered by Craig Reynolds what is it a action steering locomotion so I've really been focusing on steering how do you calculate a steering force how do you do the physics for that and how do you actually make that triangle move for one pixel to another and steering and locomotion kind of cover all those pieces actions this is a place where well what is the action what are the goals and the flocking system the goals are stay with your neighbors but don't crash into your neighbors and also states in proximity your neighbors also move in the same direction as your neighbors but don't crash into your neighbors and other kind of action things you might selectively follow this thing or chase this thing or run away from this thing or try to get through this doorway the fastest as you can so what's interesting here is seeing this link is what our models for thinking in perception that might lead to action to govern the types of animated systems that you might create so this to me is the link here whether it's enough to say I am going to kind of define the rules of almost doing a zone like a rule-based system feature engineering so to speak like I don't need a learning-based system I'm going to define the rules of how all these things should behave but they're going to appear intelligence versus something like a learning system which has to learn over time so machine learning being something that crosses over with artificial intelligence you know I think of machine learning something that you have data and you make meaning from that data so how do you how do you and the you know – there's more to it than this but you know one of the most classic applications of a machine learning system is classifying data classification so here's a bunch of pictures which ones are cats and which ones are dogs and there's more you know the other type of system that you classic application machine learning is regression which instead of categorizing into a discrete set of labels you know cats or dogs you might say you know here's all of these you want to arrive at a more continuous result so here's all these properties of a house how many bedrooms where's it located how many bathrooms and kendama can the system take that data and determine predictive price so these are two classic tasks and machine learning now what's in the news and what's all the rage what's everybody working with these days our neural networks so you know a popular and powerful and exciting so much new research in this right now recently of creating machine learning systems to do these tasks with neural networks however in this course I want to look at other systems that do the same thing that are simpler that might not be as powerful but might have opportunities for creative possibilities but also if you can use the simpler system for the same result it's going to make it a little easier to perhaps dive into what my mind might be the most difficult I like cancel this part actually last time I mentioned machine learning a fire alarm went off which saved me nothing happened this time but so so we'll see so now so these are inner areas where I want to just look at and cover in this course now what's this thing down here under DL this is deep learning and you know what I'm going to put deep learning in here so as I just mentioned a one technique for performing these machine learning tasks is using something called an artificial neural network so in the case of an artificial neural network that data that you're trying to classify enters as input to something called a neuron and then passes through a network of neurons to have some sort of output and I spelled that wrong close enough CatDog price of a price of a house that sort of thing now an artificial neural network is a system and I'm going to get more into this in another video just specifically just about this so I kind of want to just actually kind of move ahead and skip over this but the reason why I was mentioning this is there's a point if there's a long history of this and the very first discovery of an artificial neural network I'm going to build one of these in a future current Cody Jones it's called a perceptron which is a nervous is a Welliver on called a network because it's a single neuron so a model for a single neuron an artificial neural network being a model for many interconnected neurons maybe it's a fully connected Network and B it's like a partially connected network but the reason why so much rip that there has been a revolution in research and application neural networks when they were first discovered this idea of a perceptron couldn't solve very simple problems so there's a famous paper the perceptron paper McCullough Pitts I believe I'm getting that right probably the chat will confirm I'll try to link to that information in this video's description and there were various steps along the way but there was a long time before anyone was really able to do a lot of work with neural networks and so deep learning refers to the idea of a neural network which has a lot of depth to it so in between the inputs and the output output and these could be both be plural or singular there are many many many layers it is deep very deep so you know you could imagine all of these connections and so the idea here and you know the training systems and how it works now the learning system huh we got to get into all that but that's not for this video right here I got all the help of this tangent about neural networks so this is these are the different aspects of the pieces of this course that I would like to look at now let me come back over here okay so let me take a look at the list of topics I'm going to skip week one for a second so this is the course if you want this URL will be in the video's description this is the the syllabus for the course it's kind of my working document boy do I accept any and all contributions and help so feel free to file github issues and pull requests and things and if I come down here to the oh and I'm kind of in a place where you can't really see it I'm going to skip them a skip over week one and so here are my topics so I'm going to go through these kind of quickly again this is very survey oriented and boy and I'm missing a ton of stuff you know so this is just a selection but it's also still figuring this out so next week I'm going to talk about genetic algorithms which is an evolutionary based approach to solving problems with which is a way of solving problems in software taking inspiration from evolutionary processes in nature so I already have a bunch of videos on that and I'll do some more content about that as well and that will be in next week this should say classification and regression and recently I learned that the term regression comes from regression to the mean and this is like a 19th century concept but anyway I'll talk about where I'm getting all my I just read a bunch of books last week I have to thank all these people that I'm you're probably messing up all the stuff that I read but I want to get interested in those I want to get started with those tasks without using neural network based models so something called K nearest neighbor one of the things I would like to do is build a simple movie recommendation system with K nearest neighbors an idea if you have an idea for a data set or an interesting creative application for K nearest neighbor that's very simple with a simple data set that I can work with we love that suggestion and also linear regression so I want to do I want to do an example of the simplest form of regression and we can think of that in too with an input and having an output that's a continuous floating-point value so I want to look at that and we'll do that we're going to get all this stuff like oh there's a learning rate what's this gradient descent thing and all this stuff so hopefully kind of defining some of those terminology and understanding those pieces as we look at K X K nearest neighbor and linear regression will will give us a leg up for the next week when we look at neural networks so I would like to build some simple neural network examples from scratch and when I all of this stuff I'm going to do so far probably in processing or JavaScript using the p5.js library some combination of those things so if we want to build a perceptron you know if I'm feeling ambitious we might look at what happens if instead of a perceptron we have a multi-layered network and in all of this you can think of the neural network is like you're tuning all of these knobs so that the output gives you something that's correct you know you there's a whole training process that we're going to have to discuss called supervised learning supervised learning unsupervised learning reinforcement learning interesting topics that I'm going to get into but with one of the most complex aspects of neural networks is what do you do how do you train all that stuff that's in the middle and so there's a concept known as back back propagation that I that's like almost almost like quaternions for me but I'm not running out of the room just yet and once I get to there I want to investigate some other platform so I might if I always I like but my plan and hope is to look a bit at it once we've built some simple examples from scratch to look at other tools for some more sophisticated applications like tensor flow and then be able to get into certain specific kinds of neural networks that could do different kinds of tasks what is a convolution network what is a recurrent Network and what is reinforcement learning so those are some aspects of things then you know I don't plan on building those larger more sophisticated systems from scratch but if we can build some basic ones understand how everything works then my thinking is then we all have a leg up to using frameworks and tools to do some of the other stuff again all this is subject to change one of the things I mentioned this last week that I'm hoping to do because even though I might move to something like tensorflow and Python to demonstrate some examples in some of these other areas I would love to work on a simple web server that runs tensorflow in the background that processing or p5 could talk to there are also examples of some of these written in JavaScript well-known examples by Andrey Carpathia the recurrent RNN Jas and Condon s cons cons vinet and redress SJS so people are totally time's up I told people end up doing it live but you might be watching this an archive that I wanted to keep this in 20 minutes ok so that's my introduction you know here's the thing I'm learning this done so if you're going to watch of course from somebody who really knows this stuff I will link to lots of resources and that's what I meant to what I wanted to I wanted to mention some resources that I'm using very important that I will include in this video's description and I think here under the wiki under related projects and resources here are here are some resources that I want to specifically mention so one is the website called machine learning for artists it's got videos a video tutorial video lectures examples written descriptions lots of wonderful thing by artist and researcher named Jean Cogan absolute expert wonderful in this field I watched a lot of Rebecca feed drinks machine learning for musicians and artists videos Rebecca fie brink has made something absolutely wonderful called weka nadir which is a tool that allows you to send data itself machine learning stuff and it sends it back out all with something called OSD open sound control I would love to do some video tutorials on that or have some guest tutorials from Rebecca C brink on there's also a cadenza course on a creative applications with tensor flow that I tend to look at and get some resources from I also want to mention the let's see what else ah Andrew Gloucester is writing a book about machine learning and deep learning and it's not out yet but he was generous enough to let me look at some preview drafts so thank you very much follow at Andrews laughter on Twitter if you want to find out about his upcoming book coming out it's been really helpful to read and I'm sure there are also grokking deep learning is a book from Manning and rocking algorithms these are books that I've mentioned that I have kind of been looking as well as a make your own neural network which is a book that walks you through programming your own neural network in Python people in the chat are giving me lots of suggestions for other deep learning and machine learning and AI books I don't have my props I have the old textbooks bring those another time on artificial intelligence that are great but the other thing I would recommend is these are three compilations of resources so this is one that's put together by this community this is an awesome machine learning there's a lot of awesome blank lists that are put together let me let me see who puts this together just because I forgot from Joseph Smith CT on github and also this is a list of resources from memo Hawkins okay so please I'm accepting all suggestions and help and examples and ideas I look forward to all of these hopefully not so angry letters I will receive as I screw everything up over the next six or seven weeks we're gonna you know I have I guess what I didn't really say is I have you know to wrap up here what I have is these two chapters in nature code which deal with genetic algorithms and the basics of neural networks that's where I kind of left my knowledge behind and I'm embarking on this journey here YouTube to try to expand past what's in there and we will see how it goes so thanks for joining me and I look forward to seeing you in some future videos oh I'm back I do this a lot I'm back because I forgot that I had this page of notes and said I just rambled and you know it's got a few more links about thinking about the definition of artificial intelligence and machine learning I'm still working on stuff you'll find this also linked but you know something really important here that I wanted to just mention was you know it's it's very important when studying and I'm really gets going to be looking at the algorithms and making stuff and trying to be creative and wackadoodle in my way through this if that's a verb but it is really important for you the world of people who are going to be using these tools using these algorithms make project working for companies to be critical and think about what you're doing whether it's a good idea and is it hurting anybody is it helping anybody and so there's some you know some one thing I'll just mention here is there's an organization called AI now which has just learned about recently I thought I just clicked on them yep over here which is a initiative to research the social impacts of artificial intelligence to ensure a more equitable future so I encourage you to check out there's going to be a symposium in July checked about about this I also just love this quote from hard Maru on Twitter which is makes a david ha from google makes a lot of wonderful i recurrent neural there's a wonderful recurrent neural network can writing with p5.js example that you could find i'll try to link to that as well but you know whatever happened to making the world a better place so you know when you talk about what is your goal with building an AI systems with using machine learning why are you doing it and so i'll leave you with that are you making the world a better place i hope that you are and come along i'll see you in the next video

43 thoughts on “Introduction to "Intelligence and Learning"”

  1. I just ordered your book 'The nature of coding'. Can't wait to receive the book. Thanks for the great videos!!

  2. Man I love your content, you are best youtuber on yt, plese don't stop with yt everrrrrrrrrrrrr. Btw nice guide here:

  3. Hey Daniel, I basically have the syntax down and understand the concepts of programming generally. I've learnt (syntax) python, js and now processing. Although i'm not proficient with any of them as i only know the basics such as control flow and arrays, etc. I would like to ultimately like to learn VR dev or games dev. What path do you think i should follow? I am now confused between building on my processing skills or my js skills, or maybe p5.js? Let me know what you think please. Much love!

  4. Its very kind of you to provide such awesome content for free in youtube. I feel you have set a new standard to how interesting coding(teaching) can be. I really find your channel inspiring. Thank You so much Sir.

  5. Do I have to be good in math to be a good programmer?
    Can hardwork beat "talent" ?
    I feel very disappointed with myself because i feel like there's a connection between me and website developing languages.
    But i'm a slow learner, do i have a chance to be a good programmer? 🙁

  6. It's as if Dan can read my mind. I don't know how it happens, but when I have a certain topic on my mind for a while, he presents himself and starts teaching that topic — not to mention, he does it better than anyone else could do.

  7. Your videos are infinitely more valuable than a computer science degree, at least here in the UK anyway.

  8. There are already many Tutorials and videos about it, but I always wanted it to be taught by you! Thank you for finally starting this course!

  9. I hope you can create some thing like Akinator:
    It is a Web Genie which predicts the Character which you have in mind by asking a set of questions and reaching a decision.
    Also it learns the new questions and answers which has been input by user at the end if decision was not reached.

  10. hey guys! I really want to get into the world of coding! what should I start learning first? could someone help me? cheers!

  11. is it train like this has been in the works of humanity for decades and we're all just pushing along. yeah i just got that.

  12. Matrices are great, I coded an entire more biological model before I found out that it was pretty much just matrix multiplication

  13. Your channel is one of the best about programming I ever seen here on YouTube. Masterful job! And keep going with AI topics cause this theme are awesome!

Leave a Reply

Your email address will not be published. Required fields are marked *