The pros and cons of Machine Learning
So in today’s topic, I’m going to be discussing if I think that you should learn machine learning. And the reason I’m making this video is because recently there has been a ton of hype related to machine learning and AI, and it seems like everybody wants to dive into this field, regardless of their background, even beginner programmers are constantly asking me, should I get into machine learning? Where should I get started? I want to build AI so on and so forth. So in this topic, what I’ll do is share some advantages and disadvantages kind of pros and cons of getting into machine learning and hopefully help answer the question if machine learning is right for you.
Machine Learning in Real Life
The first thing I’m going to do is just share with you a very interesting story that was actually told to me by my marketing professor, I took a marketing class probably about a year ago and it relates to machine learning and how machine learning is used for marketing efforts for large retail chains like Walmart, Costco, so on and so forth. So if you don’t want to hear that story, feel free to fast forward. I’ll put some kind of timestamps in the description, but I found a really interesting, interesting enough that I’m going to share it with you here. So I’m going to start by just hearing a little bit of context here, as it relates to retail stores and their use of machine learning.
So retail stores have been using machine learning for a very long time, even probably before social media. Although I would assume it’d be a lot less advanced than it is now, but they’ve been using it for a long time to optimize things like what products you should have on what shelves, where you should lay out stores, how to optimize foot traffic in the store, how many staff you should have each day based on the volume of transactions, what time of year, you want to have certain products in store, right? They’ve been doing that all the time.
And that’s one of the reasons why they’re very successful is they have mass amounts of data and information, and they run them through these advanced machine learning models that are able to actually help them increase revenue, profits, decrease costs, so on and so forth. But one of the main things, a retail chains like this use machine learning for is marketing, right? They want to be able to target you with specific ad campaigns and they want to entice you to come in and buy stuff.
That is really the end and gold machine learning make money, right? In a lot of cases. So anyways, this story here kind of starts with this woman who goes into a Costco or Walmart, one of these very large retail chains, and she’s using a rewards card. Now, whenever you use a rewards card to use the same credit card constantly, or you give an email or something to a store, they start building a profile on you and keeping track of everything that you buy. They know when you bought it, what time you bought it, how much you spent your average purchase price. They know all of these things.
And they’re able to build a pretty detailed profile on you and start making pretty accurate guesses on when you’re going to come in next, what you’re buying frequently, what they should try to encourage you to buy. And then from that profile, they will specifically target ads towards you by sending, you know, coupons to you or sending emails with discounts, whatever, right? They’ll target you with ads based on what is that you’ve bought. So the story kind of goes like this, this young woman is going into this Walmart, this Costco, as I was saying, she’s using a rewards card. And so they’re able to build this profile on her, on what she’s purchasing and what she’s purchasing is a lot of stuff related to pregnancy there.
She kind of an expecting mother while you might buy, if you’re expecting to have a, a baby, right? And so she’s buying all of this stuff. And I guess the machine learning model is sending out these coupons kind of realizes that this picks it up and all of a sudden sends a coupon booklet to her address where she’s still living with her parents. And all of these coupons are related to stuff that she’s been purchasing, right.
Trying to entice her to come back and buy more, giving her coupons for, you know, diapers, pregnancy related items. And so the dad takes this coupon box from the mail and starts reading through it and realizes that everything here is related to pregnancy pretty much right? And so he is extremely upset, super pissed. He thinks that this Walmart, this Costco is trying to entice his daughter to go and get pregnant or do whatever it is that he thinks they’re doing. And so he sends all these nasty emails, calls up the manager at blah, blah, blah, and is all upset about it, but then goes and talks to his daughter and realizes that his daughter actually is pregnant.
And then kind of has to go back on the email and say, sorry, we had a long discussion, blah, blah, blah. But I just thought that was an interesting story because that kind of shows you the power of machine learning. This machine learning model was able to identify that this woman was pregnant before her own father. Now, obviously this is probably a rare case or a strange situation, but it just kind of emphasized to me the power of machine learning and how it actually is used so heavily in our daily lives that we may not realize.
Advantages of Machine Learning
So hopefully you guys enjoyed that story, but now I’m going to get into the pros. And one of the first pros that I have to share with you here is that learning machine learning and understanding how it works and specifically its use cases and applications allows you to better understand how you are being influenced by machine learning models in your everyday life. Because machine learning really is everywhere. It’s actually kind of scary how much stuff is using machine learning and how much data companies and just the internet in general has on you.
And by having some kind of insight and background in this field, hopefully that allows you to act a little bit more independently and realize the conscious and subconscious effects of all of these recommendations and machine learning models that really are impacting you on a day-to-day life.
So that is pro number one. So the second pro I have you here is that understanding machine learning, even on a very basic rudimentary level, allows you to take any data that you may have, even if it’s not mass amounts of data, even if it’s not business-related data, even if it’s something simple, super personal, like your average calendar schedule or daily routines, whatever it may be, you can take this data now, run it through a machine learning model and actually find very, very interesting patterns and information that you would never be able to see by simply analyzing this as a human humans just are not good at picking out patterns in data, especially large volumes of data and machine learning models can expose very, very interesting things, even something super simple, like putting in all of your grades into a calculator, right, or into a machine learning model story and trying to predict what average you’re going to end up with next semester.
Of course, there’s a lot of other factors than your previous grades that are going to determine that, but just really cool to take any data that you have and understand how you can turn this data, which is relatively meaningless into actual information. And there’s a lot of quotes related to data and information, but data is said to be pretty worthless, unless you can turn it into some knowledge, some information that you can actually utilize, right.
So that’s kind of point number two, hard to elaborate too much more, give you any great examples. Cause I don’t know your own use cases, but if you’re someone who runs a small business or just has any data in front of you learning machine learning is definitely going to be very valuable
. And you’re going to see some pretty interesting patterns and information likely from this data that you do have. So now the third pro I have for you when it comes to learning machine learning is that you get to be a part of a constantly evolving field that is genuinely changing the way in which humans live, either in a good or bad way, you can make that argument for yourself.
And you can now understand state-of-the-art research that’s going on in these fields and actually be a part of this in some sense. Now some of you may argue that because, you know, you’re not very good at machine learning or you’re just getting started that you’re not really a part of this, you know, constantly evolving and very exciting field, but I would beg to differ because even just having that basic understanding, as I was saying, allows you to really appreciate what is being created by the absolute geniuses out there. You know, even something like Tesla, self-driving, I know chess, AIS like stock fish or alpha zero, all of these really cool things that are coming out.
It just gives you an appreciation for them. And personally, I am super fascinated and just very interested in watching what people are able to create with this technology, because I can actually go in and read a little bit of a research paper, kind of understand what it is that they’ve done on a very, very simple level. And it just a really, really cool thing to be able to do.
Disadvantages of Machine Learning
So the first con I have to share with you here is probably the number one reason why people don’t get into machine learning. And this is that it is pretty challenging and it can be very intimidating, especially for people that have never programmed before. And now we’re being thrown into this world where not only do they have to write sometimes pretty advanced code, but they also have to understand a lot of mathematical concepts to really grasp what is going on in these machine learning models.
So that’s kind of the first con here. If you want to get good at machine learning, this is not something you’re going to do overnight. You’re not going to learn it in a month or a week or something like that. This is going to take time a lot of practice and can definitely be very frustrating and intimidating as you’re getting into it at the start. Especially if you’re someone who’s younger. I see a lot of people on my channel that are very young, like 13, 14, 15, they want to go and build AI.
And that’s great. I definitely encourage them to try to do that, but you will reach a point where your lack of math understanding may hold you back. And then you’re going to have to spend time winning some fairly advanced math concepts like linear algebra, calculus, gradient descent, for example, uh, that may be very hard to comprehend and may just kind of be frustrating and discourage you from going further in this field. So you can say this as a con, you can say this as a pro because it’s challenging and you want to learn it.
But one of the main reasons people don’t get into this is because it isn’t something that’s super simple. And unlike programming, you do actually need to have a decent math background, at least in my opinion, to really make good use and understand what is going on in machine learning. So the second con I have for you is that machine learning can be very frustrating and time consuming. And oftentimes your efforts can lead to absolutely nothing. So I’m going to compare this to programming. When you are writing code, at least you have some code, right? Even if your code doesn’t work at all, you can go and kind of fix it. You can tweak it.
You can find where the bugs are. That might be difficult, but you can do that. You have some work it’s not just all gone. It’s not meaningless. You’ve done something. However, when you making machine learning model, a lot of times, especially if you don’t know what you’re doing, you can get to the end of your, you know, eight hour training process, just to realize that your model doesn’t work all, it doesn’t do anything that you thought it was going to do.
You have no idea what is wrong. You don’t even know where to start. When it comes to debugging. There’s so many different things that could be wrong with this. And it’s just a very time consuming and oftentimes very frustrating process. Now that may be trumped by the reward you get when you actually get a proper model. But I can say in my experience, there’s been times when I’ve just given up on machine learning projects because it’s been too frustrating. It’s been too difficult and I just didn’t even know what to try next, because there’s so many different things and it just seemed like it wasn’t worth my time. So that is the second con frustrating time-consuming.
And oftentimes your effort leads to absolutely nothing. So the last con I have for you here is that taking a machine learning model and applying it at scale and actually taking it from your development environment into a production environment can be very, very difficult. It’s one thing to create a machine learning model that you can use on your own local machine and conserve you a few recommendations, predictions, whatever.
But it’s another thing to take that machine learning model, go and host that up on some cloud provider, AWS, whatever. And now have this work for say, millions of customers per month, or work on your website, or be deeply integrated with your application. That is a whole nother story. And companies like Google, Facebook, Amazon, their entire business model is pretty much predicated on the fact that they are able to do that. So this is not something that’s easy, this is difficult.