¿Por qué necesitamos el algoritmo de derivación de porter en Python?

Para la búsqueda de texto, la respuesta de Porter encuentra buenas aproximaciones a los tallos de las palabras, sin tener realmente una base de datos de los términos y palabras reales.

Por ejemplo, convierte “stemming” y “stemmed” en “stem”; si aplica la respuesta de Porter tanto a la consulta de búsqueda como al texto, podrá encontrarlos todos. De lo contrario, si el texto dice “He derivado algunas palabras”, y el usuario está buscando “derivar”, no encontrará ese fragmento de texto.

Y el hecho de que sea simplemente una aproximación (la “tentación” se deriva de “temptat” – Porter Stemmer Online) no es realmente tan problemático, siempre y cuando sea solo una representación interna, a quien le importa que no tenga sentido, siempre que sea similar las palabras se derivan al mismo sinsentido 🙂

PD Por “búsqueda de texto”, me refiero a mucho más que solo buscar, por ejemplo, lo he usado para un clasificador bayesiano.

PPS Por supuesto, solo funciona en texto en inglés, es decir, las reglas que utiliza son específicas de las palabras en inglés.