Welcome to KnowledgeCity's course on machine learning, Machine Learning, Challenges and Applications. Ind these lessons, you'll learn about model selection, challenges, ethical considerations, key considerations, and applications. What is model selection? Model selection is the process of selecting a good machine learning model to train using a dataset. It can be applied in two ways. First, it can be across multiple models of the same type, or it can be across multiple models of different types. Things to consider when undergoing model selection, our stakeholder requirements. So whoever or whatever you're producing this model for, what are the criterias of the customer. Computing resources available. So depending on the model's complexity, it may very well be impossible to implement some of the more complex, given the computing resources that you have available to you. So you'll need to select a model that can actually be trained, given the resources that you have. Additionally, you want to consider the overall goal or purpose of the model being trained or developed. And so if the goal of the model is to make predictions on data that may or may not look similar to the training data, then you want to make sure the model you select is robust to changes. If you happen to know that the data you will be using to classify will be very similar to the training data, or there won't be like a large variance or variation, then you can probably select a simpler model to use. Next I'm going to go into model pros and cons. For support vector machines, the pros are that it's not impacted greatly by outliers. It's one of the best choices when classes are separable and it performs well with high dimensional data. Some negatives are that it can be slow for large datasets. And if your classes are overlapping in any way, then it can decrease the performance of the model greatly. And lastly, picking the right kernel function can be very tricky and difficult for SVMs. For logistic regression, the pros are that it's easy to implement. It doesn't require you to scale your features in any way. And it doesn't require to optimize your hyperparameters in any way. On the negative side, they're not very useful for nonlinear data. They perform poorly with highly correlated input data. And they're easily outperformed by other algorithms and classifiers. For random forests, they're good for handling missing data. They aren't greatly impacted by outliers. And they have lower errors than individual trees. On the negative side, the features are required to have some predictive power. They're not easily explainable because they involve so many smaller classifiers. And they require the predictions of the trees to be uncorrelated. Lastly, for decision trees, the pros are that they don't require the data to be normalized or scaled. They aren't heavily impacted by missing values. And they're easy to explain and visualize. On the downside, they're prone to over-fitting, sensitive to the slightest changes in data. And they can have longer training times. This concludes this lesson. And next up, we're going to discuss some of the challenges with machine learning. Thank you.