Learner

From Wiki for iCub and Friends
Jump to navigation Jump to search
The correct title of this article is learner. The initial letter is shown capitalized due to technical restrictions.

Author: Francesco Orabona (& YARPed by Paul Fitzpatrick)

Online SVM-based learner. Send this module examples of vector inputs and corresponding vector outputs, and soon you can

query it with just the inputs. How well it works will vary depending on the problem.


Back to iCub YARP module specifications


Compiler & Linker Dependencies

Include files

STL

Libraries

YARP

Run-time Dependencies

Module arguments

--dom DOMAIN_SIZE    // the "dom" number controls how many input variables there are.
--cod CODOMAIN_SIZE  // The "cod" number controls how many output ("codomain") variables there are.
--ex EXAMPLE_SIZE    // The "ex" number controls how many samples are required for learning.
--port PORT_PREFIX   // this controls the prefix of port names.


Ports accessed

Ports that are assumed to exist prior to instantiation of the module (i.e. some other module must create them)


Ports created

Ports that are instantiated by the module and are then available for other modules to use (using yarp connect)

Under normal use, the following ports are created. The port names are just examples (controlled by options):

Input ports

    /learner/i:vec -- This port expects to receive vectors of either examples or probing inputs.  
                      The vectors should be either of size dom or dom+cod (see module arguments).

    /learner/i:bot -- This port expects commands in bottle format to manipulate the learner, 
                      e.g. to reset its memory.

output ports

    /learner/o:vec -- This port yields the modules best guess at the output 
                      corresponding to the most recent input.


Input data files

None

Output data files

None

Configuration files

If desired, command line arguments can be moved to a configuration file by specifying --file NAME.ini.


User interface mechanism

Run-time modification of module parameters

The module is intended to run autonomously. For testing, commands can be typed at the command line or sent to the input

ports. Type "help" for details.


OS on which the module was developed

Windows, Linux


OS on which the module was tested

Linux


Operating system dependencies

None known


Example instantiation of the module

Run & port connection commands

learner --dom 1 --cod 1 --ex 100
test_learner [this is a test program compiled with the module]



iCub Capabilities

iCub capability code

N/A

Other Yarp modules required to effect this capability

N/A

Example instantiation

N/A


Back to iCub YARP module specifications