Why do I need pre-trained weights in transfer learning? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) 2019 Moderator Election Q&A - Questionnaire 2019 Community Moderator Election ResultsRight way to Fine Tune - Train a fully connected layer as a separate stepWhy is vanishing gradient a problem?What is the different between Fine-tuning and Transfer-learning?Fine tuning accuracy lower than Raw Transfer Learning AccuracyType of images used to train a neural networkWhere to find pre-trained models for transfer learningDifficulty in choosing Hyperparameters for my CNNHow to properly mean-center my dataWhy is the GoogLeNet retrained model size less compared to others?Does it make sense to train a convolutional neural network on lo-res, use on hi-res pictures?
The following signatures were invalid: EXPKEYSIG 1397BC53640DB551
What can I do if my MacBook isn’t charging but already ran out?
Can I throw a longsword at someone?
What's the point in a preamp?
Using "nakedly" instead of "with nothing on"
How can I make names more distinctive without making them longer?
Limit for e and 1/e
Notation for two qubit composite product state
Single author papers against my advisor's will?
Two different pronunciation of "понял"
New Order #5: where Fibonacci and Beatty meet at Wythoff
How do you clear the ApexPages.getMessages() collection in a test?
When is phishing education going too far?
What do you call the holes in a flute?
How should I respond to a player wanting to catch a sword between their hands?
Simulating Exploding Dice
Determine whether f is a function, an injection, a surjection
Cold is to Refrigerator as warm is to?
Is above average number of years spent on PhD considered a red flag in future academia or industry positions?
Passing functions in C++
Stop battery usage [Ubuntu 18]
How do I automatically answer y in bash script?
Do working physicists consider Newtonian mechanics to be "falsified"?
Who can trigger ship-wide alerts in Star Trek?
Why do I need pre-trained weights in transfer learning?
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
2019 Moderator Election Q&A - Questionnaire
2019 Community Moderator Election ResultsRight way to Fine Tune - Train a fully connected layer as a separate stepWhy is vanishing gradient a problem?What is the different between Fine-tuning and Transfer-learning?Fine tuning accuracy lower than Raw Transfer Learning AccuracyType of images used to train a neural networkWhere to find pre-trained models for transfer learningDifficulty in choosing Hyperparameters for my CNNHow to properly mean-center my dataWhy is the GoogLeNet retrained model size less compared to others?Does it make sense to train a convolutional neural network on lo-res, use on hi-res pictures?
$begingroup$
I am using a Mask-RCNN. I first chose the resnet50 backbone then downloaded COCO pre-trained weights.
Why do I need pre-trained weights for transfer learning?
The transfer learning approach is to train a base network and then copy its first layers of the target. My base network is resnet50 and I copied the first layers to Mask RCNN. So, why do I need pre-trained weights, for example, coco pre-trained weights?
I understand that I copy layers and pre-trained weights from resnet.
Thanks in advance.
deep-learning cnn transfer-learning
$endgroup$
add a comment |
$begingroup$
I am using a Mask-RCNN. I first chose the resnet50 backbone then downloaded COCO pre-trained weights.
Why do I need pre-trained weights for transfer learning?
The transfer learning approach is to train a base network and then copy its first layers of the target. My base network is resnet50 and I copied the first layers to Mask RCNN. So, why do I need pre-trained weights, for example, coco pre-trained weights?
I understand that I copy layers and pre-trained weights from resnet.
Thanks in advance.
deep-learning cnn transfer-learning
$endgroup$
add a comment |
$begingroup$
I am using a Mask-RCNN. I first chose the resnet50 backbone then downloaded COCO pre-trained weights.
Why do I need pre-trained weights for transfer learning?
The transfer learning approach is to train a base network and then copy its first layers of the target. My base network is resnet50 and I copied the first layers to Mask RCNN. So, why do I need pre-trained weights, for example, coco pre-trained weights?
I understand that I copy layers and pre-trained weights from resnet.
Thanks in advance.
deep-learning cnn transfer-learning
$endgroup$
I am using a Mask-RCNN. I first chose the resnet50 backbone then downloaded COCO pre-trained weights.
Why do I need pre-trained weights for transfer learning?
The transfer learning approach is to train a base network and then copy its first layers of the target. My base network is resnet50 and I copied the first layers to Mask RCNN. So, why do I need pre-trained weights, for example, coco pre-trained weights?
I understand that I copy layers and pre-trained weights from resnet.
Thanks in advance.
deep-learning cnn transfer-learning
deep-learning cnn transfer-learning
edited Apr 1 at 4:11
Ethan
697625
697625
asked Mar 31 at 22:20
BadumBadum
537
537
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
$begingroup$
When you are calling a pre-trained model (resnet50 in your case) for performing transfer learning, only the model's architecture is actually called.
This architecture is practically useless to perform any sort of computational operation on the data and predicting any output unless trained. For that, you will need the weights (variables understood by the model on some previous dataset).
Weights are more like mathematical coefficients which take the input and performs the computation on the input to generate a required output. They are more like the coefficient in a linear algebra problem. This is the actual reason why it is required to call the weights for the model.
Even if you are not calling any weights in you model, you can make your model trainable and train the same to generate your own weights that fit your data properly rather than fine-tuning your model. Read more about the same here
$endgroup$
add a comment |
$begingroup$
You need pre-trained weights for it to be Transfer Learning.
Copying layer structures is not transfer learning, it is just structuring a network inspired/copied from others.
The transfer learning consists of using pre-trained layers to construct a different network that migth have similarities in the first layers. That is usually useful for Deep Learning.
So the reasons for using Transfer Learning are:
You want to analyse something different in a dataset that was used to train another network
You want to perform classification in a class that was used to train a certain network but was not annotated before
You want to train a network for a problem similar to the other one and don't have time or computational power to retrain all layers
$endgroup$
add a comment |
Your Answer
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%2f48317%2fwhy-do-i-need-pre-trained-weights-in-transfer-learning%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
When you are calling a pre-trained model (resnet50 in your case) for performing transfer learning, only the model's architecture is actually called.
This architecture is practically useless to perform any sort of computational operation on the data and predicting any output unless trained. For that, you will need the weights (variables understood by the model on some previous dataset).
Weights are more like mathematical coefficients which take the input and performs the computation on the input to generate a required output. They are more like the coefficient in a linear algebra problem. This is the actual reason why it is required to call the weights for the model.
Even if you are not calling any weights in you model, you can make your model trainable and train the same to generate your own weights that fit your data properly rather than fine-tuning your model. Read more about the same here
$endgroup$
add a comment |
$begingroup$
When you are calling a pre-trained model (resnet50 in your case) for performing transfer learning, only the model's architecture is actually called.
This architecture is practically useless to perform any sort of computational operation on the data and predicting any output unless trained. For that, you will need the weights (variables understood by the model on some previous dataset).
Weights are more like mathematical coefficients which take the input and performs the computation on the input to generate a required output. They are more like the coefficient in a linear algebra problem. This is the actual reason why it is required to call the weights for the model.
Even if you are not calling any weights in you model, you can make your model trainable and train the same to generate your own weights that fit your data properly rather than fine-tuning your model. Read more about the same here
$endgroup$
add a comment |
$begingroup$
When you are calling a pre-trained model (resnet50 in your case) for performing transfer learning, only the model's architecture is actually called.
This architecture is practically useless to perform any sort of computational operation on the data and predicting any output unless trained. For that, you will need the weights (variables understood by the model on some previous dataset).
Weights are more like mathematical coefficients which take the input and performs the computation on the input to generate a required output. They are more like the coefficient in a linear algebra problem. This is the actual reason why it is required to call the weights for the model.
Even if you are not calling any weights in you model, you can make your model trainable and train the same to generate your own weights that fit your data properly rather than fine-tuning your model. Read more about the same here
$endgroup$
When you are calling a pre-trained model (resnet50 in your case) for performing transfer learning, only the model's architecture is actually called.
This architecture is practically useless to perform any sort of computational operation on the data and predicting any output unless trained. For that, you will need the weights (variables understood by the model on some previous dataset).
Weights are more like mathematical coefficients which take the input and performs the computation on the input to generate a required output. They are more like the coefficient in a linear algebra problem. This is the actual reason why it is required to call the weights for the model.
Even if you are not calling any weights in you model, you can make your model trainable and train the same to generate your own weights that fit your data properly rather than fine-tuning your model. Read more about the same here
answered Apr 1 at 10:32
thanatozthanatoz
605421
605421
add a comment |
add a comment |
$begingroup$
You need pre-trained weights for it to be Transfer Learning.
Copying layer structures is not transfer learning, it is just structuring a network inspired/copied from others.
The transfer learning consists of using pre-trained layers to construct a different network that migth have similarities in the first layers. That is usually useful for Deep Learning.
So the reasons for using Transfer Learning are:
You want to analyse something different in a dataset that was used to train another network
You want to perform classification in a class that was used to train a certain network but was not annotated before
You want to train a network for a problem similar to the other one and don't have time or computational power to retrain all layers
$endgroup$
add a comment |
$begingroup$
You need pre-trained weights for it to be Transfer Learning.
Copying layer structures is not transfer learning, it is just structuring a network inspired/copied from others.
The transfer learning consists of using pre-trained layers to construct a different network that migth have similarities in the first layers. That is usually useful for Deep Learning.
So the reasons for using Transfer Learning are:
You want to analyse something different in a dataset that was used to train another network
You want to perform classification in a class that was used to train a certain network but was not annotated before
You want to train a network for a problem similar to the other one and don't have time or computational power to retrain all layers
$endgroup$
add a comment |
$begingroup$
You need pre-trained weights for it to be Transfer Learning.
Copying layer structures is not transfer learning, it is just structuring a network inspired/copied from others.
The transfer learning consists of using pre-trained layers to construct a different network that migth have similarities in the first layers. That is usually useful for Deep Learning.
So the reasons for using Transfer Learning are:
You want to analyse something different in a dataset that was used to train another network
You want to perform classification in a class that was used to train a certain network but was not annotated before
You want to train a network for a problem similar to the other one and don't have time or computational power to retrain all layers
$endgroup$
You need pre-trained weights for it to be Transfer Learning.
Copying layer structures is not transfer learning, it is just structuring a network inspired/copied from others.
The transfer learning consists of using pre-trained layers to construct a different network that migth have similarities in the first layers. That is usually useful for Deep Learning.
So the reasons for using Transfer Learning are:
You want to analyse something different in a dataset that was used to train another network
You want to perform classification in a class that was used to train a certain network but was not annotated before
You want to train a network for a problem similar to the other one and don't have time or computational power to retrain all layers
edited Apr 1 at 12:17
Blenzus
16410
16410
answered Apr 1 at 2:37
Pedro Henrique MonfortePedro Henrique Monforte
456113
456113
add a comment |
add a comment |
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%2f48317%2fwhy-do-i-need-pre-trained-weights-in-transfer-learning%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