Time Series Forecasting with XGBoost - Use python and machine learning to predict energy consumption

  Рет қаралды 360,722

Rob Mulla

Rob Mulla

Күн бұрын

In this video tutorial we walk through a time series forecasting example in python using a machine learning model XGBoost to predict energy consumption with python. We walk through this project in a kaggle notebook (linke below) that you can copy and explore while watching.
Notebook used in this video: www.kaggle.com/code/robikscub...
Timeline:
00:00 Intro
03:15 Data prep
08:24 Feature creation
12:05 Model
15:35 Feature Importance
17:33 Forecast
Follow me on twitch for live coding streams: / medallionstallion_
My other videos:
Speed Up Your Pandas Code: • Make Your Pandas Code ...
Speed up Pandas Code: • Make Your Pandas Code ...
Intro to Pandas video: • A Gentle Introduction ...
Exploratory Data Analysis Video: • Exploratory Data Analy...
Working with Audio data in Python: • Audio Data Processing ...
Efficient Pandas Dataframes: • Speed Up Your Pandas D...
* KZbin: youtube.com/@robmulla?sub_con...
* Discord: / discord
* Twitch: / medallionstallion_
* Twitter: / rob_mulla
* Kaggle: www.kaggle.com/robikscube
#xgboost #python #machinelearning

Пікірлер: 400
@casperj4784
@casperj4784 Жыл бұрын
A comprehensive yet succinct tutorial. And, having only just finished my Data Science degree, I found it very reassuring to see that you do get faster and more proficient with time.
@robmulla
@robmulla Жыл бұрын
I absolutely love messages like this. Glad to hear you found this helpful and it gave you the reassurment that things get faster. I can tell you that they do! The goal of my channel is to "spark curiosity in data science" I hope this video did that for you.
@RaviKumar-uf3eo
@RaviKumar-uf3eo Жыл бұрын
Yes. It is very reassuring, but most probably he would have kept all the things ready.
@amirghorbani7922
@amirghorbani7922 5 ай бұрын
It is better to use icdst Ai predict lstm model.
@naderbazyari2
@naderbazyari2 Ай бұрын
Second time watching this and doing every step on my notebook as Rob goes through the task. I am still blown away by the intricacy of his approach and how he investigates the case. fascinating how he makes it look effortless. Many thanks
@karishmakapoor4285
@karishmakapoor4285 Жыл бұрын
Amazing flow, comprehensive yet smooth. Detailed yet generic. I love the way you think and your float across the entire process. I did this project myself and thoroughly enjoyed it. Cant wait to apply this to other datasets. A Big thumps up👍
@sevenaac4783
@sevenaac4783 24 күн бұрын
Thank you for teaching me. It allows me to understand the time series XGBoost in the shortest time.
@rodolfoviegas8504
@rodolfoviegas8504 10 ай бұрын
Amazing. We've learnt time series prediction only by statistical methods and/or making ML models to act like ARIMA - making lags for feed them. This approuch very interesting and intuitive. Thanks, Rob
@musicplace9205
@musicplace9205 4 ай бұрын
Thanks! one of the best video I've ever seen. Simple, clear and overall why each concept is used for.
@beckynevin1
@beckynevin1 2 ай бұрын
Wow! I'm trying to get up to speed on XGBoost, so I clicked on this video. There are a lot of meh data science tutorials out there, so it was such a treat to come across this one after slogging through youtube. I immediately subscribed and am headed to your channel to watch more videos on time series prediction!
@flel2514
@flel2514 Жыл бұрын
Hi Rob, I am a fresh data science graduate, and I find this tutorial very well done and very helpful for those that approach TS for the first time as well as for those that want to refresh the topic
@jelc
@jelc Жыл бұрын
Really well focused and clearly explained. Love your work!
@robmulla
@robmulla Жыл бұрын
I appreciate the feedback Julian
@troy_neilson
@troy_neilson Жыл бұрын
Informative and well-structured. Thanks!
@ADaBaker95
@ADaBaker95 7 ай бұрын
Best video on the subject I've found so far!
@Singularitarian
@Singularitarian Жыл бұрын
Very illuminating! Learned a whole lot in just 23 minutes.
@fudgenuggets405
@fudgenuggets405 Жыл бұрын
I like this dude's videos. They are informative and to the point.
@69nukeee
@69nukeee 6 ай бұрын
Such an amazing video, thank you Rob and keep 'em coming! ;)
@MilChamp1
@MilChamp1 Жыл бұрын
This was a very nice introduction to this topic. You might consider turning this into a miniseries, since it's such a large topic; the next video might be on how to create the best cross-validation splits for timeseries
@robmulla
@robmulla Жыл бұрын
Thanks so much. There is so much to cover with time series. I may consider a miniseries that’s a great idea. I’d like to make one on prophet which is a great package for time series forecasting too.
@hussamcheema
@hussamcheema Жыл бұрын
I love your content. Liked the video before watching it because I know this is gonna be a great tutorial. Thanks for making these tutorials. 😊
@robmulla
@robmulla Жыл бұрын
Thanks! Glad you find it helpful.
@egermani
@egermani Жыл бұрын
Great content! Thanks a lot for the explanations, they are a great incentive to dive deeper into the subject.
@robmulla
@robmulla Жыл бұрын
Glad you think so! My hope is that by making short videos that explain a topic at a high level like this will spark curiosity in people so they will dive deeper into the topic, just like you said.
@NotesandPens-ro9wx
@NotesandPens-ro9wx 4 ай бұрын
Man I am seeing this after an year and your teaching style is just hell .. now sub done and will follow you on other things :) for sure
@inovosystemssoftwarecompan6724
@inovosystemssoftwarecompan6724 4 ай бұрын
short and potent, great fluid presentation !!
@lolmatt9
@lolmatt9 3 ай бұрын
Very well explained and useful. Thank you!
@azizbekurmonov6278
@azizbekurmonov6278 10 ай бұрын
Thanks! Love your explanations.
@22niloc
@22niloc 9 ай бұрын
I'm getting to know Time Series and your vid has loads of great starter points.
@a.h.s.3006
@a.h.s.3006 Жыл бұрын
I worked with time series before, and this tutorial is very thorough and well made. Additional features you could think about are lag/window features, where you basically try to let the model cheat from the previous consumption, by giving it a statistical grouping of previous values, let's say the mean of consumption within a window of 8 hours, or by outright giving the previous value (lag), let's say the actual consumption 24 hours ago. This will greatly improve performance, because it helps the model to go follow the expected trend.
@robmulla
@robmulla Жыл бұрын
Thanks for the comment! Glad you enjoyed the video even though you already have experience with time series. You are 100% correct about the lag features. Check out part 2 where I go over this and a few other topics in detail.
@JacksonWelch
@JacksonWelch Жыл бұрын
Love these videos. As a data engineer I love seeing other peoples workflows. Thanks so much for posting.
@robmulla
@robmulla Жыл бұрын
Glad you liked it. Thanks for watching Jackson.
@sandyattcl
@sandyattcl Жыл бұрын
what an amazing tutorial! I just had to give a thumbs up even before finishing the video.
@robmulla
@robmulla Жыл бұрын
Really appreciate that Sandeep. Please share the link with anyone else you think might also like it.
@PRATEEK30111989
@PRATEEK30111989 3 ай бұрын
I have never seen a better data science video. You are a savant at this
@nirbhay_raghav
@nirbhay_raghav Жыл бұрын
Hands down, the bestest (if that is a word) video on the entire internet about implementation. No fancy stuff. Not too beginner and toy examples. Hust the right thing what a budding data scientist needs to see. And it is definitely reassuring to see that one can really get better and faster at doing these after a while. It takes me a lot of time reach what you have done in under 30min. Debugging things take a lot of time.
@robmulla
@robmulla Жыл бұрын
I really apprecaite your positive feedback! Glad to hear you find it encouraging that eventually things will get faster.
@peralser
@peralser Жыл бұрын
Great Video ROB, Thanks for sharing with us!!
@robmulla
@robmulla Жыл бұрын
Thanks for watching!
@H99x2
@H99x2 Жыл бұрын
Incredible content and explanation. You definitely have a knack for this. I subscribed for more videos like this! Thanks :)
@robmulla
@robmulla Жыл бұрын
Thanks for watching and the feedback!
@user-xr3bc4vn5t
@user-xr3bc4vn5t 7 ай бұрын
You have helped me so much with this video, you don't even know!!! Thanks so much :)
@michaelmebratu2921
@michaelmebratu2921 11 ай бұрын
What a quality tutorial! Thank you so much
@robmulla
@robmulla 11 ай бұрын
Glad you learned something new!
@leo.y.comprendo
@leo.y.comprendo Жыл бұрын
This is incredible! Instantly subscribed!! thanks for your knowldege
@robmulla
@robmulla Жыл бұрын
Thanks for watching!
@adityaraikwar6069
@adityaraikwar6069 8 ай бұрын
Being a sort of early intermediate data scientist myself, it's very cool watching him do all these things and the most amazing thing is how everybody's mind works differently and how proficient you become in not only coding but also in approach towards a problem. keep that up man
@paultvshow
@paultvshow 5 ай бұрын
Hey, have you landed a job in data science field?
@digitalnomad2196
@digitalnomad2196 3 ай бұрын
also curious to know, recent data science graduate here@@paultvshow
@evandrogaio7003
@evandrogaio7003 Жыл бұрын
Such an excellent video. Thanks for sharing!
@robmulla
@robmulla Жыл бұрын
Glad you liked it!
@TrueTalenta
@TrueTalenta 9 ай бұрын
I am new to time series and this by far is very informative and quit succinct!
@zhuoningli
@zhuoningli Жыл бұрын
Hi Rob! Your tutorials help me get a job offer! When I was searching for a job, I received a take-home technical exercise about time series forecasting. I watched this video and finished my exercise. Finally, I got my dream job! Thank you so much!!! I really appreciate your tutorials! 🥰
@robmulla
@robmulla Жыл бұрын
Whoa, I really love hearing stories like this. That's amazing and I wish you the best in the rest of your career.
@tatulialphaidze90
@tatulialphaidze90 Жыл бұрын
Thank you for this tutorial, definitely helped me out
@robmulla
@robmulla Жыл бұрын
Glad it helped!
@demaischta1129
@demaischta1129 Жыл бұрын
This is so helpful. Thank You!!
@Arieleyo
@Arieleyo Жыл бұрын
Love your videos Rob!! cheers from Argentina ♥
@robmulla
@robmulla Жыл бұрын
Sending my ❤ back to Argentina. Thanks for watching!
@lamborghiniveneno8423
@lamborghiniveneno8423 Жыл бұрын
Simply awesome tutorial😀
@robmulla
@robmulla Жыл бұрын
Thanks so much!
@Tonitonichoppa_o
@Tonitonichoppa_o Жыл бұрын
This is the best!! Thank you so much :D 감사합니다!!
@anatoliyzavdoveev4252
@anatoliyzavdoveev4252 6 ай бұрын
Fantastic video tutorial 👏👏🙏
@gabrielmoreno2554
@gabrielmoreno2554 Жыл бұрын
Wow, this is exactly what I needed to learn to improve my COVID death predictor. Great job!
@robmulla
@robmulla Жыл бұрын
So glad you found this helpful. Thanks for watching!
@yosafatrogika3129
@yosafatrogika3129 Жыл бұрын
so clear explanation, thanks for sharing!
@robmulla
@robmulla Жыл бұрын
Glad it was helpful!
@akshaymbhat9144
@akshaymbhat9144 Жыл бұрын
Thanks for the wonderful video. It's very insightful ❤️ from India . Keep inspiring and aspiring always!!
@robmulla
@robmulla Жыл бұрын
My pleasure! So happy you liked it!
@kvafsu225
@kvafsu225 Жыл бұрын
Great lesson on machine learning. Thank you.
@robmulla
@robmulla Жыл бұрын
Thank you for watching. Share with a friend!
@yourscutely
@yourscutely Жыл бұрын
Perfectly explained, thanks a lot
@robmulla
@robmulla Жыл бұрын
You are welcome! Glad you found it helpful. Check out parts 2 and 3 and share with a friend!
@tomshaw7179
@tomshaw7179 Жыл бұрын
Thanks for this video Rob. I am quite new to data science and this was really clear. Have you done a video on optimization maybe using light GBM?
@wazzadec16
@wazzadec16 Жыл бұрын
FYI for anybody who is doing this recently. The part where combing training set and test set graphic and using a dotted line has to be modified. Before: '01-01-2015' After ax.axvline(x=dt.datetime(2015,1,1) Since matplotlib now needs it in a datetime series. I guess because of changing the index to a t0_datetime format?
@shrunkhalawankhede2611
@shrunkhalawankhede2611 7 ай бұрын
from datetime import datetime ax.axvline(x=datetime(2015,1,1), color='black', ls='--')
@prasadjayanti
@prasadjayanti 25 күн бұрын
Very good explanation.
@Burnitall220
@Burnitall220 2 ай бұрын
This is incredible!!
@romanrodin5669
@romanrodin5669 Жыл бұрын
Great video! Very clear and easy for understanding! Thanks a lot for clear explanation! I've got a few questions though regarding lagging data for better prediction) will jump into next video, it seems I get an answer there) thanks again!
@robmulla
@robmulla Жыл бұрын
Glad you liked it. Yes, the next video covers it in more detail!
@Dongnanjie
@Dongnanjie 3 ай бұрын
Thank you, Rob!
@ramizajicek
@ramizajicek Жыл бұрын
Thank you for the great presentation
@robmulla
@robmulla Жыл бұрын
I appreciate you watching and commenting. Share with a friend!
@chrispumping
@chrispumping 10 ай бұрын
Very informative and easy to understand tutorial....Thanks you
@robmulla
@robmulla 10 ай бұрын
You are welcome! Thanks for watching.
@super-eth8478
@super-eth8478 Жыл бұрын
Dude your channel is a gold mine ..
@robmulla
@robmulla Жыл бұрын
Thanks so much for that feedback. Now share it with anyone you think might appreciate it too!
@super-eth8478
@super-eth8478 Жыл бұрын
@@robmulla Actually I have shared it to my friends . Cheers !
@massoudkadivar8758
@massoudkadivar8758 Жыл бұрын
Perfect job👌
@adityagavali3158
@adityagavali3158 10 ай бұрын
Thank for this!
@lovettolaedo223
@lovettolaedo223 7 ай бұрын
I enjoyed watching this as it has given me more insight into prediction. Kindly do a video on GDP growth forecasting using machine learning. Thank you.
@blueradium4260
@blueradium4260 Жыл бұрын
Brilliant video, thank you :)
@robmulla
@robmulla Жыл бұрын
Thanks for taking the time to watch.
@gustavojuantorena
@gustavojuantorena Жыл бұрын
"And depending who you ask" 🤣Great video!
@robmulla
@robmulla Жыл бұрын
I’m glad you got the reference. I was hoping he would see and appreciate that part of the video.
@liliyalopez8998
@liliyalopez8998 Жыл бұрын
I just started studying ML and this tutorial is super helpful. I would like to see how you would use the model for forecasting future energy consumption though
@robmulla
@robmulla Жыл бұрын
Welcome to the wonderful world of ML Liliya! Yes, I did forget to cover that in detail but I may in a future video. It's just a simple extra step to create the future dates dataframe and run the predict and feature creation on it.
@ademhilmibozkurt7085
@ademhilmibozkurt7085 Жыл бұрын
I love this video. Please make more. Thanks
@robmulla
@robmulla Жыл бұрын
Thanks! I apprecaite the comment. Have you seen the part 2 that I have on this topic?
@nguyenduyta7136
@nguyenduyta7136 Жыл бұрын
Best one I ever seen ❤thank so much.
@robmulla
@robmulla Жыл бұрын
So glad you like it. Thanks for the comment.
@raasheedpakwashi2961
@raasheedpakwashi2961 Жыл бұрын
LEGEND...no other words needed
@robmulla
@robmulla Жыл бұрын
Thank you 🙏
@ChrisHalden007
@ChrisHalden007 Жыл бұрын
Great video. Thanks
@robmulla
@robmulla Жыл бұрын
Appreciate that 🙏
@datalyfe5386
@datalyfe5386 Жыл бұрын
Just came across your channel, awesome content!
@robmulla
@robmulla Жыл бұрын
Welcome aboard! Glad you like it.
@lucasfescina
@lucasfescina 11 ай бұрын
I love your videos
@MeghaKorade
@MeghaKorade Жыл бұрын
Hello Rob, Great tutorial! I have a question - In eval_set you're using [(x_train, y_train), (x_test, y_test)] whereas in most data split practices I've seen validation set separated from training data (which not part of either training or testing set)? Can you please check at timestamp 14:02 ? I'm trying to implement something similar on an interesting dataset and this is a great tutorial!!
@haleemahabulaimon8081
@haleemahabulaimon8081 10 ай бұрын
I really appreciate it
@muhammadkashif7263
@muhammadkashif7263 Жыл бұрын
Amazing season ❤
@robmulla
@robmulla Жыл бұрын
I appreciate the feedback.
@robmulla
@robmulla Жыл бұрын
Thanks!
@Lnd2345
@Lnd2345 Жыл бұрын
Great video, thanks.
@robmulla
@robmulla Жыл бұрын
Glad you liked it! Thanks for the feedback.
@datasciencesolutions2361
@datasciencesolutions2361 Жыл бұрын
Great job sincerely!
@robmulla
@robmulla Жыл бұрын
Thanks for the feedback!
@a.a.elghawas
@a.a.elghawas 11 ай бұрын
Cool video Rob!
@robmulla
@robmulla 11 ай бұрын
Thanks for watching!
@nandojau1
@nandojau1 8 ай бұрын
nice!!!!
@kaaz4044
@kaaz4044 9 ай бұрын
A question. I see the prediction was done on test data which are already available. This is good to see how accurate the model is but I am wondering how we can use this model (and xgboost in general) to forecast the upcoming years for which we do not have any data.
@andreamonicque8663
@andreamonicque8663 8 ай бұрын
Perfect!!!!!!!
@robmulla
@robmulla 8 ай бұрын
🙌
@user-cl1eb2hh8o
@user-cl1eb2hh8o 2 ай бұрын
謝謝!
@THE8SFN
@THE8SFN Жыл бұрын
great tutorial
@robmulla
@robmulla Жыл бұрын
Thx!
@mohamednedal
@mohamednedal 7 ай бұрын
Hi Rob, Great tutorial! Could you please make a tutorial on how to use Shapley values to interpret LSTM models for timeseries forecasting?
@adityaghai220
@adityaghai220 3 ай бұрын
amazing video
@AisyahAthifa
@AisyahAthifa Жыл бұрын
Nice tutorial 👍
@robmulla
@robmulla Жыл бұрын
Thank you 👍
@revathyb1663
@revathyb1663 9 ай бұрын
Great video. How are you taking into account the sequence in information while training the xgb model? Also, what method do you suggest while I deal with multiple time series, meaning say for example I have energy consumption from multiple regions and would like to have predict for each region.
@selenkokten1708
@selenkokten1708 Жыл бұрын
Don’t use features like year which will not have the same value in the future. It is a bad idea for prediction purposes. Instead use the difference from the minimum date to see if there is an increasing trend year by year.
@paultvshow
@paultvshow 5 ай бұрын
Please elaborate
@irshadyasseen146
@irshadyasseen146 5 ай бұрын
Can you provide an example?
@solisoma1012
@solisoma1012 4 ай бұрын
Can I have ur social media handle so I can ask you some questions
@John5ive
@John5ive 16 күн бұрын
I get it. The year increments and provides no value to the model.
@warmpianist
@warmpianist 11 күн бұрын
The difference from minimum date also won't have the same value in the future. I don't know what you mean.
@gui250493
@gui250493 Жыл бұрын
Well done!
@robmulla
@robmulla Жыл бұрын
Thank you sir!
@mirror1023
@mirror1023 11 ай бұрын
Amazing video
@robmulla
@robmulla 11 ай бұрын
Thanks!
@Mvobrito
@Mvobrito Жыл бұрын
Great video! If the goal was prediction only, and not inference (meaning you don't care about what's driving the energy consumption), you can the energy consumption of the previous days as feature for the model. When predicting consumption at T, you can use T-1, T-2, .. T-x. And even a moving average as feature as well.
@robmulla
@robmulla Жыл бұрын
I totally agree! It all depends on how far in the future (forecasting horizon) you are attempting to predict.
@AQ-jh5fr
@AQ-jh5fr Жыл бұрын
Nice tutorial and when you said quick tutorial you sure meant it xD, I had to pause like a 100 times. but still thanks for the video
@robmulla
@robmulla Жыл бұрын
Glad you liked the video. I'd rather it be too fast than too slow :D - you can always slow down the playback speed if that helps.
@user-cf5pf7on7k
@user-cf5pf7on7k 7 ай бұрын
Great video - you briefly mentioned stationarity in the beginning, but you didn't actually test for it. This data looks stationary to me, but if it wasn't would that cause a problem? Or is that only an issue with ARIMA models? Thanks!
@darenhunter3725
@darenhunter3725 3 ай бұрын
Super helpful. Do you have any videos on how we might be able to correlate historical weather or historical forecasts in an example like this? I'm struggling to wrap my head around how this could be done and every search I do tries to teach me about how to create weather models - not use time-series weather or forecasts to predict a value. Thanks for your videos
@magicdimension6073
@magicdimension6073 Жыл бұрын
Have you tried SARIMA Models for time series forecasting? I'm curious which perform better. Excelent content Rob!
@legenddairy8346
@legenddairy8346 6 күн бұрын
Thanks!
@sunaxes
@sunaxes 2 ай бұрын
Would be useful to look at feature importance at the inflexion point of the test set performance and at the end of training and compare. Features highly ranked in both are the ones useful to understand pattern in data and also also satisfy labelling requirements.
@SabahMahjabeenSarwar
@SabahMahjabeenSarwar Ай бұрын
HI thanks for this amazing video. Do you have any video where you have done the improvements that you have mentioned ? Also any link for the code ?
@santinonanini6107
@santinonanini6107 7 ай бұрын
Should you not split the training data into train and validation sets, such that you can use validation set instead of test set during training ? (when you use "eval_set" parameter ?)
@digitalnomad2196
@digitalnomad2196 3 ай бұрын
Great content, I am curious where you got the data set. I know you mentioned you uploaded it previously but what was the original source of this data. Cheers !
@azizbekurmonov6278
@azizbekurmonov6278 10 ай бұрын
more time series, please
@jiyanshsonofdr.rajesh8516
@jiyanshsonofdr.rajesh8516 Жыл бұрын
Nice explanation..
@robmulla
@robmulla Жыл бұрын
Thanks for liking
@alghanimaa
@alghanimaa 3 ай бұрын
excellent introduction, is there an example of this approach with additional exogenous feature variables?
@wells111able
@wells111able 9 ай бұрын
thanks a lot ,for a beginner
Time Series Forecasting with XGBoost - Advanced Methods
22:02
Rob Mulla
Рет қаралды 106 М.
Predict The Stock Market With Machine Learning And Python
35:55
Dataquest
Рет қаралды 604 М.
How to open a can? 🤪 lifehack
00:25
Mr.Clabik - Friends
Рет қаралды 13 МЛН
Normal vs Smokers !! 😱😱😱
00:12
Tibo InShape
Рет қаралды 30 МЛН
Time Series Forecasting with Machine Learning
13:52
CodeEmporium
Рет қаралды 138 М.
This INCREDIBLE trick will speed up your data processes.
12:54
Rob Mulla
Рет қаралды 253 М.
How to build ARIMA models in Python for time series forecasting
20:38
Lianne and Justin
Рет қаралды 57 М.
25 Nooby Pandas Coding Mistakes You Should NEVER make.
11:30
Rob Mulla
Рет қаралды 255 М.
NEW GPT-4o: My Mind is Blown.
6:28
Joshua Chang
Рет қаралды 274 М.
How to train XGBoost models in Python
18:57
Lianne and Justin
Рет қаралды 26 М.
All Learning Algorithms Explained in 14 Minutes
14:10
CinemaGuess
Рет қаралды 109 М.
How to open a can? 🤪 lifehack
00:25
Mr.Clabik - Friends
Рет қаралды 13 МЛН