Improving Upon Human-AI Collaborative Models
Robots have become more ubiquitous in everyday life during the recent era, which has led to an increased interest to see humans and robots cooperate on a particular task. Despite there being great utility in developing agents that collaborate with humans, current algorithms often fall short of this and result in agents that can coordinate well between themselves but have poor performance when they are paired with humans. Our primary research motivation is to build an agent that can collaborate better with human partners. For this, we are motivated to develop an agent that can quickly adapt and work according to the individual preferences of its partner while also performing optimized and natural movements. In this work, we propose training an agent with a diverse set of training partners while also shaping our reward based on how human-like the actions are. This is achieved by embedding the individual preferences of its partner. We evaluated this on the simple environment based on the cooking game Overcooked, which requires the agents to cooperate with each other in challenging ways. With our algorithm, we are able to achieve an increase of 26% to the state of the art baselines selected in terms of overall reward while also having our constraint of generating human-like actions.
Language used: Python
Frameworks used: stable-baselines3, PantheonRL, Pytorch
Modeling Generative Processing in Neural Networks to Improve Retention
Generative processing generates predictions based on how humans generate perceptual features that are associated with previously learned concepts. Deep learning research on generative processing has largely focused on computer vision tasks using surrounding image context to conditionally generate predictions and using the generated output to update a latent variable to improve the model. Motivated to connect these modern frameworks to cognition in the natural language domain, we propose a framework for conditional generative training for text. We do this by fine-tuning deep language models that learn to predict tokens based on contexts. We target natural language tasks with the model BERT that provides contextual word embeddings. Using this base model, we optionally perform generative training to alter encoding of the inputs (e.g., word pairs related by a rule, sentences) for the target domain. Following this, we perform task-specific training for the target task at hand (e.g., rule prediction, sentiment classification). Finally, the model is evaluated on the task.
Language used: Python
Frameworks used: BERT, Pytorch, Pandas
Design and analysis of piece working platforms
The project aimed to understand user needs and finding pain points in the recruitment and processing of data gathering on pieceworking platforms like Amazon Mechanical Turk and create recommendations to alleviate pain point. The data for this study was collected by conducting a semi-structured interview following IRB protocol with a contextual inquiry/think-aloud session at the end of actual requestors on these platforms. Our group interviewed requestors from platforms like Fiverr, AMT and UserInterview to collect the data, which was then coded using Dedoose platform using the interrater reliability criterion. The data was then analyzed and recommendations and design outline for the platform was provided.
Frameworks used: Dedoose, open and axial coding
Real-time driver distraction detection system
This project aims to detect distraction of driver by analyzing the real-time video feed through the webcam in the dashboard. A new dataset for both left hand driving and right hand driving was developed by using the front facing angle for the webcam. The major areas of focus are extreme head poses, yawning detection, facial expressions, head nodding and hand movements that are indicators of distraction. The position of the driver’s face is localized using Viola Jones[10] algorithm and coordinates returned are used for cropping the face. This image can now be given to three existing CNN architecture models: Alexnet, LeNet and VGG16 and these outputs are combined using ensemble methods such as bagging, boosting, stacking, majority voting and weighted voting to obtain the classification labels.
Language used: Python
Frameworks used: Pandas, keras, Tensorflow