Projects

LLMs for Health Forecasting
Social Media Graph Mining
Sensor-based Change Detection
CS Education Research

Large Language Models for Health Forecasting and Prediction

We utilize Large Language Models (LLMs) for Ecological Momentary Assessment (EMA) time series forecasting and to build a human digital twin. For the former, our CogProg approach leverages participant text-based journal entries to boost numerical forecasting results. For the latter, our HDTwin approach unifies heterogeneous data to predict cognitive diagnoses and offer explanations for its inferences.

Relevant published papers:

Social Media Network/Graph Mining

Using the Twitter/X API, we fetched millions of tweets to construct directed, weighted networks in which the edge weights are empirically obtained "probabilities of influence" between all pairs of Twitter usernames in the network. The first network we constructed represented influence amongst US Congresspeople: retweets, quote tweets, replied tos, or mentions of other Congressional members. Subsequent networks constructed model influence amongst all D1 men's and women's NCAA college basketball teams during the 2021-22 and 2022-23 seasons.

Relevant published papers:

Mobile App-based Periodic Assessment

Digital Memory Notebook and Smart-home Integration for MCI

We aim to extract behavior markers from two modalities, a smart home environment and a custom digital memory notebook app, for mapping to eight clinical assessments that are relevant for monitoring mild cognitive impairment (MCI) onset and changes. We use machine learning techniques to fuse these multimodal behavior markers and utilizing joint inference to achieve accurate assessment prediction results.

Relevant published papers:

Ecological Momentary Assessment for Patients with and Caregiviers of ALS

Healthcare-related research studies often deploy ecological momentary assessment techniques to sample information from participants in their natural environment. We designed and implemented an online system to support remote access of ecological self-report and actigraphy-based measurements for individuals with Amyotrophic Lateral Sclerosis (ALS) and their caregivers. The framework includes a custom mobile app and makes use of a web-based application programming interface for data collection with wrist-worn actigraphy devices.

Relevant published papers:

Sensor-based Change Detection

Behavior Change Detection (BCD)

Smart homes technology offers an unprecedented opportunity to unobtrusively monitor human behavior in everyday environments and to determine whether relationships exist between behavior and health changes. We introduce our behavior change detection (BCD) algorithm to automatically identify changes that accompany health events, which can potentially save lives. We are exploring different applications of BCD to smart home residents with major health events (like the onset of cancer treatment) and groups of smart home residents with and without cognitive impairments.

Relevant published papers:

Physical Activity Change Detection (PACD)

We study the problem of detecting and analyzing change in physical activity patterns. More specifically, we introduce a framework called Physical Activity Change Detection, or PACD, to determine if a significant change exists between two windows of time series physical activity data sampled from a wearable fitness device.

Relevant published papers:

Machine Learning and Wearables

Sleep and Physical Activity Prediction

We explore data-driven approaches to combining datasets collected from different wearable device manufacturers. With the ability to combine datasets, we merge data from different device manufacturers to form larger datasets of time series data collected from patients receiving inpatient therapy services. To gain insights into the recovery process, we use this dataset to build models that predict a patient's next day physical activity duration and next night sleep duration.

Relevant published papers:

Clinical Assessment Prediction

We explore the predictive utility of features derived from wearable sensors and patient medical records for predicting future patient functioning. To do this, we utilize several machine learning techniques. Our results indicate a statistically significant improvement in prediction accuracy when training with a combination of wearable sensor and medical record derived features over medical record features alone.

Relevant published papers:

Measuring Rehabilitation Changes

We are investigating changes exhibited in physical performance during inpatient rehabilitation. The majority of patients we recruit for our study are recovering from a stroke, brain injury, or spinal cord injury. We use wearable inertial sensors to collect data from patients as they perform physical therapy. From the sensor signals, we compute over 40 different metrics related to gait and movement. After one week of inpatient rehabilitation, we quantitatively compare these metrics at both the individual and group levels. To do this, we use statistical measures such as the standardized mean difference effect size and the reliable change index. Our results provide insight about which metrics exhibit the highest changes and how each individual is progressing.

Relevant published papers:

Therapists' Feedback

Our research with wearable technology for rehabilitation is interesting from a computer science and bioengineering perspective, but what is its utility for clinicians? Are therapists interested in the outputs of our algorithms? Would they even use wearable technology during physical therapy? These are a few of the questions we are trying to answer by interviewing physical therapists. We hope the results of these one-on-one interviews will provide insight for the research community regarding clinical adoption of the wearable technology and directions for future work.

Relevant published papers:

CS Education Research

Automated Code Review with Large Language Models

Undergraduate computer science and software engineering students benefit significantly from in-depth reviews of their code early and often in their courses. Prior work with Automatic Static Analysis Tools has shown promise at using artificial intelligence to automate code reviews, with some success integrating them into classroom environments. To leverage new advances in Generative Pre-Trained Transformer (GPT) models, we designed and evaluated Automatic Review Tool (ART) to provide timely, automatically generated code reviews. ART was evaluated in a second-semester computer science course by integrating ART into the course's Github-based assignment submission system.

Relevant published papers:

Gamification

Some (but not all!) students who are interested in computer science are also avid gamers. Whether that be video games, board games, sports, etc., most of like games in some form. While teaching introductory programming courses, I research how games can be effective to help motivate students to learn. I've explored designing my own games for exam review sessions and working with student researchers to gamify an entire course using automated systems. For fun, check out my Buzzer! game on Github and my card game in the ACM Digital Library. Also, check out our Leaderboard plugin for gamification is available here on Github and here in the Moodle Plugins Repository.

Relevant published papers:

Github Data Mining

I use GitHub Classroom for programming assignment submission regularly in my upper and lower division courses. To investigate how students use the tool, we mine student commit behavior from programming assignments submitted via GitHub Classroom in several courses. Our data analysis indicated that students responded to a small amount of graded points being allocated for quantity and quality of commit messages by improving their use of version control.

Relevant published papers:

Super Fun Programming Projects

I'm always trying to come up with fun ways to learn programming. In my intro courses, we do fun Arduino labs and I expose students to APIs early on (example assignments from an introduction to Python course using Spotify and Google Maps APIs are available here). Please see our CougarQuest "Learn to Code!" workshop page for project ideas. The GIF to the left shows an AdaFruit light array running a simple Arduino program to spell my name. This program is an example of the hardware we are using to inspire middle school students to pursue computer science. Please check out my Light Array frame designer for helping the students design their animations!

Relevant published papers: