Giter Club home page Giter Club logo

Comments (7)

vedaldi avatar vedaldi commented on May 6, 2024

Yes, MatConvNet is designed to be flexible. This is definitely possible by recombining the core computational blocks, and it would boil down to:

  • modifying vl_simplenn.m (or write your own alternative driver script) to take more complex network topologies and
  • modifying the example training code cnn_train.m (or write your own) accordingly to mix the multiple tasks

Writing such scripts would be more or less difficult depending on how general your solution should be. We will likely add some of this functionality ourselves in a future release.

On 22 Oct 2014, at 07:07, Riddhiman Dasgupta [email protected] wrote:

Hi,
How would it be possible to implement a multi task neural network using MatConvNet?
Basically, how can I split the output of the final shared layer and send it to multiple loss layers, and combine the errors for backpropagation accordingly, using MatConvNet?


Reply to this email directly or view it on GitHub.

from matconvnet.

siskander avatar siskander commented on May 6, 2024

On October 22, 2014, you received a message from someone
#11

"Hi,
How would it be possible to implement a multi task neural network using MatConvNet?
Basically, how can I split the output of the final shared layer and send it to multiple loss layers, and combine the errors for backpropagation accordingly, using MatConvNet?"

and you replied
"Yes, MatConvNet is designed to be flexible. This is definitely possible by recombining the core computational blocks, and it would boil down to: * modifying vl_simplenn.m (or write your own alternative driver script) to take more complex network topologies and * modifying the example training code cnn_train.m (or write your own) accordingly to mix the multiple tasks Writing such scripts would be more or less difficult depending on how general your solution should be. We will likely add some of this functionality ourselves in a future release."

I have the same problem, has MatConvNet been changed? or still I need to modify its m files?

In case it is changed, would you please tell me how to construct more topologies ?

from matconvnet.

dasguptar avatar dasguptar commented on May 6, 2024

Hi @siskander you can take a look at DAGs in MatConvNet. Currently, DAGs support any directed acyclic graph architecture, and can have multiple inputs and multiple outputs, which is what you will primarily need for multi-task learning. 😄

from matconvnet.

siskander avatar siskander commented on May 6, 2024

Hello:

Thank you for your reply.
I have read tutorials about DAGNN.

I am implementing multi-label problem for 64 attributes.

So, I designed a CNN has 64 SoftMAx followed by loss function:

  1. during epoches, I found val is appeared in all batches, there is no name 'train'
  2. How to divide the inputs and labels for each loss layer?
  3. How can I get the accuracy for each one?

Thank you.

from matconvnet.

siskander avatar siskander commented on May 6, 2024
  1. how to get the loss value for each output?
  2. Is it necessary to implement a layer to collect the gradient in backpropagation?

Thank you.

from matconvnet.

siskander avatar siskander commented on May 6, 2024

OR

In the documentation of loss.m, there is an option for c to be multi-label:

c = HxWxDxN

but, in my case HxW is 1x1

c = DxN = 64 attributes x number of instances/batch

This format generates error, would you please help me on this?

from matconvnet.

Nepths avatar Nepths commented on May 6, 2024

Hi @siskander @sungsooo
I have the same prolem you had, have you solved it?
Can you explain how to solve it or share an example for multi-task learning?
Thank you.

from matconvnet.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.