Data Science Team Companion Course (CSCI 4802/5802)
When: Tuesdays 5-6pm -- first meeting: Sept 5
Where: ECCR 245 (Fall 2017)
Professor: Rafael Frongillo
Grader: Sarah Withee
Team website: codata.colorado.edu
Mailing List: subscribe via the team page
Prerequisites: linear algebra or permission of instructor.
Gives students hands-on experience applying data science techniques and machine learning algorithms to real-world problems. Students will work in small teams on internal challenges, many of which will be sponsored by local companies and organizations, and will represent the university in larger teams for external challenges at the national and global level, such as those hosted by Kaggle. Students will be expected to participate in both internal and external challenges, attend meetings, and present short presentations to the group when appropriate.
Data science is one of the fastest-growing sectors of our economy, and there is a great demand for data scientists with practical experience applying statistical techniques and machine learning algorithms to real data. While several courses in the CS curriculum develop these techniques, in the areas of machine learning, statistical modeling, network science, numerical analysis, and data science more broadly, and while these courses often include a hands-on project, no course specifically focuses on putting this myriad of tools to work on real data and developing intuition for when to apply certain techniques over others. The present course will fill in this gap, allowing students to work in teams both small and large to solve real-world prediction challenges, gaining valuable experience whether entering the workforce or remaining in academia.
To accompany the prediction challenges and other activities hosted by the team, we will have short presentations on topics relevant to the current competition or data science more broadly. A non-exhaustive list of topics is as follows.
- Basic Concepts: classification and regression, prediction vs causation, regularization and overfitting.
- Algorithms: linear regression, logistic regression, support vector machines, boosting, decision trees and forests, neural networks, gradient and stochastic gradient descent.
- Practical Techniques: ensemble methods and aggregation, tradeoffs in regularization, and parameter and hyperparameter tuning, data imputation techniques, cross-validation.
- Software and Tools: tutorials on several modern data science software packages; as of this writing, this would include e.g. scikit-learn, pandas, vowpal wabbit, and xgboost.
- Context and Industry Practice: via weekly presentations from practicing data scientists, students will learn about techniques actually used in industry and academia, and which algorithms work well for which problems.
The general requirement for the course is to participate in the competitions and other activities of the team. As the specifics of these competitions and activities will change from semester to semester, the course is formally structured as follows. You will submit two written reports to Moodle, one roughly half-way through the semester, and the other at the end of the semester, detailing what you have done. These reports should be structured as follows:
- Purpose: To make sure you are on track
- Format: Text
- Length: 3-4 paragraphs
- Summary: Brief description of the activities you have been involved in (e.g. competitions, self-guided data exploration, etc) and who you have been working with, if anyone
- Techniques: Brief description of the techniques you have used
- Goals: Your goals for the remainder of the semester, both in terms of activities (what will you do) and education (what do you hope to learn)
- Purpose: To assess your level of participation, effort, and learning
- Format: PDF
- Length: Roughly 3 pages single spaced for 4802 students, and 4+ pages single spaced for 5802 students
- Summary: A 1-2 paragraph description of the activities you were involved in (e.g. competitions, self-guided data exploration, etc) and who you worked with, if anyone
- For each activity, give a detailed account of your approach and techniques, including descriptions of any hurdles you had to overcome. Include relevant plots and figures. If you participated in prediction competitions, include links to the leaderboard and/or a screenshot showing your score.
- Goals: Briefly describe whether you accomplished your goals from the midterm report.
- Attachments: Include any relevant code or other digital artifacts
For more information about the team, please visit the team website.