Oii Bruno, tudo certo?
Em Machine Learning é comum, e necessário, que você tenha essa divisão dos dados em treino e teste. Normalmente treinamos com 70%~80% dos dados, nesse caso com 75%, e testamos a rede com o restante dos dados, que nesse caso são 25%.
Mas por que fazer isso?
Caso nós fizessemos um modelo de Machine Learning e treinássemos nossa rede com a totalidade de dados que temos, quando tivéssemos novos dados, o modelo realizaria a previsão, porém não teria como saber qual o real desempenho dele. Ele poderia aprender a relação existente entre todos os dados do banco e posteriormente teria um problema de Overfitting (ocorre quando o modelo se adaptou muito bem aos dados que foi treinado, mas não generaliza bem para novos dados, seria como se ele tivesse decorado mas não aprendido de fato).
Então basicamente o porque da separação é esse, você treina seu algoritmo com uma certa quantidade de dados e depois utiliza os dados de teste para validar o conhecimento, seria como uma simulação de como o modelo reagiria à entrada de novos dados e também podemos verificar o real desempenho do modelo.
Observação: É importante que os dados sejam separados de forma aleatória para que não exista um padrão pré-definido no momento na divisão dos dados, então todos os dados tem a mesma probabilidade de serem escolhidos para treino e teste.
Espero que tenha te ajudado a entender, qualquer coisa estou por aqui :)
Bons estudos ^^