Soy bastante nuevo en el aprendizaje profundo, pero creo que encontré la situación correcta en el mundo real para comenzar a usarlo. El problema es que solo he usado dichos algoritmos para predecir resultados. Para mi nuevo proyecto, necesito información para alimentar una máquina para optimizar los resultados. ¿Podría alguien explicarme brevemente cómo debo proceder? Estoy atascado.
Aquí está la situación:
Tengo una máquina que toma tablas de madera con diferentes grados de madera disponibles en toda su longitud y tiene que cortarla en bloques provistos en una lista de cortes. Esta máquina siempre elegirá la puntuación más alta que pueda obtener de una tabla determinada. La puntuación se obtiene multiplicando el área de cada bloque por su multiplicador . El algoritmo que quiero construir tiene que darle a esa máquina un multiplicador para cada bloque listado en una lista de cortes. Todo el rendimiento físico de esta máquina será almacenado en los estantes por un robot hasta que sea necesario. La máquina de corte puede degradar partes de una tabla si le ayuda a alcanzar una puntuación más alta.
El valor tiene que actuar como un incentivo para que la máquina me dé el bloque que más necesito sin degradar demasiada madera.
OBJETIVOS DE OPTIMIZACIÓN
- Asegúrese de que cada bloque esté en stock para cuando sea necesario, pero no demasiado pronto sin razón
- Reduzca la menor cantidad posible de área de madera (algunas especies son muy caras)
NODOS DE ENTRADA
- Cantidad de tiempo antes de que se necesite este bloque
- Grado de madera para este bloque
- Cantidad de este bloque necesaria
- Área del bloque (¿Quizás?)
COMENTARIOS PROPORCIONADOS AL ALGORITMO
- Cantidad de tiempo por adelantado que el bloque estaba listo (debe ser lo más bajo posible)
- Área de madera degradada * número de calidades omitidas
DATOS DE DEVOLUCIÓN ESPERADOS
- Un multiplicador que le dará a ese bloque una prioridad óptima en relación con los demás.
INFORMACIÓN QUE NO TENGO PERO PODRÍA REUNIR
- Relación media de cada grado para cada especie de madera
Lo que he descubierto hasta ahora es que es posible que necesite que mis comentarios se rompan en un solo valor para convertirlo en el nodo de salida. El problema es que no puedo entender cómo hacer que este algoritmo determine un multiplicador . ¿Me equivoco al tratar de resolver esto a través del aprendizaje profundo?
fuente
Respuestas:
Los modelos de aprendizaje profundo para las tareas de regresión son bastante difíciles de entrenar, por lo que sugeriría no comenzar con ellos. En cambio, comenzaría con uno de los enfoques a continuación y tal vez intente usar el aprendizaje profundo después.
Un enfoque clásico del problema podría ser analizar su software de optimización y esto probablemente lo conduciría a un algoritmo determinista.
Diferentes enfoques pueden ser tratar su software de optimización como una caja negra: dele una amplia variedad de entradas, anote las variables que le interesan (tiempo de ejecución, resultados de corte, etc.) e intente ajustar algún tipo o regresor en él .
Una opción es seguir la idea de Kourosh y formularla como un problema clásico de optimización.
Si prefiere usar herramientas de aprendizaje automático, le sugiero que comience con un modelo simple como la regresión lineal solo para verificar que haya alguna señal en los datos que pueda usar. Luego, puede ver algoritmos más potentes como xgboost, árboles de regresión, etc.
fuente