DA 351 - Advanced Descriptive Methods for Data Analytics

Spring 2024

Your Professor:

Matt Lavin

My Email:

lavinm@denison.edu

My Office:

Burton D. Morgan Center 411

Office Hours

1 to 2:30 p.m. MW by appointment, drop-ins from 2 to 3:30 p.m. Tues.

Our Classroom:

Burton D. Morgan Center 218

When We Meet:

3 to 4:20 p.m. MW

Course Description

Advanced Descriptive Methods, in parallel with DA 352 and 353, is designed to develop students' understanding of the cutting-edge methods and algorithms of data analytics and how they can be used to answer questions about real-world problems. While all advanced methods for Data Analytics can be applied in a variety of capacities, descriptive analytics emphasizes using Natural Language Processing (NLP) methods to work with text as data, modeling for interpretability, and designing and deploying Computer Vision (CV) systems. In DA 351, students will examine both supervised and unsupervised methods, including topics such as advanced regression, K nearest neighbors, hierarchical clustering, ranked cosine similarity, and deep learning.

Shared Learning Goals for All Advanced Methods Courses:

  1. assess model performance under uncertainty
  2. align research questions, target data, and methods
  3. handle large data and/or computations by writing efficient code
  4. remain flexible when encountering and adopting new models and methods
  5. maintain well-organized code, project spaces, and documentation

Specific Learning Goals for Advanced Descriptive Methods:

  1. establish a working toolkit for advanced data analytics in Python
  2. gain experience selecting supervised and unsupervised machine learning models for interpretability, and interpreting the results when such models are used
  3. apply natural language processing (NLP) and computer vision (CV) strategies in Data Analytics contexts

Office Hours

I am always happy to see students during my office hours, whether it's to discuss this class, majoring in DA, how I can contribute to your learning at Denison, or your plans for life after graduation (career, graduate school, etc.). Like many professors, I offer mix of in-person appointments (via Google Calendar) and drop-in office hours.

For many of your questions related to assignments for the class, our teaching assistant will be your first and best source of assistance. Our TA for this class is Phineas Pham (pham_p1 [at] denison.edu). Phineas will be drop-in office hours and will help answer questions about the course, as well as particular assignments. Phineas will also attend some classes. Phineas office hours will be posted on Canvas by the end of the first week of classes. In general, you should meet with our TA before coming to my office hours with a code-related or assignment-related question, as the TA should be able to answer most of these kinds of questions. After inquiring with our TA, if you still need my help, you can make an appointment or come to my drop-in hours. 

For office hours by appointment, visit my appointment page, where you will see a real-time account of when I am available. You can book the appointment with one or two clicks by selecting any time when I'm listed as available. My standard appointment slots are divided into 15-minute blocks from 1 to 2:30 p.m. on Mondays and Wednesdays. Note that these appointment slots will disappear from my calendar once I've been booked. Please book appointments at least 24 hours in advance.

Drop-in office hours will be held in my office from 2 to 3:30 p.m. on Tuesdays. For these, you will not need an appointment, but I will see students in the order they arrive, so there is no guarantee that I will have time for everyone on a given day. If your question is time sensitive, you should make an appointment.

If I ever need to cancel by-appointment office hours on a given day (say, for example, if I'm ill), I will update the calendar and email anyone with an appointment. If I ever need to cancel office hours on a given drop-in day, I will post to Canvas or e-mail the entire class.


Additional Norms and Policies


Here you will find information on required readings, import university policies, and course-specific policies like attendance and cell phone use.

Required Texts

No book purchases are required. Selected readings will be made available as html or pdf, and linked to the course website or shared via Canvas.

Software and Platforms

All assignments in this course will be scripted and analyzed using Python. All of my demos will use Jupyter Notebooks as a programming environment. You are welcome to use Jupyter Notebook, JupyterLab, or any other Integrated Development Environment (IDE) of your choice when writing code. Most assignments, however, will require you to turn in a .py or .ipynb file and/or a written document (.docx, .pdf). Many assignments will require specific Python dependencies, such as a particular module or library, so it is recommended that you install the Anaconda platform, which includes Python, Jupyter Notebooks, and most of the libraries we will use.
Assignments will be shared via GitHub Classroom, which provides a collaboration and version control system via Github. Typically, Github Classroom assignments will contain datasets, assignment template files and/or starter code. In some cases, if a dataset is too large for Github's file size limits, assignments will come with instructions on how to download the data online, or from a Google Drive folder. Completed assignments will be turned in for assessment on Canvas, and all grades and student feedback will be issued on Canvas in order to maintain educational privacy.

Grading and Feedback

As a general rule, the expectations in this course are high, and I'm confident you can all do great work. The feedback I provide on assignments is designed to help you get there. My goal is to provide specific, relevant, and honest feedback when I grade your work. This will include constructive criticism, strategies for improvement, and guidance on how students can achieve success. I will not do "compliment sandwiches" just to begin and end on a positive remark, but this means that, when I praise your work, it's an honest (and I think more meaningful) act of praise. 

Regarding the major assignment rubric, it is adapted from the standards that the data analytics program uses for all its majors. I don't expect your work to meet the same standards as a graduating senior, but I think using the same categories on our rubric will help you keep these standards in mind as you work toward that level.

Item Description
Assignment Process: All materials are turned in on time and in the right place. Assignment directions are followed. Required components are all present and submitted on time.
Attention to Detail: The project is well organized, flows logically, and follows the all formatting guidelines, including attention to proofreading, proper citations, and language that is appropriate to a well-informed, non-technical reader.
Research Question and Research Design: The project has a focused and well defined research question that can be addressed with computational, data-driven analysis. The focal data set and method(s) are appropriate for the research question.
Data, Visuals, and Code: The data are fully described, properly sourced, and presented in appropriate ways. Visuals (tables, charts, graphs) are used effectively to describe multiple aspects of the research project (data, methods, or results). The paper provides sufficient details and/or points to supplementary materials that make the research reproducible by a technical reader (i.e, detailed footnotes, appendices, GitHub, code, etc.)
Data Analysis Methods: The method(s) used to test the research question is justified, validated, and applied appropriately; the student appropriately describes the strengths and weaknesses of the methods used; outside sources are used to justify how the methods are used and interpreted.
Reporting and Interpretation of Results: The results are interpreted correctly and clearly address the research question; the project discusses its limitations, the extent to which it can be generalized, and expansion to further research.
Ethical Considerations: The writing thoughtfully engages any ethical considerations of using the data, methods, and implications of communicating the findings.

Grade Breakdown

Item Percentage Comments
Attendance and Participation 10 Attendance will be taken every day. Late arrival counts as half an absence. Participation will be assessed using a mix of preparedness, speaking during class discussions, remaining attentive during lectures, and completing in-class assignments.
Algorithm Presentation 5 Individual assignments
Quizzes 15 Individual assignments
Midterm Assessment 10 Take-home, individual assignment, cumulative to date.
Project-Based Assignments and Reports (Labs) 45 Individual and team-based assignments
Final Assessment 15 Take-home, individual assignment, cumulative.

Late Work

If you have a legitimate emergency such as a serious illness, a mental health emergency, or a death in the family, I will grant an appropriate extension with a new due date. The trade off is that work turned in this way is probably not going end up in my hand when I grade everything else, so it's going to get very sparse feedback. If you miss a deadline entirely without getting an extension, you will automatically lose 10 points off the top of your grade for each day it is late, in addition to any points you lose for the quality of the work. Retroactive and last-minute extensions will not be granted.

Distractions

Cell phones should be off and put away. Laptops are okay for notes and such but, when laptops are being used, you should not be messaging, using Facebook, etc. I will check screens regularly give you a verbal warning on your first offense. After that, I reserve the right to ask you to leave class and mark you absent if you are creating a distraction.

Being Prepared for Class

Coming to class prepared means that you have the day's reading in hand (printed or digital) and have come to class with a way to take notes (printed or digital). If you are not prepared for class, I reserve the right to grade as if you were absent for that day. Anything due on a given day is due at the start of class. Any digital submission of material is due by the time class starts on the day the hard copy is due. 

Disability Resources

If you are a student who feels you may need an accommodation based on the impact of a disability, you should contact me privately as soon as possible to discuss your specific needs. I rely on the Academic Resource Center in 020 Higley Hall to verify the need for reasonable accommodations based on documentation on file in that office.

Academic Integrity

Proposed and developed by Denison students, passed unanimously by DCGA and Denison’s faculty, the Code of Academic Integrity requires that instructors notify the Associate Provost of cases of academic dishonesty. Cases are typically heard by the Academic Integrity Board, which determines whether a violation has occurred, and, if so, its severity and the sanctions. In some circumstances the case may be handled through an Administrative Resolution Procedure. Further, the code makes students responsible for promoting a culture of integrity on campus and acting in instances in which integrity is violated.

Academic honesty, the cornerstone of teaching and learning, lays the foundation for lifelong integrity. Academic dishonesty is intellectual theft. It includes but is not limited to providing or receiving assistance in a manner not authorized by the instructor in the creation of work to be submitted for evaluation. This standard applies to all work ranging from daily homework assignments to major exams. Students must clearly cite any sources consulted--not merely for quoted phrases, but also for ideas and information that are not common knowledge. Neither ignorance nor carelessness is an acceptable defense incases of plagiarism. It is the student’s responsibility to follow the appropriate format for citations. Students should ask their instructors for assistance in determining what sorts of materials and assistance are appropriate for assignments and for guidance in citing such materials clearly.

Note on Technology: Unauthorized use of technology (including, but not limited to, artificial intelligence sites and translation programs) in the preparation or submission of academic work can be considered a form of cheating and/or plagiarism. Instructors may at their discretion create assignments that incorporate the use of supporting technologies and will inform students of acceptable uses of technology in their courses. It is the responsibility of the student to ask the instructor for clarification whenever they are unclear about the parameters of a specific assignment and to understand that presenting the work of artificial intelligence as your own constitutes a violation of Denison's Code. Cases of suspected inappropriate use of technology may be submitted to the Academic Integrity Board to initiate an investigation of academic dishonesty. For further information about the Code of Academic Integrity, see https://denison.edu/academics/curriculum/integrity.

Our Commitment to Liberal Arts Education

Denison's mission statement articulates an explicit commitment to liberal arts education. It emphasizes active learning, which defines students as active participants in the leaning process, not passive recipients. Denison seeks to foster self-determination and to demonstrate the transformative power of education. A crucial aspect of this approach is what Denison's mission statement refers to as "a concern for the whole person," which is why the university provides a "living-learning environment" based on individual needs and an overriding concern for community. This community is based on "a firm belief in human dignity and compassion unlimited by cultural, racial, sexual, religious or economic barriers, and directed toward an engagement with the central issues of our time."

In this class, we will discuss inequality directly. In many cases, you will asked to apply quantitative reasoning skills to these subject, which can be difficult because there is always the potential for the available data to complicate or contradict something you may feel very passionate about. In these cases, you should aspire to adopt an attitude of critical skepticism, i.e. wary of claims that are not supported by evidence but potentially willing to be persuaded by evidence if you find it compelling, and willing to give that evidence a fair hearing.

How we treat one another will be a cornerstone of these conversations. Denison's "Guiding Principles" speak of "a community in which individuals respect one another and their environment." Further, "each member of the community possesses a full range of rights and responsibilities. Foremost among these is a commitment to treat each other and the environment with mutual respect, tolerance, and civility." It's easy to treat someone this way when you like them and agree with their ideas, but the real challenge is treating those who differ from us with the same compassion and respect. However, I consider disruptive, deceitful, or hateful behavior to be breaches of these responsibilities. Bullying, trolling, hate speech, and harassment of any kind will not be tolerated.

Discrimination, Sexual Misconduct, and Sexual Assault

Essays, journals, and other coursework submitted for this class are generally considered confidential pursuant to the University’s student record policies. However, students should be aware that University employees are required by University policy to report allegations of discrimination based on sex, gender, gender identity, gender expression, sexual orientation or pregnancy to the Title IX Coordinator or a Deputy Title IX Coordinator. This includes reporting all incidents of sexual misconduct, sexual assault and suspected abuse/neglect of a minor. Further, employees are to report these incidents that occur on campus and/or that involve students at Denison University whenever the employee becomes aware of a possible incident in the course of their employment, including via coursework or advising conversations. There are others on campus to whom you may speak in confidence, including clergy and medical staff and counselors at the Wellness Center. More information on Title IX and the University’s Policy prohibiting sex discrimination, including sexual harassment, sexual misconduct, stalking and retaliation, including support resources, how to report, and prevention and education efforts, can be found at: https://denison.edu/campus/title-ix.


Assignments

Log into Canvas to see the summary of upcoming due dates for major assignments.

Algorithm Presentation (5% of grade)

This assignment has two purposes: to practice public speaking skills and to cover a broader range of machine learning algorithms than our time constraints would other allow. Students working in self-selected pairs will focus on a particular method, drawn from a list of options that I will provide. They will find and select a peer-reviewed, quantitative paper that applies this method and give a 15-minute class presentation. Your presentation will:

1. Explain the method (the high-level algorithm, the theory behind it, its strengths and weaknesses)
2. Discuss how/why the authors of the paper use the method (background, data collection, design of experiment, results)

Quizzes (15% of grade)

This course has intermittent quizzes on material from readings and lectures. Quizzes are designed to measure how well you are integrating the material. There will be five quizzes in total, each of which will take place on a Wednesday.

Midterm Assessment (10% of grade)

The midterm assessment will be a take-home, individual assignment cumulative up to the date of the assessment. It will be open-book and will focus on questions that test your synthesis of the course content rather than information recall or rote learning. It is due Friday, March 8.

Project-Based Assignments and Reports (Labs) (45% of grade)

Labs will be a mix of individual and team-based assignments. They are generally problem-focused and will require working with data, writing Python code to solve a problem or analyze a question, and explaining your work in the form of a written report. Each lab assignment will have written instructions, which will be shared Github Classroom. Week's on the calendar marked "mini lab" will not have a full lab assignment but will typically entail completing a worksheet or a short written reflection.

Final Assessment (15% of course grade)

As with the midterm, the final assessment will be a take-home, individual assignment cumulative through the entire course. It will be open-book and will focus on questions that test your synthesis of the course content rather than information recall or rote learning. It is due at the start of our scheduled exam block.

Note: Denison policy does not permit me to give extensions on this assignment, so any late submission will receive a 0 grade.


Weekly Calendar

Weekly Rhythm

Monday Wednesday Sunday Evening
All weekly readings should be done by this day. Discuss new assignment, coding practice, and/or other activities. Student presentations, lecture. Quizzes will also take place on Wednesdays. Turn in lab assignments by midnight

Week 1: Introducing Advanced Methods for Data Analytics
(Monday, January 15, 2024 - Wednesday, January 17, 2024)

Learning Outcomes: Understand professor's expectations; identify the focus of the class

By Wednesday: Sign up for Github, Complete Course Survey

By Next Wednesday : Read Keshav, "How to Read a Paper" (on Canvas); complete Python familiarity questionnaire; install Anaconda; install Github Desktop or set up credential on command line

Week 2: Python for Data Analytics
(Monday, January 22, 2024 - Wednesday, January 24, 2024)

Reminder: MLK Day Observed Monday - No Class

Learning Outcomes: Verify that all software dependencies are covered; understand what lab assignments will require

By Midnight Sunday: Lab 1: Exploratory Data Analysis

By Next Monday: Read "Machine Learning Using Python" chapter 3, "Numpy and Pandas" (https://faculty.washington.edu/otoomet/machinelearning-py/numpy-and-pandas.html)

Week 3: Python for Data Analytics
(Monday, January 29, 2024 - Wednesday, January 31, 2024)

Learning Outcomes: Establish a working toolkit for advanced data analytics in Python

On Wednesday: Quiz 1

By Next Monday: Read Analyzing Documents with TF-IDF (https://programminghistorian.org/en/lessons/analyzing-documents-with-tfidf)

Week 4: Foundations of Natural Language Processing (NLP)
(Monday, February 05, 2024 - Wednesday, February 07, 2024)

Learning Outcomes: Understand NLP fundamentals, and how NLP fits into data analytics

On Wednesday: Algorithm Presentations 1-2

By Midnight Sunday: Mini Lab 1: TF-IDF

By Next Monday: Read Vajjala, Practical NLP, 119-134 (on Canvas)

Week 5: NLP Week 2
(Monday, February 12, 2024 - Wednesday, February 14, 2024)

Learning Outcomes: Implement text classification in Python; use cross-validation; understand KNN vs. logistic regression

By Midnight Sunday: Lab 2: Text Classification

On Wednesday: Quiz 2

By Next Monday: Read "Word Association Norms, Mutual Information, and Lexicography" (https://aclanthology.org/J90-1003/)

Week 6: NLP Week 3
(Monday, February 19, 2024 - Wednesday, February 21, 2024)

Learning Outcomes: Understand feature extraction; practice using Spacy to extract text features

On Wednesday: Algorithm Presentations 3-4

By Midnight Sunday: Mini Lab 2: Phrases and Named Entities

By Next Monday: Read Vajjala, Practical NLP, 134-159 (on Canvas)

Week 7: NLP Week 4
(Monday, February 26, 2024 - Wednesday, February 28, 2024)

Learning Outcomes: Manipulate word embeddings; use embeddings as features

On Wednesday: Quiz 3

By Next Monday: Lab 3: Word Embeddings

Week 8: Ensemble Learning
(Monday, March 04, 2024 - Wednesday, March 06, 2024)

Learning Outcomes: Understand paradigmatic use cases for ensemble models

By Friday at Midnight: Midterm Assessment

By Monday, March 18: Read Elgendy, Vision Systems, 1-35 (on Canvas)

Week 9: Spring Break
(Monday, March 11, 2024 - Wednesday, March 13, 2024)

Reminder: No Class 3/11-3/13

Week 10: Computer Vision 1 (3/18, 3/20)
(Monday, March 18, 2024 - Wednesday, March 20, 2024)

Learning Outcomes: Understand major feature extraction approaches and their differences

On Wednesday: Algorithm Presentations 5-6

By Midnight Sunday: Mini Lab 3: Image Features

By Next Monday: Read Elgendy, Vision Systems, 36-91 (on Canvas)

Week 11: Computer Vision 2 (3/25, 3/27)
(Monday, March 25, 2024 - Wednesday, March 27, 2024)

Learning Outcomes: Implement image analysis in Python

On Wednesday: Algorithm Presentations 7-8

By Midnight Sunday: Lab 4: Basic Image Analysis

By Next Monday: Read Elgendy, Vision Systems, 92-144 (on Canvas)

Week 12: Computer Vision 3 (4/1, 4/3)
(Monday, April 01, 2024 - Wednesday, April 03, 2024)

Learning Outcomes: Understand theory of CNNs; learn to implement in Python

On Wednesday: Quiz 4

By Midnight Sunday: Mini Lab 4: Image Clustering

Week 13: Computer Vision 4 (4/8, 4/10)
(Monday, April 08, 2024 - Wednesday, April 10, 2024)

Learning Outcomes: Understand theory of R-CNNs; implement image classification; use k-fold cross-validation

By Midnight Sunday: Lab 5: Image Classification

By Next Monday: Read Monarch, Human-in-the-Loop Machine Learning, 1-48 (on Canvas)

Week 14: Human in the Loop - (4/15, 4/17)
(Monday, April 15, 2024 - Wednesday, April 17, 2024)

Learning Outcomes: Employ HITL strategies to improve model performance

On Wednesday: Quiz 5

By Midnight Sunday: Mini Lab 5: HITL

Week 15: DA at scale (4/22, 4/24)
(Monday, April 22, 2024 - Wednesday, April 24, 2024)

Learning Outcomes: Understand big ideas for performing DA at scale

Week 16: Exam Week
(Monday, April 29, 2024 - Wednesday, May 01, 2024)

Reminder: Last Day of Class is Monday, April 29