#### Overview of this book

The F# functional programming language enables developers to write simple code to solve complex problems. With F#, developers create consistent and predictable programs that are easier to test and reuse, simpler to parallelize, and are less prone to bugs. If you want to learn how to use F# to build machine learning systems, then this is the book you want. Starting with an introduction to the several categories on machine learning, you will quickly learn to implement time-tested, supervised learning algorithms. You will gradually move on to solving problems on predicting housing pricing using Regression Analysis. You will then learn to use Accord.NET to implement SVM techniques and clustering. You will also learn to build a recommender system for your e-commerce site from scratch. Finally, you will dive into advanced topics such as implementing neural network algorithms while performing sentiment analysis on your data.
F# for Machine Learning Essentials
Credits
Foreword
Acknowledgments
www.PacktPub.com
Preface
Free Chapter
Introduction to Machine Learning
Information Retrieval
Collaborative Filtering
Sentiment Analysis
Index

## Multiple linear regression

Sometimes it makes more sense to include more predictors (that is, the independent variables) to find the value of the dependent variable (that is, the predicted variable). For example, predicting the price of a house based only on the total area is probably not a good idea. Maybe the price also depends on the number of bathrooms and the distance from several required facilities, such as schools, grocery stores, and so on.

So we might have a dataset as shown next, and the problem we pose for our linear regression model is to predict the price of a new house given all the other parameters:

In this case, the model can be represented as a linear combination of all the predictors, as follows:

Here, the theta values represent the parameters we must select to fit the model. In vectorized form, this can be written as:

Theta can be calculated by the following formula:

So using the `MathNet.Fsharp` package, this can be calculated as follows:

Previously, in Chapter 1, Introduction...