Tienes que hacer un filtro de palabras comunes que no te sirvan en las tags. Luego puedes contarlas con
array_count_values por ejemplo o algo parecido para no tener que hacer tanto condicional y sacar las 5 tags con más coincidencias.
En
Google hay bastante información sobre esto que te ayudará a sacar ideas.
Saludos.