6

Good question. Your interpretation is adequate. Using a logarithmic function reduces the skewness of the target variable. Why does that matter? Transforming your target via a logarithmic function linearizes your target. Which is useful for many models which expect linear targets. Scikit-Learn has a page describing this phenomenon: https://scikit-learn.org/...


5

It really depends on how much data (samples) you have instead of how many features each samples has. And more importantly it depends on how you plan to structure the problem into an Environment with States and Actions.


5

It is relatively common when learning basics of RL (as opposed to Deep RL with neural networks etc), to consider a single discrete state variable. For instance many grid worlds, maze solvers etc just enumerate the positions. For practical learners, the variable is effectively one-hot encoded, but it is still a single variable. The number of state features ...


5

No, it does not make sense to do this. You model has learned how to map one input space to another, that is to say it is itself function approximation, and will likely not know what to for the unseen data. By not performing the same scaling on the test data, you are introducing systematic errors in the model. This was pointed out in the comments by nanoman ...


4

Can I use any machine learning methods having only one feature? Yes! In fact, many NLP classifications tasks are in this format. Given 1 piece of text, classify something. For example: Given 1 review, classify the sentiment Given 1 news article, classify the topic Given 1 chat message, classify the intent And now you have: Given 1 name, classify the ...


4

Your question is, what model is better between one that seems more overfitted (larger difference between train and eval set) but it has also higher scores or one that has less variance between train and eval set but at the same time it has worst results. Everything assuming that you have done a correct train test split and there is no data leakage and ...


4

It is common in applied machine learning to have the model with the lowest generalization error, as measured by score on validation data, also have the biggest delta from the score on the training data. There is nothing inherently wrong with overfitting, it depends on the goal of the project. The typical goal of applied machine learning is high predictive ...


4

It affects anything optimized by a form of gradient descent, because it affects the relative scale of the dimensions of the input. If A is generally 1000x larger than B, then changing B's coefficient by some amount is in a sense a 1000x bigger move. In theory this won't matter but in practice it can cause the gradient descent to have trouble landing in the ...


4

There is only one answer to this question, which is no, it is not acceptable. Whatever transformation you apply to the train data (PCA, scaling, encoding, etc.) you have to also apply to the test data.


4

No. The key to implementing neural networks easily and fast is having automatic differentiation. This is the key feature that allows programs using Python libraries like Pytorch or Tensorflow (and Keras), to implement only the forward pass of a neural network and have the backward pass computed automatically. Octave does not have automatic differentiation. ...


3

Octave is a great language for prototyping and experimenting with ML algorithms, as it has built-in support for numerical linear algebra such as matrix and vector calculations. Octave is optimized for rapid calculations, which is very useful in Machine Learning. It is also quite easy to do matrix multiplications in Octave as Matrices are first-class objects ...


3

When it comes to choosing a threshold, I can see 3 approaches: Make an educated guess This is what you are currently doing. You pick a value and would need to argue why this is a reasonable threshold. Obviously, the argument is as strong as the assumptions you make. Unsupervised way If you compute the matching score for all pairs between A and B, you can ...


3

Well ... there are many aspects from which one can answer this question (Like Valentin's answer ... +1!) as Machine Learning and Data Mining are very much about distributions in general. I just mention a few that come to my mind first. Some models assume Gaussian distribution e.g. K-means. Imagine you want to apply K-means on this data without log-transform....


3

As far as I know GNU Octave is an open-source alternative for Matlab. Although you can use Octave for machine learning (nnet package), I doubt you could use it for "faster coding" of neural networks. Here are my thoughts on why that is the case: When you say "fast" there are two interpretations, writing code fast and writing fast code. Writing code fast: ...


2

Well, I can't express enough that there are many many many articles and questions on bias-variance, over-fitting and under-fitting. But let me also try to explain in simple words for you. "Bias" as a word means- favoring a thing more than another. Like we heard Amazon's alexa doesn't respond to female voices/commands. so it was biased towards men. Now if ...


2

When it comes to time-series classification, models are trained to predict the next value based on the previous ones, which means that The input is the historical data up to timestamp t (in your scenario, the data up to week = 201904) The output is the value at timestamp t + 1 (y when week = 201905) If you want to predict more than 1 value into the future, ...


2

Speaking from my experience, the performance of the two is almost the same. It might depend on the problem. LeakyReLU was introduced to address the vanishing gradient problem, however it introduces yet another hyperparameter, the slope. If you want to squeeze out a little bit more performance of your model you can use LeakyReLU and tune the slope parameter, ...


2

You can check out my open source library Auto_ViML which needs just one line of code to build many different ML models from the simplest to the most complex all under your command. It also provides charts and graphs if you set verbose to the highest level (2). In addition, I have also open sourced my library for EDA called AutoViz which allows you to ...


2

AutoSklearn, AutoViML, TPOT, H2O are good choices. They can do feature engineering, but I would suggest to build your own feature based on domain knowledge.


2

value represents the number of items in each class. If you look at the top node, you should view it as: There are: 35100 samples of class 0 16288 samples of class 1 which sums up to 51388 samples total


2

When I ran your script, I got the same impression, that n_jobs was hurting you performance. However, you have to consider that parallelizing the cross-validation would only benefit if you have more data samples. With few data, the communication overhead indeed is more expensive than the processing cost involved on the task. I tried your script with more ...


2

Would try to answer based on experience and understandings of parallel computing in production for DS/ML models: Answer to your questions as high level: Does the simple program above give you better performance with increasing n_jobs when you run it? answer: Yes and can be seen bellow in results. On what OS / setup? answer: OS:ubuntu, 2xCPUsx16Cores+...


2

Sounds like you're just looking for EarlyStopping, which will stop training when validation loss does not improve for N epochs. It's the same as Iter in catboost.


2

I highly doubt that the job itself will going to be at risk. It is rather the other way around: Data science and machine learning will replace a lot of other jobs. In the end there, at least, always needs to be someone providing the data to the machine. It seems like your question rather should be "will there be enough data science positions in the future ...


2

The best option for encoding - OneHot, because if you use Label encoding you indicate that categorical values are comparable(for example label 1 < label 2), which most probably it's not true. One hot encoding create columns for each specific value in the column, moreover, these columns are linearly independent, so you don't create fake order between ...


2

It depends exactly on which kind of patterns you are talking about. Are they deterministic? That is, they are all the same, so you want to get everything after Dear, or before Att / Best Regards, you can explore regular expression patterns. In python, you can use re library: https://docs.python.org/3/library/re.html There are books about regular ...


2

It is a unit of distance, I would usually assume euclidean distance. In more detail: The data point $x_i$ is projected onto the vector $w$, which defines the orientation of the discriminating linear hyperplane as it is orthogonal to $w$. Where the discriminating hyperplane is "fixed" along the orientation of $w$ is decided by the bias Term $b$. So for ...


2

You are dealing with noisy labels. I would not switch the labelling according to a trained model that learned on that particular data set, since probably you don't know which patterns lead to your models decision. Otherwise if you know the reason for the wrong labelling, you could try to build methods yourself that run a sanity check on your data. ...


2

No. The deep learning community is overwhelmingly using Python as a language. PyTorch (maintained by Facebook) and Tensorflow (maintained by Google) are the main two frameworks. Since both frameworks are ultimately bindings on top of C++ code, it is pretty difficult to beat the performance that they give you. R has some neural network packages, and so does ...


2

Note that doing a dimensionality reduction with the target can lead you to the manifold problem. You can see in the image. What ends up happening is that the target information is lost. The information that you provide is not enough to make a guess of what algorithm will be better. Normally reducing the dimensionality of the problem to a lower dimension ...


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