He tenido éxito en el uso Latente de Dirichlet Asignación (LDA) para encontrar la latente temas o "temas" en los datos textuales. LDA creará $k$ temas de términos (palabras) de su corpus de descripciones de puestos de trabajo. Cada descripción de puesto de trabajo se da una probabilidad de que contenga cada una de las $k$ temas. Por ejemplo, si pidió LDA para clasificar un corpus en 3 temas, una descripción de trabajo para un diseñador gráfico puede tener el 80% "gráfico de photoshop illustrator...", el 18% "HTML CSS JS...", y el 2% "Java Spring orientada a objetos...". Hay mucho para leer sobre la LDA, sólo tienes que buscar o iniciar con el Quora pregunta.
Mi análisis con LDA fue en R pero por supuesto, hay un paquete de Python , aunque nunca he utilizado en mi propio trabajo.
Usted podría considerar la posibilidad de seleccionar un número del tema que se corresponde con el número de ocupaciones en el SOC. Una vez que haya generado los temas para que las examine y vea si usted puede encontrar lazos significativos para el SOC y ajustar el número del tema en consecuencia, hasta que esté satisfecho.
Para hacer el salario estimado para cada puesto de trabajo descripción considerar la ponderación de cada uno de sueldo con el tema de las probabilidades. Por ejemplo, si la descripción de un trabajo tenían un 80% de probabilidad de ser un desarrollador de software SOC peso de salario por .80 y los temas restantes de la misma manera. Si que crea mucho ruido acaba de establecer una frecuencia de corte (tal vez 20%) y retirar el resto de la tema de los pesos del salario estimado.
Para las faltas de ortografía siempre se puede atacar con un corrector ortográfico y ver cómo se compara con los resultados sin la herramienta. También asegúrese de emplear el estándar de técnicas de PNL, tales como signos de puntuación y eliminación de palabra derivada previo a la ejecución de la LDA.