title: tensorflow js model (converted from Keras) has 3 outputs. How can I extract them?
body: <p>I have trained a yolov3 model in Keras, and it has 3 outputs (3D tensors). No problem there. 
  Then I converted this model into tfjs to run it in a browser.
  I can easily get the content of each one of the outputs if I truncate the model to this specific output. But I cannot get the full (3 outputs) at once. I am wondering if that is even possible?</p>
  
  <p>Here's what I'd like to do (it does not work, it hangs):</p>
  
  <pre><code>const myTracker = await tf.loadLayersModel(v3_model); 
  const prediction = tf.tidy(() =&gt; {
  
        // prepare inputs tensor
        const inputs = tf.browser.fromPixels(canvas, 3).expandDims(0).toFloat().div(tf.scalar(255));
        console.log("============ inputs tensor shape:" + inputs.shape);  //--&gt; 1,416,416,3  
  
        // get all 3 outputs
        const outputs = myTracker.predict(inputs).arraySync(); 
        outputs.print();
        return outputs; 
  });            
  </code></pre>
  
  <p>And here's what works if I am only interested in 1 output, after identifying the 3 outputs names.</p>
  
  <pre><code>const myTracker = await tf.loadLayersModel(v3_model); 
  const prediction = tf.tidy(() =&gt; {
  
        // prepare inputs tensor
        const inputs = tf.browser.fromPixels(canvas, 3).expandDims(0).toFloat().div(tf.scalar(255));
        console.log("============ inputs tensor shape:" + inputs.shape);  //--&gt; 1,416,416,3  
  
        // get the full object of interesting layers
        const layer3 = myTracker.getLayer('conv2d_3');
        const layer8 = myTracker.getLayer('conv2d_8'); 
        const layer13= myTracker.getLayer('conv2d_13'); 
  
        // get 1 specific output from a new model build from the original
        const myTracker_truncated = tf.model({inputs: myTracker.inputs, outputs: layer3.output});
        const outputs = myTracker_truncated.predict(inputs).arraySync();  
        return outputs; 
  });
  </code></pre>
  
  <p>If I inpect (console.log(myTracker)) I get this structure for my outputs:</p>
  
  <pre><code>outputNames: (3) […]
  0: "conv2d_3
  1: "conv2d_8"
  2: "conv2d_13"
  length: 3
  
  outputs: (3) […]
  0: Object { dtype: "float32", id: 662, originalName: "conv2d_3/conv2d_3", … }
  1: Object { dtype: "float32", id: 665, originalName: "conv2d_8/conv2d_8", … }
  2: Object { dtype: "float32", id: 668, originalName: "conv2d_13/conv2d_13", … }
  length: 3
  </code></pre>
  
  <p>Would anybody know if what I am trying to achieve is feasible (short of concatenating the 3 outputs into 1 in the original keras model) ?</p>