{
  "id": 150561,
  "title": "Anyone looking at it from a One-Shot Learning Perspective?",
  "url": "/competitions/alaska2-image-steganalysis/discussion/150561",
  "author_name": "",
  "post_date": "2020-05-12T16:20:40.698875700Z",
  "votes": 6,
  "comment_count": 2,
  "views": 0,
  "content": "<p>Hi ,</p>\n\n<p>I have now got some clarity for my earlier question about whether we can see it as a multiclass classification problem. There are some useful advises also from augmentation perspective as well as image size perspective . </p>\n\n<p>I have one further question. Anyone already tried this as metric learning problem by using  the distances of features output  of image pairs by a siamese model ?\nI was thinking it could work to find out the difference in 75000 samples in an unsupervised way and probably classify those examples first before feeding them into neural network . Or this could be used later to finetune the predictions .</p>\n\n<p>Here is the concept taken from paper : \n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F2234817%2F90c20bbc8c1f676cf217c2a2d421ec17%2Fsiamese1.PNG?generation=1589300417979050&amp;alt=media\" alt=\"\"></p>\n\n<p>*<em>Paper for the concept : \n*</em> <a href=\"https://www.cs.cmu.edu/~rsalakhu/papers/oneshot1.pdf\">https://www.cs.cmu.edu/~rsalakhu/papers/oneshot1.pdf</a></p>\n\n<p>*<em>Here is a repo: \n*</em>\nPytorch: \n<a href=\"https://github.com/kevinzakka/one-shot-siamese\">https://github.com/kevinzakka/one-shot-siamese</a></p>\n\n<p>Keras : \n<a href=\"https://github.com/sorenbouma/keras-oneshot\">https://github.com/sorenbouma/keras-oneshot</a></p>",
  "messages": [
    {
      "id": "844478",
      "postDate": "05/12/2020 16:20:40",
      "content": "<p>Hi ,</p>\n\n<p>I have now got some clarity for my earlier question about whether we can see it as a multiclass classification problem. There are some useful advises also from augmentation perspective as well as image size perspective . </p>\n\n<p>I have one further question. Anyone already tried this as metric learning problem by using  the distances of features output  of image pairs by a siamese model ?\nI was thinking it could work to find out the difference in 75000 samples in an unsupervised way and probably classify those examples first before feeding them into neural network . Or this could be used later to finetune the predictions .</p>\n\n<p>Here is the concept taken from paper : \n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F2234817%2F90c20bbc8c1f676cf217c2a2d421ec17%2Fsiamese1.PNG?generation=1589300417979050&amp;alt=media\" alt=\"\"></p>\n\n<p>*<em>Paper for the concept : \n*</em> <a href=\"https://www.cs.cmu.edu/~rsalakhu/papers/oneshot1.pdf\">https://www.cs.cmu.edu/~rsalakhu/papers/oneshot1.pdf</a></p>\n\n<p>*<em>Here is a repo: \n*</em>\nPytorch: \n<a href=\"https://github.com/kevinzakka/one-shot-siamese\">https://github.com/kevinzakka/one-shot-siamese</a></p>\n\n<p>Keras : \n<a href=\"https://github.com/sorenbouma/keras-oneshot\">https://github.com/sorenbouma/keras-oneshot</a></p>",
      "rawMarkdown": "Hi ,\n\nI have now got some clarity for my earlier question about whether we can see it as a multiclass classification problem. There are some useful advises also from augmentation perspective as well as image size perspective . \n\nI have one further question. Anyone already tried this as metric learning problem by using  the distances of features output  of image pairs by a siamese model ?\nI was thinking it could work to find out the difference in 75000 samples in an unsupervised way and probably classify those examples first before feeding them into neural network . Or this could be used later to finetune the predictions .\n\nHere is the concept taken from paper : \n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F2234817%2F90c20bbc8c1f676cf217c2a2d421ec17%2Fsiamese1.PNG?generation=1589300417979050&amp;alt=media)\n\n\n**Paper for the concept : \n** https://www.cs.cmu.edu/~rsalakhu/papers/oneshot1.pdf\n\n**Here is a repo: \n**\nPytorch: \nhttps://github.com/kevinzakka/one-shot-siamese\n\nKeras : \nhttps://github.com/sorenbouma/keras-oneshot",
      "votes": null
    },
    {
      "id": "844714",
      "postDate": "05/12/2020 19:38:48",
      "content": "<p>Hi,\nShouldn't there be one more image input for one shot learning! \nAnother image to be fed to similar NN to get the vector in the end. Which will be classified as same or different (binary classification) in the last layer (sigmoid)</p>",
      "rawMarkdown": "Hi,\nShouldn't there be one more image input for one shot learning! \nAnother image to be fed to similar NN to get the vector in the end. Which will be classified as same or different (binary classification) in the last layer (sigmoid)",
      "votes": null
    },
    {
      "id": "847424",
      "postDate": "05/14/2020 11:44:03",
      "content": "<p><a href=\"/phoenix9032\">@phoenix9032</a> I'm also thinking about OSL strategy. But AFAIK, in Siamese Networks, we need to calculate triplet loss function.  There are three images (Anchor, Positive, Negative) needed for such nets training and by that, we bring challenges to handle this issue (to manage the Anchor). IDK, maybe there can be some strategy to do it. </p>",
      "rawMarkdown": "phoenix9032 I'm also thinking about OSL strategy. But AFAIK, in Siamese Networks, we need to calculate triplet loss function.  There are three images (Anchor, Positive, Negative) needed for such nets training and by that, we bring challenges to handle this issue (to manage the Anchor). IDK, maybe there can be some strategy to do it.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 844714,
      "author_name": "sandeepbhutani304",
      "author_url": "",
      "post_date": "05/12/2020 19:38:48",
      "content": "<p>Hi,\nShouldn't there be one more image input for one shot learning! \nAnother image to be fed to similar NN to get the vector in the end. Which will be classified as same or different (binary classification) in the last layer (sigmoid)</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 847424,
      "author_name": "ipythonx",
      "author_url": "",
      "post_date": "05/14/2020 11:44:03",
      "content": "<p><a href=\"/phoenix9032\">@phoenix9032</a> I'm also thinking about OSL strategy. But AFAIK, in Siamese Networks, we need to calculate triplet loss function.  There are three images (Anchor, Positive, Negative) needed for such nets training and by that, we bring challenges to handle this issue (to manage the Anchor). IDK, maybe there can be some strategy to do it. </p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "844478": "Hi ,\n\nI have now got some clarity for my earlier question about whether we can see it as a multiclass classification problem. There are some useful advises also from augmentation perspective as well as image size perspective . \n\nI have one further question. Anyone already tried this as metric learning problem by using  the distances of features output  of image pairs by a siamese model ?\nI was thinking it could work to find out the difference in 75000 samples in an unsupervised way and probably classify those examples first before feeding them into neural network . Or this could be used later to finetune the predictions .\n\nHere is the concept taken from paper : \n![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F2234817%2F90c20bbc8c1f676cf217c2a2d421ec17%2Fsiamese1.PNG?generation=1589300417979050&amp;alt=media)\n\n\n**Paper for the concept : \n** https://www.cs.cmu.edu/~rsalakhu/papers/oneshot1.pdf\n\n**Here is a repo: \n**\nPytorch: \nhttps://github.com/kevinzakka/one-shot-siamese\n\nKeras : \nhttps://github.com/sorenbouma/keras-oneshot",
    "844714": "Hi,\nShouldn't there be one more image input for one shot learning! \nAnother image to be fed to similar NN to get the vector in the end. Which will be classified as same or different (binary classification) in the last layer (sigmoid)",
    "847424": "phoenix9032 I'm also thinking about OSL strategy. But AFAIK, in Siamese Networks, we need to calculate triplet loss function.  There are three images (Anchor, Positive, Negative) needed for such nets training and by that, we bring challenges to handle this issue (to manage the Anchor). IDK, maybe there can be some strategy to do it."
  },
  "source": "meta"
}