New answers tagged

2

Estimating $p\left(z_T \mid x_{1\ldots T}\right)$ is called filtering, and it’s a fundamental operation on HMMs. Filtering is estimation of the current state, given all observations up to this point. (Contrast it with smoothing: estimating a state based on past and future observations.) You’d want to perform filtering with the forward algorithm, not the ...


2

The learning rate is just applied to each of the tree's predictions and has nothing to do with the tree model itself but the boosting 'meta' algorithm. Since boosting is iteratively learning from the past model it can overfit so the learning rate is a simple way to control for that. So after each fit that round's predictions is equal to the previous round ...


2

I can imagine this happening if you were combining categories that don't have anything in common, say photos of wedding dresses, excavators, and parrots. In such a case, there is not much that the algorithm can learn about the new "category", nothing to generalize. If you want to distinguish one category from others, you could use something like ...


0

This boils down to scientific value and interpretation of the different labels. If both label definitions carry scientific information that can not be decoupled then multi-output classification is recommended such as sklearn.multioutput.MultiOutputClassifier, avoiding the assessment of the relative performance between two single classifiers. If both label ...


0

The "vanilla" SVM algorithm does not allow for fixing the w coefficients (at least that I'm aware of). But, you could maybe project the data into the known coefficients, i.e. create $z=2x_1+x_2$, and run SVM on it. Extracting the intercept there seems to work in this toy example: library(e1071) x = matrix(rnorm(200, mean=1), ncol=2) c = 2 y = ...


0

SVM is a classification algorithm that relies on optimization only. It does not assume a probabilistic model. You can use it for prediction, but not really for inference. FraMan explanation might give some intuition, but I'm not sure how it generalizes to different kernels than the linear one, and I'm not 100% sure it holds for the linear as well.


2

$O(n)$ In a CNN, the number of features in each feature map is at most a constant times the number of input pixels $n$ (typically the constant is < 1). Convolving a fixed size filter across an image with $n$ pixels takes $O(n)$ time, since each output is just the sum product between $k$ pixels in the image, and $k$ weights in the filter, and $k$ doesn't ...


0

Sometimes it is much easier to implement directly. A situation whereby no functionality from sklearn is used, so it is too much a dependency to have large library just for confusion matrix. If you would like to compute confusion matrix for multi-classifier, that is no more than a contingency table. Let's use a synthetic data, 100 prediction and true classes, ...


1

One loss function can be an upper bound of another loss function. E.g. $|e|$ is an upper bound of $\sqrt{|e|}$ in the interval $(-\infty,-1]\cup [1,\infty)$ but the opposite is the case in the interval $[-1,1]$. At the same time, most of the loss functions are not bound by a constant (as opposed to another function).


1

Whenever you see an accuracy of $\frac{1}{NumClasses}$ after a few epochs it is an immediate red flag that your network isn't learning anything at all. It may be outputting a constant - as Nuclear Hoagie suggested - or it could be outputting noise. This can be due to vanishing gradients on the backwards pass, exploding gradients on the forwards pass, too ...


2

If you find accuracy exactly equal to one of the class proportions, it may indicate that your classifier is just outputting a constant result - it labels every sample as one of the classes, and only gets the ones that are actually that class correct. This is especially true if the accuracy is equal to the majority class proportion, as it's the simplest way ...


0

It depends and traditional practices differ between fields (e.g. statistics vs. computer science vs. mechanistic biological modeling vs. bioinformatics etc.). I think when comparing different algorithms this really makes sense. Why? Well, let's say I'm trying out a few algorithms on one dataset. Let's assume the dataset is so well representative of tasks I'd ...


0

In a real-life practical problem, the answer would of course be to go and find out more about the data generating process, understand each variable and find out how one should interpret these outliers. I assume this is some kind of data challenge, where this is not possible, but if this is a real problem, then finding out more about the data will be a much ...


0

What you are referring to is a known statistical problem called feature selection, and unfortunately there is no general answer to that. It very much depends on the data that you have and the true relationship between the features and the outcome. For example, if you assume that the probability of the outcome being 0 or 1 is linear in the feature, you can ...


0

You refer to two ways to formulate the anomaly detection problem in terms of a max-margin approach which were first treated in detail in the paper Estimating Support of a High-Dimensional Distribution. See also the book kernel method for pattern analysis for an accessible and detailed analysis. One motivated by measure theory, and the second by geometry. Let ...


0

Support Vector Machines come in a few flavors. Hard margin SVMs demand linear separability to construct the equidistant margins parallel to the hyperplane where all samples must sit either on or outside the margins. Soft margin SVMs allow samples to cross the margins by giving them 'slack'. In a soft margin SVM the problem involves minimising slack while ...


1

I once (can't remember when or where) saw a journal article in which authors called it "harmfulness". In that article FP was "worse kind of error" than FN (it had something to do with amputations). So FP/(FP+FN) was measuring how harmfull a diagnostic method is when it actually "makes" a mistake.


2

A simplified answer, as indicated by Cagdas Ozgenc, might be: whenever you do not aim for the true predictive distribution. A second aspect is the difference between fitting/estimation, inference, and forecast comparison. When you fit by minimizing a proper scoring rule and then add a penalty to deal with overfitting, your objective is usually no longer a ...


-1

Use logistic regression. That gives you an estimated probability for membership, not a hard classification. Then, if you need a crisp decision at a later point, use a loss function based on real (say, economic) losses from wrong decisions. There are many similar posts, for instance How does logistic regression "elegantly" handle unbalanced ...


2

There are a few options you could explore. Firstly, you could simply try dropping the Y channel and only feeding the RGB channels to the network. I don't have much experience with RGBY images but I imagine that it might result in muting parts of the colour gamut. Secondly, you could try embedding the 4 channels into a lower dimensional (3 channel) space. ...


1

The discriminative value of a feature is based on its statistical distance between classes. I have calculated the mean and variance for each feature and each class Using your feature $i$ class $j$ estimated mean $\hat{\mu}_{i,j}$ and estimated variance $\hat{\sigma}_{i,j}^2$, one approach would be to compute the symmetric KL divergence for each feature for ...


2

Excessive confidence implies one of two things: firstly it could mean your network is really good at isolating the correct prediction, but this is unlikely due to the still high confidence on incorrect classifications and the fact that the network isn't particularly deep; secondly it could mean that the weights to your last dense layer are incredibly high, ...


2

If you have enough evidence to believe that the patterns in 2020 and 2021 data are different (i.e: they're not just two samples of the same population), then you should not expect the same model to work well with both. You'll need two separate models. If for some reason you need to use only one model, then split your data at random and use "year" ...


4

No, there is not, at least according to what I could find in Google and Wikipedia. I would argue that, while that can be an interesting metric to characterize errors, it does not convey any new information that the habitual metrics didn't already.


3

That's most likely just a rounding issue. The thresholds are likely not exactly 0.2, 0.3 etc, but the figure doesn't show enough significant digits to tell them apart.


1

Your idea of trying to reduce $R$ to reduce the bound is interesting, but I do not see a dilemma. First, lets define each concept precisely. Given a data set $(x_i, y_i)_{i=1}^n$, $x_i \, \in \, \mathbb{R}^k$, $y_i\,\in\,\{-1,1\}$, define $R = \underset{i\,\in\,[n]}{max} ||x_i||$. The theorem states that the perceptron converges for any constant $\gamma > ...


4

So, can a linear regressor or classifier learn to sum 3 bits into an integer between 0-3? Why or why not? Yes, a linear regression can solve this problem. Write the prediction as an inner product $w ^T x=y$. A weight vector $w$ that is all 1s yields the desired result exactly. Since we only have eight cases (3 bits, so $2^3$ cases), you can just prove this ...


2

The beta for (e.g.) hamster isn't the difference from the log odds of the base rate, it's the difference from the log odds for the reference level (i.e., frog). Without knowing what proportion of the critters are each level, we can't compute what they should be, but I see no reason to suspect the outputted values are wrong.


1

Well the model should be better on the training data generally since it uses that data to train the parameters. However due to randomness in the sample the accuracy can go a little bit up and down so it is not that suprising that the test data accuracy was higher in this case, the difference in accuracy is probably neglible. Overall you can probably say that ...


0

I would say from the first diagram, there is a overfitting problem. The logic is simple: For over-fitting, you have training and validation curve apart from each other, one is performing good and one is not For under-fitting, both performance are bad, but two curves are close to each other. A related discussion can be found in my other answer. Boosting: ...


1

For every Machine Learning model you could use gridsearch to optimize your hyper parameters, see more here https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html.


2

Your example is a data set with explanatory data matrix $X_{T \times 3}$ and target data vector $Y_{T \times 1}$. If your understanding of the "true" dynamics of $Y$ is correct, the state can vary over time, from absent to present. However, present is an absorbing state. Target variable $Y_t$ could be modeled with an observation equation, a ...


0

In the KNN classifier with the k= 1 and with infinite number of training samples, the minimum error is never higher than twice the of the Bayesian error Reference


2

Train and test both models using the same data. Otherwise you can’t distinguish between differences because of the models and differences because of the samples. Your argument about giving the same result would only hold if you take many samples and aggregate your measure across these. (This is related to bootstrap resampling.) But you’re only taking one (...


3

Your question actually motivated me to writeup a recently published Stanford paper - link. Here's the writeup if you're curious. Note that you'll still see the performance hits because it uses NCV, but this method seems statistically robust. Finally, I think Cross Validated was missing info about computing the SE because the method didn't exist. Dependence ...


0

From your description it doesn't sound like a one-class classification problem, but rather that you are lacking data. The usual one-class classification scenario is an anomaly or novelty, detection, where you have "normal" data, learn its distribution and classify things that do not match the distribution as atypical. This is very different from ...


0

As I mentioned in the comments, all of these metrics are calculated from measures in a typical confusion matrix of True Positives, False Positives, True Negatives and False Negatives - see en.wikipedia.org/wiki/Confusion_matrix Recall is the same as True Positive Rate, which is also sometimes called Failure Detection Rate - TP/(TP+FN) False Alarm Rate is the ...


1

Yes, your intuition is correct; it is weighted by the ratio of the target variables. For example, say we have 1000 points out of which 10% are of class B and 90% of class A. We want to find our class B instances but we do a random classification based on proportions. i.e. we pick at random 100 of our 1000 points to be class B and the rest 900 to be of class ...


4

The first part of your conclusion is correct. Sklearn computes probabilities in the RFC by classifying subsamples and then averaging the proportion of observations in each class. This will bias probabilities that should be near 0 and 1 inward. This is simply because for a class to have a probability near 0 or 1 we need that many of the subsample classifiers ...


1

Literally, $P(\text{data})=P(\mathcal D)=P(X_1=x_1...X_n=x_n)$ is the probability of obtaining the data you have. It is sometimes a probability density (e.g. when the data is continuous). In that case, we refer to it as $f_{\mathbf X}(x_1...x_n)$ and the conditional density is referred as $f_{\mathbf X|Y=y}(x_1...x_n)$. So, if you were to sample $n$ data ...


1

P(data) That's how I read it: It's the probability of observing the given datapoint(s) in the population you are working on. For example, your dataset is a woman of age 75 (so data = 75) and in your study population there are 5% of women in the age bracket [74.5, 75.5) then P(data) = 0.05. If your dataset is two women of age 75 then P(data) = 0.05 * 0.05 = ...


2

But what does 𝑃(data|class=1) mean? Does it mean the probability of an age given the women has breast cancer? Yes, think about filter. Suppose you have a lot of data, each record has two fields, age and if this person had breast cancer. 𝑃(data|class=1) means we first filter the data with all people that had breast cancer, and then look the distribution of ...


0

The adjusted Rand Index is a harsh measure, since every clustering error is counted many times, once for each other object that the erroneously classified object is paired with. It can be a useful training objective but it's not the one I would report to the client! KL divergence is a reasonable metric. However, your question makes me wonder: are you making ...


1

There's a use of "long tail" in classification that is closely related to the use popularised in marketing. The book "The Long Tail" argued that there were books, movies, etc, that individually were in very low demand but collectively were in high demand, and that this would be important for businesses such as Amazon that could afford to ...


Top 50 recent answers are included