{
  "id": 154127,
  "title": "4th method and code",
  "url": "/competitions/herbarium-2020-fgvc7/writeups/mk-4th-method-and-code",
  "author_name": "",
  "post_date": "2020-05-27T09:59:11.240757500Z",
  "votes": 4,
  "comment_count": 7,
  "views": 0,
  "content": "<p>Hi, we would like to share our method and the code link is <a href=\"https://github.com/shijieliu/herbarium2020_4th\">herbarium2020_4th</a></p>\n\n<h1>Methods</h1>\n\n<p>our method mainly refers the paper <a href=\"https://arxiv.org/pdf/1904.04232.pdf\">A CLOSER LOOK AT FEW-SHOT CLASSIFICATION</a> and requires 2 stage training, and we do a little change to get the best result\n1. we use 448 * 448 for training and test\n2. we use seresnext50 as our backbone compared with senet154, se_resnet152\n3. we add half crop in image aug stage\n4. we do not use cosine distance because cosine distance leads to slow converge  and low precision \n5. we remove No.23079 class in train and test</p>",
  "messages": [
    {
      "id": "863411",
      "postDate": "05/27/2020 09:59:11",
      "content": "<p>Hi, we would like to share our method and the code link is <a href=\"https://github.com/shijieliu/herbarium2020_4th\">herbarium2020_4th</a></p>\n\n<h1>Methods</h1>\n\n<p>our method mainly refers the paper <a href=\"https://arxiv.org/pdf/1904.04232.pdf\">A CLOSER LOOK AT FEW-SHOT CLASSIFICATION</a> and requires 2 stage training, and we do a little change to get the best result\n1. we use 448 * 448 for training and test\n2. we use seresnext50 as our backbone compared with senet154, se_resnet152\n3. we add half crop in image aug stage\n4. we do not use cosine distance because cosine distance leads to slow converge  and low precision \n5. we remove No.23079 class in train and test</p>",
      "rawMarkdown": "Hi, we would like to share our method and the code link is [herbarium2020_4th](https://github.com/shijieliu/herbarium2020_4th)\n\n# Methods\nour method mainly refers the paper [A CLOSER LOOK AT FEW-SHOT CLASSIFICATION](https://arxiv.org/pdf/1904.04232.pdf) and requires 2 stage training, and we do a little change to get the best result\n1. we use 448 * 448 for training and test\n2. we use seresnext50 as our backbone compared with senet154, se_resnet152\n3. we add half crop in image aug stage\n4. we do not use cosine distance because cosine distance leads to slow converge  and low precision \n5. we remove No.23079 class in train and test",
      "votes": null
    },
    {
      "id": "863500",
      "postDate": "05/27/2020 11:00:08",
      "content": "<p>thanks for sharing.</p>\n\n<p>before i go in detail can you comment on\n-  your current score is a single model single feed-forward pass result or ensemble and TTA. \n- I see you have 100epochs as max but how many it takes to convergence of each stage.</p>",
      "rawMarkdown": "thanks for sharing.\n\nbefore i go in detail can you comment on\n-  your current score is a single model single feed-forward pass result or ensemble and TTA. \n- I see you have 100epochs as max but how many it takes to convergence of each stage.",
      "votes": null
    },
    {
      "id": "863574",
      "postDate": "05/27/2020 12:10:48",
      "content": "<p>for your question\n* final score is a single model single feed-forward pass result\n* it needs about 2 hours for a epoch and we do not train till the max epoch, we usually stop the task according to the evaluation score on our val set and LB. </p>",
      "rawMarkdown": "for your question\n* final score is a single model single feed-forward pass result\n* it needs about 2 hours for a epoch and we do not train till the max epoch, we usually stop the task according to the evaluation score on our val set and LB.",
      "votes": null
    },
    {
      "id": "863589",
      "postDate": "05/27/2020 12:17:24",
      "content": "<p>thx.\nwhat's the machine you used (GPUs). how many epochs would that be - can you recall or just approximate </p>",
      "rawMarkdown": "thx.\nwhat's the machine you used (GPUs). how many epochs would that be - can you recall or just approximate",
      "votes": null
    },
    {
      "id": "863905",
      "postDate": "05/27/2020 16:26:23",
      "content": "<p>4 * 8 1080ti were used for training, and it takes about 2 hour for a epoch and the total training procedure takes about 12 epoch </p>",
      "rawMarkdown": "4 * 8 1080ti were used for training, and it takes about 2 hour for a epoch and the total training procedure takes about 12 epoch",
      "votes": null
    },
    {
      "id": "867980",
      "postDate": "05/30/2020 19:42:41",
      "content": "<p>Hi, <a href=\"/buaashijie\">@buaashijie</a> </p>\n\n<p>Could you please tell us, how did you split train and val data?\nI mean how did you get big_sep_train.txt and small_sep_val.txt from the config?\n<a href=\"https://github.com/shijieliu/herbarium2020_4th/blob/master/config.s1.yaml#L76\">https://github.com/shijieliu/herbarium2020_4th/blob/master/config.s1.yaml#L76</a></p>",
      "rawMarkdown": "Hi, @buaashijie \n\nCould you please tell us, how did you split train and val data?\nI mean how did you get big_sep_train.txt and small_sep_val.txt from the config?\nhttps://github.com/shijieliu/herbarium2020_4th/blob/master/config.s1.yaml#L76",
      "votes": null
    },
    {
      "id": "868220",
      "postDate": "05/31/2020 04:13:12",
      "content": "<p>just by randomly choosing 1k as smallsepval.txt  set and other as bigseptrain.txt</p>",
      "rawMarkdown": "just by randomly choosing 1k as smallsepval.txt  set and other as bigseptrain.txt",
      "votes": null
    },
    {
      "id": "868520",
      "postDate": "05/31/2020 09:58:45",
      "content": "<p>Have you tried something more complex? Or thiught to implement?</p>",
      "rawMarkdown": "Have you tried something more complex? Or thiught to implement?",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 863500,
      "author_name": "valanm",
      "author_url": "",
      "post_date": "05/27/2020 11:00:08",
      "content": "<p>thanks for sharing.</p>\n\n<p>before i go in detail can you comment on\n-  your current score is a single model single feed-forward pass result or ensemble and TTA. \n- I see you have 100epochs as max but how many it takes to convergence of each stage.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 863574,
      "author_name": "buaashijie",
      "author_url": "",
      "post_date": "05/27/2020 12:10:48",
      "content": "<p>for your question\n* final score is a single model single feed-forward pass result\n* it needs about 2 hours for a epoch and we do not train till the max epoch, we usually stop the task according to the evaluation score on our val set and LB. </p>",
      "votes": null,
      "replies": [
        {
          "id": 863589,
          "author_name": "valanm",
          "author_url": "",
          "post_date": "05/27/2020 12:17:24",
          "content": "<p>thx.\nwhat's the machine you used (GPUs). how many epochs would that be - can you recall or just approximate </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 863905,
          "author_name": "buaashijie",
          "author_url": "",
          "post_date": "05/27/2020 16:26:23",
          "content": "<p>4 * 8 1080ti were used for training, and it takes about 2 hour for a epoch and the total training procedure takes about 12 epoch </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 867980,
      "author_name": "discoholic",
      "author_url": "",
      "post_date": "05/30/2020 19:42:41",
      "content": "<p>Hi, <a href=\"/buaashijie\">@buaashijie</a> </p>\n\n<p>Could you please tell us, how did you split train and val data?\nI mean how did you get big_sep_train.txt and small_sep_val.txt from the config?\n<a href=\"https://github.com/shijieliu/herbarium2020_4th/blob/master/config.s1.yaml#L76\">https://github.com/shijieliu/herbarium2020_4th/blob/master/config.s1.yaml#L76</a></p>",
      "votes": null,
      "replies": [
        {
          "id": 868220,
          "author_name": "buaashijie",
          "author_url": "",
          "post_date": "05/31/2020 04:13:12",
          "content": "<p>just by randomly choosing 1k as smallsepval.txt  set and other as bigseptrain.txt</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 868520,
          "author_name": "discoholic",
          "author_url": "",
          "post_date": "05/31/2020 09:58:45",
          "content": "<p>Have you tried something more complex? Or thiught to implement?</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "863411": "Hi, we would like to share our method and the code link is [herbarium2020_4th](https://github.com/shijieliu/herbarium2020_4th)\n\n# Methods\nour method mainly refers the paper [A CLOSER LOOK AT FEW-SHOT CLASSIFICATION](https://arxiv.org/pdf/1904.04232.pdf) and requires 2 stage training, and we do a little change to get the best result\n1. we use 448 * 448 for training and test\n2. we use seresnext50 as our backbone compared with senet154, se_resnet152\n3. we add half crop in image aug stage\n4. we do not use cosine distance because cosine distance leads to slow converge  and low precision \n5. we remove No.23079 class in train and test",
    "863500": "thanks for sharing.\n\nbefore i go in detail can you comment on\n-  your current score is a single model single feed-forward pass result or ensemble and TTA. \n- I see you have 100epochs as max but how many it takes to convergence of each stage.",
    "863574": "for your question\n* final score is a single model single feed-forward pass result\n* it needs about 2 hours for a epoch and we do not train till the max epoch, we usually stop the task according to the evaluation score on our val set and LB.",
    "863589": "thx.\nwhat's the machine you used (GPUs). how many epochs would that be - can you recall or just approximate",
    "863905": "4 * 8 1080ti were used for training, and it takes about 2 hour for a epoch and the total training procedure takes about 12 epoch",
    "867980": "Hi, @buaashijie \n\nCould you please tell us, how did you split train and val data?\nI mean how did you get big_sep_train.txt and small_sep_val.txt from the config?\nhttps://github.com/shijieliu/herbarium2020_4th/blob/master/config.s1.yaml#L76",
    "868220": "just by randomly choosing 1k as smallsepval.txt  set and other as bigseptrain.txt",
    "868520": "Have you tried something more complex? Or thiught to implement?"
  },
  "source": "meta"
}