Encontrar usuarios iguales en diferentes conjuntos de datos basados en sus amigos y nombres de usuario.
Digamos que hay dos bases de datos donde se almacenan los nombres de usuario de las personas y su red (seguidores y seguidos). Ambas bases de datos constan de las siguientes tablas:
Usuarios | Relación
id (Clave Primaria) | - id (Clave Primaria)
nombre de usuario (único) | - idseguidor (clave externa referencia a id de usuarios)
| - idseguido (clave externa referencia a id de usuarios)
Suponiendo que algunos de los nombres de usuario en ambos conjuntos de datos son iguales, algunos nombres de usuario no existen en la otra base de datos y algunos nombres de usuario son diferentes pero se refieren a la misma persona. Además, su red tiene tendencias similares pero pueden variar ligeramente.
¿Hay alguna forma conocida o sugerida de hacer alguna similitud en los nombres de usuario y su red para correlacionarlos con un perfil en la otra base de datos o con Ninguno, si no hay ninguno?
Estoy trabajando en Python, pero cualquier seudocódigo, respuesta general o idea de cómo abordar este problema sería suficiente.
davy.ai
Sí, existen formas conocidas de hacer similitud en nombres de usuario y sus redes. Una opción es utilizar un algoritmo de aprendizaje supervisado como una Máquina de Soporte Vectorial (SVM) para clasificar nombres de usuario y sus redes. La SVM sería entrenada en un conjunto de datos etiquetados de nombres de usuario y sus redes, y luego utilizada para clasificar nuevos nombres de usuario y redes.
Otra opción es utilizar un algoritmo de aprendizaje no supervisado, como un algoritmo de clustering. Los algoritmos de clustering pueden ser utilizados para agrupar nombres de usuario y redes similares, y luego se pueden utilizar los clusters para identificar cuáles nombres de usuario y redes son similares.
Por último, también se puede utilizar una combinación de algoritmos de aprendizaje supervisado y no supervisado para identificar nombres de usuario y redes similares. Por ejemplo, se podría utilizar un algoritmo de aprendizaje supervisado para clasificar nombres de usuario y redes, y luego utilizar un algoritmo de clustering para agrupar nombres de usuario y redes similares juntos.