Buscar es una tarea difícil, ya que lleva tanto tiempo realizarla. Si tenemos un conjunto de datos grande, entonces si hacemos uno a uno buscando, tomará mucho tiempo de usuario.

Tenemos un conjunto de datos de desbordamiento de pila desde el enlace de Kaggle: https://www.kaggle.com/c/facebook-cruiting-iii-keyword-extraction/data
Entonces ahora tenemos una tarea:
SearchEngine_data.ipynb: en este cuaderno estamos obteniendo nuestros datos y eliminando duplicados. Luego pasamos a seleccionar etiquetas que queremos. Utilizamos el multiprocesamiento para hacerlo, ya que usar 4 núcleos juntos aumentó la velocidad y funcionó de 2.5 horas en 1 hora. Guardamos el nuevo cuadro de datos procesado en la base de datos SQLite.
Preprocessing.ipynb: En este cuaderno estamos preprocesando los datos en el título, es decir, nuestras preguntas. Estamos eliminando cualquier etiqueta y espacios HTML y otras palabras de basura o parada.
SearchEngine_data.ipynb: en este cuaderno estamos creando un sistema para acceder a las consultas, es decir, el paso inicial de construir nuestro sistema de predicción. Primero vectorizamos los datos completos y utilizamos la distancia por pares entre la consulta y la base de datos, pero los resultados no subieron a las marcas. TFIDF funcionó mejor que el arco.
Clasificación Machinelearning.ipynb: Como en el tercer paso, no pudimos obtener buenos resultados, así que lo que haremos es usar un aprendizaje automático clásico. Entonces, lo que hice es utilizar estos datos para hacer un modelo de aprendizaje automático. El título es un valores de cadena, por lo que utilizamos TFIDFVectorizer Ass TFIDF funcionó mejor que el arco en el tercer paso. El siguiente paso dividimos el modelo en Train, CV, Prueba. Como teníamos un vector tan escaso, teníamos 2 opciones LR o SVM. Actuamos tanto en Unigram como en Bigram, pero en Bigram fue un sobreajuste. Entonces finalmente usamos LR con Unigram ya que su rendimiento fue mejor.
Luego, después de predecir el lenguaje de programación de la consulta, lo agregamos en nuestra consulta. Por lo general, cuando buscamos algo en StackOverflow, a menudo agregamos etiqueta con nuestra pregunta.
Luego repitimos los pasos que hicimos en el tercer paso y nuestros resultados fueron mucho mejores.