Dominando las Entrevistas de Trabajo de Procesamiento del Lenguaje Natural

'Mastering Natural Language Processing Job Interviews'

¿Qué es el procesamiento del lenguaje natural (NLP) y qué tipos de preguntas relacionadas con el NLP se pueden esperar en las entrevistas de trabajo relacionadas con el NLP?

NLP no es algo con lo que necesariamente todos los científicos de datos trabajen y se requieran saber. Si lo eres o no, depende de la empresa que te está entrevistando para un puesto de ciencia de datos. Si no estás interesado en NLP, bueno, tendrás que saber qué es para evitarlo en tu carrera, si nada más.

En caso de que estés intrigado por NLP y estés dispuesto a aprender más, te beneficiarás de saber qué preguntas de entrevista podrías esperar.

¿Qué es NLP?

No, no es ese enfoque pseudocientífico de la psicología que ganó popularidad recientemente. Lo llaman programación neurolingüística.

Nuestro NLP también está ganando cada vez más popularidad, pero se refiere al Procesamiento del Lenguaje Natural.

Como Wikipedia lo explica bien, un lenguaje natural o lenguaje ordinario es cualquier idioma que ha evolucionado naturalmente en los seres humanos a través del uso y la repetición sin planificación o premeditación consciente.

La palabra clave en la definición anterior es ‘humano’. En NLP, hay una palabra clave adicional: computadora. De ello se desprende la definición que dice que NLP se ocupa de enseñar a las computadoras a entender el lenguaje natural. Dado que se trata de una computadora, esta comprensión significa procesar y analizar datos de lenguaje natural almacenados en diferentes formatos de datos.

Para hacerlo, NLP combina conocimientos de inteligencia artificial, ciencias de la computación y lingüística.

¿Cuál es el uso de NLP?

NLP se está convirtiendo en una característica de nuestra vida cotidiana. Mientras escribía la oración anterior, el Smart Compose de Google sugirió la frase ‘vida cotidiana’. Acepté. Porque eso es lo que pretendía escribir.

Entonces, este es uno de sus usos: autocorrección, autocompletado y correctores ortográficos. El software de NLP escanea el texto en busca de errores gramaticales y ortográficos, los corrige o da sugerencias de corrección. También hay correctores ortográficos que pueden ‘entender’ la sintaxis, el contexto y el significado de toda la oración. En función de eso, sugieren correcciones o frases mejor redactadas en línea con el objetivo que estás intentando lograr con tu texto.

La traducción de idiomas es otro uso de NLP. Siempre que estés en un país extranjero, probablemente uses una herramienta de traducción, como Google Translate. Además, los traductores se usan cada vez más en redes sociales, como Facebook, Instagram y Youtube.

Reconocer y generar voz también es uno de los usos de NLP. Piensa en Google Assistant, Windows Speech Recognition, Dragon, Siri, Alexa o Cortana; todos parecen entenderte (más o menos) cuando hablas. En función de lo que les digas, realizarán una determinada acción, como navegar por Internet, escribir tus palabras o reproducir tu canción favorita. Algunas de estas herramientas incluso pueden responder, es decir, generar voz.

NLP también puede descifrar la ‘sensación’ del texto. En otras palabras, pueden detectar el sentimiento detrás del texto, no solo el significado literal. Esto significa entender emociones (feliz, enojado, perturbado, neutral …), sarcasmo, doble sentido, metáforas y expresiones dentro de un contexto. Esto se llama análisis de sentimientos. Piensa en entender los comentarios de las redes sociales y eliminar los que infringen los términos de servicio o lograr la satisfacción de los clientes analizando sus comentarios y reseñas.

NLP se utiliza mucho en marketing en línea. Las palabras clave que buscas se comparan con las palabras clave de las empresas, sus productos y sus anuncios. Entonces, cuando comiences a ver anuncios de un producto que acabas de buscar en Google, no te preocupes. No estás loco; es NLP y publicidad dirigida en acción.

¿Qué tiene que ver NLP con la ciencia de datos?

Los científicos de datos pueden no estar interesados en los lenguajes naturales per se. Agregar el procesamiento informático a ello, donde los lenguajes naturales se convierten en datos, y podrías llamar la atención de los científicos de datos.

Tal vez no sea suficiente para que los ojos de los científicos de datos se iluminen, pero esto podría cambiar al saber que el aprendizaje automático (ML) se superpone y a menudo se usa en NLP.

Detrás de todos los usos anteriores de NLP suele estar el ML. Y el ML es indudablemente un campo que está profundamente inmerso en la ciencia de datos.

Cuando se habla de ML, generalmente hay una distinción entre ML supervisado y no supervisado.

Los modelos supervisados de ML más comúnmente utilizados en NLP son:

  • Máquinas de vectores de soporte (SVM)
  • Redes bayesianas
  • Entropía máxima
  • Campos aleatorios condicionales
  • Redes neuronales

El aprendizaje no supervisado no es tan común en NLP, pero aún así se utilizan algunas de las técnicas:

  • Clustering
  • Indexación semántica latente (LSI)
  • Factorización de matrices

Detrás de cada modelo y algoritmo de ML, hay conceptos estadísticos subyacentes.

Estas dos áreas son ampliamente evaluadas en todas las empresas serias que buscan científicos de datos. Lo mismo es para las empresas que trabajan con NLP.

Lo que puede ser específico para NLP es cierta terminología, que se espera que conozca.

Tome todo lo que mencioné aquí para formar su preparación de entrevista en torno a tres temas principales.

Las preguntas para una entrevista de NLP

Toda la conversación anterior conduce suavemente a las categorías de preguntas de entrevista de NLP:

  1. Preguntas generales y de terminología de NLP
  2. Preguntas estadísticas
  3. Preguntas de modelado

“No cubriré preguntas de codificación en este artículo. Es conocimiento común que los científicos de datos generalmente tienen que ser hábiles codificadores, especialmente en SQL y Python. Lo mismo es cierto para los científicos de datos que trabajan en NLP, así que debe estar preparado para la parte de codificación de la entrevista”.

1. Preguntas generales y de terminología de NLP en la entrevista

Estas preguntas de entrevista de NLP tratan sobre su conocimiento de qué es NLP, cómo funciona y los conceptos técnicos específicos de NLP.

Este es el conocimiento de ciencia de datos menos “transferible”. En otras palabras, si aún no ha trabajado con NLP, su conocimiento previo de ciencia de datos no le ayudaría mucho aquí. Entonces, si no tiene experiencia laboral con NLP, tome estas preguntas muy en serio y prepárelas minuciosamente para la entrevista.

Algunos ejemplos de preguntas son:

  1. ¿Cuáles son las etapas en el ciclo de vida de un proyecto de procesamiento del lenguaje natural (NLP)?
  2. ¿Cuáles son algunas de las tareas comunes de NLP?
  3. ¿Cuál es la diferencia entre el radical y la lematización?
  4. ¿Qué es la extracción de información?
  5. ¿Qué es el análisis de sentimientos en NLP?
  6. Enumere algunas bibliotecas de código abierto para NLP.

2. Preguntas estadísticas en la entrevista

Las preguntas estadísticas prueban su conocimiento de los conceptos estadísticos que utilizará regularmente como científico de datos en general y al trabajar en proyectos de NLP.

Aquí hay algunos ejemplos:

  1. Estadísticas bayesianas frente a estadísticas frecuentistas: ¿Cuál es la diferencia entre estadísticas bayesianas y frecuentistas?
  2. ¿Cuáles son los campos aleatorios de Markov ocultos?
  3. Coeficiente de correlación de Pearson: demuestre por qué el coeficiente de correlación de Pearson está entre -1 y 1.
  4. ¿Qué quiere decir perplejidad en NLP?

3. Preguntas de modelado en la entrevista

La tercera categoría de preguntas de entrevista de NLP trata sobre el ML y los modelos en general. Esto podría referirse a los algoritmos de ML más comúnmente utilizados en NLP (como se mencionó anteriormente) y a algunas otras técnicas y métodos específicos utilizados en NLP.

A continuación se presentan algunos ejemplos:

  1. ¿Cuáles son las diferencias entre GPT y GPT-2?
  2. ¿Te gusta la extracción de características o el ajuste fino? ¿Cómo decides? ¿Usarías BERT como extractor de características o lo ajustarías?
  3. ¿Qué quiere decir el modelado de lenguaje enmascarado?
  4. PCA y LDA / QDA: ¿Cuál es la relación entre PCA y LDA / QDA?
  5. Clasificador de Bayes ingenuo: ¿qué es “ingenuo” acerca de un clasificador de Bayes ingenuo?

Resumen

El procesamiento del lenguaje natural es un campo que se utiliza cada vez más en la vida cotidiana. Los usos actuales incluyen correctores ortográficos, herramientas de autocompletado, traductores, reconocimiento de voz y software de generación. El PLN también se utiliza ampliamente en el monitoreo de redes sociales y el marketing en línea.

El PLN se superpone con el aprendizaje automático, por lo que mucho del conocimiento de ML también se aplica al PLN. ¡Pero no te confíes demasiado! El PLN es un campo vasto y específico que requiere conocer terminología, técnicas y métodos muy específicos y comúnmente utilizados.

En general, los tipos de preguntas de entrevista se pueden dividir en preguntas generales de PLN, preguntas de estadísticas y preguntas de modelado.

Los ejemplos y recursos que te di anteriormente son solo un comienzo. Pero incluso ellos son suficientes para asegurarte de que vayas a una entrevista de trabajo de PLN sin miedo.

Nate Rosidi es un científico de datos y estratega de productos. También es profesor adjunto que enseña análisis y es el fundador de StrataScratch, una plataforma que ayuda a los científicos de datos a prepararse para sus entrevistas con preguntas de entrevistas reales de las principales empresas. Conéctese con él en Twitter: StrataScratch o LinkedIn.