Transcript
11785 Spring 2026 - Homework 1 Bootcamp
From Carnegie Mellon University Deep Learning · Episode page · Watch on YouTube
· 1 h 18 min · 12,350 words · 135 timestamped sections
This is the full, timestamped transcript of "11785 Spring 2026 - Homework 1 Bootcamp", an episode of Carnegie Mellon University Deep Learning published January 19, 2026 (1 h 18 min, about 12,350 words). It mentions 11 people, works and ideas, including MLP, AutoLab, Kaggle, Anaconda, Stochastic Gradient Descent.
What is discussed, and when
- – 10:00: AutoLab, Anaconda, Python 3.13, Patza
- – 20:00: Anaconda
- – 30:00: Cross Entropy Loss, Mean Squared Error
- – 40:00: Stochastic Gradient Descent, Cross Entropy Loss, Batch Normalization, Weights and Biases
- – 50:00: Weights and Biases
- – 1:00:00: Kaggle, Weights and Biases, MLP, AutoLab
- – 1:10:00: Kaggle
- – 1:18:14: AutoLab, Kaggle, Weights and Biases
Notable quotes from "11785 Spring 2026 - Homework 1 Bootcamp"
Okay. Do you know what AutoLab is? Can you click on that link? It should look something like this.
about AutoLab · atYou'd have to like trace all the way back up to fix your mistakes. And essentially you'd have to work with Python 3.13 for this assignment. And the requirements are already…
about Python 3.13 · atLet's, if you have not installed or mini or something like that ever, again, download the write up. The writeup should have, instructions.
about Anaconda · atAll right. The next section in homework one part one is about creating four different MLPS. The first one with no hidden layer, second one with two hidden layer, third one with four hidden layers.
about MLP · atGround truth and as a rule of thumb lower loss equals better model. so we so you're going to implement two loss functions mean square error and cross entropy loss. you are…
about Cross Entropy Loss · atThis is sort of like intuitive in my opinion. But with momentum, momentum is really good. It helps like get to the minimum much faster because it contains information about previous steps of how you tried to get.
about Stochastic Gradient Descent · atAlso we're going to be using the leaderboard on Kaggle for comparing performance between classmates and it should help you validate if your model is improving and how your performance is.
about Kaggle · atWatch the restation before you delve into the homework. you'll be able to see plots, a history of runs. You can pick up on where you left and it's really useful for you to get…
about Weights and Biases · at
Who and what is mentioned in this episode?
Companies & orgs
- AutoLab — Company · Platform · 8 mentions · first at
Platform used for submitting homework assignments and accessing materials, integral to the course's workflow. - Kaggle — Company · Platform · 7 mentions · first at
Used for downloading datasets and submitting predictions for the homework assignments, facilitating competition among students. - Patza — Company · Platform · 1 mention · first at
Platform mentioned for posting questions and accessing homework materials, part of the course's communication tools.If you don't know where to start looking for 1P2, we have all the links here. Go to Patza and then that should lead you to AutoLab. The same stuff, right?
Products & tech
- Anaconda — Product · Tool · 4 mentions · first at
Software distribution used for setting up Python environments for the homework, ensuring compatibility and ease of package management. - Weights and Biases — Product · Tool · 5 mentions · first at
Tool recommended for tracking experiments and model performance, emphasizing the importance of systematic ablations. - Python 3.13 — Product · Tool · 1 mention · first at
Specific version of Python required for the homework assignments, ensuring consistency across student environments.
Concepts & topics
- MLP — Concept · Core topic · 1 mention · first at
Central to the discussion on implementing neural networks for homework assignments, specifically in the context of speech recognition. - Stochastic Gradient Descent — Concept · Concept · 3 mentions · first at
Optimization algorithm discussed for training MLP models, highlighting its variants and importance in minimizing loss functions. - Cross Entropy Loss — Concept · Concept · 2 mentions · first at
One of the loss functions implemented in the homework for classification tasks, crucial for training MLP models. - Mean Squared Error — Concept · Concept · 1 mention · first at
Another loss function implemented in the homework, used for regression tasks to measure the average squared difference between predicted and actual values.Ground truth and as a rule of thumb lower loss equals better model. so we so you're going to implement two loss functions mean square error and cross entropy loss. you are…
- Batch Normalization — Concept · Concept · 1 mention · first at
Regularization technique discussed for preventing overfitting in MLP models, highlighting its recent discovery and application.Interesting. Okay. This was discovered in 2015. So, this is like really recent. And like if you look at it for the first time, it feels like you're just like taking means and averages.
Full transcript with timestamps
Okay. Um, who is confusion about where to find materials for homework one part one? Has someone not found the materials for 1 P1? Okay. Do you know what AutoLab is? Can you click on that link? It should look something like this. And uh, if you scroll down, there's the attachments. These are the files you need to start working on 1 P1, right? Um, and it's the same practice for 1 P2. If you don't know where to start looking for 1P2, we have all the links here. Go to Patza and then that should lead you to AutoLab. The same stuff, right?
Um, once you have the materials, go through the write up because people have spent a long time trying to make it as descriptive as possible. Um, it should answer most of your questions. If you think some of your questions are still not answered answered, post it on patza. Um again, there's a a a post about 1 P2 and then put up your questions in the followup. Okay. Um questions about 1 P1 and 1 P2.
Yeah. Can he justify how or just put like the code and that's it? Uh you mean for the equation that's in the write up and how you implement it?
There are some formulas that are not given given as in like isn't you're supposed to derive them.
Oh yeah. No. No. Just implement it. As long as it works uh you're good. Yeah. Um okay. So, has anyone not other than you has anyone not seen what the code looks like for 1 P1 and 1P2? You don't know. Have you downloaded the power file from AutoLab? You're doing it. Okay, do it right now. Um cuz this is what this session is meant for. It's just to get you started, right? Um Axra will go into details, but if you have questions, um we are all here. Okay. And there's another thing I there were a few questions about deadlines. There are multiple deadlines on for 1 P1 and 1 P2.
Does who has questions about why do we have so many deadlines? Okay. Good. It's not that many. Okay. So the intentions are so you have two weeks for every homework, right? And um I think you all know this is there's a repetition for this course that it's intense. Two weeks is given because we know it takes time and me and a lot of people we procrastinate. So if there are no early deadlines, you will not start working until 2 days until submission. And trust me, if you start 2 days until submission, you will not be able to complete it. Technically, there was one superhuman person who took this course who did this homework in one day, but um it came at their cost or something. They didn't score well. So uh start working from day one. At least look at it and um start spending some time every day.
That's what I would recommend. That's what I did. If there was a single day where where I did not think about IDL, um I meant something was going to go wrong. So start at least thinking about it. Read the materials, take your time and ask questions. All right. So the early checkpoint submission or the deadline is just to encourage you to um you know be at a comfortable spot to be able to submit the real homework on the final deadline. Does that make sense? Okay. Any more questions for 1 P1 and 1 P2? We'll talk about bonuses a little later because um I don't want to overwhelm anyone. Yeah.
Yeah. For part twos, not part one. Right. So, uh part two is [snorts] not so nicely phrased. When you hear that is a bonus for the checkpoint submission, it's not it's not technically a bonus. If you don't submit it uh by that deadline, you would lose 10% of your grade associated with that assignment. Uh everything else for homework one part one bonus autograph. These are pure bonuses. Um and you're just supposed to submit them on that. That's it. Simple rules. Start from day one. Spend some time every day working on the homeworks, right? That way you don't have to worry about what's the deadline and stuff like that. All you need to know is where to submit your homeworks. That information is also on the website and also on piaza and also in the writeups. So all information you essentially need is distributed across platforms. You should be able to find it. Okay. And starting study teams and
your I think your teammate will also know. Yeah. So hi Ron has the early submission and if you submit by then there's like a five bonus points final submission which is on Feb 6.
Yeah. Yeah, part two has the checkpoint submission is on Jared and if we don't submit the checkpoint by then the most we can get is a 90 and the actual submission also.
Yeah. Yeah. This is how I visualize homework homeworks in general. You have a release date and you tentatively have about two weeks to submit everything and there are some intermediate deadlines just to make sure you are working on it. Right. Any more questions about deadlines? Okay, that's good. Okay, so um Axara is going to get into details about I would suggest whoever's not taken a look at the write up or the code, go to autolab, download it, unzip it, just open the file. All right. So that if you have questions, we can solve it right now.
But um yeah, let's do this. Okay. Okay, cool. So hi. Um I will be going through the writeup component essentially. So it' be great if you guys have the write up open with you as Ron said. So the first thing that if you scroll through the first few pages, the first thing that you come across is the checklist. So this is really really um useful when you're doing the assignment, you get the whole um uh list as to how exactly you should be proceeding through the homework and how you should be approaching. So essentially for homework 1 P1 it would be to be watching all the recitation zero lectures which is hard but it's definitely useful. So we would definitely recommend you guys to watch through it and then step by step. So the whole P1 um homework is structured that if you do it um in the order I already suggested it would be great like try try not to approach it from bottom up.
That's not really recommended. just go like um number-wise like section wise from top to down. So yeah, you can please track your progress using the checklist provided in the write up and essentially for system setup we will show you a demo as to how exactly this was going to work later. But um the main steps are given over here that is you according to the OS that you have download the anac the Anaconda installer um and then open either prompt or terminal according to whatever uh laptop that you have extract the file and then once you get the folder for the homework you should uh navigate to the directory and create the environment. So this is these are all already already provided in the write up closely. But we're just highlighting this because if anything is mismatched over here, then it's going to be hard for you to complete and you you'd have to like trace all the way back up to fix your mistakes. And
essentially you'd have to work with uh Python 3.13 for this um assignment. And the requirements are already listed in the directory. So you just have to pip install the requirements. Okay. So when you're um actually working on the assignment, so essentially you go section by section, fill in the missing code. There's always comments given for or like hints given for the missing section. So please look into that and then fill it and then for every section you can test if your answer is right by using the local autograder. So the way that you use this is also given in the write up. But essentially there's a different file where you set the flags to true and then you run the test and then if you execute it then you would see if you pass the test or if you fail.
So if you pass great everything's right. If you fail you'll see the reason why and then you work on it again. And when you're making the final submission you uh go you do this from the top level directory. Always go to the top level directory. This is I would like to emphasize this a lot because I myself when I did this last semester I failed to do that and I would get errors on autolab. So please make sure to do that from the top level directory. Okay. So we'll go from every every section by section. So I believe that this is probably section number four which covers the big picture as to what exactly we are trying to do in this homework. So uh the main thing that we're trying to do is can we uh divide it into five main components. So the first is the linear layer which computes and find transformation. Second is the activation function. So this introduces nonlinearity to allow the model to
approximate complex functions. So all these terms and everything was introduced in lab one as well. You can refer to that to complete components of this. So that was the main use of lab one essentially. And then uh the third part is the loss function which quantifies the mismatch between the prediction and the ground truth. And fourth is optimizer which adjusts model parameters to minimize the loss function based on gradients. And lastly you have the regularizer which is used to prevent overfitting. And this is the main um like main like an abstract uh way of like representing what exactly we're doing which is also given in the writeup. So you can use that to imagine what exactly is going on over here.
And the first part that you will be working with is the um linear lay layer. So this is um I believe this would be in a linear.py. So you'll implement the linear class in this section. So every input is connected to every output which requires a weight matrix and a bias vector. So here you have so there are two main uh parts subsections to this. First is the forward pass and then you have the backward pass which is also known as back propagation. So the main equations there are more listed in the write up but the main ones that are required for this is essentially the one pro given over here and the one listed here for back prop. So you can imagine as to how exactly this would look like for in the lean lane linear layer forward example.
So for in the case of forward pass everything everything is passed in the forward direction as the name suggests and the backward pass moves like this where your where the uh yeah in this way this manner sorry
to show the file as well or maybe show the setup as well. Do we want to do it now? Do you want to do that later?
We can all move through everything and then perhaps show or do you want to do it now? might either way. I think I was supposed to stop and show it there.
Yeah. Do you want to do it? Let's let's ask them real quick. Okay. Um, we wanted to talk about like the setup initially as well. Like who is there anyone who has never used cond before? You have not used. Okay. Um, be confident. It's okay. Ask for help when you need it. Right. Um so um we will go through a real quick installation on how to get you started with cond before we go ahead with this part. Um, so sorry to interrupt you like that, but I think this part is important because if you don't figure out this part, you're not going to be able to fix the the rest of the parts, right? So, um, let's, um, if you have not installed or mini or something like that ever, again, download the write up. The writeup should have, um, instructions.
Who here has not downloaded the write up yet? Let's do that. Let's click on that link. And um these instructions are also in the write up. Um but it's at the appendix towards the end for someone who has never installed it. Let's go to that part and download Anaconda from the website. Right.
Do you want to just do it along? We uh we won't show you how to download Anaconda because it's just a few clicks. You should be able to do that. But meanwhile, Anug's going to show you how to get started with installing the how how you would essentially do the homework.
Yeah, let me pull it down. Okay, we downloaded the Let me show Oh Wait, let me show Give me the top. Let's How about How about Hold on. Hold on. Oh my god. How do I move this guy? Auto lab. Yeah,
install. Uh in the meantime, uh I recommend everyone to download the Anaconda. They're not supposed to see this. Um, okay. So just see if you have the Anaconda installed or not by doing this. Uh as you can see we clearly have it here. Do you want me to This is fine. Or more.
Okay. Uh then just push it up. Huh? Okay, got it. Uh just minimize this guy. Okay.
Okay. Uh you can just enter it by double clicking or by following the command that was uh that is provided in the write up. Um, as soon as you do that, we recommend you to create a new cond environment.
Hi Rowan, I haven't been using cond before. and specify the Python version that is recommended in the writeup and give it a Y option so that it answers why for all of the questions that might pop up
questions. Any question in the meantime? Hi Ryan. The idea is to use a virtual environment that so that we have no in like package issues. Is there excuse me? Uh,
use the latest one. Use the latest one. Yeah, that should work. Not really. Not really, but
that should work as well. Yeah, hopefully. We're not We're not sure about it, but we believe it. It should work. Uh, yeah. you're saying? Yeah. follow
like instructions will be given for that but personally I would suggest have one virtual environment for each homework just so they have to move between homework is worried about it but you could use some anyone else
no that works as well yeah so should we create a unique environment for each um that is recommended for anyone class but here for this course for one specifically if if you have a in this work for all the performance
okay in the right do you want me to okay all right now I'm going to proceed with activating my environment Right. Okay. Only once you're inside the environment are you supposed to run any pip instructions. Um so that you don't have any compatibility compatibility issues with the packages that you might have on your virtual environment versus the global system. Uh now I'm going to go to my desktop. The file that I just entered was at homework one part one spring 26 handout. I'm going to go to that directory.
So they have uh this requirement text. Let me open it for you. Yeah, it includes all the version that we recommend so that you don't have any uh package issues. Um you don't need to manually install them one by one. You can simply do
So you recursively install all the packages inside requirements.ext and once you are done with this then only you're supposed to start writing any code. If you don't do that, there are high chances you might end up with some package issues and you just have to do a lot of hidden trials at that point. Uh so we cannot emphasize it more than that. Uh from here on I think I'll just leave it to Ax.
You're done. Okay. So yeah, good. She's there. Yeah. Is there anything else? No. Yeah. No, maybe you can just go here and see it on the slides again. I'll just go to Google.
Can you hear me? See if there's anything else that create. Okay, perfect. Perfect. Yeah, we're done with that, right?
Yeah. Service. We really the way auto don't mess up with the structure otherwise it might cause a lot of issues as well. Can you restart? Okay. Okay. Uh now I want to talk about another section uh from your homework one part one write up which is about the activations. Uh so Oxara in the in the in the lab today explain about why we need uh the activation functions right um to learn the nonlinear components to approximate the nonlinear functions because if we just have linear function of linear function we would end up with another linear function and we won't be able to figure out the relationship between nonlinear features and the levels. So we have two type of activations that we are uh interested in for homework one part one. Uh the first one is the scalar activation. This is where we uh perform where where we use the activation function element wise for each element of the array and for the and each output only depends
on single input as opposed to the vector activation where each output depends on all of the input elements. Um it might be confusing right now. professor is going to um get into details about it in the upcoming lectures but for now I just wanted to give you a brief overview because it's in the write up as well um so essentially right you're supposed to like all of these are classes if you haven't uh seen your write up all of these are classes um and you have a forward method and a backward method with each of these activation functions uh the mathematical definitions are provided here for instance for sigmoid it is 1 / 1 + e to the^ of minus z. Similarly for 10h relu ju and the Swiss activation function as well. Uh right so my my recommendation would be to like and in in the write up for forward method for let's say sigmoid they have provided you the formula the exact formula that you're supposed to
use uh in your code and they have done the same for the backward method as well. My recommendation would be for you to see how how they have reached that state that expression at the end instead of simply just copy pasting the expression from the write up. That would help you a lot with your quizzes with better understanding of the course in general. Um and also as you proceed with the activations um always look at the hints that are provided. For instance, for ReLU activation alone, they ask you to read about npear, the wear method from the numpy array. For Zelu, they ask you to look at the math and sci library because you have these specific error functions that a lot of you might not have heard about before, but as part of the assignment is, you know, you are supposed to go through the documentation and find out what exactly that method or function call is. Um, any questions with activations?
We're good. Okay. All right. The next section in homework one part one is about creating four different MLPS. The first one with no hidden layer, second one with two hidden layer, third one with four hidden layers and and so on and so forth. Right? So in again each of these MLPS are classes. They have the init method as as you might be familiar with with any classes in Python. They have the forward method and then the backward method. Um again I don't want to get into more details of like how you're supposed to proceed with this but I want to emphasize on the common pitfalls and fixes. For instance in each of uh these classes you're supposed to have a linear uh layer and an activation layer. Uh a lot of the students tend to uh proceed with them separately as in write separate logic and code um in regards to the forward and backward method for linear and uh activation layer separately. We would recommend you not
to do that. Uh the second mistake is um like we don't recommend you to like instantiate these these layers that you see like one by one. Instead we recommend you to go through a loop and and define them. Uh a lot of the time what students do is forget that they are supposed to reverse the order of um of the layers when they are dealing with the backward method because as you might see here during the backward propagation you're supposed to get the gradients from the previous layer. That's one of the mistakes that students typically make. And the other one would would obviously be the uh the wrong dimensions. Always um with every line of code, it is a good idea to mention the shape associated with whatever uh array it is that you're dealing with at that point in time so that you can visualize it more. Yeah.
So understanding the mistake correctly. Yes. both the linear and activation of layers are basically just instances of some layer clouds. Yeah,
we should just be having the same generalizable sort of like forward pass or like layer forward pass. Okay, that works.
Yeah, zoom it out. Okay, my bad with the pitfalls or the picture. Okay, I think I can
run. No, I need your help. I don't know why this is not I don't know why not zoom.
I think for like when you do command Mhm. it just Oh, wait. I think my whole thing is getting zoomed. But I usually set this to 90. Oh, it's
But slideshow should be fine. I think like is this is this not clear? Okay. Okay. That
also the slides will be available on the website. So you can download them and watch it watch them on your laptop as well. Just scroll down to the recitation. The last part of the list is included.
Uh, any other question? Yeah. Okay. All right. Okay. The other the other section that that you have in your write up is is in regards to the losses the loss function. I know professor in the last lecture uh talked about divergence function and noxer also mentioned about it in the lab today uh about why we need a loss function because we want to see the mismatch between the the model output and the ground truth and as a rule of thumb lower loss equals uh better model. Uh so we so you're going to implement two loss functions uh mean square error and cross entropy loss. Um you you are provided with all the expressions that that you require for your code. Uh but again as I mentioned um in in case of activation functions I would like you to derive them on your own because it would give you more insights on a longer run. Um, in regards to mean squared loss, you only want to you you use them for
regression task like continuous when you want to predict continuous values. For instance, the house prices, temperature as the dip progresses by and in regards to cross entropy loss, we just want to focus on classification. So, is it a dog or a cat? Um, are these zero, one until nine? Um, is the email spam or not spam? um cross entropy essentially implies the negative loss probability of the correct class. Uh more about it again in the upcoming lectures. We don't want to be the first people to tell you about it. Um we want that message to come from the professor first. Uh but again um I just want you guys to u derive these expressions by yourself so that you have a better understanding.
Uh that's about it from my patron. Any questions so far? Great. Oh. Oh my god. Is anyone still facing issues with installation, downloading the files? or the Python scripts. Okay. Do you all know how the like the file structures look like? Cuz I don't think we showed that. We intended on showing it, but it's still there in the write up. Does anyone have any confusion on which files to work? Okay. Okay, that's good. That's really good. Okay. Um yeah, like the homework is definitely discussed more than you were taught in the first week. Uh because the homework is spanned across two weeks, right? So technically you could start working on them. Um but it's better if you sort of like stay um you wait for the lectures to be taught. So the part that I'm explaining is optimizers which essentially will be taught a little later. Um, so far what has been discussed is like how to make a a layer, how to extend that into a an
MLP, how to calculate errors like losses which are also a criteria and what else? Activation functions, right? So these three like major broad topics are essentially important just for the forward propagation. um until you do something called back propagation which will be discussed in details over multiple lectures um you don't really learn anything right and I won't describe into details because like it's a big topic about what back propagation is but optimizers is something which facilitates back propagation so essentially like if you remember from the last lecture the professor talked about what an empirical loss minimization is risk minimization something like that or what losses is when you try to minimize it. So whenever you're training a uh any machine learning model, you're trying to minimize a loss. So you could imagine your loss function to look something like this on the left. And what you're
trying to do is minimize it and essentially trying to figure out like what's the quickest path to the minimum loss that I can have on this on a particular problem that you're working on. There are multiple algorithms to do that. The first one that you'll be taught in class is um stochastic gradient descent or SGD. Um essentially what it looks like is the figure that you see here is you could treat it like a contour map like some if someone has taken convex optimization or something this will be familiar to you. Um is there anyone who is not familiar with what this looks like or what this means at all.
Okay. So um you could treat this figure as this little like a bowl and the concentric circles essentially mean like um the level like the depth. So if you're have more narrow circles that means you're at a lower depth. You could see it as like looking at a a bowl from up above. And whenever you're training on a machine learning model your objective is to go to the minimum part of that bowl because this function is basically you can treat it like a loss function. And you want to be at the point where your loss is the minimum.
Essentially, your predictions are more accurate, right? So, how do you get to the minimum? Because you don't know your loss functional priority. Essentially, people develop algorithms to get to the minimum the fastest way, right? So, the most obvious thing is gradient descent. Has anyone never heard the word gradient before? Like, is is this something entirely new to you? Don't worry, it'll be taught in class. Again, your intuition will be really really strong if you pay attention. Um gradient is essentially like the slope of a function, right? We want to go against the gradient because we want to minimize it. If you go along the gradient, you're essentially maximizing or trying to increase your function values, right? So doing gradient descent, but there are multiple flavors of it. One is called stochastic gradient descent and another one is called minim batch. But if you look at these figures,
um the way it approaches the minima is a little different. Again, this will all be discussed in detailed, but pertaining to homework 1P1, what you really need to do is essentially implement these equations. There are two different types of stoastic gradient descent that that's discussed in the writeup. One without momentum and one with momentum. Um, without momentum is sort of straightforward. Essentially, you're updating your weights using a learning rule. It's learning rate. And this is your gradient quote unquote. Um, this is L stands for loss, W is for weights. So you're trying to minimize the gradients along the weights of your model. And whenever you're trying to minimize it with your biases, you're essentially trying to minimize it with respect to the biases.
Um this is sort of like intuitive in my opinion. But with momentum, momentum is really good. It it helps like get to the minimum much faster because it contains information about previous steps of how you tried to get where you are now based on your past trajectory. It tries to go to the minimum in a more efficient or more informed way. So the information comes from something called velocity. Again you'll see what you're trying to minimize is W and V. Um but you have information from the previous trajectories which is coming from um the velocities.
Again the intuition of the concepts will be discussed in details but for this homework you just have to implement these functions or or these equations and most often using numpy. Any questions in this part?
Trade tradeoff. Uh I guess with momentum is better but there must be a So think that
like why does not everyone use momentum? Is that what you're asking? First of all, momentum is not a very it's a it's a sort of relatively new concept as well. Like when you study about atom and Adam W and stuff like that, they use momentum but atom has not existed forever.
Right? Um and if you want to talk about trade-off, one thing is like you have to do more computations, right? You have to measure the velocity first and then you have to use that for your results. I I mean as well is right but
yeah I mean but then the parameters are learned through back propagation so you're not forcing you're not finding those parameters yourself right it's through the training process that
right yeah I know it can get confusing but thanks for the question um what else did I want to say here I think it that's pretty much it yeah more advanced optimizers are Adam and Adamw and almost everyone uses it you'll you'll be using it as well in future homeworks. Um, the next part, so it's a lot of information at the same time. I'm sorry for that, but we knew how to use back propagation, update the weights and biases. I think that movement is good. We're probably going to get pizza real soon. Um, but now you want to sort of there's another really common problem in when when you're training something, it's it's overfitting. Your model essentially memorizes what you've trained it on and it's not generalizable. So to prevent that from happening um we use something called regularization uh if you can see it and the first regularization that you'll be encountering is batch normalization is essentially trying to
normalize batches. Can anyone take a wild guess when did this method get discovered which year? Like machine learning has been existing for a while right about 60 70 years. When do you think this method was actually figured out? Give me a year. 1986. Okay. Anyone else? Interesting. Okay. This was discovered in 2015. So, this is like really really recent. And like if you look at it for the first time, it feels like you're just like taking means and averages. I'll walk you through what's happening here. But um why didn't no one think about just taking averages? Averages is everywhere. But again, it's not easy. So essentially what's happening here is this figure at the center is just um an MLP with def zero. So your inputs come in and you're doing some sort of a normalization. I'll tell you what it is.
And then this is your output, right? Just to simplify the explanation. These figures and equations are in the write up as well. So what's essentially happening is you train over batches. You don't train over the whole training data set. And for each batch, you want to know the mean and variance of that data set for each data point as well. Right? So this is how you calculate the mean. Has anyone not seen means before? I know that sounded a little judgmental. I probably was. You should have seen means by now. Okay. So if you've all seen means, why do I have the little epsilon at the denominator?
Is this equation familiar to you? Yeah, exactly. It's to ensure numerical stability so that if your sigma square your variance is zero your means are infinite. You don't want that. Um so this part on the left is just for one batch but you're not training on just one batch. You're dividing your whole data set training data set into multiple batches. So you want to have something called an expectation and the variance over across your data sets. So across your batches sorry. So you use expectation which is a better estimation of mean and you plug that in in for your entire all your batches and then this is something you get um when you find the means and variances across all the batches in your training data set and you'll see some constants which are basically scaling in linear transformations alpha beta alpha square alpha is over sorry gamma beta and alpha these parameters are learned during
training again questions. Yeah. So basicization it's better to use but we have lasso and
yeah L1 and L2. Yeah which I think it depends on the problem you're working with. It's not a general approach. I don't know
usually uh where do we uh like set it because we were working with Oh, where do you set it?
Because so it's optimizer but yeah optimizer. Oh yeah. Yes, it is optimizer. Yeah, optimizer will take an argument. Um
weight is a it's a scalar value. It takes it doesn't take in which regularizer you're using.
Yeah, just look at the documentation real quick. You should be I mean you'll use it for every homework. So you'll get familiar don't worry I think it is just
but I want that is talking about you define them while you defining the architecture
oh oh so pytorch has it already so if you're using pytorch you don't have to worry about that but if you're using your my torch
you will have to define right questions yeah you say that mean because if you're working on just one batch and you calculate the average for that we don't know how Um the mean across all your batches are right. Right. Expectation is uh a more accurate mean. Does that make sense? Like like law of large numbers, right? So more Yeah, exactly. Because if you look at just one batch, you don't know if the mean is or representative across all batches, right? So you want to deal with expectations and um yeah so this figure up top is just for a zero layered MLP essentially when you build your own own MLP with multiple layers this is what it's going to look like so you'll have your inputs coming in and then you normalize it which is NZ and then you have the weights and biases for it as well and then you have the final output with the activation and then you measure losses but this will happen across each layer
Right? And you have to take into account that when you're designing your MLP, notice that I did not talk about back propagation here. If it goes through the write up, there's a lot of equations. And it freaked me out the first time I saw it. But all you got to do is take a breath and implement the equations. If you don't, try to understand it, but if you don't understand it at once, don't be hard on yourself. Huh. Um, I think that's pretty much it. Yeah, that's all you need to do for 1 P1. Um, my TA will also talk about 1 P2, but I think we all need a little bit of um, fuel. Pizza's coming real fast. We can take a little break if you have questions. Yeah, feel free.
Yeah, about your question with L1 versus L2. uh if I remember correctly, you use L1 regularization when you have a lot of features and you want to kind of sparse them because you have a have a intuition that oh these features are not really important. For instance, let's say you have a you want to predict the house prices, right? And you have one of the columns is 1 2 3 4 just the ID, right? It's not going to contribute towards the prediction. So you might just skip it,
right? Yeah. when you have a lot of features and you want to make it less convoluted, you use L1 regularization. And if you want to have it like if you want to do it in a more stable way while keeping each of these features as much as you can, you use L2 regularization. That's like a rule of thumb. But most of the time, you would only know the the pros pros and cons by by training yourself.
Okay. So, Hi everyone. So, we have a short break for pizza and then we'll start one P2.
So, come on down. Have your pizza. We can tell that for a moment. Yeah. Okay. And then show every single time they speak if you need anything.
Okay. Hello. Hello guys. So let's start the homework one part two boot camp. So first so first uh as Ron has told us like about the part two submission timeline. So here is several timeline you should like pay attention. So is any question for the timeline? If not so we can go to our part two. So for our homework homework one part two. So we are like you are supposed to do the speech recognition. So you will generate the prediction for the phone of your test data set. So you will train your um train data set. So so here you should pay attention. You can only use the MLP multilayer perception for your architectures.
So here's like a few overview for the homework. So you will be given a data set of the audio recordings and then you will uh uh establish your own MLP and to predict the phonus labels and so I'll talk about the data set. So here is the three data sets will be given. So the first one is the train and it includes two subfolders MFCC and transcript. For the MFCC like folder uh it will be given a male male spectrograms is a conversion of the rose speech signals and for the transcript subfolder so it is the labels of the phonms and you will be given chain and the validation data set and for the test data set you can only you only have the MFCC one so you are going to predict the label of it so now I'm going to give the like the talk to another TS who is not in Pittsburgh now. So he will talk about how to do the homework one part two. So Mer can you hear us?
Yes. Can you hear me? Yes. So So that's go to the next slide. Perfect. Yes. Let's stay here for now. So you mentioned that we're going to be mapping the audio recordings to phonms. But let's first understand how this will be happening. So first of all when we say audio recordings as humans we imagine a waveform. You can play it, you can hear it. It looks like a signal over time if you plot it. But neural networks don't hear. We need this numerical representation that makes patterns easier to learn. And that's why we're going to be transforming waveforms, speech waveforms into time frequency features. Specifically, we convert audio into MEL specttograms or MEL based features. We don't feel the raw waveforms to the model. And on a very high level, what the ME specttogram is, it shows how much energy exists at different frequencies, bands over time.
So what it is, it's pretty much a snapshot that shows how much energy is at every frequency. And this happens over time. Think of it as a picture of sound where the xaxis is time, the y-axis is the frequency on the male scale and the color, the intensity is how much energy is there. You don't need to be an audio expert to understand this. This is just the pre-processing step. How the waveform becomes a male spectrogram and this becomes the neural net input. Now, if you're curious and you want to learn more about this, we provided uh some materials. Um but you can also post the pata post if you would like to get more information on this.
But the main takeaway for this uh homework is that the input for our model is going to be male spectrogram features not the raw waveform. Now let's move on to phonms on the next slide. Um we understand now what's the input of our model. But what is it that we're trying to output? We're trying to output and to predict phonms. Phonms are the smallest units of sound, not letters, sounds. So the same way the English language has the smallest unit being the letter, the audio has the smallest unit being the phonms. Um, so the homework is pretty much going to be feeding the audio features into the network and then predicting a phone label for each time step. You can notice here that some sounds, for example, B, G, N, D, and so on are the same as the letters themselves, but others aren't, like A, A, and so on. You can also notice we have two extra phone names at the end, SOS and EOS, which are start of
sequence and end of sequence. We'll talk a bit about that as well when we look at the notebook. But what you need to understand is that we're going to be using um more than just a single uh input in our uh model to be able to predict um what the output should be. We're going to be using a context window. This is has also been talked about in the rest in one of the rest zeros. Um and we also talked about SOS and EOS when we talked about data sets. So you might want to check race station zero and get a hint on what you should how you should handle those for homework one and specifically how you should handle them future on when you have those um in your data. Now u moving on um again just a takeaway before you go to data set the mapping that we want is to get the m spectrum features to phone classes. How are we going to be doing this? We're going to be using an MLP uh multi-layer perceptron uh model. Um at
the high level, we're going to be uh having a standard approach. We're going to have input features, one or more hidden layers, and then output which are going to be um phonium classes. Um the big picture is that the network is going to learn those patterns in the spectrogram features and then it's going to convert them into phonium predictions. It sounds simple and conceptually it is but the real difficulty here is not understanding exactly what uh a phone how how the pre-processing is done but specifically getting the pipeline correct and tuning the performance. Once you understand the raw idea of how this model works the most of the work that you're going to be putting in is going to be towards actually implementing this pipeline and making sure it's functional from A to B.
Again, it's very useful for you to understand exactly what phone names are and how the pre-processing is done, but it's not the core takeaway of this homework. Um, so now let's talk about the workflow from data set to Kaggle submission. Um, so first step is going to be download data set from Kaggle. And I'll focus a bit on this once we get to the notebook, but it's really important that you set this up properly. You don't want to wait till the last minute and realize you can't get the data set from Kaggle because if you can't get the data, your model can't learn anything.
There's nothing to be learned. So make sure that Kegle loads correctly for you. Um also we're going to be using the leaderboard on Kaggle for comparing performance um between classmates and it should help you validate if your model is improving and how your performance is compared to others. So keep keep an eye on that. Now moving on to the second step in this workflow, loading the data set into data loader. Here you'll build the data set and data loader classes. Now we've covered those in the restation zeros. So make sure that you watch those videos and you get a big idea on a general idea on how you should do that.
Um review the material and if you have any questions, please uh post on before you get through the whole homework and then realize you don't understand what has happened in the data set and that other part. Those are key parts of this homework. Um, right, moving on, we're going to get to the step number three, which is going to be defining our model. And pretty much this means setting up the hyperparameters, the model architecture, the learning rate, the optimizer, theuler, the regularization, and so on. Those are pretty much the settings for your model. And given those settings, your model is going to behave differently. It's going to have a better or a worse performance. And talking about that, we get to the next step, which is training. First, we're going to have a forward pass. We're going to compute the loss. We're going to do back propagation with using the gradients using the optimizer step. We're going to
update the weights. And we're going to be repeating this across epoch. It's a pretty standard um training of a deep learning model. Um again, this should be covered in the restation zeros. So, make sure you watch that. If you have any questions, this is just a general idea. um make sure you understand this before you move into solving the homework. Those are the general ideas that you must be familiar with to some extent. Um now it's very a very important takeaway here is that if you run experiments without tracking it really becomes chaos. You'll have one run that did great and one that did really bad and you're going to have no idea why. So please please please track hyperparameters and the results. um track your learning rate, your batch size, your model depth and width, your dropout, your scheduleular choices, and specifically your best validation accuracy. You want to know which model
did the best and what was the configuration of that model. Um and the really clean way to do this um tracking is using weights and biases 1B. We have restation zero on it. So again, please watch the restation before you delve into the homework. um you'll be able to see plots, a history of runs. You can pick up on uh where you left and it's really useful for you to get familiar with that before you run into issues with your homework. Now that we've trained our model, the last step is going to be evaluating and generating the predictions for our test set. And once we have that, we're going to submit those to Kaggle. We're going to export those into the correct submission format. Um and then once we're done with that, we're going to be uploading our notebook to AutoLab later on. Now um in most homeworks like this there's usually a baseline or a low cutoff um that's easily achievable with a clean basic
model and then there are the medium and high performance high performing cutoffs for the higher scores for this homework. I really encourage you to pick the following strategy. The first goal should be getting a working model end to end. Make sure it trains. Make sure it doesn't crash. Make sure it submits correctly. If you can't get this done, you won't be able to get a per a model that performs really well. I know it might sound useless. Why wouldn't I just go for the big solution? But truth be told, if you spend time actually getting this done, you're going to save your yourself hours and hours on end of debugging and trying to understand what went wrong when you try to do it all at once. Now again once you have that model that works end to end very basic just the low cut off make it better start making controlled upgrades the key word here is controlled upgrades make sure you're tracking what you're doing don't
jump to fancy tricks don't do all at once you again you're going to waste a lot of time debugging so make sure you take uh steps one at a time and you track what you're doing let's talk about ablations now that we're talking about these small steps here you see an example example of different configurations or different settings that you can set for your model and that you could track, right? You could track number of layers, the activation function, the batch size, so on and so forth. For each one of those settings, you're going to be having different performances and it's best for you to run oblations. What does that mean? It means changing one thing in your model, one thing in your model, rerunning it, and comparing the results, the accuracy of your model. So examples would be adding one hither layer or changing the size of one layer or adding dropout or adding a weight decay or a different
learning rate so on and so forth. A rule of thumb is that if you change five things at once and accuracy improves, you don't know why it improved. You don't know if if it could have been higher or if it is actually just you just got lucky. So do it systematically. Record results in a small table. And honestly the best way to do this is with a study group. Um you should have peers and you should talk to them about what you are working on. So for example talk to them about your trying different activation functions. Talk to them about trying different batch sizes. Obviously don't give your code away but it's best that you have peers that tell you hey um I tried changing my dropout and that improved my model. Take a look at it.
You get to learn most by running this experiments. Again this homework is not theoretical. It's as much theoretical as this practical. It's about you applying what you learned in class in a real life scenario. And the best takeaway you can have from this is actually learning what makes a difference in the real world. So please use this as an opportunity to explore what's out there and explore those options and explore what works best in this scenario and how you would approach real life uh ML problem. Um now I like to give uh yeah when when when looking at this I like to give um um metaphor to kids. When kids are growing up uh parents start giving them new ingredients one at a time and not 10 at a time. The reason being that if you give them 10 new ingredients which they never had before and then they get an allergy, you don't know what caused it, right? Same here. Same thing here. If you have five different runs and all of
them are completely different, completely at random, you don't know what caused the performance to be higher or lower. So, I can't emphasize this enough. Change one thing at a time. Make make careful choices, deliberate choices, and see how your accuracy improves. Um, now for context, I think it's really been covered that part one is more about implementing the pro concept. Part two is about this challenge mode in which you have to run ablations until you suddenly reach this nice curve in which uh the the AI becomes nice. Um so you progressively build on your experiments.
You incorporate some domain knowledge. You start with the several simple architectures to get a good understanding of what's uh in there and what's the the core problem you're solving and then you end up with a model that's actually performing really really well and you solve your problem. So that's the whole picture. Now if I want you to take three takeaways from today, it's going to be one, the model is going to see the MEL spectrogram features, not the raw waveform. Two, the target labels are going to be phonms, which is the smallest sound unit. And third, your score will improve only if you use clean experiment tracking tracking and systematic ablations. Sure, you might get lucky maybe, but you don't want to risk waiting for last minute and then putting it all at once hoping it works and then it crashes for a reason that you can't figure out and then you go to your TA and you're like, "Hey, it's not
working. Why isn't it working?" Well, take the systematic approach. Make sure it runs um on a low cut off and then you prove that's going to save you so much time. Now, moving on to the notebook. Um and while we're we're at it, while it's being set up, I also want to emphasize, please read the write up. You're going to save yourself so much time if you just go through the whole write up top to bottom making sure you understand every single word, every single notion that's there. Truth to be told, a lot of times we rush through things. We just figure, oh, it's easy. I figured out what I have to do. I'm just going to go in the notebook and just put that there and boom, it works. I finished. But if you don't understand what you're doing, it's really, really hard to learn. And then it's even harder when you have to figure out what's going wrong. So spending 1 hour or 2 hours making sure you understand the the write out from
top to bottom and then making sure you read all of this text that's in the notebook and understand what's in here is going to save you so much time debugging and especially it's going to make your interaction of the keys so much easier because you're going to go to them and be like, "Hey, this isn't working and I I I tried this. I know what I should do and this isn't working." As opposed to this isn't working. I have no idea why. I have no idea what I should be doing. It's a very different interaction. It's going to save you so much time and it's also going to help you in solving the homework and achieving higher scores.
So, as you know, there's a bonus if you go above the highest threshold. So, good luck on that. Um, now moving on to the notebook. I wanted to emphasize a few things. If you go down, obviously you need to read read the acknowledgements. Please don't just put here as true. Please read through those. Uh, but one of the first things I want to emphasize is um the Kaggle. We're going to reach a code at some point. a code block. Um, that's going to be where the Yeah, those are the phonings. Okay, there we go. Here is where the kegle API setup is being done. Depending on what what you're going to be what platform you're going to be using, whether it be Collab, AWS, PSC, Kaggle itself, the most important thing you need to do before you get any submission done, any uh anything fancy done on this homework, any configuration is to make sure your Kaggle is working properly.
Make sure that you put in your username, that you know how to generate your key, your API key, and that you you know how to put it in here, and it actually works. You can actually pull the data. Now, this is different across across platforms. We try to emphasize this here. If you're using Kaggle, there's a specific way to uh instantiate it. If you're using Collab or AWS, there's different way. Please make sure you run the correct code. You're not supposed to run all of the code blocks. You're supposed to run the ones that are for your specific platform, right? Um, again, depending on the platform you're going to be using, the data is going to be downloaded in different places. And we're going to see that a bit later.
Actually, we can show that right now. Um, if we scroll down. Yeah. If we scroll down to the root folder.
Oh, root folder. Okay. Here. Yes. Yeah. As I was saying, depending on the platform you use, different code blocks are going to run because the data is going to be pulled differently and it's going to be saved differently, right? the same way an iPhone has a different uh folder structure than an Android or whatever. So for the same reason if you use Collab or if you use Kaggle the where you find your data after you download it is going to be different. So make sure you are able to find your data after you download it and you're able to use it. This is one of the very easy things to miss and it's going to give you a lot of headaches if you don't get it right from the get- go.
So, make sure to make sure you get this right. And if you switch across platforms for whatever reason, make sure this is something that you modify that you keep track of. Um, and then just going through the code. Um, we're going to be implementing the data set and the data loader in a similar way as we discussed um in our station zero.
Data loader. Yeah, at the top. Yeah, is a data loader and then the data set is right above it. should be right above it I believe.
Then we are going to network model. No, the data set. Data set. Oh, here at top.
Yes, right here. Yeah. So, here is where you're going to have to implement your data set. And then you're going to have to implement your data loader. Just as mentioned in your sitation zero, you want to make careful choices about how you proc pre-process your data, how you store your data, how you access your data. Um those are going to be the functions you're going to be implementing. Um again the the X and the Y pairs right the um specttograms the specttograms and then the phone names. Um this should be pretty straightforward from the the comments what you have to do. If you got more questions make sure again you watch the rest stationation zero and then you come back here. Um so data set data loader again you can make a lot of choices
and test data set. Exactly. Yes. So thank you for bringing that up again. you mentioned and in the beginning that uh the the test data set doesn't have the phone names included right so uh the way we are going to be implementing this data set is going to be different um so that's why we need two different classes
and then the architecture exactly so moving on to the architecture this is where you're going to make your your choices um in how the architecture is going to look how how many layers you're going to have how wide each layer is going to be um so this is where the the architecture really has changed, how your model really looks like uh changes. Um there's no rule of thumb. There's no one sizefits all. This is by trial and error. Um which is why we're encouraging you to to run the ablations. Start early so you have the time to run multiple tests to tweak little things and see how it performs. Um maybe talk to your peers and see what worked for them. Um, again, don't share your code, don't share your notebook, but you can talk to them and figure out, oh, maybe try a deeper network or actually try a wider network.
That helped me. Um, we have different um weight in sizations, right? You can explore with them. You can there there's so many options really here um that you you really just have to explore and figure out what works best in your case. This is overall the competition. So figure out what improves your model. Um that's the the biggest advice I can give you really. Try each one one at a time and figure out how your models performs. Um let's see part of this code part of this uh notebook is um already fixed. You just have to run it.
I'm talking about the submission part. Is there anything here that I should uh yeah again this is about the model, the loss function, the optimizer. You can make different configurations here. Um oh one very important thing is that we have a threshold on the number of parameters that you can have. So this um
yeah this this configuration that you're going to be having for your model it can be completely unlimited. You can put whatever there you must have at most 20 million parameters in your architecture. And please know that any submission above 20 million is going to be flagged as an AIV. Also um we've had issues in the past with students um using tricks to get around the thresholds. Now, I really suggest you do not try that. Um, because we're going to be running your notebook to see if the score we get is the same one as you submitted. One, and two, to see if you respected the conditions, the the uh rules of this competition. One of them being that we're only allowed to use an MLP architecture, a multi-layer perception architecture. So, don't try anything too fancy. um because it will be considered an AIV or it will be considered uh a zero in uh in a good case if it wasn't intentional, if it was just a uh
configuration error. So just keep this in mind. If at any [snorts] point you're unsure about it, it's always better to go ask your TA, hey, can I use this? Is this fine? Um you can post on Piaza about it. Um but it's always better to do that before you post to the competition and before the competition ends, obviously, because otherwise you run the risk of us figuring out you did something you shouldn't have done. um you're showing the optimizer and the scheduler. Again, those are different uh things you can change in your model um that will affect the performance and the accuracy of your overall model.
And now we go to the train apple. Yeah, here we're training our models. We define how our models are trained actually. Again, here we set up the weights and biases. Um it's not mandatory. You can actually get around this I believe but I really suggest you don't. Um you can find your preferred method of tracking your um applications but I suggest you try one. It works really well and you can actually see how your models are performing between each other and you can pick up where you left. You can save your run and you can rerun um where you left off. So it it really helps. It really helps in keeping track of everything you're doing. Um, so experiment, experiment, experiment and track what you're doing. Again, this is the code that you're going to be running a lot. This is where you're actually going to be running your oblations and you're going to be waiting for it to be done.
Keep in mind this takes time. Fantastic. So, here are two to-do you need to fill in your notebook.
Yep. This is where you need to figure out what you need to to fill in and how you you test your model once now that you've have it trained.
And then going to the KGO submission. Yes, once your model is trained, um it's great. The validation was just for you to get an idea of how your model should perform. But for you to be able to see how it would actually perform, we would need to test it on the test data set, right? So what actually you would do is you would generate those predictions and then you'd be submitting using this giggle API. You simply have to run this uh block. Um it's again do the not modified run it as is as it says right here. And this is going to actually output your uh predictions. It's going to send them directly to kegle and then depending how good your predictions are, your result is going to be on your on on the leaderboard. You're going to be seeing how well your model did. Keep in mind that the accuracy you get for your uh validation might not be the same you get for the actual test data set. The test data set is the one that matters.
It's the one you don't have the phone names for that you can't just you don't know what the prediction should be and it's going to be the one you are evaluated on.
And then we just generate some file we need for a submission. The first one it if you run this cell you can get the JSON file and then it's the final code submission section. Here in the readme section, you need to uh complete the readme all the components you use for train your model. And here uh you need to put your 1DB username and also your project name and all the additional files you use like you generate during this process. And then you can just run the following cells to get the final um zip file to submit to the autolab.
Yeah, exactly. Following cells you you don't need to modify but just run the cells.
And again going back to what we were saying, keep in mind that kegle is where you submit your predictions to get an idea of how well you're performing. Kegle is also where you get the data set from. Once you have your model done, once you submitting, you submit those predictions. Once you know how you performed, you're going to be running the code below to get your submission files which are going to be sent to AutoLab. We need those to be able to see whether how you performed that, how you got those predictions, right? Kegle takes care of knowing how good your predictions are. Autolab is going to be useful for us to know how you managed to get those predictions.
Yeah, that's I think a good good summary of why we're using two different platforms. Okay, cool. Uh, so is any question for our part two?
Um, one thing I want to mention before we get into the question is you're going to be noticing uh two different notebooks on auto lab. One of them is going to be called checkpoint. The other one is going to be called starter notebook. The checkpoint is simply a notebook that contains a quiz. It contains some blocks that you have to run. um and you have to submit a notebook. I think it actually generates an output that you have to submit to um auto lab but that one isn't like it's it's not homework one part two it's part of homework one part two but that checkpoint is only one step in it once you're done with that checkpoint you need to move on to the actual uh homework one part two complete
yeah um another thing maybe you should able to see all the um all the file you need for the part two. So here's the write up and here's the notebook we just saw and also the checkpoint notebook and uh which is used for the quiz. Yeah. Is any question for that?
Excuse me. Can you hear me? Yeah. Uh uh just now you you've mentioned that um the checkpoint notebook is for the quiz.
Yes. Uh so in the checkpoint notebook there are only some uh questions you need to answer which is relevant to the homework one part two. So it's not relevant to the train model. Yeah. And keep in mind,
yeah, and keep in mind that you must answer the checkpoint book. Um, that's the first deadline you have. Once you have that done, and this again, this is just answering questions, then you move on to the starter notebook for which you need to submit um a model and the predictions.
We can take a look at the trackpoint notebook. So here you can see there are some multiple choice questions. You just need to answer those questions and there's a cell like about the cargo. So in a cargo you need to get like 60% of accuracy. So you can just run all the cells after you finish the questions and finally you will got a JSON file and you submit this JSON file to the auto lab. So, so there's a two component components. First, you need to achieve 60% accuracy on the Kaggle. And to answer these two questions, uh 10 questions, yeah,
the 60% is from the pipeline model. It's from the starter notebook and it has to be end to end uh running. That's why we have the slow um threshold so that we make sure that by the time you finish the checkpoint your notebook runs you are able to get the model that runs maybe not not well maybe not performing well but it runs. So someone asked a question the quiz in the checkpoint is about part two not uh not the one on the canvas. Canvas is a weekly quiz.
Okay. Are there any other questions? Any other questions? Uh so if there's no question or you want to ask uh in person so yeah so maybe we can stop the our part two section now. Thank you.
Perfect. Thank you so much. If you have any questions, don't hesitate to post on PS or just email.
Questions about this episode
What is discussed in "11785 Spring 2026 - Homework 1 Bootcamp"?
In order: 0:00 AutoLab, Anaconda, Python 3.13, Patza; 10:00 Anaconda; 20:00 Cross Entropy Loss, Mean Squared Error; 30:00 Stochastic Gradient Descent, Cross Entropy Loss, Batch Normalization, Weights and Biases; 40:00 Weights and Biases; 50:00 Kaggle, Weights and Biases, MLP, AutoLab; 1:00:00 Kaggle; 1:10:00 AutoLab, Kaggle, Weights and Biases.
What is mentioned in this Carnegie Mellon University Deep Learning episode?
11 people, works and ideas are mentioned, including MLP, AutoLab, Kaggle, Anaconda, Stochastic Gradient Descent, Cross Entropy Loss. Each one on this page links to its own page with every episode that mentions it.
How long is "11785 Spring 2026 - Homework 1 Bootcamp"?
The episode runs 1 h 18 min; the transcript is about 12,350 words in 135 timestamped sections.
More from Carnegie Mellon University Deep Learning
About this transcript: the episode's spoken words as captioned on YouTube, split into timestamped sections. Reclip.Me locates every person, work and idea in the text, keeps the time it is first named, and quotes the words around it verbatim. Last updated January 24, 2026.