¿Cuáles son las ventajas de desarrollar algoritmos de PNL frente al uso de API?

Bueno, ¿cuál es el punto para que los sastres hagan ropa ellos mismos en lugar de usar maquinaria industrial por valor de millones? El punto es tener una solución adaptada a sus necesidades ( badum-tss ), y evitar pagar por la solución estándar.

En primer lugar, la mayoría de los algoritmos en PNL son gratuitos . Las revistas y conferencias más importantes en el campo de la lingüística computacional son de acceso abierto (gracias, ACL). Lo que vale millones son los datos , los datos anotados (y los expertos que los crean) y el poder computacional para generar los modelos a partir de los datos.

Entonces, aunque algunos modelos, para algunas tareas básicas, se pueden descargar gratis (como word2vec o SpaCy), los modelos principales utilizados por los grandes jugadores no están disponibles de forma gratuita.

Cuál es mi segundo punto: los potentes servicios de PNL no son gratuitos. Tomemos, por ejemplo, la API de Google Natural Language, con un precio de $ 0.25 por 1000 llamadas cuando se usa mucho, para tareas básicas como el reconocimiento de entidades. Básico, no porque sean fáciles, sino porque si incluso está considerando lanzar su propia PNL, sugiere que está buscando algo más complejo.

Tome ahora TextRazor, que ofrece tareas más complejas y es bastante más caro. Probablemente ni siquiera necesite todas las cosas en su paquete de PNL, pero está pagando por una solución comercial confiable.

Si su negocio implica recopilar datos exóticos, realizar alguna tarea de vanguardia pero no lo suficientemente popular como para tener su propia API, será mejor que recree y modifique un algoritmo de un documento. Es parte de los riesgos que las startups pueden tomar para tener un buen producto.

Como todas las cosas en los negocios, esto depende del problema central que esté resolviendo.

Si el problema central que usted o su empresa está resolviendo, gira en torno al procesamiento de texto y / o la gestión de grandes datos textuales, entonces desarrollar sus propios algoritmos es el camino a seguir. Se supone que a escala se le hará responsable de la latencia y, lo que es más importante, de la precisión.

  • A escala, puede modificar su código para que funcione mejor.
  • Es barato. Digo barato porque vas a comprar API de Watson o Google (TextRazor si lo presionas) y están diseñados para generar ganancias máximas para terceros a escala.
  • Si está utilizando API y no está desarrollando algoritmos para resolver problemas en el núcleo de su negocio, ¿qué esperaría su equipo de tecnología? Los ingenieros adoran escribir algoritmos, ajustarlos y mantenerlos. Comprar API puede desmotivarlos seriamente y afectar significativamente su cultura de trabajo.

Ahora, si su negocio principal no gira en torno al procesamiento de texto, es recomendable comprar API.

  • Su negocio no escala con la inteligencia que obtiene del texto y, por lo tanto, el procesamiento de texto es mejor tener que tener.
  • Escribir su propio código para el procesamiento de texto puede llevar mucho tiempo porque no ha contratado a los mejores ingenieros para ello. Sus ingenieros son buenos para implementar su lógica empresarial.
  • En la escala en que su empresa necesita procesamiento de texto, resultaría más barato si obtiene API de procesamiento de texto de terceros.

Soluciones a problemas específicos. Problemas específicos del idioma.

Pero también solo reequilibra las compensaciones predeterminadas cuando sabe que su problema tiene una distribución de entrada sesgada (en relación con el valor predeterminado previamente entrenado).

Por ejemplo, cuando trabajé en la búsqueda de Google hace algunos años, quería usar un reconocedor de nombre de persona. El predeterminado (entrenado en datos del censo de EE. UU.) Tenía demasiados falsos positivos en las consultas de búsqueda. Muchos de la forma “calle xxx”. Oops.