{
  "id": 567756,
  "title": "150th place - simple solution",
  "content": "<p>This has been a great competition, and I thoroughly enjoyed participating and learning from all the great discussions. This has also been the first time I have encountered survival modelling, so thank you to the hosts for creating this competition. I was lucky like many others to have already done a few playground competitions, which all use tabular data generated in the same way as this competition. I had also learnt the hard lesson of the consequences of chasing the public lb score too much, all which served me well. I would definitely recommend people who want to improve their data science techniques on tabular data to check those out too!</p>\n<p>My modelling approach was very simple - ensembling various tuned tree models (XGB, CAT mostly, a little LGBM) with different transformed targets. Later on in the competition I also allowed optuna to tune the separation of efs == 0 and efs == 1, and tune the weighting of efs == 1 data points. Most of my models had a 5 fold stratified cv score of ~0.676 - 0.682. Thanks to <a href=\"https://www.kaggle.com/takanashihumbert\" target=\"_blank\">@takanashihumbert</a>, later on I refit models on all the training data to determine the test predictions and weighted these predictions based on the oof predictions, which, whilst it didn't change much for the tree based models, I found it helped for my version of the pairwise ranking neural network by <a href=\"https://www.kaggle.com/albansteff\" target=\"_blank\">@albansteff</a>. This may be because when you fit 5 separate models on different data, the scaling of the risk score might vary per model, meaning a simple mean over the test predictions may not work as expected. </p>\n<p>Nevertheless, purely using my own models, I only achieved 0.6875 cv - 0.69 public lb - 0.69292 which would be a bronze. Luckily, I submitted a notebook containing some of the best public solutions alongside some of my own models, which achieved 0.69328 private lb, winning the silver. </p>\n<p>I am very happy with this result, but regret joining the competition late, as I never managed to try out a lot of my ideas. For the next few weeks I plan to do a competition retrospective and add some of the interesting solutions to my own personal kaggle repo.</p>\n<p>Thanks for reading :)</p>",
  "comments": [
    {
      "id": 3217266,
      "author_name": "PACESETTER55",
      "author_url": "",
      "post_date": "2025-06-04T18:38:23.773000",
      "content": "<p>Bro can you share your notebook so that we can also learn</p>",
      "votes": 0,
      "replies": []
    }
  ],
  "comment_count": 1,
  "messages": [
    {
      "id": 3147328,
      "postDate": "2025-03-11T23:42:55.437Z",
      "content": "<p>This has been a great competition, and I thoroughly enjoyed participating and learning from all the great discussions. This has also been the first time I have encountered survival modelling, so thank you to the hosts for creating this competition. I was lucky like many others to have already done a few playground competitions, which all use tabular data generated in the same way as this competition. I had also learnt the hard lesson of the consequences of chasing the public lb score too much, all which served me well. I would definitely recommend people who want to improve their data science techniques on tabular data to check those out too!</p>\n<p>My modelling approach was very simple - ensembling various tuned tree models (XGB, CAT mostly, a little LGBM) with different transformed targets. Later on in the competition I also allowed optuna to tune the separation of efs == 0 and efs == 1, and tune the weighting of efs == 1 data points. Most of my models had a 5 fold stratified cv score of ~0.676 - 0.682. Thanks to <a href=\"https://www.kaggle.com/takanashihumbert\" target=\"_blank\">@takanashihumbert</a>, later on I refit models on all the training data to determine the test predictions and weighted these predictions based on the oof predictions, which, whilst it didn't change much for the tree based models, I found it helped for my version of the pairwise ranking neural network by <a href=\"https://www.kaggle.com/albansteff\" target=\"_blank\">@albansteff</a>. This may be because when you fit 5 separate models on different data, the scaling of the risk score might vary per model, meaning a simple mean over the test predictions may not work as expected. </p>\n<p>Nevertheless, purely using my own models, I only achieved 0.6875 cv - 0.69 public lb - 0.69292 which would be a bronze. Luckily, I submitted a notebook containing some of the best public solutions alongside some of my own models, which achieved 0.69328 private lb, winning the silver. </p>\n<p>I am very happy with this result, but regret joining the competition late, as I never managed to try out a lot of my ideas. For the next few weeks I plan to do a competition retrospective and add some of the interesting solutions to my own personal kaggle repo.</p>\n<p>Thanks for reading :)</p>",
      "rawMarkdown": "This has been a great competition, and I thoroughly enjoyed participating and learning from all the great discussions. This has also been the first time I have encountered survival modelling, so thank you to the hosts for creating this competition. I was lucky like many others to have already done a few playground competitions, which all use tabular data generated in the same way as this competition. I had also learnt the hard lesson of the consequences of chasing the public lb score too much, all which served me well. I would definitely recommend people who want to improve their data science techniques on tabular data to check those out too!\n\nMy modelling approach was very simple - ensembling various tuned tree models (XGB, CAT mostly, a little LGBM) with different transformed targets. Later on in the competition I also allowed optuna to tune the separation of efs == 0 and efs == 1, and tune the weighting of efs == 1 data points. Most of my models had a 5 fold stratified cv score of ~0.676 - 0.682. Thanks to @takanashihumbert, later on I refit models on all the training data to determine the test predictions and weighted these predictions based on the oof predictions, which, whilst it didn't change much for the tree based models, I found it helped for my version of the pairwise ranking neural network by @albansteff. This may be because when you fit 5 separate models on different data, the scaling of the risk score might vary per model, meaning a simple mean over the test predictions may not work as expected. \n\nNevertheless, purely using my own models, I only achieved 0.6875 cv - 0.69 public lb - 0.69292 which would be a bronze. Luckily, I submitted a notebook containing some of the best public solutions alongside some of my own models, which achieved 0.69328 private lb, winning the silver. \n\nI am very happy with this result, but regret joining the competition late, as I never managed to try out a lot of my ideas. For the next few weeks I plan to do a competition retrospective and add some of the interesting solutions to my own personal kaggle repo.\n\nThanks for reading :)",
      "votes": 3
    },
    {
      "id": 3217266,
      "postDate": "2025-06-04T18:38:23.773Z",
      "content": "<p>Bro can you share your notebook so that we can also learn</p>",
      "rawMarkdown": "Bro can you share your notebook so that we can also learn"
    }
  ],
  "complete": true,
  "source": "live",
  "fetched_at": "2026-10-19T19:50:36Z",
  "competition_id": 70942,
  "competition_slug": "equity-post-HCT-survival-predictions",
  "team_id": 13177772,
  "solution_url": "/competitions/equity-post-HCT-survival-predictions/writeups/scriptchef-150th-place-simple-solution"
}