3

That problem would be better modeled as survival analysis, the expected duration of time until one event occurs. The event in your case would be revisit to the website. Survival analysis could also predict which people are most likely to revisit.


2

Another way to approach the problem is to take all of the trained models and compare each of their performances on the same hold-out dataset. This is the most common way to evaluate machine learning models. Choosing the evaluation metric to use depends on the goal of the project. Most machine learning projects care about predictive ability. R² is not a ...


2

There is no definite answer to this question. Usually all algorithms are tried and the best performing algo is selected. But to answer your question, it depends on the type of data you are working with and it's size. Below is a flowchart that guides you on what algo to choose for your dataset. (Keep in mind that the flowchart is to be taken with a pinch of ...


1

For starters you can find the correlation of each column with the output column and select the features which are highly correlated .This will also help you to remove features which will not contribute towards learning weights and biases . For example df.corr()["quality"] OUTPUT fixed acidity 0.119024 volatile acidity -0.395214 ...


1

One interesting note, before proceeding: The $RMSE$ and $R^2$ values for your problem have a strong negative correlation. Just look at this graph with the first three values: The correlation coefficient is coming out to be -0.9999525 considering the first three models only. Now if, others are included, then also it stays the same. Now coming to your answer, ...


1

The lambda parameter in ridge regression penalizes larger coefficients and pushes the model to balance the trade-off between fitting the data the best it can while taking into account the size of the coefficient. As a result coefficients are generally pushed closer to zero, which a larger amount of shrinkage for larger values of lambda.


1

It seems that the reason why you're getting the better result has nothing to do with cross-validation, but rather with weight adjustment happening during calculation of cross-validation result in train_decode function. To check this, I have used the following simulation, results = {"beta": [], "folds": []} noises = np.arange(0,1,0.1) ...


Only top voted, non community-wiki answers of a minimum length are eligible