{
  "fetched_at": "2026-10-19T13:17:54Z",
  "source_url": "https://www.kaggle.com/competitions/csci4622-21fall/data",
  "pages": [
    {
      "name": "data-description",
      "content": "train-features.csv contains the features of the examples / cases, separated by commas, that you will use to train your classifiers. You must associate the features found in each row / line with the output found in the corresponding row / line in train-output.csv to create a full case.\n\ntest-features.csv contains the features of the examples / cases that you will need to predict using your trained model. You are not given a corresponding test-output.csv, instead your objective is to generate a file that predicts the outcomes for these test examples / cases and upload them here on Kaggle. Your solution will then be compared against (a subset of) the test outcomes for evaluation. You can use guess-output-common.csv and guess-output-stratified.csv to see what an example submission file should look like. These two files are baseline cases - you can even upload them to make sure your Kaggle account is working correctly!\n\nSee covtype.info for header descriptions of the train and test features. This will be helpful in understanding how you may need to normalize, bin, or otherwise update your data to better suit your classifiers.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "### About this Activity\nFor Problem Set 4, we're stripping away a lot of the structure behind the problem and instead asking you to simply predict the type of trees (i.e. forest cover) from a series of environmental features.\n\n### About the Dataset\nYou have been given two training documents - train-features.csv and train-outcomes - which contain the features (in the \"features\" file) and the outcomes (in the \"outcomes\" file) in the Data tab above (along with information about the features), with rows corresponding to cases. You have also been given test-features.csv with the test case features. Your objective is to provide a test-outcomes.csv file equivalent that predicts the outcomes for each case. See the Data page for full details.\n\n### About Submissions\nTo submit a set of predictions, upload your properly formatted document in the Submit Predictions section. Use the sample in the Data section for guidance on formatting your submission. Check the Leaderboard section to see how you're doing!\n\nYou have to be logged in to Kaggle to submit, and Kaggle has some tricky rules in place to ensure each human only has one account. If your account is associated with your given name in the course roster or your campus username, I can easily link your activity to your grade. If your Kaggle account is a personal account, under a pseudonym, etc. that's fine - you'll just have to make that link in your brief description.\n\n### Rules\nFull details of how submissions work, etc. can be found in the Rules tab above as well as on Canvas. There are some important details to note here on the main page.\n\n- You may only submit up to two predictions to Kaggle per day. Use internal validation processes (K-fold cross validation, etc) to optimize!\n- Do not go find other copies of this dataset online. You can find and incorporate external data that can provide a benefit (e.g. if somehow Twitter sentiment or stock market analysis were to prove useful, which I doubt, you could add it to your modeling process), but if you find the *same* dataset, please do not use it in your model training.\n- You are working on this homework alone. This is not a group assignment.\n    - The rules for sharing and collaboration are somewhat relaxed on this assignment. You can share the tools, approaches and techniques that you are finding useful with others, e.g. \"I found it helpful to use Classification Technique X\" or \"I dropped Feature A before I fit my data and got better outcomes\". You can also choose not to share those insights with others, and instead hoard your succcesses.\n\nOtherwise, this homework follows the same rules as other homework assignments - you should be working independently, using Piazza as a resource but not as a coding crutch. There are many approaches to solve this problem, and not everyone has to use the same one!\n\n### Submissions to Grades\n\nOutcomes will be calculated using F1 score, which will then be mapped to grade outcomes out of 100 Points. Your grade will be measured on Max(Public Score, Private Score). You do not have to submit anything to Canvas (no code, no writeup, etc.).\n\n- Any submission < 14% F1 score: 0 Points\n- 14% < 70% F1 score: 50 Points\n- 70% < 80% F1 score: 70 Points\n- 80% < 85% F1 score: 80 Points\n- 85% < 91% F1 score: 90 Points\n- F1 score > 91%: 100 Points\nSubmissions over 91% F1 score:\n- For every 1% over 91%, you will receive 5 Bonus Points.\n- For calculating these points, your score will be rounded down (e.g. an F1 score at 36.8% will not count as an F1 score at 37%\n\nIn addition, to foster a small spirit of competition, the top 25% of class submissions at the end of the competition will receive 10 Bonus Points\n- You can be in the top 25% of class submissions on either the public or private leaderboards (or both) to get the 10 Bonus Points. These public / private bonus points will not stack, though they will combine with the over 91% F1 score bonus points.\n\n### Acknowledgements\nWe thank the UCI Machine Learning Repository for access to this dataset.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "The evaluation metric for this competition is [Mean F1-Score](https://en.wikipedia.org/wiki/F-score). The F1 score, commonly used in information retrieval, measures accuracy using the statistics precision \\( \\text{p} \\) and recall \\( \\text{r} \\).\n\nPrecision is the ratio of true positives \\(\\text{tp}\\) to all predicted positives \\(\\text{tp} + \\text{fp}\\). Recall is the ratio of true positives \\(\\text{tp}\\) to all actual positives \\(\\text{tp} + \\text{fn}\\). The F1 score is given by:\n\n\\[ \\text{F1} = 2\\frac{\\text{p} \\cdot \\text{r}}{\\text{p}+\\text{r}}\\ \\ \\mathrm{where}\\ \\ \\text{p} = \\frac{\\text{tp}}{\\text{tp}+\\text{fp}},\\ \\ \\text{r} = \\frac{\\text{tp}}{\\text{tp}+\\text{fn}} \\]\n\nThe F1 metric weights recall and precision equally, and a good retrieval algorithm will maximize both precision and recall simultaneously. Thus, moderately good performance on both will be favored over extremely good performance on one and poor performance on the other.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "rules",
      "content": "There are very few restrictions on this activity. \n\nUnlike our other assignments, you may use whatever languages and ML packages you would like. We recommend you continue to use Python / Jupyter / SKLearn as that is what we will be supporting in this class / on Piazza.\n\nCollaboration is slightly different than usual:\n\n- You can share methodology / technique insights with your peers or publicly (e.g. on Piazza)\n    - Do not post implementation questions publicly on Piazza (if someone does, please ignore it)\n        - instead, reach out to your course staff for coding issues (You can post a private question on Piazza) \n\nDo not go find other copies of this dataset online. You can find and incorporate external data that can provide a benefit (e.g. if somehow Twitter sentiment or stock market analysis were to prove useful, which I doubt, you could add it to your modeling process), but if you find the same dataset, please do not use it in your model training.\n\nSubmissions cap of 2 per day is implemented in Kaggle. Your top score will post on the public leaderboard, and you can select two submissions to be used at the end of the competition against the private test set.\n\nOutcomes will be calculated using F1 score, which will then be mapped to grade outcomes out of 100 Points. Your grade will be measured on Max(Public Score, Private Score). Please see the \"Overview\" page for further details on grading.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}