Using machine learning to detect A.I generated essays.
The rise of large language models (LLMs) has caused many folks to be concerned that LLMs will replace everyday human jobs. Specifically, educators are concerned that students may use LLMs to submit essays that are not their own. As a result, the students’ writing skills may deteriorate and their creative thinking ability may falter. In this project, I aim to tackle the following problem: how can we accurately assess whether a submitted essay was written by a large language model or written by a student?
The problem is a classic binary classification problem (supervised learning) as the solution will simply verify whether an essay was written by a student or a LLM. To see how well my solution works, I will enter it into the LLM - Detect AI Generated Text on Kaggle. Even though the test data (competition data) will have some engineered noise, I can utilize it as a metric to see how well my model is able to perform.
The challenge evaluates solutions based on the Receiver Operator Curve (ROC) Area Under the Curve (AUC); hence, I will use the ROC AUC as my evaluation metric.
The application is live! You can go directly to https://verifyai.streamlit.app/ to play with the project! All you need to do is paste your essay into the text box and in a couple minutes, you will see a prediction! Here is an example on how to use the app:

This project wouldn't have been built without the help of some resources. In this section, I provide links to data sources & research papers I utilized to guide my approach.
If you have any questions about the project, feel free to reach out to me on LinkedIn!
70 commits
Jupyter Notebook
99.5%
Using machine learning to detect A.I generated essays.
The rise of large language models (LLMs) has caused many folks to be concerned that LLMs will replace everyday human jobs. Specifically, educators are concerned that students may use LLMs to submit essays that are not their own. As a result, the students’ writing skills may deteriorate and their creative thinking ability may falter. In this project, I aim to tackle the following problem: how can we accurately assess whether a submitted essay was written by a large language model or written by a student?
The problem is a classic binary classification problem (supervised learning) as the solution will simply verify whether an essay was written by a student or a LLM. To see how well my solution works, I will enter it into the LLM - Detect AI Generated Text on Kaggle. Even though the test data (competition data) will have some engineered noise, I can utilize it as a metric to see how well my model is able to perform.
The challenge evaluates solutions based on the Receiver Operator Curve (ROC) Area Under the Curve (AUC); hence, I will use the ROC AUC as my evaluation metric.
The application is live! You can go directly to https://verifyai.streamlit.app/ to play with the project! All you need to do is paste your essay into the text box and in a couple minutes, you will see a prediction! Here is an example on how to use the app:

This project wouldn't have been built without the help of some resources. In this section, I provide links to data sources & research papers I utilized to guide my approach.
If you have any questions about the project, feel free to reach out to me on LinkedIn!
70 commits
Jupyter Notebook
99.5%