{
  "id": 369621,
  "title": "4th place solutioin",
  "content": "<h2>Overview</h2>\n<p>My solution is stacking a total of 22 models. All the models trained in this competition are the same folds (4fold).</p>\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1403936%2F9a491f9c96cbbe035ed12ee656ba812b%2F2.jpeg?generation=1669829854528737&amp;alt=media\" alt=\"\"></p>\n<h2>What Worked</h2>\n<ul>\n<li>[High Impact] Train SVR / Ridge using pre-trained model embeddings<ul>\n<li>Extracted features from the last 4 layers of the 38 pre-trained models and used forward feature selection to explorate the best SVR</li>\n<li>Trained ridge model with optimal embeddings combination for SVR</li>\n<li>SVR is my best single model (CV: 0.4467)</li></ul></li>\n<li>[High Impact] Pseudo Labeling<ul>\n<li>Two patterns are used for each models<ul>\n<li>Pre-train with pseudo labels and fine-tune with only the given train data afterwards</li>\n<li>Concatenate pseudo labels with the given train data, and train all this data</li></ul></li>\n<li>The amount of FB1 data used as pseudo label<ul>\n<li>use only FB1 data similar to FB3</li>\n<li>use all FB1 data (but only few model)</li></ul></li>\n<li>Repeat over and over again</li></ul></li>\n<li>[High Impact] Ridge and LGB stacking<ul>\n<li>CV: 0.4425(Ridge), 0.4443(LGB), 0.4423(Weighted Average of Ridge and LGB)</li>\n<li>Train Ridge using the predictions of fine-tuned models as input values</li>\n<li>Train LGB using the predictions and meta-features created by <a href=\"https://pypi.org/project/readability/\" target=\"_blank\">readability</a></li></ul></li>\n<li>[Middle Impact] Add special token ('\\n')<ul>\n<li>CV increase (0.001)</li></ul></li>\n<li>[Low Impact] Shorten sequence length<ul>\n<li>Almost use 512 length</li>\n<li>Inference time can be reduced</li>\n<li>For model diversity, train few models with 1500 length</li></ul></li>\n<li>[Low Impact] Tips for stable training<ul>\n<li>Full precision training</li>\n<li>Layer wise learning rate decay</li>\n<li>Cosine learning rate scheduler</li>\n<li>Hyperparameter tuning</li></ul></li>\n</ul>\n<h2>What Didn’t Worked</h2>\n<ul>\n<li>AWP, FGM</li>\n<li>Train SVR using fine-tuned model embeddings</li>\n<li>Last Layer Re-initialization</li>\n<li>Regular MLM</li>\n<li>Predict punctuation errors and their statistics use as meta-feature in the stacking model<ul>\n<li><a href=\"https://www.kaggle.com/code/nulldata/deep-learning-powered-punctuation-corrector/notebook\" target=\"_blank\">https://www.kaggle.com/code/nulldata/deep-learning-powered-punctuation-corrector/notebook</a></li></ul></li>\n<li>Predict the quality rating of discourse element (FB2 task targets) and their statistics use as meta-feature in the stacking model<ul>\n<li>CV score and public score increase, but private score decrease (0.0002)</li></ul></li>\n<li>Fine-tune spelling correction model as convention-specific model<ul>\n<li><a href=\"https://huggingface.co/oliverguhr/spelling-correction-english-base?text=lets+do+a+comparsion\" target=\"_blank\">https://huggingface.co/oliverguhr/spelling-correction-english-base?text=lets+do+a+comparsion</a></li></ul></li>\n<li>Fine-tune pre-trained weights from top solution in the past competition<ul>\n<li><a href=\"https://www.kaggle.com/competitions/feedback-prize-2021/discussion/313424\" target=\"_blank\">https://www.kaggle.com/competitions/feedback-prize-2021/discussion/313424</a></li></ul></li>\n</ul>\n<h2>Important Citations:</h2>\n<ul>\n<li><a href=\"https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/300938\" target=\"_blank\">Petfinder.my - Pawpularity Contest 1st place solution</a></li>\n<li><a href=\"https://www.kaggle.com/c/commonlitreadabilityprize/discussion/258328\" target=\"_blank\">CommonLiit Readability Prize 2nd place solution</a></li>\n<li><a href=\"https://www.kaggle.com/competitions/feedback-prize-effectiveness/discussion/347536\" target=\"_blank\">Feedback Prize - Predicting Effective Arguments 1st place solution</a></li>\n<li><a href=\"https://www.kaggle.com/code/cdeotte/rapids-svr-cv-0-450-lb-0-44x\" target=\"_blank\">RAPIDS SVR - CV 0.450 - LB 0.44x</a></li>\n<li><a href=\"https://www.kaggle.com/code/yasufuminakama/fb3-deberta-v3-base-baseline-train\" target=\"_blank\">FB3 / Deberta-v3-base baseline [train]</a></li>\n</ul>\n<h2>Thanks and Acknowledgements:</h2>\n<p>Thanks to the organizers and Kaggle for a very exciting competition!<br>\nI will use what I learned here to do my best in the next competition.</p>\n<h2>Team Members:</h2>\n<ul>\n<li><a href=\"https://www.kaggle.com/shuheigoda\" target=\"_blank\">@shuheigoda</a></li>\n</ul>",
  "comments": [
    {
      "id": 2050459,
      "author_name": "Chris Deotte",
      "author_url": "",
      "post_date": "2022-11-30T18:46:42.913000",
      "content": "<p>Awesome! Congratulations on fantastic solo 4th place finish!</p>\n<blockquote>\n  <p>Extracted features from the last 4 layers of the 38 pre-trained models and used forward feature selection to explorate the best SVR</p>\n</blockquote>\n<p>Great SVR model !!</p>",
      "votes": 1,
      "replies": [
        {
          "id": 2051583,
          "author_name": "hakubishin3",
          "author_url": "",
          "post_date": "2022-12-01T14:02:49.123000",
          "content": "<p>Thanks for your great sharing!</p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 2051972,
          "author_name": "Chris Deotte",
          "author_url": "",
          "post_date": "2022-12-01T19:12:34.960000",
          "content": "<p><a href=\"https://www.kaggle.com/shuheigoda\" target=\"_blank\">@shuheigoda</a> after forward feature selection, how many features did you input into SVR?</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 2465665,
      "author_name": "phnghiapro",
      "author_url": "",
      "post_date": "2023-10-03T07:06:27.367000",
      "content": "<p>Thanks you so much for such nice describe your work. I try hiddhidden_dropout_proben_dr = 0 for CommonLit competition  and it work like charm </p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2225979,
      "author_name": "Marília Prata",
      "author_url": "",
      "post_date": "2023-04-18T15:07:04.803000",
      "content": "<p>Though I'm late 5 months: congratulations for your amazing accomplishment. Thanks also for sharing your solution.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2056507,
      "author_name": "Apa",
      "author_url": "",
      "post_date": "2022-12-06T07:15:49.570000",
      "content": "<p>Hi. Can you provide the training details of the ridge and lightgbm models? I also tried something like this but it didn't work very well</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2050633,
      "author_name": "Man of the year",
      "author_url": "",
      "post_date": "2022-11-30T22:11:05.447000",
      "content": "<p><a href=\"https://www.kaggle.com/shuheigoda\" target=\"_blank\">@shuheigoda</a> how do you use blending as an input to the red models in the step2? Didn't really understand this part (same with step4).</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2051587,
          "author_name": "hakubishin3",
          "author_url": "",
          "post_date": "2022-12-01T14:05:54.953000",
          "content": "<p>In step 3, the predictions for the FB1 data of models trained in step1 and step2 were blended and used as pseudo labels. Step 4 is also the same.</p>",
          "votes": 0,
          "replies": []
        }
      ]
    }
  ],
  "comment_count": 8,
  "messages": [
    {
      "id": 2050375,
      "postDate": "2022-11-30T17:39:43.267Z",
      "content": "<h2>Overview</h2>\n<p>My solution is stacking a total of 22 models. All the models trained in this competition are the same folds (4fold).</p>\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1403936%2F9a491f9c96cbbe035ed12ee656ba812b%2F2.jpeg?generation=1669829854528737&amp;alt=media\" alt=\"\"></p>\n<h2>What Worked</h2>\n<ul>\n<li>[High Impact] Train SVR / Ridge using pre-trained model embeddings<ul>\n<li>Extracted features from the last 4 layers of the 38 pre-trained models and used forward feature selection to explorate the best SVR</li>\n<li>Trained ridge model with optimal embeddings combination for SVR</li>\n<li>SVR is my best single model (CV: 0.4467)</li></ul></li>\n<li>[High Impact] Pseudo Labeling<ul>\n<li>Two patterns are used for each models<ul>\n<li>Pre-train with pseudo labels and fine-tune with only the given train data afterwards</li>\n<li>Concatenate pseudo labels with the given train data, and train all this data</li></ul></li>\n<li>The amount of FB1 data used as pseudo label<ul>\n<li>use only FB1 data similar to FB3</li>\n<li>use all FB1 data (but only few model)</li></ul></li>\n<li>Repeat over and over again</li></ul></li>\n<li>[High Impact] Ridge and LGB stacking<ul>\n<li>CV: 0.4425(Ridge), 0.4443(LGB), 0.4423(Weighted Average of Ridge and LGB)</li>\n<li>Train Ridge using the predictions of fine-tuned models as input values</li>\n<li>Train LGB using the predictions and meta-features created by <a href=\"https://pypi.org/project/readability/\" target=\"_blank\">readability</a></li></ul></li>\n<li>[Middle Impact] Add special token ('\\n')<ul>\n<li>CV increase (0.001)</li></ul></li>\n<li>[Low Impact] Shorten sequence length<ul>\n<li>Almost use 512 length</li>\n<li>Inference time can be reduced</li>\n<li>For model diversity, train few models with 1500 length</li></ul></li>\n<li>[Low Impact] Tips for stable training<ul>\n<li>Full precision training</li>\n<li>Layer wise learning rate decay</li>\n<li>Cosine learning rate scheduler</li>\n<li>Hyperparameter tuning</li></ul></li>\n</ul>\n<h2>What Didn’t Worked</h2>\n<ul>\n<li>AWP, FGM</li>\n<li>Train SVR using fine-tuned model embeddings</li>\n<li>Last Layer Re-initialization</li>\n<li>Regular MLM</li>\n<li>Predict punctuation errors and their statistics use as meta-feature in the stacking model<ul>\n<li><a href=\"https://www.kaggle.com/code/nulldata/deep-learning-powered-punctuation-corrector/notebook\" target=\"_blank\">https://www.kaggle.com/code/nulldata/deep-learning-powered-punctuation-corrector/notebook</a></li></ul></li>\n<li>Predict the quality rating of discourse element (FB2 task targets) and their statistics use as meta-feature in the stacking model<ul>\n<li>CV score and public score increase, but private score decrease (0.0002)</li></ul></li>\n<li>Fine-tune spelling correction model as convention-specific model<ul>\n<li><a href=\"https://huggingface.co/oliverguhr/spelling-correction-english-base?text=lets+do+a+comparsion\" target=\"_blank\">https://huggingface.co/oliverguhr/spelling-correction-english-base?text=lets+do+a+comparsion</a></li></ul></li>\n<li>Fine-tune pre-trained weights from top solution in the past competition<ul>\n<li><a href=\"https://www.kaggle.com/competitions/feedback-prize-2021/discussion/313424\" target=\"_blank\">https://www.kaggle.com/competitions/feedback-prize-2021/discussion/313424</a></li></ul></li>\n</ul>\n<h2>Important Citations:</h2>\n<ul>\n<li><a href=\"https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/300938\" target=\"_blank\">Petfinder.my - Pawpularity Contest 1st place solution</a></li>\n<li><a href=\"https://www.kaggle.com/c/commonlitreadabilityprize/discussion/258328\" target=\"_blank\">CommonLiit Readability Prize 2nd place solution</a></li>\n<li><a href=\"https://www.kaggle.com/competitions/feedback-prize-effectiveness/discussion/347536\" target=\"_blank\">Feedback Prize - Predicting Effective Arguments 1st place solution</a></li>\n<li><a href=\"https://www.kaggle.com/code/cdeotte/rapids-svr-cv-0-450-lb-0-44x\" target=\"_blank\">RAPIDS SVR - CV 0.450 - LB 0.44x</a></li>\n<li><a href=\"https://www.kaggle.com/code/yasufuminakama/fb3-deberta-v3-base-baseline-train\" target=\"_blank\">FB3 / Deberta-v3-base baseline [train]</a></li>\n</ul>\n<h2>Thanks and Acknowledgements:</h2>\n<p>Thanks to the organizers and Kaggle for a very exciting competition!<br>\nI will use what I learned here to do my best in the next competition.</p>\n<h2>Team Members:</h2>\n<ul>\n<li><a href=\"https://www.kaggle.com/shuheigoda\" target=\"_blank\">@shuheigoda</a></li>\n</ul>",
      "rawMarkdown": "## Overview\n\nMy solution is stacking a total of 22 models. All the models trained in this competition are the same folds (4fold).\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F1403936%2F9a491f9c96cbbe035ed12ee656ba812b%2F2.jpeg?generation=1669829854528737&alt=media)\n\n## What Worked \n\n- [High Impact] Train SVR / Ridge using pre-trained model embeddings\n  - Extracted features from the last 4 layers of the 38 pre-trained models and used forward feature selection to explorate the best SVR\n  - Trained ridge model with optimal embeddings combination for SVR\n  - SVR is my best single model (CV: 0.4467)\n- [High Impact] Pseudo Labeling\n  - Two patterns are used for each models\n      - Pre-train with pseudo labels and fine-tune with only the given train data afterwards\n      - Concatenate pseudo labels with the given train data, and train all this data\n  - The amount of FB1 data used as pseudo label\n      - use only FB1 data similar to FB3\n      - use all FB1 data (but only few model)\n  - Repeat over and over again\n- [High Impact] Ridge and LGB stacking\n  - CV: 0.4425(Ridge), 0.4443(LGB), 0.4423(Weighted Average of Ridge and LGB)\n  - Train Ridge using the predictions of fine-tuned models as input values\n  - Train LGB using the predictions and meta-features created by [readability](https://pypi.org/project/readability/)\n- [Middle Impact] Add special token ('\\n')\n  - CV increase (0.001)\n- [Low Impact] Shorten sequence length\n  - Almost use 512 length\n  - Inference time can be reduced\n  - For model diversity, train few models with 1500 length\n- [Low Impact] Tips for stable training\n  - Full precision training\n  - Layer wise learning rate decay\n  - Cosine learning rate scheduler\n  - Hyperparameter tuning\n\n## What Didn’t Worked \n\n- AWP, FGM\n- Train SVR using fine-tuned model embeddings\n- Last Layer Re-initialization\n- Regular MLM\n- Predict punctuation errors and their statistics use as meta-feature in the stacking model\n  - https://www.kaggle.com/code/nulldata/deep-learning-powered-punctuation-corrector/notebook\n- Predict the quality rating of discourse element (FB2 task targets) and their statistics use as meta-feature in the stacking model\n  - CV score and public score increase, but private score decrease (0.0002)\n- Fine-tune spelling correction model as convention-specific model\n  - https://huggingface.co/oliverguhr/spelling-correction-english-base?text=lets+do+a+comparsion\n- Fine-tune pre-trained weights from top solution in the past competition\n  - https://www.kaggle.com/competitions/feedback-prize-2021/discussion/313424\n\n## Important Citations: \n\n- [Petfinder.my - Pawpularity Contest 1st place solution](https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/300938)\n- [CommonLiit Readability Prize 2nd place solution](https://www.kaggle.com/c/commonlitreadabilityprize/discussion/258328)\n- [Feedback Prize - Predicting Effective Arguments 1st place solution](https://www.kaggle.com/competitions/feedback-prize-effectiveness/discussion/347536)\n- [RAPIDS SVR - CV 0.450 - LB 0.44x](https://www.kaggle.com/code/cdeotte/rapids-svr-cv-0-450-lb-0-44x)\n- [FB3 / Deberta-v3-base baseline [train]](https://www.kaggle.com/code/yasufuminakama/fb3-deberta-v3-base-baseline-train)\n\n## Thanks and Acknowledgements: \n\nThanks to the organizers and Kaggle for a very exciting competition!\nI will use what I learned here to do my best in the next competition.\n\n## Team Members:\n\n- @shuheigoda\n",
      "votes": 50
    },
    {
      "id": 2050459,
      "postDate": "2022-11-30T18:46:42.913Z",
      "content": "<p>Awesome! Congratulations on fantastic solo 4th place finish!</p>\n<blockquote>\n  <p>Extracted features from the last 4 layers of the 38 pre-trained models and used forward feature selection to explorate the best SVR</p>\n</blockquote>\n<p>Great SVR model !!</p>",
      "rawMarkdown": "Awesome! Congratulations on fantastic solo 4th place finish!\n>Extracted features from the last 4 layers of the 38 pre-trained models and used forward feature selection to explorate the best SVR\n\nGreat SVR model !!",
      "votes": 1,
      "replies": [
        {
          "id": 2051583,
          "postDate": "2022-12-01T14:02:49.123Z",
          "content": "<p>Thanks for your great sharing!</p>",
          "rawMarkdown": "Thanks for your great sharing!",
          "votes": 1
        },
        {
          "id": 2051972,
          "postDate": "2022-12-01T19:12:34.960Z",
          "content": "<p><a href=\"https://www.kaggle.com/shuheigoda\" target=\"_blank\">@shuheigoda</a> after forward feature selection, how many features did you input into SVR?</p>",
          "rawMarkdown": "@shuheigoda after forward feature selection, how many features did you input into SVR?"
        }
      ]
    },
    {
      "id": 2465665,
      "postDate": "2023-10-03T07:06:27.367Z",
      "content": "<p>Thanks you so much for such nice describe your work. I try hiddhidden_dropout_proben_dr = 0 for CommonLit competition  and it work like charm </p>",
      "rawMarkdown": "Thanks you so much for such nice describe your work. I try hiddhidden_dropout_proben_dr = 0 for CommonLit competition  and it work like charm "
    },
    {
      "id": 2225979,
      "postDate": "2023-04-18T15:07:04.803Z",
      "content": "<p>Though I'm late 5 months: congratulations for your amazing accomplishment. Thanks also for sharing your solution.</p>",
      "rawMarkdown": "Though I'm late 5 months: congratulations for your amazing accomplishment. Thanks also for sharing your solution."
    },
    {
      "id": 2056507,
      "postDate": "2022-12-06T07:15:49.570Z",
      "content": "<p>Hi. Can you provide the training details of the ridge and lightgbm models? I also tried something like this but it didn't work very well</p>",
      "rawMarkdown": "Hi. Can you provide the training details of the ridge and lightgbm models? I also tried something like this but it didn't work very well"
    },
    {
      "id": 2050633,
      "postDate": "2022-11-30T22:11:05.447Z",
      "content": "<p><a href=\"https://www.kaggle.com/shuheigoda\" target=\"_blank\">@shuheigoda</a> how do you use blending as an input to the red models in the step2? Didn't really understand this part (same with step4).</p>",
      "rawMarkdown": "@shuheigoda how do you use blending as an input to the red models in the step2? Didn't really understand this part (same with step4).",
      "replies": [
        {
          "id": 2051587,
          "postDate": "2022-12-01T14:05:54.953Z",
          "content": "<p>In step 3, the predictions for the FB1 data of models trained in step1 and step2 were blended and used as pseudo labels. Step 4 is also the same.</p>",
          "rawMarkdown": "In step 3, the predictions for the FB1 data of models trained in step1 and step2 were blended and used as pseudo labels. Step 4 is also the same."
        }
      ]
    }
  ],
  "complete": true,
  "source": "live",
  "fetched_at": "2026-10-19T20:02:29Z",
  "competition_id": 38321,
  "competition_slug": "feedback-prize-english-language-learning",
  "team_id": 9091395,
  "solution_url": "/competitions/feedback-prize-english-language-learning/writeups/hakubishin3-4th-place-solutioin"
}