O nosso classificador utiliza uma arquitetura tradicional de modelo de linguagem. Recebe o texto de entrada e divide-o em tokens. Em seguida, o modelo transforma cada token numa representação vetorial, que é um vetor de números que representa o significado de cada token.
A entrada é processada pela rede neural, produzindo uma representação de saída. Um classificador transforma essa representação de saída numa previsão de 0 ou 1, em que 0 corresponde à classificação humana e 1 à classificação da IA.
O modelo inicial já era bastante eficaz, mas queríamos maximizar a precisão e reduzir qualquer possibilidade de falsos positivos (ou seja, a previsão incorreta de que documentos escritos por humanos fossem gerados por IA). Para tal, desenvolvemos um algoritmo especificamente destinado a modelos de deteção de IA.
Com o conjunto de dados inicial, o nosso modelo não dispunha de sinal suficiente para passar de uma precisão de 99% para 99,999%. Embora o modelo aprenda rapidamente os padrões iniciais dos dados, é necessário que ele encontre casos extremos para distinguir com precisão entre texto humano e texto gerado por IA.
Resolvemos esta questão utilizando o modelo para procurar falsos positivos em grandes conjuntos de dados e ampliando o conjunto de treino inicial com estes exemplos difíceis adicionais antes de proceder a um novo treino. Após vários ciclos deste processo, o modelo resultante apresenta uma taxa de falsos positivos quase nula, bem como um desempenho globalmente melhorado nos conjuntos de avaliação reservados.
