{
  "fetched_at": "2026-10-19T21:15:34Z",
  "source_url": "https://www.kaggle.com/competitions/dtc-zoomcamp-qa-challenge/data",
  "pages": [
    {
      "name": "data-description",
      "content": "### Dataset Description\n\nThe dataset for the DataTalks.Club Q&A Matching Challenge consists of four CSV files and an attachments folder. These files contain questions and answers from DataTalks.Club courses, along with relevant metadata. Participants are expected to use these files to develop models that can accurately match questions to their correct answers.\n\n#### 1. `train_questions.csv`:\n   - **Purpose:** This file is used for training your model. It contains the questions along with metadata and the correct answer IDs.\n   - **Columns:**\n     - `question_id`: A unique identifier for each question.\n     - `question`: The text of the question.\n     - `course`: The specific course from which the question was sourced.\n     - `year`: The year in which the course was conducted.\n     - `candidate_answers`: A list of answer IDs that are potential matches for the question.\n     - `answer_id`: The ID of the actual correct answer for the question.\n\n#### 2. `train_answers.csv`:\n   - **Purpose:** This file provides the answers for training, corresponding to the questions in `train_questions.csv`.\n   - **Columns:**\n     - `answer_id`: A unique identifier for each answer.\n     - `answer`: The text of the answer.\n     - `course`: The specific course from which the answer was sourced.\n     - `year`: The year in which the course was conducted.\n     - `attachments_files`: Names of any attachment files related to the answer, including images.\n\n#### 3. `test_questions.csv`:\n   - **Purpose:** Contains questions for evaluating your model's performance. It does not include the correct answer IDs.\n   - **Columns:** Same as `train_questions.csv`, but excluding the `answer_id` column.\n\n#### 4. `test_answers.csv`:\n   - **Purpose:** Provides the answers for the test set. Participants need to match these answers to the questions in `test_questions.csv`.\n   - **Columns:** Same as `train_answers.csv`.\n\n#### 5. Attachments Folder:\n   - **Contents:** Contains all the attachment files that are referenced in the answers. This includes images and potentially other types of files.\n   - **Usage:** These attachments are part of some answers and can be critical for correctly matching questions to answers, especially for questions where visual context is important.\n\nParticipants are encouraged to explore and utilize the rich information available in these files, including textual content, course context, and temporal data, to develop robust models capable of accurately matching questions and answers.\n\n### External Data Usage\n\n#### Allowing External Data:\n- **Policy:** In this competition, the use of external data is not only allowed but also encouraged. Participants are welcome to augment the provided dataset with additional relevant sources to enhance their models.\n- **Sharing Requirement:** If you use external data, you are required to share the details and sources of this data with the community. This sharing should be done both on the Kaggle forum and on the DataTalks.Club (DTC) Slack channel.\n\n#### Examples of External Data:\n- **Slack Dump:** Conversations and Q&A sessions from relevant Slack channels that pertain to data science and the topics covered in DataTalks.Club courses.\n- **ZoomCamp Q&A Google Documents:** Documents containing Q&A sessions from ZoomCamp courses or similar educational activities.\n- **YouTube Videos (as text):** Transcripts or textual analysis of YouTube videos that are relevant to the course content or the subject of the questions in the dataset.\n\n#### Purpose and Benefits:\n- **Enhancing Models:** External data can provide additional context, variations in language use, and broader coverage of topics, which can be crucial for building more robust and accurate models.\n- **Community Learning:** Sharing external data sources fosters a collaborative environment where all participants can learn from each other and build upon a diverse set of data.\n\nParticipants are encouraged to be creative and thoughtful in selecting external data that can genuinely contribute to the challenge's objective. The goal is to not only improve individual model performance but also to enrich the collective resources available to all competitors.\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "**Objective**: The primary goal is to develop a model that can accurately match a given question to its correct answer using the provided dataset. This challenge will test your skills in text processing, understanding contextual relationships, and dealing with varied data formats, including text and images.\n\n**Background**: DataTalks.Club, a hub for data science learning, generates a significant amount of Q&A data through its courses. This competition aims to harness this data to create models that can automate the matching of questions to answers, enhancing educational resources and learner experiences.\n\n**Impact**: Successful models from this competition could revolutionize how we manage the content, making it easier for learners to find the answers.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Prizes and Rewards",
      "content": "#### Beat the Benchmark:\n- **Reward for Surpassing Benchmark:** Participants who successfully beat the provided benchmark will receive special points in the Machine Learning Zoomcamp course.\n- **Eligibility:** This reward is available to those participating in both the Kaggle competition and the Machine Learning Zoomcamp course.\n\n#### GPU\n\nNVidia is giving us a GPU (RTX 4080) as the prize for the competition! \n\nA few conditions:\n\n- Your solution must not use any leaks or any other information that is not available during prediction time \n- You provide a complete and reproducible solution that doesn't use hand-labelled answers\n- It should be possible to send you a GPU. So if you live in a country under sanctions, we won't be able to give you the prize \n\n\n#### Encouraging Participation:\n- **Open to All:** Whether you are enrolled in the Machine Learning Zoomcamp or not, we encourage everyone to participate and challenge themselves in this exciting competition.\n- **More Than Just Prizes:** While winning prizes is rewarding, the primary goal is to learn, improve your skills, and be part of a vibrant community of data science enthusiasts.\n\nParticipants are encouraged to give their best, not just for the prizes, but also for the valuable learning experience and the opportunity to contribute to an innovative project\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "rules",
      "content": "* Submissions: Each participant/team can submit up to 5 entries per day.\n* Data Use: Participants can use external data for training their models, but the data must be shared with everyone else.\n* Evaluation: Submissions will be evaluated based on their accuracy, which is the proportion of correct matches between questions and answers in the test set.\n* Don't cheat.\n* Have fun!",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "abstract",
      "content": "Engage in the DataTalks.Club Q&A Matching Challenge!\n\nThis competition involves a unique dataset from the Q&A videos of DataTalks.Club courses, challenging participants to accurately match questions with their correct answers. Harness your data science skills to explore, analyze, and create models that excel in question-answer pairing. This is an excellent opportunity to showcase your expertise in natural language processing and machine learning.\n\nYou will find the entire dataset here: https://www.kaggle.com/competitions/dtc-zoomcamp-qa-challenge (Also the test data)",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Getting Started",
      "content": "We have prepared a getting started guide. See [here](https://github.com/DataTalksClub/kaggle-qa-challenge-starter)\n\n<p align=\"center\">\n    <a href=\"https://app.community.saturnenterprise.io/dash/resources?recipeUrl=https://raw.githubusercontent.com/DataTalksClub/kaggle-qa-challenge-starter/main/bert-baseline-jupyter-recipe.json\" target=\"_blank\" rel=\"noopener\">\n        <img src=\"https://saturncloud.io/images/embed/run-in-saturn-cloud.svg\" alt=\"Run in Saturn Cloud\"/>\n    </a>\n</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "**Accuracy**: The accuracy metric will assess the proportion of correctly matched question-answer pairs. Higher accuracy indicates better performance of the model",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Approaching the competition",
      "content": "\n### 1. **Understand the Problem and Dataset**\n- **Read Carefully:** Thoroughly understand the competition's objective, dataset, rules, and evaluation metrics.\n- **Explore Data:** Examine the given datasets to understand their structure and content.\n\n### 2. **Preprocessing and Exploratory Data Analysis (EDA)**\n- **Clean Data:** Address missing or inconsistent data.\n- **Analyze Trends:** Look for patterns or unique characteristics in the data.\n- **Consider Attachments:** Determine how to incorporate attachment files into your model.\n\n### 3. **Feature Engineering**\n- **Text Features:** Extract features from the text like n-grams, sentiment, or TF-IDF.\n- **Contextual Features:** Use course name and year for context-aware features.\n- **External Data:** Integrate external data thoughtfully.\n\n### 4. **Model Selection and Training**\n- **Experiment with Models:** Try different models suited for text matching.\n- **Deep Learning:** Consider advanced models like BERT for context understanding.\n- **Validation Strategy:** Implement a robust validation strategy.\n\n### 5. **Optimization and Tuning**\n- **Hyperparameter Tuning:** Find optimal model parameters.\n- **Feature Selection:** Refine features based on model feedback.\n- **Error Analysis:** Analyze and address model errors.\n\n### 6. **Collaboration and Learning**\n- **Community Engagement:** Engage with the Kaggle and DataTalks.Club communities.\n- **Document Your Work:** Keep thorough documentation.\n\n### Key Tips:\n- **Start Simple:** Begin with simple models for benchmarks.\n- **Innovation:** Try creative approaches.\n- **Stay Updated:** Check forums for updates and insights.\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}