ReFocus AI

Winter/Spring 21 Industry Project

CodeLab UC Davis
6 min readJun 21, 2021

Introduction

ReFocus AI enables insurance firms to leverage the data that they have at their disposal to increase revenue. They create AI predictive tools to gather insight and make predictions about the customers of the insurance firms, allowing these firms to recommend the right products for their customers and close more sales. In our project, we designed the frontend and the backend for a database connection tool, which would allow ReFocus AI to connect to their client’s databases to better pull data for model training. We also created several machine learning models to allow for quantitative prediction, including a Linear Learner and several Deep Neural Networks.

The Team

Timeframe

Jan-May 2021 | 16 weeks

Tools

  • Figma
  • AngularJS
  • Django Web Framework
  • PostgreSQL
  • Amazon Web Services

The Project

Creating a Database Connection (Part 1: Choosing Database Type)

Creating a Database Connection (Part 2: Adding Additional Information)

Viewing All Existing Connections

Design

We designed for a target audience of insurance brokers and enterprise salespeople, ranging from the ages of 35–65. Our users have little technical experience aside from Microsoft Word or Excel. Creating a user interface that is intuitive and easy to use is crucial. Our goal is to design a database connector tool to access data in a structured and reliable way. We were given sketches of wireframes that the company had previously drawn up. We started our design process by understanding the company, goals, and design themes, so our designs could fit seamlessly into the already existing website. We interviewed and conducted usability testing on our target audience to receive feedback on our sketched wireframes. After getting feedback, we iterated prototypes on the following wireframes.

Development

Database Connection Tool (Frontend)

We created two pages as part of our frontend user interface. The first page was where the user could fill out a form with the necessary information about the database (such as the database name, database type, table name) that they would like to connect to the ReFocus AI architecture. Upon filling out the form, an HTTPS POST request will be sent to one of our backend endpoints, and the data will be encrypted and stored on our PostgreSQL database. In our second page, the user will be able to view the status of their database connections. This data is retrieved from our database using an HTTPS GET request to another of our backend endpoints.

Database Connection Tool (Backend)

For this tool, we made 3 API endpoints. For our 1st endpoint, we made a connection to a client's database via a POST request. This required us to create a new table in our database, which would store several fields related to the connection itself; including the URL of the database host, username and password of the database user, and the port, name, and type of database. The second endpoint would retrieve the database connection information via a GET request. This included the name of the database, the last accessed time, and the connection health status. Finally, the third API endpoint got a score breakdown via GET request. The score includes the percentage of missing data, the number of usable rows, and the data strength score which is reflective of how accurate the dataset is relative to the overall data. We used multiple testing methods to ensure our endpoints are functioning as expected — Postman and Unit Testing. Using Postman required us to write out several GET and POST request commands and manual login and send data to the database, and we automated it with unit testing.

Machine Learning Models

We trained both an OLS and Deep Learning model with insurance data to minimize the MAE. We used Tensorflow to train deep neural networks on customer insurance data to predict premium rates. Our best performing network had around 200 parameters and was trained using the Adam Optimizer with learning rate of 0.05, batch size of 4 and was trained for 200 epochs. The better model for prediction was the one with the most parameters. However, we managed to reduce overfitting by using Dropout layers and got the best MAE amongst all the other models that we trained with our Tensorflow model.

Challenges

Miscommunication Between Design and Development Teams

Some inconsistencies between our design team and project description brought difficulty when developing the front end of our project. The slight miswording or miscommunication on the wireframe led to some confusion within our team. This issue was on the page where Refocus AI’s clients could enter their relevant information to connect their database. Some of the fields on the wireframe were not relevant to creating a connection and some we had also never talked about while developing the backend of the project. This challenge was solved by a few of us meeting together and talking to our mentor to clear up which fields we actually needed to collect from the user. We looked back into the work we had done during the backend portion of the project, in order to find the correct fields to collect. We then changed the frontend to fit this correction thus gathering the correct information from the clients to create a connection to their database.

Organization Restructure

As our original mentor, Alex, left RefocusAI halfway through the intended project duration, we had to work on 2 different projects. First, the one which we originally were meant to complete and second, a project we could work on without direct supervision from Alex. This introduced additional challenges for the team, as our Project Manager, Ishani had to work on setting up an entirely new project which we could work on. Further, the concepts and technologies that we had to use for the second project were not covered through the bootcamp that we completed in preparation for the internship. However, as a result of this switch in projects, we ended up learning a lot more about Machine Learning and how to deploy ML models in industry.

Acknowledgments

We would like to thank the RefocusAI team for constant guidance and mentorship throughout the project(s), as without them our work would not have been possible!

--

--

CodeLab UC Davis
CodeLab UC Davis

Written by CodeLab UC Davis

CodeLab is a student-run software development and UX design agency at UC Davis.

No responses yet