{
  "id": 363973,
  "title": "Welcome to the OTTO – RecSys Challenge 2022!",
  "url": "/competitions/otto-recommender-system/discussion/363973",
  "author_name": "Philipp Normann",
  "post_date": "2022-11-03T22:52:40.235000",
  "votes": 55,
  "comment_count": 62,
  "views": 0,
  "content": "<p>Dear Kagglers,<br>\nWelcome to the OTTO – RecSys Challenge 2022!</p>\n<p>With this competition, we aim to push the field of multi-objective recommender systems and provide the community with a realistic session-based e-commerce dataset for further research.</p>\n<p>Please check out the competition description and our public <a href=\"https://github.com/otto-de/recsys-dataset\" target=\"_blank\">GitHub repository</a>. If you have further questions, feel free to ask us in the forum.</p>\n<p>We hope you enjoy the challenge – good Recall@20 and have fun! 🤓</p>",
  "messages": [
    {
      "id": 2016287,
      "postDate": "2022-11-03T22:52:40.237Z",
      "content": "<p>Dear Kagglers,<br>\nWelcome to the OTTO – RecSys Challenge 2022!</p>\n<p>With this competition, we aim to push the field of multi-objective recommender systems and provide the community with a realistic session-based e-commerce dataset for further research.</p>\n<p>Please check out the competition description and our public <a href=\"https://github.com/otto-de/recsys-dataset\" target=\"_blank\">GitHub repository</a>. If you have further questions, feel free to ask us in the forum.</p>\n<p>We hope you enjoy the challenge – good Recall@20 and have fun! 🤓</p>",
      "rawMarkdown": "Dear Kagglers,\nWelcome to the OTTO – RecSys Challenge 2022!\n\nWith this competition, we aim to push the field of multi-objective recommender systems and provide the community with a realistic session-based e-commerce dataset for further research.\n\nPlease check out the competition description and our public [GitHub repository](https://github.com/otto-de/recsys-dataset). If you have further questions, feel free to ask us in the forum.\n\nWe hope you enjoy the challenge – good Recall@20 and have fun! 🤓",
      "votes": 55
    },
    {
      "id": 2018121,
      "postDate": "2022-11-05T12:24:56.600Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, I have a question. <br>\nCan user order articles without click and adding to cart?<br>\ne. g. session <code>37</code> ordered aid <code>1660020</code> without click and adding to cart.</p>",
      "rawMarkdown": "Hi @pnormann, I have a question. \nCan user order articles without click and adding to cart?\ne. g. session `37` ordered aid `1660020` without click and adding to cart.",
      "votes": 18,
      "replies": [
        {
          "id": 2018519,
          "postDate": "2022-11-05T19:10:21.127Z",
          "content": "<p>Hey, <a href=\"https://www.kaggle.com/onodera\" target=\"_blank\">@onodera</a>, yes, this can happen. For example, if the ordered item was already in the customer's cart before the data extraction period started. Similarly, a wishlist feature in our shop can lead to cart additions without a previous click in the dataset. These inconsistencies are realistic, and solutions must be able to handle them.</p>",
          "rawMarkdown": "Hey, @onodera, yes, this can happen. For example, if the ordered item was already in the customer's cart before the data extraction period started. Similarly, a wishlist feature in our shop can lead to cart additions without a previous click in the dataset. These inconsistencies are realistic, and solutions must be able to handle them.",
          "votes": 18
        },
        {
          "id": 2036931,
          "postDate": "2022-11-20T09:57:08.143Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, there also exists order event without click or cart events. Are these valid events?</p>",
          "rawMarkdown": "Hi @pnormann, there also exists order event without click or cart events. Are these valid events?"
        },
        {
          "id": 2058470,
          "postDate": "2022-12-08T00:57:06.467Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/tatamikenn\" target=\"_blank\">@tatamikenn</a>, yes, this can happen for some sessions when users already had items in their cart before our data acquisition started. </p>",
          "rawMarkdown": "Hi @tatamikenn, yes, this can happen for some sessions when users already had items in their cart before our data acquisition started. ",
          "votes": 1
        }
      ]
    },
    {
      "id": 2035099,
      "postDate": "2022-11-18T15:48:12.377Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> , can I please ask:  what is the use case for such a recommendation algorithm? Imagine we build it tomorrow, how would it be used? </p>\n<p>I am assuming that we don't have data from logged-in users, therefore would this model be useful for website personalisation when it comes to anonymous users browsing based on their shopping behaviour during their session? It'd be great if you could outline a couple of its use-cases to get a better feel of the purpose it's supposed to serve.</p>\n<p>Thank you in advance!</p>",
      "rawMarkdown": "Hi @pnormann , can I please ask:  what is the use case for such a recommendation algorithm? Imagine we build it tomorrow, how would it be used? \n\nI am assuming that we don't have data from logged-in users, therefore would this model be useful for website personalisation when it comes to anonymous users browsing based on their shopping behaviour during their session? It'd be great if you could outline a couple of its use-cases to get a better feel of the purpose it's supposed to serve.\n\nThank you in advance!",
      "votes": 7,
      "replies": [
        {
          "id": 2058476,
          "postDate": "2022-12-08T01:01:51.067Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/ikogias\" target=\"_blank\">@ikogias</a>, I answered your question <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/367573#2039644\" target=\"_blank\">here</a>.</p>",
          "rawMarkdown": "Hi @ikogias, I answered your question [here](https://www.kaggle.com/competitions/otto-recommender-system/discussion/367573#2039644).",
          "votes": 1
        }
      ]
    },
    {
      "id": 2124725,
      "postDate": "2023-02-01T07:15:07.227Z",
      "content": "<p>Hello. Thank you for this competition!!!<br>\nIt was really fun.</p>\n<p>Will you make more digits of the score available now that the challenge ended to get a better idea of our scores?<br>\n<a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> </p>",
      "rawMarkdown": "Hello. Thank you for this competition!!!\nIt was really fun.\n\nWill you make more digits of the score available now that the challenge ended to get a better idea of our scores?\n@pnormann ",
      "votes": 3,
      "replies": [
        {
          "id": 2127498,
          "postDate": "2023-02-02T23:50:12.023Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/pietromaldini1\" target=\"_blank\">@pietromaldini1</a>, glad you enjoyed the competition! The precision on the LB has been increased.</p>",
          "rawMarkdown": "Hi @pietromaldini1, glad you enjoyed the competition! The precision on the LB has been increased.",
          "votes": 3
        }
      ]
    },
    {
      "id": 2039072,
      "postDate": "2022-11-21T23:20:59.023Z",
      "content": "<p>Thank you for hosting.<br>\nLet me ask you a question about test data bias.<br>\nAre you picking sessions that have at least one click, one cart, and one order in the truncated data?<br>\nAlso, did you choose a session where aids that are not in the training data do not appear?</p>",
      "rawMarkdown": "Thank you for hosting.\nLet me ask you a question about test data bias.\nAre you picking sessions that have at least one click, one cart, and one order in the truncated data?\nAlso, did you choose a session where aids that are not in the training data do not appear?",
      "votes": 3,
      "replies": [
        {
          "id": 2048631,
          "postDate": "2022-11-29T15:24:10.730Z",
          "content": "<p>Let me ask you one more question. Is the event type of the first record of the truncated data always click?</p>",
          "rawMarkdown": "Let me ask you one more question. Is the event type of the first record of the truncated data always click?"
        },
        {
          "id": 2058457,
          "postDate": "2022-12-08T00:42:05.077Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/ryumei\" target=\"_blank\">@ryumei</a>, thanks for your questions.</p>\n<ol>\n<li>All sessions in the dataset contain at least two clicks, but there are no guarantees regarding the number of carts and orders.</li>\n<li>All test <code>aids</code> are also included in the train set.</li>\n<li>The first event is not always a click (see <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/363973#2018519\" target=\"_blank\">my previous comment</a> for more info).</li>\n</ol>",
          "rawMarkdown": "Hi @ryumei, thanks for your questions.\n1. All sessions in the dataset contain at least two clicks, but there are no guarantees regarding the number of carts and orders.\n2. All test `aids` are also included in the train set.\n3. The first event is not always a click (see [my previous comment](https://www.kaggle.com/competitions/otto-recommender-system/discussion/363973#2018519) for more info).",
          "votes": 3
        },
        {
          "id": 2059785,
          "postDate": "2022-12-09T08:12:01.903Z",
          "content": "<p>Thank you very much.<br>\nExcuse me. Admittedly, question 3 wouldn't have been necessary if I had understood your previous comments better.</p>",
          "rawMarkdown": "Thank you very much.\nExcuse me. Admittedly, question 3 wouldn't have been necessary if I had understood your previous comments better."
        }
      ]
    },
    {
      "id": 3206353,
      "postDate": "2025-05-21T07:47:13.940Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann.I\" target=\"_blank\">@pnormann.I</a> have a question.<br>\nI'm not sure whether each session corresponds to one user, or if each user can correspond to multiple sessions. If it's the former, I'm considering using the session as the user ID.<br>\nLooking forward to your reply.</p>",
      "rawMarkdown": "Hi @pnormann.I have a question.\nI'm not sure whether each session corresponds to one user, or if each user can correspond to multiple sessions. If it's the former, I'm considering using the session as the user ID.\nLooking forward to your reply."
    },
    {
      "id": 2105092,
      "postDate": "2023-01-18T08:58:25.350Z",
      "content": "<p>thanks!!!!!!!!!!This is my first time to participate in the kaggle competition. Hope me to have fun!</p>",
      "rawMarkdown": "thanks!!!!!!!!!!This is my first time to participate in the kaggle competition. Hope me to have fun!\n\n"
    },
    {
      "id": 2104159,
      "postDate": "2023-01-17T16:47:23.997Z",
      "content": "<p>This is my first time to participate in the kaggle competition. Hope me to have fun!</p>",
      "rawMarkdown": "This is my first time to participate in the kaggle competition. Hope me to have fun!"
    },
    {
      "id": 2100418,
      "postDate": "2023-01-15T06:47:55.937Z",
      "content": "<p>Thank you for hosting <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> . Let me ask a question about the prediction period. <br>\nAs you have mentioned on the GitHub page, we are to predict what occurs after the point of truncation of test sessions. Does this mean that we are recommending aids for the whole rest of the session? If so, on average, how long a test session has continued? </p>",
      "rawMarkdown": "Thank you for hosting @pnormann . Let me ask a question about the prediction period. \nAs you have mentioned on the GitHub page, we are to predict what occurs after the point of truncation of test sessions. Does this mean that we are recommending aids for the whole rest of the session? If so, on average, how long a test session has continued? ",
      "replies": [
        {
          "id": 2105153,
          "postDate": "2023-01-18T10:02:33.383Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/akmuthun\" target=\"_blank\">@akmuthun</a> ,</p>\n<p>thanks for your question. Your task is to predict for each test session: </p>\n<ol>\n<li>the <em>next</em> clicked aid after the truncation of this session</li>\n<li><em>all</em> add2cart aids after the truncation of this session</li>\n<li><em>all</em> order aids after the truncation of this session</li>\n</ol>\n<p>The truncation happens at random for each session. <br>\nThe test sessions are similar in structure to the train sessions but contain the user behaviour of only one week. </p>",
          "rawMarkdown": "Hi @akmuthun ,\n\nthanks for your question. Your task is to predict for each test session: \n1. the *next* clicked aid after the truncation of this session\n2. *all* add2cart aids after the truncation of this session\n3. *all* order aids after the truncation of this session\n\nThe truncation happens at random for each session. \nThe test sessions are similar in structure to the train sessions but contain the user behaviour of only one week. ",
          "votes": 1
        }
      ]
    },
    {
      "id": 2099271,
      "postDate": "2023-01-14T10:00:17.507Z",
      "content": "<p>it is great </p>",
      "rawMarkdown": "it is great "
    },
    {
      "id": 2099055,
      "postDate": "2023-01-14T05:49:33.683Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> I have a question.</p>\n<p>How do you read the evaluation metrics formula:<br>\nIs it Rtype = number of intersection predicted aids with ground truth aids in each session, type / min(20, number of ground truth aids in each session, type)<br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2F83f2fac04b0a8e16c29587617cbccf66%2Fevaluation_metrics.jpg?generation=1673675121665057&amp;alt=media\" alt=\"\"></p>\n<p>And to confirm is the ground truth aids, for clicks, carts, orders will be the next aid clicks, the next aid carts and the next aid orders respectively ?</p>",
      "rawMarkdown": "Hi @pnormann I have a question.\n\nHow do you read the evaluation metrics formula:\nIs it Rtype = number of intersection predicted aids with ground truth aids in each session, type / min(20, number of ground truth aids in each session, type)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2F83f2fac04b0a8e16c29587617cbccf66%2Fevaluation_metrics.jpg?generation=1673675121665057&alt=media)\n\nAnd to confirm is the ground truth aids, for clicks, carts, orders will be the next aid clicks, the next aid carts and the next aid orders respectively ?",
      "replies": [
        {
          "id": 2105562,
          "postDate": "2023-01-18T15:51:38.170Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/cmatthews123\" target=\"_blank\">@cmatthews123</a> ,<br>\nFor clicks, there is only one single ground truth aid: the next aid clickes after the truncation.<br>\nFor carts and orders, you are to predict all aids for those events happening after the truncation. </p>",
          "rawMarkdown": "Hi @cmatthews123 ,\nFor clicks, there is only one single ground truth aid: the next aid clickes after the truncation.\nFor carts and orders, you are to predict all aids for those events happening after the truncation. ",
          "replies": [
            {
              "id": 2107783,
              "postDate": "2023-01-20T04:29:26.857Z",
              "content": "<p>Thankyou for the reply <a href=\"https://www.kaggle.com/andreaswand\" target=\"_blank\">@andreaswand</a> </p>",
              "rawMarkdown": "Thankyou for the reply @andreaswand "
            }
          ]
        }
      ]
    },
    {
      "id": 2097893,
      "postDate": "2023-01-13T03:14:50.847Z",
      "content": "<p>I appreciate Kaggle and host</p>",
      "rawMarkdown": "I appreciate Kaggle and host"
    },
    {
      "id": 2093731,
      "postDate": "2023-01-10T09:07:52.713Z",
      "content": "<p>Hi <strong>@pnormann</strong>,  I have a question for you.<br>\nI would like to create an application that allows me to easily view competition data.<br>\nWe would also like to make this application available to participants and get their feedback to improve it!<br>\nI checked the terms of use, and I would like to ask the organizer's permission because it may be considered public disclosure of data.<br>\nThe application is envisioned to look like the following image</p>\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2F13a59f17a302cfb85a6e183b6cb221f2%2F2023-01-10%2017.52.26.png?generation=1673341499958045&amp;alt=media\" alt=\"\"><br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2Ff4b08d4736b4a11f2b66df54119ca35d%2F2023-01-10%2017.52.11.png?generation=1673341488637571&amp;alt=media\" alt=\"\"></p>\n<p>Looking forward to a good response!</p>",
      "rawMarkdown": "Hi **@pnormann**,  I have a question for you.\nI would like to create an application that allows me to easily view competition data.\nWe would also like to make this application available to participants and get their feedback to improve it!\nI checked the terms of use, and I would like to ask the organizer's permission because it may be considered public disclosure of data.\nThe application is envisioned to look like the following image\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2F13a59f17a302cfb85a6e183b6cb221f2%2F2023-01-10%2017.52.26.png?generation=1673341499958045&alt=media)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2Ff4b08d4736b4a11f2b66df54119ca35d%2F2023-01-10%2017.52.11.png?generation=1673341488637571&alt=media)\n\nLooking forward to a good response!",
      "replies": [
        {
          "id": 2095633,
          "postDate": "2023-01-11T14:26:57.020Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/westtail\" target=\"_blank\">@westtail</a>, great idea! This is definitely possible. According to the rules and our <a href=\"https://creativecommons.org/licenses/by/4.0/\" target=\"_blank\">CC BY 4.0</a> data license, you can redistribute and build upon the dataset with your tool as long as you publicly share your code and give us appropriate attribution. Looking forward to seeing what you can come up with :)</p>",
          "rawMarkdown": "Hi @westtail, great idea! This is definitely possible. According to the rules and our [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) data license, you can redistribute and build upon the dataset with your tool as long as you publicly share your code and give us appropriate attribution. Looking forward to seeing what you can come up with :)",
          "replies": [
            {
              "id": 2096953,
              "postDate": "2023-01-12T11:33:07.447Z",
              "content": "<p>Thanks for the reply.<br>\nWe are very grateful for the appropriate information regarding the release of the application!</p>",
              "rawMarkdown": "Thanks for the reply.\nWe are very grateful for the appropriate information regarding the release of the application!"
            }
          ]
        }
      ]
    },
    {
      "id": 2062932,
      "postDate": "2022-12-12T14:26:53.013Z",
      "content": "<p>Will this competition be a RecSys workshop this year?</p>",
      "rawMarkdown": "Will this competition be a RecSys workshop this year?"
    },
    {
      "id": 2060670,
      "postDate": "2022-12-10T09:12:10.753Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> , may I ask a question, please? </p>\n<p>According to the submission format, we're asked to predict clicks, add2carts, orders respectively. (And the predicted articles can be different between 3 types of objectives.) However, in practice, the recommender system will only present one set of choices. So why are we predicting three actions separately, instead of directly giving one set of predictions according to the weighted score of 3 objectives?</p>",
      "rawMarkdown": "Hi @pnormann , may I ask a question, please? \n\nAccording to the submission format, we're asked to predict clicks, add2carts, orders respectively. (And the predicted articles can be different between 3 types of objectives.) However, in practice, the recommender system will only present one set of choices. So why are we predicting three actions separately, instead of directly giving one set of predictions according to the weighted score of 3 objectives?\n\n\n",
      "replies": [
        {
          "id": 2063863,
          "postDate": "2022-12-13T11:23:19.490Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/luanala\" target=\"_blank\">@luanala</a>, thanks for your question! In our case, we have multiple recommendation features, each pursuing different goals along the customer journey. Therefore we also want to have the flexibility to predict items for each action separately.</p>",
          "rawMarkdown": "Hi @luanala, thanks for your question! In our case, we have multiple recommendation features, each pursuing different goals along the customer journey. Therefore we also want to have the flexibility to predict items for each action separately.",
          "votes": 1
        }
      ]
    },
    {
      "id": 2031395,
      "postDate": "2022-11-16T03:49:40.853Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, may I ask</p>\n<ol>\n<li>How long is the measurement period for ground truth of test? I think it's 1 day to 1 week.</li>\n<li>What minimum level of recall do you expect?</li>\n</ol>",
      "rawMarkdown": "Hi @pnormann, may I ask\n1. How long is the measurement period for ground truth of test? I think it's 1 day to 1 week.\n2. What minimum level of recall do you expect?",
      "replies": [
        {
          "id": 2032199,
          "postDate": "2022-11-16T13:31:02.253Z",
          "content": "<p>Hey <a href=\"https://www.kaggle.com/onodera\" target=\"_blank\">@onodera</a>, of course</p>\n<ol>\n<li>The test set's ground truth spans the entire last week and consists of the labels created after the point at which we randomly truncated the test sessions. So the length of the measurement period can vary from session to session, but the maximum is one week.</li>\n<li>To be honest, we care much more about the maximum, but the current LB with its handcrafted baselines should give you a good intuition for a minimum recall for this competition :)</li>\n</ol>",
          "rawMarkdown": "Hey @onodera, of course\n1. The test set's ground truth spans the entire last week and consists of the labels created after the point at which we randomly truncated the test sessions. So the length of the measurement period can vary from session to session, but the maximum is one week.\n2. To be honest, we care much more about the maximum, but the current LB with its handcrafted baselines should give you a good intuition for a minimum recall for this competition :)\n",
          "votes": 4
        }
      ]
    },
    {
      "id": 2031264,
      "postDate": "2022-11-16T01:08:18.533Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, I have a question regarding the submission format file.<br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2Fa49a1721e97cf5ffafbc9c2d3ce3c0e2%2FScreenshot%202022-11-16%20080452.jpg?generation=1668560857430892&amp;alt=media\" alt=\"\"></p>\n<p>What does the labels represent ? </p>",
      "rawMarkdown": "Hi @pnormann, I have a question regarding the submission format file.\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2Fa49a1721e97cf5ffafbc9c2d3ce3c0e2%2FScreenshot%202022-11-16%20080452.jpg?generation=1668560857430892&alt=media)\n\nWhat does the labels represent ? ",
      "replies": [
        {
          "id": 2032213,
          "postDate": "2022-11-16T13:42:10.267Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/cmatthews123\" target=\"_blank\">@cmatthews123</a>, the labels represent article ids (<code>aid</code>) of the associated <code>session</code> and interaction <code>type</code>. For more information, please check out the <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/overview/evaluation\" target=\"_blank\">Evaluation</a> page here on Kaggle and our <a href=\"https://github.com/otto-de/recsys-dataset\" target=\"_blank\">README</a> on GitHub.</p>",
          "rawMarkdown": "Hi @cmatthews123, the labels represent article ids (`aid`) of the associated `session` and interaction `type`. For more information, please check out the [Evaluation](https://www.kaggle.com/competitions/otto-recommender-system/overview/evaluation) page here on Kaggle and our [README](https://github.com/otto-de/recsys-dataset) on GitHub.",
          "votes": 1
        }
      ]
    },
    {
      "id": 2025242,
      "postDate": "2022-11-11T05:05:21.803Z",
      "content": "<p>hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> ,we summit prediction contains Duplicate aids?</p>",
      "rawMarkdown": "hi @pnormann ,we summit prediction contains Duplicate aids?",
      "replies": [
        {
          "id": 2029245,
          "postDate": "2022-11-14T14:34:43.657Z",
          "content": "<p>Hey <a href=\"https://www.kaggle.com/bitguber\" target=\"_blank\">@bitguber</a>, thanks for your question! Submitting duplicate <code>aids</code> for the same <code>session</code> and interaction <code>type</code> wouldn't help you to push our metric. Since there is no benefit in recommending the same article more than once to our users, our recall metric operates on sets and doesn't reward duplicate hits on the same <code>aid</code>.</p>",
          "rawMarkdown": "Hey @bitguber, thanks for your question! Submitting duplicate `aids` for the same `session` and interaction `type` wouldn't help you to push our metric. Since there is no benefit in recommending the same article more than once to our users, our recall metric operates on sets and doesn't reward duplicate hits on the same `aid`.",
          "votes": 1
        },
        {
          "id": 2029302,
          "postDate": "2022-11-14T15:04:26.710Z",
          "content": "<p>sorry I didn't notice set operation on metrics  😄</p>",
          "rawMarkdown": "sorry I didn't notice set operation on metrics  😄"
        },
        {
          "id": 2045038,
          "postDate": "2022-11-27T02:23:11.753Z",
          "content": "<p>May I ask you another question  <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> ?<br>\nif so ,Is There any time limitation for submission notebook run ?</p>",
          "rawMarkdown": "May I ask you another question  @pnormann ?\nif so ,Is There any time limitation for submission notebook run ?"
        },
        {
          "id": 2058479,
          "postDate": "2022-12-08T01:08:58.957Z",
          "content": "<p>Hey <a href=\"https://www.kaggle.com/bitguber\" target=\"_blank\">@bitguber</a>, apart from the usual quota restrictions for your Kaggle notebooks, we don't set any time limits for this competition.</p>",
          "rawMarkdown": "Hey @bitguber, apart from the usual quota restrictions for your Kaggle notebooks, we don't set any time limits for this competition."
        },
        {
          "id": 2058500,
          "postDate": "2022-12-08T01:35:39.830Z",
          "content": "<p>got it,sir</p>",
          "rawMarkdown": "got it,sir"
        }
      ]
    },
    {
      "id": 2019058,
      "postDate": "2022-11-06T10:02:06.610Z",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> , I know it's a marginal issue but could you check this <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/364377\" target=\"_blank\">discussion thread</a> about the link inside the overview page that seems broken.</p>",
      "rawMarkdown": "Hi @pnormann , I know it's a marginal issue but could you check this [discussion thread](https://www.kaggle.com/competitions/otto-recommender-system/discussion/364377) about the link inside the overview page that seems broken.",
      "replies": [
        {
          "id": 2019146,
          "postDate": "2022-11-06T11:22:48.777Z",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/pietromaldini1\" target=\"_blank\">@pietromaldini1</a>, I fixed it. Thanks for pointing that out!</p>",
          "rawMarkdown": "Hi @pietromaldini1, I fixed it. Thanks for pointing that out!",
          "votes": 1
        }
      ]
    },
    {
      "id": 2148103,
      "postDate": "2023-02-17T06:22:30.327Z",
      "rawMarkdown": "",
      "isDeleted": true
    },
    {
      "id": 2036775,
      "postDate": "2022-11-20T07:00:42.723Z",
      "content": "<p>I appreciate Kaggle and host.</p>",
      "rawMarkdown": "I appreciate Kaggle and host.",
      "isDeleted": true
    },
    {
      "id": 2031545,
      "postDate": "2022-11-16T06:40:38.910Z",
      "rawMarkdown": "",
      "votes": 1,
      "isDeleted": true,
      "replies": [
        {
          "id": 2034256,
          "postDate": "2022-11-18T01:30:10.770Z",
          "rawMarkdown": "",
          "votes": 1,
          "isDeleted": true
        },
        {
          "id": 2038063,
          "postDate": "2022-11-21T07:02:44.730Z",
          "rawMarkdown": "",
          "isDeleted": true
        }
      ]
    },
    {
      "id": 2026579,
      "postDate": "2022-11-12T07:52:25.463Z",
      "content": "<p>May I ask how to open jsonl file?</p>",
      "rawMarkdown": "May I ask how to open jsonl file?\n",
      "isDeleted": true,
      "replies": [
        {
          "id": 2026863,
          "postDate": "2022-11-12T11:44:05.407Z",
          "content": "<p>just like json file  but line by line read that file<br>\n`import json<br>\nf=open(TRAIN_PATH, 'r')<br>\nfor i,line in enumerate(tqdm(f,total=12899779)):<br>\n    session=json.loads(line)<br>\n    current_aids=set()<br>\n    for event in session['events']:<br>\n        current_aids.add(event['aid'])</p>\n<p>f.flush() <br>\nf.close()`<br>\n😃</p>",
          "rawMarkdown": "just like json file  but line by line read that file\n`import json\nf=open(TRAIN_PATH, 'r')\nfor i,line in enumerate(tqdm(f,total=12899779)):\n    session=json.loads(line)\n    current_aids=set()\n    for event in session['events']:\n        current_aids.add(event['aid'])\n\nf.flush() \nf.close()`\n😃",
          "votes": 2,
          "replies": [
            {
              "id": 2072646,
              "postDate": "2022-12-22T09:55:11.927Z",
              "rawMarkdown": "",
              "isDeleted": true
            }
          ]
        },
        {
          "id": 2072647,
          "postDate": "2022-12-22T09:55:36.287Z",
          "content": "<p><a href=\"https://www.kaggle.com/kangsikseo\" target=\"_blank\">@kangsikseo</a> A more efficient way to read the pre-process the data is by using PySpark, see my post here for more details and code:<br>\n<a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/373257\" target=\"_blank\">https://www.kaggle.com/competitions/otto-recommender-system/discussion/373257</a></p>",
          "rawMarkdown": "@kangsikseo A more efficient way to read the pre-process the data is by using PySpark, see my post here for more details and code:\nhttps://www.kaggle.com/competitions/otto-recommender-system/discussion/373257"
        }
      ]
    },
    {
      "id": 2097243,
      "postDate": "2023-01-12T14:32:47.350Z",
      "content": "<p>Thank you for hosting.</p>",
      "rawMarkdown": "Thank you for hosting.",
      "votes": -1
    },
    {
      "id": 3224818,
      "postDate": "2025-06-15T14:17:13.957Z",
      "content": "<p>Thanks for the hosting</p>",
      "rawMarkdown": "Thanks for the hosting"
    },
    {
      "id": 2465991,
      "postDate": "2023-10-03T13:21:55.160Z",
      "content": "<p>Thanks for sharing this!</p>",
      "rawMarkdown": "Thanks for sharing this!"
    },
    {
      "id": 2111573,
      "postDate": "2023-01-23T01:38:56.757Z",
      "content": "<p>Thank you for sharing the info!</p>",
      "rawMarkdown": "Thank you for sharing the info!"
    },
    {
      "id": 2091466,
      "postDate": "2023-01-08T12:14:45.537Z",
      "content": "<p>thank you for information</p>",
      "rawMarkdown": "thank you for information\n"
    },
    {
      "id": 2061216,
      "postDate": "2022-12-10T20:23:37.793Z",
      "content": "<p>Thank you for hosting!</p>",
      "rawMarkdown": "Thank you for hosting!"
    },
    {
      "id": 2054113,
      "postDate": "2022-12-03T21:31:45.807Z",
      "content": "<p>Thank you </p>",
      "rawMarkdown": "Thank you "
    },
    {
      "id": 2045563,
      "postDate": "2022-11-27T13:03:15.137Z",
      "content": "<p>thank you for information </p>",
      "rawMarkdown": "thank you for information \n"
    },
    {
      "id": 2045015,
      "postDate": "2022-11-26T23:44:54.057Z",
      "content": "<p>thanks for hosting </p>",
      "rawMarkdown": "thanks for hosting \n"
    },
    {
      "id": 2044591,
      "postDate": "2022-11-26T16:37:44.497Z",
      "content": "<p>Thanks for hosting!</p>",
      "rawMarkdown": "Thanks for hosting!"
    },
    {
      "id": 2037948,
      "postDate": "2022-11-21T05:02:48.627Z",
      "content": "<p>Thank you kaggle</p>",
      "rawMarkdown": "Thank you kaggle"
    },
    {
      "id": 2036758,
      "postDate": "2022-11-20T06:44:31.250Z",
      "content": "<p>Thank you for hosting.</p>",
      "rawMarkdown": "Thank you for hosting.\n"
    },
    {
      "id": 2034301,
      "postDate": "2022-11-18T02:51:35.927Z",
      "content": "<p>thanks again</p>",
      "rawMarkdown": "thanks again"
    }
  ],
  "comments": [
    {
      "id": 2018121,
      "author_name": "ONODERA",
      "author_url": "",
      "post_date": "2022-11-05T12:24:56.600000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, I have a question. <br>\nCan user order articles without click and adding to cart?<br>\ne. g. session <code>37</code> ordered aid <code>1660020</code> without click and adding to cart.</p>",
      "votes": 18,
      "replies": [
        {
          "id": 2018519,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-11-05T19:10:21.127000",
          "content": "<p>Hey, <a href=\"https://www.kaggle.com/onodera\" target=\"_blank\">@onodera</a>, yes, this can happen. For example, if the ordered item was already in the customer's cart before the data extraction period started. Similarly, a wishlist feature in our shop can lead to cart additions without a previous click in the dataset. These inconsistencies are realistic, and solutions must be able to handle them.</p>",
          "votes": 18,
          "replies": []
        },
        {
          "id": 2036931,
          "author_name": "Bilzard",
          "author_url": "",
          "post_date": "2022-11-20T09:57:08.143000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, there also exists order event without click or cart events. Are these valid events?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 2058470,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-12-08T00:57:06.467000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/tatamikenn\" target=\"_blank\">@tatamikenn</a>, yes, this can happen for some sessions when users already had items in their cart before our data acquisition started. </p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 2035099,
      "author_name": "Giannis",
      "author_url": "",
      "post_date": "2022-11-18T15:48:12.377000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> , can I please ask:  what is the use case for such a recommendation algorithm? Imagine we build it tomorrow, how would it be used? </p>\n<p>I am assuming that we don't have data from logged-in users, therefore would this model be useful for website personalisation when it comes to anonymous users browsing based on their shopping behaviour during their session? It'd be great if you could outline a couple of its use-cases to get a better feel of the purpose it's supposed to serve.</p>\n<p>Thank you in advance!</p>",
      "votes": 7,
      "replies": [
        {
          "id": 2058476,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-12-08T01:01:51.067000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/ikogias\" target=\"_blank\">@ikogias</a>, I answered your question <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/367573#2039644\" target=\"_blank\">here</a>.</p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 2124725,
      "author_name": "Pietro Maldini",
      "author_url": "",
      "post_date": "2023-02-01T07:15:07.227000",
      "content": "<p>Hello. Thank you for this competition!!!<br>\nIt was really fun.</p>\n<p>Will you make more digits of the score available now that the challenge ended to get a better idea of our scores?<br>\n<a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> </p>",
      "votes": 3,
      "replies": [
        {
          "id": 2127498,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2023-02-02T23:50:12.023000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/pietromaldini1\" target=\"_blank\">@pietromaldini1</a>, glad you enjoyed the competition! The precision on the LB has been increased.</p>",
          "votes": 3,
          "replies": []
        }
      ]
    },
    {
      "id": 2039072,
      "author_name": "ryumei",
      "author_url": "",
      "post_date": "2022-11-21T23:20:59.023000",
      "content": "<p>Thank you for hosting.<br>\nLet me ask you a question about test data bias.<br>\nAre you picking sessions that have at least one click, one cart, and one order in the truncated data?<br>\nAlso, did you choose a session where aids that are not in the training data do not appear?</p>",
      "votes": 3,
      "replies": [
        {
          "id": 2048631,
          "author_name": "ryumei",
          "author_url": "",
          "post_date": "2022-11-29T15:24:10.730000",
          "content": "<p>Let me ask you one more question. Is the event type of the first record of the truncated data always click?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 2058457,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-12-08T00:42:05.077000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/ryumei\" target=\"_blank\">@ryumei</a>, thanks for your questions.</p>\n<ol>\n<li>All sessions in the dataset contain at least two clicks, but there are no guarantees regarding the number of carts and orders.</li>\n<li>All test <code>aids</code> are also included in the train set.</li>\n<li>The first event is not always a click (see <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/363973#2018519\" target=\"_blank\">my previous comment</a> for more info).</li>\n</ol>",
          "votes": 3,
          "replies": []
        },
        {
          "id": 2059785,
          "author_name": "ryumei",
          "author_url": "",
          "post_date": "2022-12-09T08:12:01.903000",
          "content": "<p>Thank you very much.<br>\nExcuse me. Admittedly, question 3 wouldn't have been necessary if I had understood your previous comments better.</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 3206353,
      "author_name": "力口贝一王可",
      "author_url": "",
      "post_date": "2025-05-21T07:47:13.940000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann.I\" target=\"_blank\">@pnormann.I</a> have a question.<br>\nI'm not sure whether each session corresponds to one user, or if each user can correspond to multiple sessions. If it's the former, I'm considering using the session as the user ID.<br>\nLooking forward to your reply.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2105092,
      "author_name": "PLO",
      "author_url": "",
      "post_date": "2023-01-18T08:58:25.350000",
      "content": "<p>thanks!!!!!!!!!!This is my first time to participate in the kaggle competition. Hope me to have fun!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2104159,
      "author_name": "Utopia.",
      "author_url": "",
      "post_date": "2023-01-17T16:47:23.997000",
      "content": "<p>This is my first time to participate in the kaggle competition. Hope me to have fun!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2100418,
      "author_name": "Amila Muthunayake",
      "author_url": "",
      "post_date": "2023-01-15T06:47:55.937000",
      "content": "<p>Thank you for hosting <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> . Let me ask a question about the prediction period. <br>\nAs you have mentioned on the GitHub page, we are to predict what occurs after the point of truncation of test sessions. Does this mean that we are recommending aids for the whole rest of the session? If so, on average, how long a test session has continued? </p>",
      "votes": 0,
      "replies": [
        {
          "id": 2105153,
          "author_name": "Andreas Wand",
          "author_url": "",
          "post_date": "2023-01-18T10:02:33.383000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/akmuthun\" target=\"_blank\">@akmuthun</a> ,</p>\n<p>thanks for your question. Your task is to predict for each test session: </p>\n<ol>\n<li>the <em>next</em> clicked aid after the truncation of this session</li>\n<li><em>all</em> add2cart aids after the truncation of this session</li>\n<li><em>all</em> order aids after the truncation of this session</li>\n</ol>\n<p>The truncation happens at random for each session. <br>\nThe test sessions are similar in structure to the train sessions but contain the user behaviour of only one week. </p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 2099271,
      "author_name": "kaggle2022lily",
      "author_url": "",
      "post_date": "2023-01-14T10:00:17.507000",
      "content": "<p>it is great </p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2099055,
      "author_name": "CMatthewS123",
      "author_url": "",
      "post_date": "2023-01-14T05:49:33.683000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> I have a question.</p>\n<p>How do you read the evaluation metrics formula:<br>\nIs it Rtype = number of intersection predicted aids with ground truth aids in each session, type / min(20, number of ground truth aids in each session, type)<br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2F83f2fac04b0a8e16c29587617cbccf66%2Fevaluation_metrics.jpg?generation=1673675121665057&amp;alt=media\" alt=\"\"></p>\n<p>And to confirm is the ground truth aids, for clicks, carts, orders will be the next aid clicks, the next aid carts and the next aid orders respectively ?</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2105562,
          "author_name": "Andreas Wand",
          "author_url": "",
          "post_date": "2023-01-18T15:51:38.170000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/cmatthews123\" target=\"_blank\">@cmatthews123</a> ,<br>\nFor clicks, there is only one single ground truth aid: the next aid clickes after the truncation.<br>\nFor carts and orders, you are to predict all aids for those events happening after the truncation. </p>",
          "votes": 0,
          "replies": [
            {
              "id": 2107783,
              "author_name": "CMatthewS123",
              "author_url": "",
              "post_date": "2023-01-20T04:29:26.857000",
              "content": "<p>Thankyou for the reply <a href=\"https://www.kaggle.com/andreaswand\" target=\"_blank\">@andreaswand</a> </p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 2097893,
      "author_name": "邹雨霏",
      "author_url": "",
      "post_date": "2023-01-13T03:14:50.847000",
      "content": "<p>I appreciate Kaggle and host</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2093731,
      "author_name": "westtail",
      "author_url": "",
      "post_date": "2023-01-10T09:07:52.713000",
      "content": "<p>Hi <strong>@pnormann</strong>,  I have a question for you.<br>\nI would like to create an application that allows me to easily view competition data.<br>\nWe would also like to make this application available to participants and get their feedback to improve it!<br>\nI checked the terms of use, and I would like to ask the organizer's permission because it may be considered public disclosure of data.<br>\nThe application is envisioned to look like the following image</p>\n<p><img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2F13a59f17a302cfb85a6e183b6cb221f2%2F2023-01-10%2017.52.26.png?generation=1673341499958045&amp;alt=media\" alt=\"\"><br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2Ff4b08d4736b4a11f2b66df54119ca35d%2F2023-01-10%2017.52.11.png?generation=1673341488637571&amp;alt=media\" alt=\"\"></p>\n<p>Looking forward to a good response!</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2095633,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2023-01-11T14:26:57.020000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/westtail\" target=\"_blank\">@westtail</a>, great idea! This is definitely possible. According to the rules and our <a href=\"https://creativecommons.org/licenses/by/4.0/\" target=\"_blank\">CC BY 4.0</a> data license, you can redistribute and build upon the dataset with your tool as long as you publicly share your code and give us appropriate attribution. Looking forward to seeing what you can come up with :)</p>",
          "votes": 0,
          "replies": [
            {
              "id": 2096953,
              "author_name": "westtail",
              "author_url": "",
              "post_date": "2023-01-12T11:33:07.447000",
              "content": "<p>Thanks for the reply.<br>\nWe are very grateful for the appropriate information regarding the release of the application!</p>",
              "votes": 0,
              "replies": []
            }
          ]
        }
      ]
    },
    {
      "id": 2062932,
      "author_name": "weizhi",
      "author_url": "",
      "post_date": "2022-12-12T14:26:53.013000",
      "content": "<p>Will this competition be a RecSys workshop this year?</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2060670,
      "author_name": "Lyrra",
      "author_url": "",
      "post_date": "2022-12-10T09:12:10.753000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> , may I ask a question, please? </p>\n<p>According to the submission format, we're asked to predict clicks, add2carts, orders respectively. (And the predicted articles can be different between 3 types of objectives.) However, in practice, the recommender system will only present one set of choices. So why are we predicting three actions separately, instead of directly giving one set of predictions according to the weighted score of 3 objectives?</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2063863,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-12-13T11:23:19.490000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/luanala\" target=\"_blank\">@luanala</a>, thanks for your question! In our case, we have multiple recommendation features, each pursuing different goals along the customer journey. Therefore we also want to have the flexibility to predict items for each action separately.</p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 2031395,
      "author_name": "ONODERA",
      "author_url": "",
      "post_date": "2022-11-16T03:49:40.853000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, may I ask</p>\n<ol>\n<li>How long is the measurement period for ground truth of test? I think it's 1 day to 1 week.</li>\n<li>What minimum level of recall do you expect?</li>\n</ol>",
      "votes": 0,
      "replies": [
        {
          "id": 2032199,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-11-16T13:31:02.253000",
          "content": "<p>Hey <a href=\"https://www.kaggle.com/onodera\" target=\"_blank\">@onodera</a>, of course</p>\n<ol>\n<li>The test set's ground truth spans the entire last week and consists of the labels created after the point at which we randomly truncated the test sessions. So the length of the measurement period can vary from session to session, but the maximum is one week.</li>\n<li>To be honest, we care much more about the maximum, but the current LB with its handcrafted baselines should give you a good intuition for a minimum recall for this competition :)</li>\n</ol>",
          "votes": 4,
          "replies": []
        }
      ]
    },
    {
      "id": 2031264,
      "author_name": "CMatthewS123",
      "author_url": "",
      "post_date": "2022-11-16T01:08:18.533000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a>, I have a question regarding the submission format file.<br>\n<img src=\"https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2Fa49a1721e97cf5ffafbc9c2d3ce3c0e2%2FScreenshot%202022-11-16%20080452.jpg?generation=1668560857430892&amp;alt=media\" alt=\"\"></p>\n<p>What does the labels represent ? </p>",
      "votes": 0,
      "replies": [
        {
          "id": 2032213,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-11-16T13:42:10.267000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/cmatthews123\" target=\"_blank\">@cmatthews123</a>, the labels represent article ids (<code>aid</code>) of the associated <code>session</code> and interaction <code>type</code>. For more information, please check out the <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/overview/evaluation\" target=\"_blank\">Evaluation</a> page here on Kaggle and our <a href=\"https://github.com/otto-de/recsys-dataset\" target=\"_blank\">README</a> on GitHub.</p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 2025242,
      "author_name": "BIT_Guber",
      "author_url": "",
      "post_date": "2022-11-11T05:05:21.803000",
      "content": "<p>hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> ,we summit prediction contains Duplicate aids?</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2029245,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-11-14T14:34:43.657000",
          "content": "<p>Hey <a href=\"https://www.kaggle.com/bitguber\" target=\"_blank\">@bitguber</a>, thanks for your question! Submitting duplicate <code>aids</code> for the same <code>session</code> and interaction <code>type</code> wouldn't help you to push our metric. Since there is no benefit in recommending the same article more than once to our users, our recall metric operates on sets and doesn't reward duplicate hits on the same <code>aid</code>.</p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 2029302,
          "author_name": "BIT_Guber",
          "author_url": "",
          "post_date": "2022-11-14T15:04:26.710000",
          "content": "<p>sorry I didn't notice set operation on metrics  😄</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 2045038,
          "author_name": "BIT_Guber",
          "author_url": "",
          "post_date": "2022-11-27T02:23:11.753000",
          "content": "<p>May I ask you another question  <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> ?<br>\nif so ,Is There any time limitation for submission notebook run ?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 2058479,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-12-08T01:08:58.957000",
          "content": "<p>Hey <a href=\"https://www.kaggle.com/bitguber\" target=\"_blank\">@bitguber</a>, apart from the usual quota restrictions for your Kaggle notebooks, we don't set any time limits for this competition.</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 2058500,
          "author_name": "BIT_Guber",
          "author_url": "",
          "post_date": "2022-12-08T01:35:39.830000",
          "content": "<p>got it,sir</p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 2019058,
      "author_name": "Pietro Maldini",
      "author_url": "",
      "post_date": "2022-11-06T10:02:06.610000",
      "content": "<p>Hi <a href=\"https://www.kaggle.com/pnormann\" target=\"_blank\">@pnormann</a> , I know it's a marginal issue but could you check this <a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/364377\" target=\"_blank\">discussion thread</a> about the link inside the overview page that seems broken.</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2019146,
          "author_name": "Philipp Normann",
          "author_url": "",
          "post_date": "2022-11-06T11:22:48.777000",
          "content": "<p>Hi <a href=\"https://www.kaggle.com/pietromaldini1\" target=\"_blank\">@pietromaldini1</a>, I fixed it. Thanks for pointing that out!</p>",
          "votes": 1,
          "replies": []
        }
      ]
    },
    {
      "id": 2148103,
      "author_name": "",
      "author_url": "",
      "post_date": "2023-02-17T06:22:30.327000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2036775,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-20T07:00:42.723000",
      "content": "<p>I appreciate Kaggle and host.</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2031545,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-16T06:40:38.910000",
      "content": "",
      "votes": 1,
      "replies": [
        {
          "id": 2034256,
          "author_name": "",
          "author_url": "",
          "post_date": "2022-11-18T01:30:10.770000",
          "content": "",
          "votes": 1,
          "replies": []
        },
        {
          "id": 2038063,
          "author_name": "",
          "author_url": "",
          "post_date": "2022-11-21T07:02:44.730000",
          "content": "",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 2026579,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-12T07:52:25.463000",
      "content": "<p>May I ask how to open jsonl file?</p>",
      "votes": 0,
      "replies": [
        {
          "id": 2026863,
          "author_name": "BIT_Guber",
          "author_url": "",
          "post_date": "2022-11-12T11:44:05.407000",
          "content": "<p>just like json file  but line by line read that file<br>\n`import json<br>\nf=open(TRAIN_PATH, 'r')<br>\nfor i,line in enumerate(tqdm(f,total=12899779)):<br>\n    session=json.loads(line)<br>\n    current_aids=set()<br>\n    for event in session['events']:<br>\n        current_aids.add(event['aid'])</p>\n<p>f.flush() <br>\nf.close()`<br>\n😃</p>",
          "votes": 2,
          "replies": [
            {
              "id": 2072646,
              "author_name": "",
              "author_url": "",
              "post_date": "2022-12-22T09:55:11.927000",
              "content": "",
              "votes": 0,
              "replies": []
            }
          ]
        },
        {
          "id": 2072647,
          "author_name": "Giannis",
          "author_url": "",
          "post_date": "2022-12-22T09:55:36.287000",
          "content": "<p><a href=\"https://www.kaggle.com/kangsikseo\" target=\"_blank\">@kangsikseo</a> A more efficient way to read the pre-process the data is by using PySpark, see my post here for more details and code:<br>\n<a href=\"https://www.kaggle.com/competitions/otto-recommender-system/discussion/373257\" target=\"_blank\">https://www.kaggle.com/competitions/otto-recommender-system/discussion/373257</a></p>",
          "votes": 0,
          "replies": []
        }
      ]
    },
    {
      "id": 2097243,
      "author_name": "LIUZIWEI0827",
      "author_url": "",
      "post_date": "2023-01-12T14:32:47.350000",
      "content": "<p>Thank you for hosting.</p>",
      "votes": -1,
      "replies": []
    },
    {
      "id": 3224818,
      "author_name": "Denis Shveykin",
      "author_url": "",
      "post_date": "2025-06-15T14:17:13.957000",
      "content": "<p>Thanks for the hosting</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2465991,
      "author_name": "Zill",
      "author_url": "",
      "post_date": "2023-10-03T13:21:55.160000",
      "content": "<p>Thanks for sharing this!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2111573,
      "author_name": "Le Ju",
      "author_url": "",
      "post_date": "2023-01-23T01:38:56.757000",
      "content": "<p>Thank you for sharing the info!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2091466,
      "author_name": "Wangzixu",
      "author_url": "",
      "post_date": "2023-01-08T12:14:45.537000",
      "content": "<p>thank you for information</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2061216,
      "author_name": "Ranjit Jadhawar",
      "author_url": "",
      "post_date": "2022-12-10T20:23:37.793000",
      "content": "<p>Thank you for hosting!</p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2054113,
      "author_name": "Lei Wang",
      "author_url": "",
      "post_date": "2022-12-03T21:31:45.807000",
      "content": "<p>Thank you </p>",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2045563,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-27T13:03:15.137000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2045015,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-26T23:44:54.057000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2044591,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-26T16:37:44.497000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2037948,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-21T05:02:48.627000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2036758,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-20T06:44:31.250000",
      "content": "",
      "votes": 0,
      "replies": []
    },
    {
      "id": 2034301,
      "author_name": "",
      "author_url": "",
      "post_date": "2022-11-18T02:51:35.927000",
      "content": "",
      "votes": 0,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "2016287": "Dear Kagglers,\nWelcome to the OTTO – RecSys Challenge 2022!\n\nWith this competition, we aim to push the field of multi-objective recommender systems and provide the community with a realistic session-based e-commerce dataset for further research.\n\nPlease check out the competition description and our public [GitHub repository](https://github.com/otto-de/recsys-dataset). If you have further questions, feel free to ask us in the forum.\n\nWe hope you enjoy the challenge – good Recall@20 and have fun! 🤓",
    "2018121": "Hi @pnormann, I have a question. \nCan user order articles without click and adding to cart?\ne. g. session `37` ordered aid `1660020` without click and adding to cart.",
    "2035099": "Hi @pnormann , can I please ask:  what is the use case for such a recommendation algorithm? Imagine we build it tomorrow, how would it be used? \n\nI am assuming that we don't have data from logged-in users, therefore would this model be useful for website personalisation when it comes to anonymous users browsing based on their shopping behaviour during their session? It'd be great if you could outline a couple of its use-cases to get a better feel of the purpose it's supposed to serve.\n\nThank you in advance!",
    "2124725": "Hello. Thank you for this competition!!!\nIt was really fun.\n\nWill you make more digits of the score available now that the challenge ended to get a better idea of our scores?\n@pnormann ",
    "2039072": "Thank you for hosting.\nLet me ask you a question about test data bias.\nAre you picking sessions that have at least one click, one cart, and one order in the truncated data?\nAlso, did you choose a session where aids that are not in the training data do not appear?",
    "3206353": "Hi @pnormann.I have a question.\nI'm not sure whether each session corresponds to one user, or if each user can correspond to multiple sessions. If it's the former, I'm considering using the session as the user ID.\nLooking forward to your reply.",
    "2105092": "thanks!!!!!!!!!!This is my first time to participate in the kaggle competition. Hope me to have fun!\n\n",
    "2104159": "This is my first time to participate in the kaggle competition. Hope me to have fun!",
    "2100418": "Thank you for hosting @pnormann . Let me ask a question about the prediction period. \nAs you have mentioned on the GitHub page, we are to predict what occurs after the point of truncation of test sessions. Does this mean that we are recommending aids for the whole rest of the session? If so, on average, how long a test session has continued? ",
    "2099271": "it is great ",
    "2099055": "Hi @pnormann I have a question.\n\nHow do you read the evaluation metrics formula:\nIs it Rtype = number of intersection predicted aids with ground truth aids in each session, type / min(20, number of ground truth aids in each session, type)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2F83f2fac04b0a8e16c29587617cbccf66%2Fevaluation_metrics.jpg?generation=1673675121665057&alt=media)\n\nAnd to confirm is the ground truth aids, for clicks, carts, orders will be the next aid clicks, the next aid carts and the next aid orders respectively ?",
    "2097893": "I appreciate Kaggle and host",
    "2093731": "Hi **@pnormann**,  I have a question for you.\nI would like to create an application that allows me to easily view competition data.\nWe would also like to make this application available to participants and get their feedback to improve it!\nI checked the terms of use, and I would like to ask the organizer's permission because it may be considered public disclosure of data.\nThe application is envisioned to look like the following image\n\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2F13a59f17a302cfb85a6e183b6cb221f2%2F2023-01-10%2017.52.26.png?generation=1673341499958045&alt=media)\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F10233619%2Ff4b08d4736b4a11f2b66df54119ca35d%2F2023-01-10%2017.52.11.png?generation=1673341488637571&alt=media)\n\nLooking forward to a good response!",
    "2062932": "Will this competition be a RecSys workshop this year?",
    "2060670": "Hi @pnormann , may I ask a question, please? \n\nAccording to the submission format, we're asked to predict clicks, add2carts, orders respectively. (And the predicted articles can be different between 3 types of objectives.) However, in practice, the recommender system will only present one set of choices. So why are we predicting three actions separately, instead of directly giving one set of predictions according to the weighted score of 3 objectives?\n\n\n",
    "2031395": "Hi @pnormann, may I ask\n1. How long is the measurement period for ground truth of test? I think it's 1 day to 1 week.\n2. What minimum level of recall do you expect?",
    "2031264": "Hi @pnormann, I have a question regarding the submission format file.\n![](https://www.googleapis.com/download/storage/v1/b/kaggle-forum-message-attachments/o/inbox%2F8569630%2Fa49a1721e97cf5ffafbc9c2d3ce3c0e2%2FScreenshot%202022-11-16%20080452.jpg?generation=1668560857430892&alt=media)\n\nWhat does the labels represent ? ",
    "2025242": "hi @pnormann ,we summit prediction contains Duplicate aids?",
    "2019058": "Hi @pnormann , I know it's a marginal issue but could you check this [discussion thread](https://www.kaggle.com/competitions/otto-recommender-system/discussion/364377) about the link inside the overview page that seems broken.",
    "2148103": "",
    "2036775": "I appreciate Kaggle and host.",
    "2031545": "",
    "2026579": "May I ask how to open jsonl file?\n",
    "2097243": "Thank you for hosting.",
    "3224818": "Thanks for the hosting",
    "2465991": "Thanks for sharing this!",
    "2111573": "Thank you for sharing the info!",
    "2091466": "thank you for information\n",
    "2061216": "Thank you for hosting!",
    "2054113": "Thank you ",
    "2045563": "thank you for information \n",
    "2045015": "thanks for hosting \n",
    "2044591": "Thanks for hosting!",
    "2037948": "Thank you kaggle",
    "2036758": "Thank you for hosting.\n",
    "2034301": "thanks again"
  }
}