Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A possible problem for algorithms dealing with new, complicated datatypes that don't have catFeatures #6

Open
peterTorrione opened this issue Aug 14, 2012 · 2 comments

Comments

@peterTorrione
Copy link
Collaborator

Right now, algorithms use "catFeatures" to handle when there are multiple feature sets coming into a new Algorithm:

prtPreProcPca/prtClassPlsda+prtFusion...

It would really happen in the above, where a "/" is followed by a single action.

To make the code simple, we also call catFeatures everywhere instead of trying to figure out when we should call it (it's easy enough to do).

The problem is that for prtClassMultiplInstance, for example, there is no such thing as "catFeatures".

I see a few options.

  1. We can re-write the current algo.run code to only use catFeatures when necessary. This will still break for MIL data in the case above, but lets you write straight algorithms. This has to be a temporary fix. I'll do it now.

  2. Write catFeatures for dsMIL. There might be other data sets where catFeatures doesn't make any sense. We should either figure out the "right thing" or warn / error nicely...

@kennethmorton
Copy link
Collaborator

I think the solution to this is to make a method of datasets (I suppose it is abstract in prtDataSetBase) to combine from a parallel algorithm catParallel perhaps. prtDataSetInMemory can just call catFeatures and MIL can do whatever insanity is required.

@peterTorrione
Copy link
Collaborator Author

Agree - catParallel. Should be on our to-do-list.

That or, this is meaningless and should not be allowed for prtDataSetClassMil, or prtDataSetClassGraph, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants