¿Puede una biblioteca de aprendizaje automático integrarse con Django? ¿Si es así, cómo?

Por supuesto que puede. Supongamos que usará sckit-learn, probablemente la biblioteca más popular de Python ML. La respuesta precisa a su pregunta depende de lo que quiera lograr. Por ahora, todo lo que puedo decirte es que, como cualquier módulo, puedes importar scikit-learn en uno de tus archivos, ya sea views.py o un archivo personalizado, o lo fueron alguna vez.

Probablemente querrás separar la parte donde entrenas tu modelo y la parte que hará la predicción , ya que supongo que no quieres entrenar el algoritmo cada vez que un usuario envía una solicitud. Puede encontrar una forma común de guardar el modelo entrenado aquí.

¿Cómo usarías la biblioteca? Consideremos un ejemplo muy simplificado de la documentación:

# si tuviera 2 características, de alguna manera necesitaría representarlas y almacenarlas en forma de matriz donde cada fila representa un vector
# que contiene valores para las características de una instancia:
características del tren = [[-1, -1],
[-2, -1],
[-3, -2],
[1, 1]
[2, 1]
[3, 2]])
# entonces necesita agregar etiquetas de clase para esas instancias, para # “enseñar” el algoritmo:
etiquetas = [1, 1, 1, 2, 2, 2]
# importar el módulo Naive Bayes
de sklearn.naive_bayes import GaussianNB
# crea un objeto en el que puedas llamar a los métodos del módulo
clf = GaussianNB ()
# entrenar al modelo
clf.fit (train_features, etiquetas)

# finalmente, para predecir una clase para nuevos casos:
clf.predict ([característica1, característica2])

Este sería un ejemplo de cómo usar Naive Bayes con scikit-learn. Asumí que manejarías una tarea de clasificación. Ofc, ML no se limita solo a la clasificación 🙂

Tenga en cuenta que el módulo debe evaluarse antes de ponerse en producción. Scikit también tiene métodos para eso probably Probablemente necesite hacer algunos ajustes antes de que el algoritmo devuelva resultados adecuados.

Espero que esto ayude

Sí, puede integrar la biblioteca de aprendizaje automático con Django. Lo que necesitas entender realmente son dos cosas:

  1. Cómo guardar su modelo aprendido en el disco una vez que esté entrenado
  2. Cómo usar / recargar el modo dentro de su aplicación Django

La persistencia del modelo tocó estos dos aspectos para scikit-learn {Estoy seguro de que puede usar el mismo método para otras bibliotecas de aprendizaje automático}

Hay una buena charla de Djangocon 2017 que toca este tema.

Creo que sí. Integré Tensorflow con Flask cuando estaba implementando un chatbot. En el archivo en el que implementé chatbot, implementé una función que tomaría una entrada y consultaría el modelo entrenado más recientemente y devolvería la salida. En mi script de matraz, importé ese script y llamé a esa función cada vez que el usuario ingresa algo. Espero que ayude.