Data Science Team Companion Course (CSCI 4802/5802)
Prerequisites: linear algebra or permission of instructor
Updated Syllabus Info for COVID-19 3/16/2020
Here is how we will proceed now that all CU Boulder classes are online. Each meeting will run as follows:
- 5:00 to ~5:30: MADS talk on zoom
- Same link every week: https://cuboulder.zoom.us/j/663519525
- When you join you will be muted by default.
- Use the raise hand feature to ask a question.
- When called on, we'll unmute you.
- Make sure you use your full name on zoom (and multiple names if multiple people) for attendance.
- If you are not familiar with zoom, here are the basics and other tutorials.
- ~5:30 to 6:00: Check-ins on slack
- Each group should create a direct message (DM) group on slack with all team members, Carter, and Raf (due 5pm 3/17/2020).
- We will circulate around to the different groups and see how you are doing.
- Zoom integration: You can type "/zoom" in slack to quickly create a zoom meeting with your DM group; we may use this, so please be ready to hop on those calls.
- Please use #help for general questions about techniques, tools, etc, since other students will have those questions too and/or may be able to help.
Gives students hands-on experience applying data science techniques and machine learning algorithms to real-world problems. Students will work in small teams on on projects of their choosing, which could include competitions sponsored by local companies and organizations. Project teams are responsible for attending, submitting progress reports, and giving short presentations 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 three written reports to Moodle 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, prediction tasks, 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, prediction tasks, 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 (though note they do not count toward the page count). 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.