{
  "id": 583193,
  "title": "\"I don't even see the top\" solution | .776/.733",
  "url": "/competitions/byu-locating-bacterial-flagellar-motors-2025/writeups/i-don-t-even-see-the-top-solution-776-733",
  "author_name": "",
  "post_date": "2025-06-06T14:19:44.187Z",
  "votes": 4,
  "comment_count": 2,
  "views": 0,
  "content": "<p><strong>1st - 2D fast candidates finder trained on provided positives only:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-resnet34-512\" target=\"_blank\">BYU myUNet2D ResNet34 512</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-640\" target=\"_blank\">BYU myUNet2D ResNet34 640</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-512/notebook\" target=\"_blank\">BYU myUNet2D ResNet18 512</a></p>\n<p>Five fold CV of two ResNet34UNet trained with 640 and 512 patches and one ResNet18UNet trained with 512 patches. So 15 2D models total.</p>\n<p><strong>2nd - Obtaining FP as out-of-threshold predictions:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-fp\" target=\"_blank\">BYU_myUNet2D_FP</a></p>\n<p><strong>3rd - Final TP/FP 2.5D discrimination:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-mydepthwisedisc-32x64x64\" target=\"_blank\">BYU myDepthwiseDisc 32x64x64</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myvitdisc-64x128x128\" target=\"_blank\">BYU myViTDisc 64x128x128</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-mygrudisc-64x128x128\" target=\"_blank\">BYU myGRUDisc 64x128x128</a></p>\n<p>Again five folds of each, but GRU inclusion droped performance. So 10 2.5D models total. The trick here was supposed to be extrapolate voxel spacings from predicted 2D masks and resize samples to a reference of 13.1 (the most populated voxel spacing in train). Even a rough aproximation would work if mask could catch at least ROI properly. </p>\n<p><strong>Submission:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/512-byu-general-submission\" target=\"_blank\">512 BYU General Submission</a></p>\n<p>Based on <a href=\"https://www.kaggle.com/code/junkoda/speed-up-inference\" target=\"_blank\">Speed up inference</a> from <a href=\"https://www.kaggle.com/junkoda\" target=\"_blank\">@junkoda</a> , thank you very much.</p>\n<p><strong>Final thoughs:</strong></p>\n<p>May be I should stick with most of public solutions and used YOLO.</p>",
  "messages": [
    {
      "id": "3217737",
      "postDate": "06/05/2025 11:12:45",
      "content": "<p><strong>1st - 2D fast candidates finder trained on provided positives only:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-resnet34-512\" target=\"_blank\">BYU myUNet2D ResNet34 512</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-640\" target=\"_blank\">BYU myUNet2D ResNet34 640</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-512/notebook\" target=\"_blank\">BYU myUNet2D ResNet18 512</a></p>\n<p>Five fold CV of two ResNet34UNet trained with 640 and 512 patches and one ResNet18UNet trained with 512 patches. So 15 2D models total.</p>\n<p><strong>2nd - Obtaining FP as out-of-threshold predictions:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myunet2d-fp\" target=\"_blank\">BYU_myUNet2D_FP</a></p>\n<p><strong>3rd - Final TP/FP 2.5D discrimination:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-mydepthwisedisc-32x64x64\" target=\"_blank\">BYU myDepthwiseDisc 32x64x64</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-myvitdisc-64x128x128\" target=\"_blank\">BYU myViTDisc 64x128x128</a></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/byu-mygrudisc-64x128x128\" target=\"_blank\">BYU myGRUDisc 64x128x128</a></p>\n<p>Again five folds of each, but GRU inclusion droped performance. So 10 2.5D models total. The trick here was supposed to be extrapolate voxel spacings from predicted 2D masks and resize samples to a reference of 13.1 (the most populated voxel spacing in train). Even a rough aproximation would work if mask could catch at least ROI properly. </p>\n<p><strong>Submission:</strong></p>\n<p><a href=\"https://www.kaggle.com/code/sacuscreed/512-byu-general-submission\" target=\"_blank\">512 BYU General Submission</a></p>\n<p>Based on <a href=\"https://www.kaggle.com/code/junkoda/speed-up-inference\" target=\"_blank\">Speed up inference</a> from <a href=\"https://www.kaggle.com/junkoda\" target=\"_blank\">@junkoda</a> , thank you very much.</p>\n<p><strong>Final thoughs:</strong></p>\n<p>May be I should stick with most of public solutions and used YOLO.</p>",
      "rawMarkdown": "**1st - 2D fast candidates finder trained on provided positives only:**\n\n[BYU myUNet2D ResNet34 512](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-resnet34-512)\n\n[BYU myUNet2D ResNet34 640](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-640)\n\n[BYU myUNet2D ResNet18 512](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-512/notebook)\n\nFive fold CV of two ResNet34UNet trained with 640 and 512 patches and one ResNet18UNet trained with 512 patches. So 15 2D models total.\n\n**2nd - Obtaining FP as out-of-threshold predictions:**\n\n[BYU_myUNet2D_FP](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-fp)\n\n**3rd - Final TP/FP 2.5D discrimination:**\n\n[BYU myDepthwiseDisc 32x64x64](https://www.kaggle.com/code/sacuscreed/byu-mydepthwisedisc-32x64x64)\n\n[BYU myViTDisc 64x128x128](https://www.kaggle.com/code/sacuscreed/byu-myvitdisc-64x128x128)\n\n[BYU myGRUDisc 64x128x128](https://www.kaggle.com/code/sacuscreed/byu-mygrudisc-64x128x128)\n\nAgain five folds of each, but GRU inclusion droped performance. So 10 2.5D models total. The trick here was supposed to be extrapolate voxel spacings from predicted 2D masks and resize samples to a reference of 13.1 (the most populated voxel spacing in train). Even a rough aproximation would work if mask could catch at least ROI properly. \n\n**Submission:**\n\n[512 BYU General Submission](https://www.kaggle.com/code/sacuscreed/512-byu-general-submission)\n\nBased on [Speed up inference](https://www.kaggle.com/code/junkoda/speed-up-inference) from @junkoda , thank you very much.\n\n**Final thoughs:**\n\nMay be I should stick with most of public solutions and used YOLO.",
      "votes": null
    },
    {
      "id": "3217983",
      "postDate": "06/05/2025 16:12:49",
      "content": "<blockquote>\n  <p>Maybe I should stick with most of public solutions and used YOLO.</p>\n</blockquote>\n<p>Maybe that would've gotten you a higher placement, but by not following the well beaten path, you've contributed more to research than many other well performing solutions! So we appreciate your effort 😀</p>",
      "rawMarkdown": ">Maybe I should stick with most of public solutions and used YOLO.\n\nMaybe that would've gotten you a higher placement, but by not following the well beaten path, you've contributed more to research than many other well performing solutions! So we appreciate your effort 😀",
      "votes": null
    },
    {
      "id": "3218075",
      "postDate": "06/05/2025 18:57:09",
      "content": "<p>Thank you, I really appreciate it.</p>",
      "rawMarkdown": "Thank you, I really appreciate it.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 3217983,
      "author_name": "andrewjdarley",
      "author_url": "",
      "post_date": "06/05/2025 16:12:49",
      "content": "<blockquote>\n  <p>Maybe I should stick with most of public solutions and used YOLO.</p>\n</blockquote>\n<p>Maybe that would've gotten you a higher placement, but by not following the well beaten path, you've contributed more to research than many other well performing solutions! So we appreciate your effort 😀</p>",
      "votes": null,
      "replies": [
        {
          "id": 3218075,
          "author_name": "sacuscreed",
          "author_url": "",
          "post_date": "06/05/2025 18:57:09",
          "content": "<p>Thank you, I really appreciate it.</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "3217737": "**1st - 2D fast candidates finder trained on provided positives only:**\n\n[BYU myUNet2D ResNet34 512](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-resnet34-512)\n\n[BYU myUNet2D ResNet34 640](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-640)\n\n[BYU myUNet2D ResNet18 512](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-512/notebook)\n\nFive fold CV of two ResNet34UNet trained with 640 and 512 patches and one ResNet18UNet trained with 512 patches. So 15 2D models total.\n\n**2nd - Obtaining FP as out-of-threshold predictions:**\n\n[BYU_myUNet2D_FP](https://www.kaggle.com/code/sacuscreed/byu-myunet2d-fp)\n\n**3rd - Final TP/FP 2.5D discrimination:**\n\n[BYU myDepthwiseDisc 32x64x64](https://www.kaggle.com/code/sacuscreed/byu-mydepthwisedisc-32x64x64)\n\n[BYU myViTDisc 64x128x128](https://www.kaggle.com/code/sacuscreed/byu-myvitdisc-64x128x128)\n\n[BYU myGRUDisc 64x128x128](https://www.kaggle.com/code/sacuscreed/byu-mygrudisc-64x128x128)\n\nAgain five folds of each, but GRU inclusion droped performance. So 10 2.5D models total. The trick here was supposed to be extrapolate voxel spacings from predicted 2D masks and resize samples to a reference of 13.1 (the most populated voxel spacing in train). Even a rough aproximation would work if mask could catch at least ROI properly. \n\n**Submission:**\n\n[512 BYU General Submission](https://www.kaggle.com/code/sacuscreed/512-byu-general-submission)\n\nBased on [Speed up inference](https://www.kaggle.com/code/junkoda/speed-up-inference) from @junkoda , thank you very much.\n\n**Final thoughs:**\n\nMay be I should stick with most of public solutions and used YOLO.",
    "3217983": ">Maybe I should stick with most of public solutions and used YOLO.\n\nMaybe that would've gotten you a higher placement, but by not following the well beaten path, you've contributed more to research than many other well performing solutions! So we appreciate your effort 😀",
    "3218075": "Thank you, I really appreciate it."
  },
  "source": "meta"
}