Project Title: Neural Networks for Enhanced Prediction
BASIS Advisor: Ms. Bhattacharya
Internship Location: University of Iowa
Onsite Mentor: Dr. Qihang Lin
As the field of Artificial Intelligence grows, researchers are looking for ways to enhance predictability in various situations. Interpretable machine learning models and black-box models are close competitors when it comes to deciding which approach to adopt. Interpretable models, such as linear models, have the benefit of being easy to understand and explain, while black-box models, such as deep neural networks, often achieve better predictive performance on complicated tasks. These two types of models have been distinctive choices for practitioners. In this project, I am working at the Computer History Museum to combine a linear model with a black box model to make joint decisions. This approach connects black-boxes and transparent-boxes into a continuum of hybrid models where the linear model determines part of the data while the black-box model determines the rest, creating a partition of the data space. As the partition changes, I’m using this hybrid model to smoothly transit from one extreme to the other, striking a balance between predictive accuracy and the explainability of the decision/prediction-making process.
My Posts
Week 12: The End
To wrap up my project, this week, I worked on increasing my accuracy with randomForest. Unfortunately, after a lot of trial-and-error, I wasn’t able to make significant improvements. Therefore, I switched to ranger, which is another type of black-box model that is popular among researchers. With ranger, I was able to achieve an accuracy of […]
Week 11: Traveling
I spent half of week 11 traveling with my family, so progress was a bit slower. Once I got back home, I started fine-tuning the randomForest network. Unfortunately, I wasn’t able to raise my accuracy past 64% for randomForest with the covtype dataset. Therefore, after consulting my external advisors, I decided to use ranger, which […]
Week 10: Troubleshooting the 3 black-boxes
I started this week off by working on the XGBoost package. In order to format the data correctly, I had to convert the training/testing data into a matrix using the as.matrix() function and the training/testing labels into a string of integers using the as.integer() function. The 2 parameters “max.depth” and “nrounds” are used to increase […]
Week 9: 3 black-boxes
Week 9 marks ¾ of the way to the end of senior projects! This week, I played around with 3 different black-box models in an attempt to determine which would be best suited for my hybrid model. The first black-box model is called XGBoost, and is a commonly used neural network by practitioners. I started […]
Week 8: Hybrid
Hello! During this week, I worked on classifying more numbers from the interesting data sample. Since the handwritten sample I’m trying to classify is written on graph paper, I wanted to minimize distractions for the neural network so it could focus on only the number. The gridlines on the paper were blue, so in order […]
Week 7: Legible or not? (Part 2)
During this week, I primarily focused on classifying the numbers from the interesting handwriting sample that Ms. Bhattacharya gave me. After trying numerous packages and deciding on OpenImageR last week, I started playing around with it this week. First, I gave the program the path to the image I stored on my laptop. Then, using […]
Week 6: Legible or not?
Over the course of this week, I worked on classifying an interesting handwriting sample using my neural network. The dataset I’ve been using is called MNIST and it contains thousands of images which are 28*28 pixels. Those pictures had extremely low resolution (due to the small number of pixels they had). The images that I […]
Week 5: 89.99%
Thanks to glmnet working last week, over the course of Week 5, I was able to work on the accuracy of my model. The model as a whole has an accuracy of around 96%, which is very high. However, I bumped into an issue when calculating the accuracy of the output from the glmnet function […]
Week 4: Meet Lucas
Week 4 started off the same way as others – attempting to figure out what the issue was with the glmnet function. I’m happy to say, that this week, I was finally able to work out a solution! On Tuesday morning, after meeting with Ms. Bhattacharya, I called my external advisor and within an hour, […]
Week 3: Formatting is Key!
This past week, I finally got access to the Argon Cluster. To interact with this set of computers at the University of Iowa, I went over basic Linux commands that I can use in Terminal. After logging into the Argon system, I had to switch from a login node to a compute node. Login nodes […]
Week 2: 1 step back, but 2 steps forward
At the beginning of this week, I ran into an issue where I couldn’t figure out how to convert some of my R code into Python. After speaking to my advisors and researching methods online, we decided to switch back to R because the issue was proving more complicated than we originally thought. Despite this […]
Week 1: Working with Python
Last summer, I had the opportunity to conduct research at the University of Iowa, and having thoroughly enjoyed that experience, I’ll be continuing working with my advisor for my senior project. Over five weeks last summer, I uncovered how black-box neural networks make decisions and now, during the third trimester of senior year, I’m taking […]