mi024

College project "Projet IAD" master 1
git clone https://esimon.eu/repos/mi024.git
Log | Files | Refs | README

devdoc.cpp (2509B)


      1 /**
      2  * @file
      3  * @brief Text and HTML-code for the startpage of the doxygen-documentation.
      4  */
      5 
      6 
      7 /**
      8 @mainpage Developer Documentation
      9 
     10 @section presentation Presentation
     11 Four binaries are built from these sources:
     12 	- view_ctl (main file: view_ctl.cpp)
     13 	- supervisor (main file: supervisor.cpp)
     14 	- test_serialization (main file: test/serialization.cpp)
     15 	- test_learning (main file: test/learning.cpp)
     16 
     17 @section view_ctl View_ctl
     18 The view controller (@c view_ctl) is the interface to the View database.
     19 It can execute three basics commands:
     20 	- Add a view
     21 	- Delete a view
     22 	- List all the views
     23 
     24 Furthermore, the add command run a View factory which can be run in interactive mode or in detached mode (using a configuration file) to construct the View to be inserted in the database.
     25 
     26 @section supervisor Supervisor
     27 The @c supervisor is the interface to the training and testing algorithms.
     28 Given a set of View, it can train these views on a Data_set or compute prediction errors.
     29 Like @ref view_ctl, it operates on a database (from which it gets and updates the View objects) and can be run with a configuration file.
     30 
     31 The two interesting functions called by the supervisor are:
     32 	- Model::stochastic_learn
     33 	- Model::error
     34 
     35 @section kinds Kinds
     36 In order to link the "viewed" vectors in Data_set (i.e. several vectors representing the same element) with the abstract "views" in Model (i.e. a pair of encoder/decoder.)
     37 An attribute "kind" is being used, each View has a kind, it is the kind of the viewed objects (e.g. "16x16 mono image from data set XYZ").
     38 Furthermore, each "concrete" view in Data_set must be labeled with its kind, so that when the @ref supervisor is called, it knows which "concrete" view correspond to which "abstract" view.
     39 
     40 @section tests Tests
     41 Two unit test binaries are compiled.
     42 
     43 @c test_serialization tests the serialization of the modules and criteria.
     44 There is a test for each module/criterion type, the test being:
     45 	- Create a module/criterion
     46 	- Write it in a file
     47 	- Read a new module/criterion from the same file
     48 	- Compare the original module/criterion with the read one
     49 
     50 @c test_learning tests the learning algorithm.
     51 The test is simple:
     52 	- Create a Data_set of the logical "and" function
     53 	- Create a Model with a concept space of dimension 2
     54 	- Compute the error of the untrained Model on the Data_set
     55 	- Train the Model on the Data_set
     56 	- Compute the error of the trained Model on the Data_set
     57 	- Compare the error of the untrained Model with the error of the trained one
     58 */
     59