Inspiration
Originally, we had planned to create a product that would help recommend skincare products. However, as we found more and more data about skin conditions just waiting to be tapped, we thought a broader-scale medical version might be more useful - and so, Skintillate (our version of a pun on scintillate!) was born.
Medical health is often very inaccessible, due to rising prices in some areas and simply a lack of doctors or medical professionals in others. We were inspired to create code that would make medical advice more accessible. One often-forgotten field is dermatology, which is often overlooked in favor of taking care of other parts of your body. While that's important, the lack of focus on skin means many skin conditions, and even diseases that have skin-based symptoms, can go untreated. Many times, these diseases don't require much effort to be detected - the symptoms are visible clearly on skin. However, a lack of access to medical advice means nobody does anything about them, leaving these conditions to wreak havoc, and in some cases, cause death. We're trying to change that.
What it does
Skintillate is a web application that asks the user to upload a picture of a skin condition. Once it receives its input, it runs the image through a machine learning model that classifies it as one of 23 different types of skin-based symptom producing conditions. Then, using a web scraper, it finds the best treatment solution. The treatment solution is messaged to the user.
How we built it
We built the machine learning framework with TensorFlow, coding our model on the Kaggle Jupyter notebook platform. We also used Kaggle to find the DermNet dataset, which we used to train our model. We used Tensorflowjs to convert our model over to our web page, which we built using HTML, CSS, and JavaScript and coded in Replit. We used Domain.com to give our website a domain name.
Challenges we ran into
While developing our machine learning model, we had a lot of issues with fine tuning our model so that it worked reliably on test data. Another big challenge was making sure that all of our development software worked correctly. We had problems with several different collaborative IDEs during the in-person portion of HackTJ. This meant that it was very difficult for us to collaborate when we were in-person. Additionally, another in-person challenge was that it was hard for many of us to connect to the internet, making coding slow. Additionally, integrating the model with the website proved to be a little tricky. We also had to learn a few new things about CSS while building our website.
Accomplishments that we're proud of
We're so proud of developing a working machine learning model and everything we learned while building it! It's super exciting to work with technology that can train itself, and the experience with Tensorflow was invaluable. Designing the website was really fun too, and our graphic design and HTML/CSS/JS is something that we're proud of. We're also proud of figuring out how to use Twilio and Domain.com!
What we learned
We learned about how to work with Tensorflow, along with how to collaborate at an in-person/hybrid hackathon! We also learned quite a bit about integrating machine learning and web pages, along with a lot about web scraping! Figuring out how to fine-tune our model was a challenge for us, but definitely one that taught us a lot about working with machine learning and convolutional neural networks
What's next for Skintillate
As we grow Skintillate, we'd like to work on finding more reliable ways to provide treatment. While our web scraping method is effective, we'd like to look at different places we can collect treatment data from and find a way to ensure that it's reliable and helpful. Additionally, we'd like to continue refining our model as time goes on.
Built With
- css
- dermnet
- html
- javascript
- jupyter
- kaggle
- machine-learning
- python
- tensorflow
- twilio
Log in or sign up for Devpost to join the conversation.