{
  "id": 198137,
  "title": "Data Augmentation with TensorFlow ecosystem",
  "url": "/competitions/hubmap-kidney-segmentation/discussion/198137",
  "author_name": "",
  "post_date": "2020-11-19T23:03:59.395933200Z",
  "votes": 5,
  "comment_count": 4,
  "views": 0,
  "content": "<p>The few competitions where i had the pleasure to participate, it's very common to see discussions about the benefits of using <strong>PyTorch</strong> instead of <strong>TensorFlow 2.x</strong>, one of the recurrent arguments is because <strong>PyTorch</strong> has a richer ecosystem. In tasks related to <strong>computer vision</strong>, libraries like <strong>albumentations</strong> are the way to go for many people even if it doesn't support GPU operation. Then i found that tensorflow also has a very rich ecosystem like <strong>tf.image</strong> and keras preprocessing layers that could be used for data augmentation, i even made notebook (<a href=\"https://www.kaggle.com/hiramcho/hubmap-keras-augmentation-layers\" target=\"_blank\">\nHuBMAP: Keras Augmentation Layers</a>). My question is, why it's more popular albumentations than the the options that i mention? Because even if albumentations has more Methods, it's a little slow.</p>",
  "messages": [
    {
      "id": "1084307",
      "postDate": "11/19/2020 23:03:59",
      "content": "<p>The few competitions where i had the pleasure to participate, it's very common to see discussions about the benefits of using <strong>PyTorch</strong> instead of <strong>TensorFlow 2.x</strong>, one of the recurrent arguments is because <strong>PyTorch</strong> has a richer ecosystem. In tasks related to <strong>computer vision</strong>, libraries like <strong>albumentations</strong> are the way to go for many people even if it doesn't support GPU operation. Then i found that tensorflow also has a very rich ecosystem like <strong>tf.image</strong> and keras preprocessing layers that could be used for data augmentation, i even made notebook (<a href=\"https://www.kaggle.com/hiramcho/hubmap-keras-augmentation-layers\" target=\"_blank\">\nHuBMAP: Keras Augmentation Layers</a>). My question is, why it's more popular albumentations than the the options that i mention? Because even if albumentations has more Methods, it's a little slow.</p>",
      "rawMarkdown": "The few competitions where i had the pleasure to participate, it's very common to see discussions about the benefits of using **PyTorch** instead of **TensorFlow 2.x**, one of the recurrent arguments is because **PyTorch** has a richer ecosystem. In tasks related to **computer vision**, libraries like **albumentations** are the way to go for many people even if it doesn't support GPU operation. Then i found that tensorflow also has a very rich ecosystem like **tf.image** and keras preprocessing layers that could be used for data augmentation, i even made notebook ([\nHuBMAP: Keras Augmentation Layers](https://www.kaggle.com/hiramcho/hubmap-keras-augmentation-layers)). My question is, why it's more popular albumentations than the the options that i mention? Because even if albumentations has more Methods, it's a little slow.",
      "votes": null
    },
    {
      "id": "1085233",
      "postDate": "11/20/2020 19:09:45",
      "content": "<p><a href=\"https://www.kaggle.com/hiramcho\" target=\"_blank\">@hiramcho</a> Just went through your notebook . Its highly recommend that you use TensorFlow API for augmentation when you use tf.data as your input pipeline since its faster and also works smoothly with tf.distribute APIs of Tensorflow ecosystem . </p>",
      "rawMarkdown": "hiramcho Just went through your notebook . Its highly recommend that you use TensorFlow API for augmentation when you use tf.data as your input pipeline since its faster and also works smoothly with tf.distribute APIs of Tensorflow ecosystem .",
      "votes": null
    },
    {
      "id": "1085261",
      "postDate": "11/20/2020 19:37:47",
      "content": "<p>Thanks for comment. Comments like this are the reason of why I made the notebook and the discusión related to data augmentations. </p>",
      "rawMarkdown": "Thanks for comment. Comments like this are the reason of why I made the notebook and the discusión related to data augmentations.",
      "votes": null
    },
    {
      "id": "1088286",
      "postDate": "11/23/2020 13:56:30",
      "content": "<p>Instead of augmentation, can't we just use tiling cuts at different positions? </p>",
      "rawMarkdown": "Instead of augmentation, can't we just use tiling cuts at different positions?",
      "votes": null
    },
    {
      "id": "1088324",
      "postDate": "11/23/2020 14:21:08",
      "content": "<p>Indeed very helpful. I am exploring TensorFlow too. </p>",
      "rawMarkdown": "Indeed very helpful. I am exploring TensorFlow too.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1085233,
      "author_name": "usharengaraju",
      "author_url": "",
      "post_date": "11/20/2020 19:09:45",
      "content": "<p><a href=\"https://www.kaggle.com/hiramcho\" target=\"_blank\">@hiramcho</a> Just went through your notebook . Its highly recommend that you use TensorFlow API for augmentation when you use tf.data as your input pipeline since its faster and also works smoothly with tf.distribute APIs of Tensorflow ecosystem . </p>",
      "votes": null,
      "replies": [
        {
          "id": 1085261,
          "author_name": "hiramcho",
          "author_url": "",
          "post_date": "11/20/2020 19:37:47",
          "content": "<p>Thanks for comment. Comments like this are the reason of why I made the notebook and the discusión related to data augmentations. </p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1088324,
          "author_name": "kool777",
          "author_url": "",
          "post_date": "11/23/2020 14:21:08",
          "content": "<p>Indeed very helpful. I am exploring TensorFlow too. </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1088286,
      "author_name": "louisbunuel",
      "author_url": "",
      "post_date": "11/23/2020 13:56:30",
      "content": "<p>Instead of augmentation, can't we just use tiling cuts at different positions? </p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1084307": "The few competitions where i had the pleasure to participate, it's very common to see discussions about the benefits of using **PyTorch** instead of **TensorFlow 2.x**, one of the recurrent arguments is because **PyTorch** has a richer ecosystem. In tasks related to **computer vision**, libraries like **albumentations** are the way to go for many people even if it doesn't support GPU operation. Then i found that tensorflow also has a very rich ecosystem like **tf.image** and keras preprocessing layers that could be used for data augmentation, i even made notebook ([\nHuBMAP: Keras Augmentation Layers](https://www.kaggle.com/hiramcho/hubmap-keras-augmentation-layers)). My question is, why it's more popular albumentations than the the options that i mention? Because even if albumentations has more Methods, it's a little slow.",
    "1085233": "hiramcho Just went through your notebook . Its highly recommend that you use TensorFlow API for augmentation when you use tf.data as your input pipeline since its faster and also works smoothly with tf.distribute APIs of Tensorflow ecosystem .",
    "1085261": "Thanks for comment. Comments like this are the reason of why I made the notebook and the discusión related to data augmentations.",
    "1088286": "Instead of augmentation, can't we just use tiling cuts at different positions?",
    "1088324": "Indeed very helpful. I am exploring TensorFlow too."
  },
  "source": "meta"
}