Why do I need pre-trained weights in transfer learning? The 2019 Stack Overflow Developer Survey Results Are InRight 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?

Variable with quotation marks "$()"

Accepted by European university, rejected by all American ones I applied to? Possible reasons?

Do working physicists consider Newtonian mechanics to be "falsified"?

Word for: a synonym with a positive connotation?

What force causes entropy to increase?

Why can't wing-mounted spoilers be used to steepen approaches?

How did passengers keep warm on sail ships?

Is it ethical to upload a automatically generated paper to a non peer-reviewed site as part of a larger research?

How do spell lists change if the party levels up without taking a long rest?

Humiliated in front of employees

Does Parliament need to approve the new Brexit delay to 31 October 2019?

For what reasons would an animal species NOT cross a *horizontal* land bridge?

Button changing its text & action. Good or terrible?

Why are Marketing Cloud timestamps not stored in the same timezone as Sales Cloud?

Do I have Disadvantage attacking with an off-hand weapon?

Merge multiple DataFrames Pandas

How to read αἱμύλιος or when to aspirate

Why can't devices on different VLANs, but on the same subnet, communicate?

Circular reasoning in L'Hopital's rule

Identify 80s or 90s comics with ripped creatures (not dwarves)

How to politely respond to generic emails requesting a PhD/job in my lab? Without wasting too much time

Using `min_active_rowversion` for global temporary tables

Do ℕ, mathbbN, BbbN, symbbN effectively differ, and is there a "canonical" specification of the naturals?

Is it ok to offer lower paid work as a trial period before negotiating for a full-time job?



Why do I need pre-trained weights in transfer learning?



The 2019 Stack Overflow Developer Survey Results Are InRight 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?










2












$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.










share|improve this question











$endgroup$
















    2












    $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.










    share|improve this question











    $endgroup$














      2












      2








      2





      $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.










      share|improve this question











      $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






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Apr 1 at 4:11









      Ethan

      701625




      701625










      asked Mar 31 at 22:20









      BadumBadum

      487




      487




















          2 Answers
          2






          active

          oldest

          votes


















          2












          $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






          share|improve this answer









          $endgroup$




















            1












            $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






            share|improve this answer











            $endgroup$













              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
              );



              );













              draft saved

              draft discarded


















              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









              2












              $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






              share|improve this answer









              $endgroup$

















                2












                $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






                share|improve this answer









                $endgroup$















                  2












                  2








                  2





                  $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






                  share|improve this answer









                  $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







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Apr 1 at 10:32









                  thanatozthanatoz

                  603421




                  603421





















                      1












                      $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






                      share|improve this answer











                      $endgroup$

















                        1












                        $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






                        share|improve this answer











                        $endgroup$















                          1












                          1








                          1





                          $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






                          share|improve this answer











                          $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







                          share|improve this answer














                          share|improve this answer



                          share|improve this answer








                          edited Apr 1 at 12:17









                          Blenzus

                          16410




                          16410










                          answered Apr 1 at 2:37









                          Pedro Henrique MonfortePedro Henrique Monforte

                          412112




                          412112



























                              draft saved

                              draft discarded
















































                              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.




                              draft saved


                              draft discarded














                              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





















































                              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







                              Popular posts from this blog

                              Adding axes to figuresAdding axes labels to LaTeX figuresLaTeX equivalent of ConTeXt buffersRotate a node but not its content: the case of the ellipse decorationHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizeNumerical conditional within tikz keys?adding axes to shapesAlign axes across subfiguresAdding figures with a certain orderLine up nested tikz enviroments or how to get rid of themAdding axes labels to LaTeX figures

                              Luettelo Yhdysvaltain laivaston lentotukialuksista Lähteet | Navigointivalikko

                              Gary (muusikko) Sisällysluettelo Historia | Rockin' High | Lähteet | Aiheesta muualla | NavigointivalikkoInfobox OKTuomas "Gary" Keskinen Ancaran kitaristiksiProjekti Rockin' High