Improve model performance on unseen data
$begingroup$
NOTE: This question was first posted on a different SO forum but I received suggestions to move it here
This is a follow-up question to a question I had previously posted on this forum
We conducted an experiment on 100 subjects and obtained a dataset that was used to train a machine learning model that works almost perfectly (we get a 99.99% accuracy) using cross-validation but fails miserably when test to new unseen data (we get only 39.8% accuracy). In detail, here is how we are testing our model:
- Conduct an experiment (100 subjects) and recording physiological data (skin conductance and heart rate)
- For each subject, compute the feature from the raw data (thus, we obtain 100 datasets with 25 features)
- Reserve the whole data of one subject for model validation
- Combine the remaining 99 datasets into one large dataset (thus, we obtain a dataset with up to 1 million rows and 25 columns)
- The obtained large dataset is used to train a model and evaluate it using a 10-folds cross-validation.
- Use the reserved dataset (see step 3) to validate the model obtained in step 5 above
The model performs very well (99.9% accuracy) when we used cross-validation (step 5) but fails to generalize (only 40% accuracy) when tested on new data from the unseen subject (step 3).
After reading the comments I received in my previous question, I decided to revise how I validate the model. Thus, instead of removing all the sample of one subject (as I did in step 3), I only remove all but a few samples (just 0.1% of the sample, i.e around 100 samples in my case). Surprising the model performs significantly better and achieves a 90% accuracy. This is puzzling and I would like to ask a few questions:
(1)How can one explain that a few samples (just 100 samples) are responsible for such an increase in performance (from 40% to 90% accuracy)(I will need to publish my result in a reputable conference)?
(2) Is there any published work that discusses this type of phenomena?
machine-learning cross-validation overfitting
$endgroup$
add a comment |
$begingroup$
NOTE: This question was first posted on a different SO forum but I received suggestions to move it here
This is a follow-up question to a question I had previously posted on this forum
We conducted an experiment on 100 subjects and obtained a dataset that was used to train a machine learning model that works almost perfectly (we get a 99.99% accuracy) using cross-validation but fails miserably when test to new unseen data (we get only 39.8% accuracy). In detail, here is how we are testing our model:
- Conduct an experiment (100 subjects) and recording physiological data (skin conductance and heart rate)
- For each subject, compute the feature from the raw data (thus, we obtain 100 datasets with 25 features)
- Reserve the whole data of one subject for model validation
- Combine the remaining 99 datasets into one large dataset (thus, we obtain a dataset with up to 1 million rows and 25 columns)
- The obtained large dataset is used to train a model and evaluate it using a 10-folds cross-validation.
- Use the reserved dataset (see step 3) to validate the model obtained in step 5 above
The model performs very well (99.9% accuracy) when we used cross-validation (step 5) but fails to generalize (only 40% accuracy) when tested on new data from the unseen subject (step 3).
After reading the comments I received in my previous question, I decided to revise how I validate the model. Thus, instead of removing all the sample of one subject (as I did in step 3), I only remove all but a few samples (just 0.1% of the sample, i.e around 100 samples in my case). Surprising the model performs significantly better and achieves a 90% accuracy. This is puzzling and I would like to ask a few questions:
(1)How can one explain that a few samples (just 100 samples) are responsible for such an increase in performance (from 40% to 90% accuracy)(I will need to publish my result in a reputable conference)?
(2) Is there any published work that discusses this type of phenomena?
machine-learning cross-validation overfitting
$endgroup$
add a comment |
$begingroup$
NOTE: This question was first posted on a different SO forum but I received suggestions to move it here
This is a follow-up question to a question I had previously posted on this forum
We conducted an experiment on 100 subjects and obtained a dataset that was used to train a machine learning model that works almost perfectly (we get a 99.99% accuracy) using cross-validation but fails miserably when test to new unseen data (we get only 39.8% accuracy). In detail, here is how we are testing our model:
- Conduct an experiment (100 subjects) and recording physiological data (skin conductance and heart rate)
- For each subject, compute the feature from the raw data (thus, we obtain 100 datasets with 25 features)
- Reserve the whole data of one subject for model validation
- Combine the remaining 99 datasets into one large dataset (thus, we obtain a dataset with up to 1 million rows and 25 columns)
- The obtained large dataset is used to train a model and evaluate it using a 10-folds cross-validation.
- Use the reserved dataset (see step 3) to validate the model obtained in step 5 above
The model performs very well (99.9% accuracy) when we used cross-validation (step 5) but fails to generalize (only 40% accuracy) when tested on new data from the unseen subject (step 3).
After reading the comments I received in my previous question, I decided to revise how I validate the model. Thus, instead of removing all the sample of one subject (as I did in step 3), I only remove all but a few samples (just 0.1% of the sample, i.e around 100 samples in my case). Surprising the model performs significantly better and achieves a 90% accuracy. This is puzzling and I would like to ask a few questions:
(1)How can one explain that a few samples (just 100 samples) are responsible for such an increase in performance (from 40% to 90% accuracy)(I will need to publish my result in a reputable conference)?
(2) Is there any published work that discusses this type of phenomena?
machine-learning cross-validation overfitting
$endgroup$
NOTE: This question was first posted on a different SO forum but I received suggestions to move it here
This is a follow-up question to a question I had previously posted on this forum
We conducted an experiment on 100 subjects and obtained a dataset that was used to train a machine learning model that works almost perfectly (we get a 99.99% accuracy) using cross-validation but fails miserably when test to new unseen data (we get only 39.8% accuracy). In detail, here is how we are testing our model:
- Conduct an experiment (100 subjects) and recording physiological data (skin conductance and heart rate)
- For each subject, compute the feature from the raw data (thus, we obtain 100 datasets with 25 features)
- Reserve the whole data of one subject for model validation
- Combine the remaining 99 datasets into one large dataset (thus, we obtain a dataset with up to 1 million rows and 25 columns)
- The obtained large dataset is used to train a model and evaluate it using a 10-folds cross-validation.
- Use the reserved dataset (see step 3) to validate the model obtained in step 5 above
The model performs very well (99.9% accuracy) when we used cross-validation (step 5) but fails to generalize (only 40% accuracy) when tested on new data from the unseen subject (step 3).
After reading the comments I received in my previous question, I decided to revise how I validate the model. Thus, instead of removing all the sample of one subject (as I did in step 3), I only remove all but a few samples (just 0.1% of the sample, i.e around 100 samples in my case). Surprising the model performs significantly better and achieves a 90% accuracy. This is puzzling and I would like to ask a few questions:
(1)How can one explain that a few samples (just 100 samples) are responsible for such an increase in performance (from 40% to 90% accuracy)(I will need to publish my result in a reputable conference)?
(2) Is there any published work that discusses this type of phenomena?
machine-learning cross-validation overfitting
machine-learning cross-validation overfitting
asked 4 mins ago
LapatrieLapatrie
505
505
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "557"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f44950%2fimprove-model-performance-on-unseen-data%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Data Science Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f44950%2fimprove-model-performance-on-unseen-data%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown