Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

237
Views
Cree una función de entrenamiento para la red neuronal para minimizar (o maximizar) la salida

Estoy tratando de crear un mosaico de múltiples imágenes , para parecerse al patrón pero ser lo más pequeño posible (en bytes totales). Pensé que sería una buena tarea para una red neuronal.

Imaginé que según las entradas (información sobre el brillo, el color promedio de la imagen y la imagen de destino), la red neuronal recorrerá todo el conjunto de imágenes (siempre 4 imágenes del mosaico que estén más cerca unas de otras) y decidirá si intercambiar algunos de ellos.

Entonces tengo un cursor que se mueve gradualmente a través de las líneas del mosaico:

 12----> -12---> --12--> ... 34 |34 | 34 | | | VVV

Y en algunos casos, la red neuronal me dirá que es necesario cambiar, por ejemplo, 1 con 2 o así sucesivamente. Puedo usar esta red durante 10 escaneos de mosaico completos y luego puedo evaluar la imagen resultante (por lo que no puedo evaluar dicha red inmediatamente después del cálculo, sino solo después de varios ciclos de cálculos). El resultado son dos números: el el primero quiero maximizar (similitud) y el segundo minimizar (relación de tamaño).

Traté de crear una red neuronal que tuviera la cantidad requerida de entradas y salidas. La función que compara la imagen de origen con el mosaico se proporciona de antemano (para mí, es un cuadro negro y devuelve un valor entre 0 y 1, que es cierto grado de similitud). El tamaño de todo el mosaico se determinará al crear la imagen (guardar en .png con compresión completa) y se puede comparar con el tamaño de todas las piezas (siempre debe ser más pequeño, para que pueda convertir incluso esto en un valor entre 0-1) . Y ahora tengo un problema sobre cómo entrenar dicha red.

Yo uso tensorflow en node.js. Pseudo parte del código:

 import * as tf from '@tensorflow/tfjs-node'; const m = tf.sequential(); m.add(tf.layers.dense({ inputShape: [4 * 4], units: 17, activation: 'relu', })); ... m.add(tf.layers.dense({ name: 'output', units: 6, activation: 'sigmoid', dtype: 'int32', })); ... m.compile({ optimizer: 'sgd', loss: minimizeEntropy, }); ... const md = prepareMosaicData(); ... for(move cursor in rows na columns) { const actions = m.predict(md); if (action[0] > 0.5) { switch(0, 1); } if (action[1] > 0.5) { switch(0, 2); } ... } ... savePng(); ... results = evaluatePng(); ...

No sé qué podría hacer ahora. No sé si es posible usar GAN, porque el discriminador no es una red neuronal, sino solo dos funciones y cómo podría hacerlo. Y cómo escribir una función de entrenamiento que intente maximizar y minimizar dos resultados "externos".

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!