El algoritmo de Porter es un algoritmo para stemming que asegura que la morfología de las palabras no penalice la frecuencia de éstas. Es decir, un morfema puede estar unido por modificadores de género, número o persona y se considerará como un único término.
Ejemplo: «Aquel es un caballo de la caballería militar, los otros caballos no».
La frecuencia del morfema caball (que hace referencia a caballo) es 3.
El algoritmo de Porter nos permite realizar extracción del morfema, esto implica identificar e ignorar los sufijos y prefijos de las palabras para extraer la raíz común, para poder ser consideradas como un solo término. Este algoritmo requiere de un conjunto de pasos para llegar al morfema. Existen algunos otros algoritmos de extracción del morfema, como Lovins y Paice, pero el más conocido es el de Porter.[1]​