Inspiration

Ever since Robert F. Kennedy Jr. took office as United States Secretary of Health and Human Services earlier this year, he has spoken non-stop about autism. He talks about how he believes vaccines cause autism, how Tylenol causes autism, how anything causes autism. He even once said he wanted to create a database of all autistic individuals in the United States!

So we thought to ourselves, why don't we give him a hand? Let's use machine learning to help RFK Jr. identify people with autism!

What it does

Our autism screener is a questionnaire that asks a few questions to the user, processes their responses, then shows them their test results and emails them directly to RFK Jr. himself.

How we built it

We started with a public dataset from UC Irvine of responses to the AQ10 autism screening questionnaire. From there, we trained a classification model (logistic regression) to interpret the user's questionnaire responses and return a diagnosis.

Our frontend was built using your standard HTML, CSS, and JavaScript, and our backend is Flask.

Challenges we ran into

An initial challenge we ran into was the dataset itself. There's a lot of junk variables in there that aren't useful for predictions, so we had to prune those out before training our model.

The next issue was that we had no idea how to move our model from a Google Colab notebook to an actual application. So we had to quickly learn how to save model weights, reload them from a .joblib file, and perform inference.

Then, we had to figure out how to feed the questionnaire response to the model itself as inputs. That was where our backend in Flask came in, which we had no prior experience in.

Accomplishments that we're proud of

The model actually works and produces outputs! And the app actually runs!

What we learned

Model deployment, and a lot of the intricacies that come with it. Conflicting dependencies, weight files, and more.

What's next for Autism Screener

Our next steps are to allow the user to input their age, which the app will use to pick one of three models depending on which age group they fall into. Currently, we only use a model trained on the adult dataset.

Another thing we might want to look into is moving from a logistic regression model to some other type of classification model, and maybe fine-tuning our model to get more accurate results.

Built With

Share this project:

Updates