1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
---|
2 | <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> |
---|
3 | <title>mixpp: itpp::MOG_generic Class Reference</title> |
---|
4 | <link href="tabs.css" rel="stylesheet" type="text/css"> |
---|
5 | <link href="doxygen.css" rel="stylesheet" type="text/css"> |
---|
6 | </head><body> |
---|
7 | <!-- Generated by Doxygen 1.5.8 --> |
---|
8 | <script type="text/javascript"> |
---|
9 | <!-- |
---|
10 | function changeDisplayState (e){ |
---|
11 | var num=this.id.replace(/[^[0-9]/g,''); |
---|
12 | var button=this.firstChild; |
---|
13 | var sectionDiv=document.getElementById('dynsection'+num); |
---|
14 | if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ |
---|
15 | sectionDiv.style.display='block'; |
---|
16 | button.src='open.gif'; |
---|
17 | }else{ |
---|
18 | sectionDiv.style.display='none'; |
---|
19 | button.src='closed.gif'; |
---|
20 | } |
---|
21 | } |
---|
22 | function initDynSections(){ |
---|
23 | var divs=document.getElementsByTagName('div'); |
---|
24 | var sectionCounter=1; |
---|
25 | for(var i=0;i<divs.length-1;i++){ |
---|
26 | if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ |
---|
27 | var header=divs[i]; |
---|
28 | var section=divs[i+1]; |
---|
29 | var button=header.firstChild; |
---|
30 | if (button!='IMG'){ |
---|
31 | divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); |
---|
32 | button=document.createElement('img'); |
---|
33 | divs[i].insertBefore(button,divs[i].firstChild); |
---|
34 | } |
---|
35 | header.style.cursor='pointer'; |
---|
36 | header.onclick=changeDisplayState; |
---|
37 | header.id='dynheader'+sectionCounter; |
---|
38 | button.src='closed.gif'; |
---|
39 | section.id='dynsection'+sectionCounter; |
---|
40 | section.style.display='none'; |
---|
41 | section.style.marginLeft='14px'; |
---|
42 | sectionCounter++; |
---|
43 | } |
---|
44 | } |
---|
45 | } |
---|
46 | window.onload = initDynSections; |
---|
47 | --> |
---|
48 | </script> |
---|
49 | <div class="navigation" id="top"> |
---|
50 | <div class="tabs"> |
---|
51 | <ul> |
---|
52 | <li><a href="main.html"><span>Main Page</span></a></li> |
---|
53 | <li><a href="pages.html"><span>Related Pages</span></a></li> |
---|
54 | <li><a href="modules.html"><span>Modules</span></a></li> |
---|
55 | <li class="current"><a href="annotated.html"><span>Classes</span></a></li> |
---|
56 | <li><a href="files.html"><span>Files</span></a></li> |
---|
57 | </ul> |
---|
58 | </div> |
---|
59 | <div class="tabs"> |
---|
60 | <ul> |
---|
61 | <li><a href="annotated.html"><span>Class List</span></a></li> |
---|
62 | <li><a href="classes.html"><span>Class Index</span></a></li> |
---|
63 | <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> |
---|
64 | <li><a href="functions.html"><span>Class Members</span></a></li> |
---|
65 | </ul> |
---|
66 | </div> |
---|
67 | <div class="navpath"><b>itpp</b>::<a class="el" href="classitpp_1_1MOG__generic.html">MOG_generic</a> |
---|
68 | </div> |
---|
69 | </div> |
---|
70 | <div class="contents"> |
---|
71 | <h1>itpp::MOG_generic Class Reference<br> |
---|
72 | <small> |
---|
73 | [<a class="el" href="group__MOG.html">Mixture of Gaussians (MOG)</a>]</small> |
---|
74 | </h1><!-- doxytag: class="itpp::MOG_generic" -->Generic Mixture of Gaussians (MOG) class. Used as a base for other MOG classes. |
---|
75 | <a href="#_details">More...</a> |
---|
76 | <p> |
---|
77 | <code>#include <<a class="el" href="mog__generic_8h-source.html">mog_generic.h</a>></code> |
---|
78 | <p> |
---|
79 | |
---|
80 | <p> |
---|
81 | <a href="classitpp_1_1MOG__generic-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> |
---|
82 | <tr><td></td></tr> |
---|
83 | <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> |
---|
84 | <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#e43453749e36c5d049dfdf3693c9aba3">MOG_generic</a> ()</td></tr> |
---|
85 | |
---|
86 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <a href="#e43453749e36c5d049dfdf3693c9aba3"></a><br></td></tr> |
---|
87 | <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#398c162cd9f5e5ce948ca64ccc78d32c">MOG_generic</a> (const std::string &name_in)</td></tr> |
---|
88 | |
---|
89 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct the <a class="el" href="classitpp_1_1MOG__generic.html" title="Generic Mixture of Gaussians (MOG) class. Used as a base for other MOG classes.">MOG_generic</a> object by loading the parameters from a model file. <a href="#398c162cd9f5e5ce948ca64ccc78d32c"></a><br></td></tr> |
---|
90 | <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#67985c3af6d071384fa3241c20779f29">MOG_generic</a> (const int &K_in, const int &D_in, bool full_in=false)</td></tr> |
---|
91 | |
---|
92 | <tr><td class="mdescLeft"> </td><td class="mdescRight">construct a default model (all Gaussians have zero mean and unit variance for all dimensions) <a href="#67985c3af6d071384fa3241c20779f29"></a><br></td></tr> |
---|
93 | <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#444867bddfc7f157ef0161ce122e7b22">MOG_generic</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in, bool full_in=false)</td></tr> |
---|
94 | |
---|
95 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a model using user supplied mean vectors. <a href="#444867bddfc7f157ef0161ce122e7b22"></a><br></td></tr> |
---|
96 | <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#34e712cff720d4521628d3c01bbf1bf7">MOG_generic</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in, <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &diag_covs_in, vec &weights_in)</td></tr> |
---|
97 | |
---|
98 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a model using user supplied parameters (diagonal covariance version). <a href="#34e712cff720d4521628d3c01bbf1bf7"></a><br></td></tr> |
---|
99 | <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#654c32682d638a1cd93300f359468f70">MOG_generic</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in, <a class="el" href="classitpp_1_1Array.html">Array</a>< mat > &full_covs_in, vec &weights_in)</td></tr> |
---|
100 | |
---|
101 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a model using user supplied parameters (full covariance version). <a href="#654c32682d638a1cd93300f359468f70"></a><br></td></tr> |
---|
102 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e583048e9d459555079707da471d857c"></a><!-- doxytag: member="itpp::MOG_generic::~MOG_generic" ref="e583048e9d459555079707da471d857c" args="()" --> |
---|
103 | virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#e583048e9d459555079707da471d857c">~MOG_generic</a> ()</td></tr> |
---|
104 | |
---|
105 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Default destructor. <br></td></tr> |
---|
106 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#331210d0a4ebfbab47d1ba64c8033879">init</a> ()</td></tr> |
---|
107 | |
---|
108 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialise the model to be empty. <a href="#331210d0a4ebfbab47d1ba64c8033879"></a><br></td></tr> |
---|
109 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#3b73c4ad6feeb3588b7e379fca6eae3c">init</a> (const int &K_in, const int &D_in, bool full_in=false)</td></tr> |
---|
110 | |
---|
111 | <tr><td class="mdescLeft"> </td><td class="mdescRight">initialise the model so that all Gaussians have zero mean and unit variance for all dimensions <a href="#3b73c4ad6feeb3588b7e379fca6eae3c"></a><br></td></tr> |
---|
112 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#1373b38028afae89ac7566adbb2a2ab5">init</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in, bool full_in=false)</td></tr> |
---|
113 | |
---|
114 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialise the model using user supplied mean vectors. <a href="#1373b38028afae89ac7566adbb2a2ab5"></a><br></td></tr> |
---|
115 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#7e016be79a1e1a2f3e25b1b27713cf91">init</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in, <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &diag_covs_in, vec &weights_in)</td></tr> |
---|
116 | |
---|
117 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialise the model using user supplied parameters (diagonal covariance version). <a href="#7e016be79a1e1a2f3e25b1b27713cf91"></a><br></td></tr> |
---|
118 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#3fdd538826fedfe7fc9ee4f198ef1a89">init</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in, <a class="el" href="classitpp_1_1Array.html">Array</a>< mat > &full_covs_in, vec &weights_in)</td></tr> |
---|
119 | |
---|
120 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialise the model using user supplied parameters (full covariance version). <a href="#3fdd538826fedfe7fc9ee4f198ef1a89"></a><br></td></tr> |
---|
121 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#2954f4c30d0f58197d18a886bd17bcee">cleanup</a> ()</td></tr> |
---|
122 | |
---|
123 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Release memory used by the model. The model will be empty. <a href="#2954f4c30d0f58197d18a886bd17bcee"></a><br></td></tr> |
---|
124 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b39d42cafa3b08a3595d35b12e564198"></a><!-- doxytag: member="itpp::MOG_generic::is_valid" ref="b39d42cafa3b08a3595d35b12e564198" args="() const " --> |
---|
125 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#b39d42cafa3b08a3595d35b12e564198">is_valid</a> () const </td></tr> |
---|
126 | |
---|
127 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns true if the model's parameters are valid. <br></td></tr> |
---|
128 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c27623ea75a58f8335e13c0675183faa"></a><!-- doxytag: member="itpp::MOG_generic::is_full" ref="c27623ea75a58f8335e13c0675183faa" args="() const " --> |
---|
129 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c27623ea75a58f8335e13c0675183faa">is_full</a> () const </td></tr> |
---|
130 | |
---|
131 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns true if the model has full covariance matrices. <br></td></tr> |
---|
132 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="217c1ba5bf096f693a64fb30e701448f"></a><!-- doxytag: member="itpp::MOG_generic::get_K" ref="217c1ba5bf096f693a64fb30e701448f" args="() const " --> |
---|
133 | int </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#217c1ba5bf096f693a64fb30e701448f">get_K</a> () const </td></tr> |
---|
134 | |
---|
135 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of Gaussians. <br></td></tr> |
---|
136 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8606d3aec30d2a97bbea289adee66aa"></a><!-- doxytag: member="itpp::MOG_generic::get_D" ref="a8606d3aec30d2a97bbea289adee66aa" args="() const " --> |
---|
137 | int </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#a8606d3aec30d2a97bbea289adee66aa">get_D</a> () const </td></tr> |
---|
138 | |
---|
139 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the dimensionality. <br></td></tr> |
---|
140 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="49266cd7de7805438cf94e6804620974"></a><!-- doxytag: member="itpp::MOG_generic::get_weights" ref="49266cd7de7805438cf94e6804620974" args="() const " --> |
---|
141 | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#49266cd7de7805438cf94e6804620974">get_weights</a> () const </td></tr> |
---|
142 | |
---|
143 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a copy of the weight vector. <br></td></tr> |
---|
144 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ba7dde83d6377b05c8604a6e5bc222d"></a><!-- doxytag: member="itpp::MOG_generic::get_means" ref="8ba7dde83d6377b05c8604a6e5bc222d" args="() const " --> |
---|
145 | <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#8ba7dde83d6377b05c8604a6e5bc222d">get_means</a> () const </td></tr> |
---|
146 | |
---|
147 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a copy of the array of mean vectors. <br></td></tr> |
---|
148 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0fb44dc53203033b810eb997add5a9ca"></a><!-- doxytag: member="itpp::MOG_generic::get_diag_covs" ref="0fb44dc53203033b810eb997add5a9ca" args="() const " --> |
---|
149 | <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#0fb44dc53203033b810eb997add5a9ca">get_diag_covs</a> () const </td></tr> |
---|
150 | |
---|
151 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a copy of the array of diagonal covariance vectors. <br></td></tr> |
---|
152 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff62148d59ffa1fb40a07259546f0afd"></a><!-- doxytag: member="itpp::MOG_generic::get_full_covs" ref="ff62148d59ffa1fb40a07259546f0afd" args="() const " --> |
---|
153 | <a class="el" href="classitpp_1_1Array.html">Array</a>< mat > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#ff62148d59ffa1fb40a07259546f0afd">get_full_covs</a> () const </td></tr> |
---|
154 | |
---|
155 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Obtain a copy of the array of full covariance matrices. <br></td></tr> |
---|
156 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#7cecfa0184f63f928381103dcff050ff">set_means</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in)</td></tr> |
---|
157 | |
---|
158 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the means of the model. <a href="#7cecfa0184f63f928381103dcff050ff"></a><br></td></tr> |
---|
159 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#bb90adbcf6e3963dc63ce7fdc409faff">set_diag_covs</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &diag_covs_in)</td></tr> |
---|
160 | |
---|
161 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the diagonal covariance vectors of the model. <a href="#bb90adbcf6e3963dc63ce7fdc409faff"></a><br></td></tr> |
---|
162 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#7582399d9bdbfa90eb1fe2381af6b5fb">set_full_covs</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< mat > &full_covs_in)</td></tr> |
---|
163 | |
---|
164 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the full covariance matrices of the model. <a href="#7582399d9bdbfa90eb1fe2381af6b5fb"></a><br></td></tr> |
---|
165 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#f208b278df2f6334099b246c156094e0">set_weights</a> (vec &weights_in)</td></tr> |
---|
166 | |
---|
167 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the weight vector of the model. <a href="#f208b278df2f6334099b246c156094e0"></a><br></td></tr> |
---|
168 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="648a73469fc824517e35e43d78795296"></a><!-- doxytag: member="itpp::MOG_generic::set_means_zero" ref="648a73469fc824517e35e43d78795296" args="()" --> |
---|
169 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#648a73469fc824517e35e43d78795296">set_means_zero</a> ()</td></tr> |
---|
170 | |
---|
171 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the means in the model to be zero. <br></td></tr> |
---|
172 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e28ac0f40c8b95a3449e9aba38ed141"></a><!-- doxytag: member="itpp::MOG_generic::set_diag_covs_unity" ref="0e28ac0f40c8b95a3449e9aba38ed141" args="()" --> |
---|
173 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#0e28ac0f40c8b95a3449e9aba38ed141">set_diag_covs_unity</a> ()</td></tr> |
---|
174 | |
---|
175 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the diagonal covariance vectors to be unity. <br></td></tr> |
---|
176 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d8c1cd740bca3a8ab5538ed634506ba"></a><!-- doxytag: member="itpp::MOG_generic::set_full_covs_unity" ref="2d8c1cd740bca3a8ab5538ed634506ba" args="()" --> |
---|
177 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#2d8c1cd740bca3a8ab5538ed634506ba">set_full_covs_unity</a> ()</td></tr> |
---|
178 | |
---|
179 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the full covariance matrices to be unity. <br></td></tr> |
---|
180 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1292c3480c3260a7813fa7d30a6de01a"></a><!-- doxytag: member="itpp::MOG_generic::set_weights_uniform" ref="1292c3480c3260a7813fa7d30a6de01a" args="()" --> |
---|
181 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#1292c3480c3260a7813fa7d30a6de01a">set_weights_uniform</a> ()</td></tr> |
---|
182 | |
---|
183 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Set all the weights to 1/K, where K is the number of Gaussians. <br></td></tr> |
---|
184 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#1fdbb97943bbb5bd634b062750f17f67">set_checks</a> (bool do_checks_in)</td></tr> |
---|
185 | |
---|
186 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Enable/disable internal checks for likelihood functions. <a href="#1fdbb97943bbb5bd634b062750f17f67"></a><br></td></tr> |
---|
187 | <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#edd93bdbe6f111a6f49e3b7176fa7c08">set_paranoid</a> (bool paranoid_in)</td></tr> |
---|
188 | |
---|
189 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Enable/disable paranoia about numerical stability. <a href="#edd93bdbe6f111a6f49e3b7176fa7c08"></a><br></td></tr> |
---|
190 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#e6601e39373de56c23a52ca7eaabfbed">load</a> (const std::string &name_in)</td></tr> |
---|
191 | |
---|
192 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialise the model by loading the parameters from a model file. <a href="#e6601e39373de56c23a52ca7eaabfbed"></a><br></td></tr> |
---|
193 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c9446a81ab2227128e8a4180a082c809">save</a> (const std::string &name_in) const </td></tr> |
---|
194 | |
---|
195 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Save the model's parameters to a model file. <a href="#c9446a81ab2227128e8a4180a082c809"></a><br></td></tr> |
---|
196 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#bccd9353a67e9bda9f1db8872487ec30">join</a> (const <a class="el" href="classitpp_1_1MOG__generic.html">MOG_generic</a> &B_in)</td></tr> |
---|
197 | |
---|
198 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Mathematically join the model with a user supplied model. <a href="#bccd9353a67e9bda9f1db8872487ec30"></a><br></td></tr> |
---|
199 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#3bf2b05e3069a3d0082e372dc455bd9d">convert_to_diag</a> ()</td></tr> |
---|
200 | |
---|
201 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert the model to use diagonal covariances. <a href="#3bf2b05e3069a3d0082e372dc455bd9d"></a><br></td></tr> |
---|
202 | <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#6fefdf2622cdcc10993e815b1f2d7a96">convert_to_full</a> ()</td></tr> |
---|
203 | |
---|
204 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert the model to have full covariance matrices. <a href="#6fefdf2622cdcc10993e815b1f2d7a96"></a><br></td></tr> |
---|
205 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a1924e02e2946294e7ba90ff95c4724"></a><!-- doxytag: member="itpp::MOG_generic::log_lhood_single_gaus" ref="8a1924e02e2946294e7ba90ff95c4724" args="(const vec &x_in, const int k)" --> |
---|
206 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#8a1924e02e2946294e7ba90ff95c4724">log_lhood_single_gaus</a> (const vec &x_in, const int k)</td></tr> |
---|
207 | |
---|
208 | <tr><td class="mdescLeft"> </td><td class="mdescRight">calculate the log likelihood of vector <code>x_in</code> using only Gaussian <code>k</code> <br></td></tr> |
---|
209 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6e88002db7abcec3317c70a4d2db6c50"></a><!-- doxytag: member="itpp::MOG_generic::log_lhood" ref="6e88002db7abcec3317c70a4d2db6c50" args="(const vec &x_in)" --> |
---|
210 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#6e88002db7abcec3317c70a4d2db6c50">log_lhood</a> (const vec &x_in)</td></tr> |
---|
211 | |
---|
212 | <tr><td class="mdescLeft"> </td><td class="mdescRight">calculate the log likelihood of vector <code>x_in</code> <br></td></tr> |
---|
213 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="06845a8f7b0d0342701ef9c96dc12e89"></a><!-- doxytag: member="itpp::MOG_generic::lhood" ref="06845a8f7b0d0342701ef9c96dc12e89" args="(const vec &x_in)" --> |
---|
214 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#06845a8f7b0d0342701ef9c96dc12e89">lhood</a> (const vec &x_in)</td></tr> |
---|
215 | |
---|
216 | <tr><td class="mdescLeft"> </td><td class="mdescRight">calculate the likelihood of vector <code>x_in</code> <br></td></tr> |
---|
217 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="42bd3f8f0a54e2957279c24b40719b08"></a><!-- doxytag: member="itpp::MOG_generic::avg_log_lhood" ref="42bd3f8f0a54e2957279c24b40719b08" args="(const Array< vec > &X_in)" --> |
---|
218 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#42bd3f8f0a54e2957279c24b40719b08">avg_log_lhood</a> (const <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &X_in)</td></tr> |
---|
219 | |
---|
220 | <tr><td class="mdescLeft"> </td><td class="mdescRight">calculate the average log likelihood of an array of vectors <code>X_in</code> <br></td></tr> |
---|
221 | <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> |
---|
222 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3c236fd20912f9cfc8930594a0a2d0a0"></a><!-- doxytag: member="itpp::MOG_generic::check_size" ref="3c236fd20912f9cfc8930594a0a2d0a0" args="(const vec &x_in) const " --> |
---|
223 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#3c236fd20912f9cfc8930594a0a2d0a0">check_size</a> (const vec &x_in) const </td></tr> |
---|
224 | |
---|
225 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if vector <code>x_in</code> has the same dimensionality as the model. <br></td></tr> |
---|
226 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="069335b9885c057440599fb0cfbfc288"></a><!-- doxytag: member="itpp::MOG_generic::check_size" ref="069335b9885c057440599fb0cfbfc288" args="(const Array< vec > &X_in) const " --> |
---|
227 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#069335b9885c057440599fb0cfbfc288">check_size</a> (const <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &X_in) const </td></tr> |
---|
228 | |
---|
229 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if all vectors in <a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> <code>X_in</code> have the same dimensionality as the model. <br></td></tr> |
---|
230 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="68b0f071e9a73256b5170c5d92430922"></a><!-- doxytag: member="itpp::MOG_generic::check_array_uniformity" ref="68b0f071e9a73256b5170c5d92430922" args="(const Array< vec > &A) const " --> |
---|
231 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#68b0f071e9a73256b5170c5d92430922">check_array_uniformity</a> (const <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &A) const </td></tr> |
---|
232 | |
---|
233 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if all vectors in <a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> <code>X_in</code> have the same dimensionality. <br></td></tr> |
---|
234 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9ad3115741081ee1137e1d9cb0a86728"></a><!-- doxytag: member="itpp::MOG_generic::set_means_internal" ref="9ad3115741081ee1137e1d9cb0a86728" args="(Array< vec > &means_in)" --> |
---|
235 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#9ad3115741081ee1137e1d9cb0a86728">set_means_internal</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &means_in)</td></tr> |
---|
236 | |
---|
237 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
238 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="20f6a520b2fae8e792086ab1187dcdc1"></a><!-- doxytag: member="itpp::MOG_generic::set_diag_covs_internal" ref="20f6a520b2fae8e792086ab1187dcdc1" args="(Array< vec > &diag_covs_in)" --> |
---|
239 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#20f6a520b2fae8e792086ab1187dcdc1">set_diag_covs_internal</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< vec > &diag_covs_in)</td></tr> |
---|
240 | |
---|
241 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
242 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="495c868950c9c1d6a1c14f4ee8f46d64"></a><!-- doxytag: member="itpp::MOG_generic::set_full_covs_internal" ref="495c868950c9c1d6a1c14f4ee8f46d64" args="(Array< mat > &full_covs_in)" --> |
---|
243 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#495c868950c9c1d6a1c14f4ee8f46d64">set_full_covs_internal</a> (<a class="el" href="classitpp_1_1Array.html">Array</a>< mat > &full_covs_in)</td></tr> |
---|
244 | |
---|
245 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
246 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="40ef85a6ef1e2d0bb551f8244517053b"></a><!-- doxytag: member="itpp::MOG_generic::set_weights_internal" ref="40ef85a6ef1e2d0bb551f8244517053b" args="(vec &_weigths)" --> |
---|
247 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#40ef85a6ef1e2d0bb551f8244517053b">set_weights_internal</a> (vec &_weigths)</td></tr> |
---|
248 | |
---|
249 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
250 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d17a84c168993aebb36de7643d77e99d"></a><!-- doxytag: member="itpp::MOG_generic::set_means_zero_internal" ref="d17a84c168993aebb36de7643d77e99d" args="()" --> |
---|
251 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#d17a84c168993aebb36de7643d77e99d">set_means_zero_internal</a> ()</td></tr> |
---|
252 | |
---|
253 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
254 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c9600f1d0f410b2e950f89b567436d36"></a><!-- doxytag: member="itpp::MOG_generic::set_diag_covs_unity_internal" ref="c9600f1d0f410b2e950f89b567436d36" args="()" --> |
---|
255 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c9600f1d0f410b2e950f89b567436d36">set_diag_covs_unity_internal</a> ()</td></tr> |
---|
256 | |
---|
257 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
258 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b83aa9cd884301793f9d73b4f4520031"></a><!-- doxytag: member="itpp::MOG_generic::set_full_covs_unity_internal" ref="b83aa9cd884301793f9d73b4f4520031" args="()" --> |
---|
259 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#b83aa9cd884301793f9d73b4f4520031">set_full_covs_unity_internal</a> ()</td></tr> |
---|
260 | |
---|
261 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
262 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="25fae21ec832ab27fa5a1adb95162156"></a><!-- doxytag: member="itpp::MOG_generic::set_weights_uniform_internal" ref="25fae21ec832ab27fa5a1adb95162156" args="()" --> |
---|
263 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#25fae21ec832ab27fa5a1adb95162156">set_weights_uniform_internal</a> ()</td></tr> |
---|
264 | |
---|
265 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
266 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e4d8f80dc4ebac8ac5775431d756fe5"></a><!-- doxytag: member="itpp::MOG_generic::convert_to_diag_internal" ref="0e4d8f80dc4ebac8ac5775431d756fe5" args="()" --> |
---|
267 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#0e4d8f80dc4ebac8ac5775431d756fe5">convert_to_diag_internal</a> ()</td></tr> |
---|
268 | |
---|
269 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
270 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5cfaccadb8f737d94478d407803cb801"></a><!-- doxytag: member="itpp::MOG_generic::convert_to_full_internal" ref="5cfaccadb8f737d94478d407803cb801" args="()" --> |
---|
271 | void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#5cfaccadb8f737d94478d407803cb801">convert_to_full_internal</a> ()</td></tr> |
---|
272 | |
---|
273 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
274 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6381088cfc720cc5a7c4783527afa638"></a><!-- doxytag: member="itpp::MOG_generic::setup_means" ref="6381088cfc720cc5a7c4783527afa638" args="()" --> |
---|
275 | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#6381088cfc720cc5a7c4783527afa638">setup_means</a> ()</td></tr> |
---|
276 | |
---|
277 | <tr><td class="mdescLeft"> </td><td class="mdescRight">additional processing of mean vectors, done as the last step of mean initialisation <br></td></tr> |
---|
278 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="517640c3cad22b92885402ee60138d50"></a><!-- doxytag: member="itpp::MOG_generic::setup_covs" ref="517640c3cad22b92885402ee60138d50" args="()" --> |
---|
279 | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#517640c3cad22b92885402ee60138d50">setup_covs</a> ()</td></tr> |
---|
280 | |
---|
281 | <tr><td class="mdescLeft"> </td><td class="mdescRight">additional processing of covariance vectors/matrices, done as the last step of covariance initialisation <br></td></tr> |
---|
282 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1e98299192361b9a3fecff5269bb2d27"></a><!-- doxytag: member="itpp::MOG_generic::setup_weights" ref="1e98299192361b9a3fecff5269bb2d27" args="()" --> |
---|
283 | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#1e98299192361b9a3fecff5269bb2d27">setup_weights</a> ()</td></tr> |
---|
284 | |
---|
285 | <tr><td class="mdescLeft"> </td><td class="mdescRight">additional processing of the weight vector, done as the last step of weight initialisation <br></td></tr> |
---|
286 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64afcabf4ff9c3728acd4354610e4726"></a><!-- doxytag: member="itpp::MOG_generic::setup_misc" ref="64afcabf4ff9c3728acd4354610e4726" args="()" --> |
---|
287 | virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#64afcabf4ff9c3728acd4354610e4726">setup_misc</a> ()</td></tr> |
---|
288 | |
---|
289 | <tr><td class="mdescLeft"> </td><td class="mdescRight">additional processing of miscellaneous parameters, done as the last step of overall initialisation <br></td></tr> |
---|
290 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="be79ca91efff04dc1162ee889acc3475"></a><!-- doxytag: member="itpp::MOG_generic::log_lhood_single_gaus_internal" ref="be79ca91efff04dc1162ee889acc3475" args="(const vec &x_in, const int k)" --> |
---|
291 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#be79ca91efff04dc1162ee889acc3475">log_lhood_single_gaus_internal</a> (const vec &x_in, const int k)</td></tr> |
---|
292 | |
---|
293 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
294 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9bd190b0f586c48b623bb42428b4b89a"></a><!-- doxytag: member="itpp::MOG_generic::log_lhood_internal" ref="9bd190b0f586c48b623bb42428b4b89a" args="(const vec &x_in)" --> |
---|
295 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#9bd190b0f586c48b623bb42428b4b89a">log_lhood_internal</a> (const vec &x_in)</td></tr> |
---|
296 | |
---|
297 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
298 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bcd4fa95cbc9a97e5ebaa1f2facbc260"></a><!-- doxytag: member="itpp::MOG_generic::lhood_internal" ref="bcd4fa95cbc9a97e5ebaa1f2facbc260" args="(const vec &x_in)" --> |
---|
299 | virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#bcd4fa95cbc9a97e5ebaa1f2facbc260">lhood_internal</a> (const vec &x_in)</td></tr> |
---|
300 | |
---|
301 | <tr><td class="mdescLeft"> </td><td class="mdescRight">ADD DOCUMENTATION HERE. <br></td></tr> |
---|
302 | <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> |
---|
303 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4b30c5c34e3503df8378b043a8a7776b"></a><!-- doxytag: member="itpp::MOG_generic::do_checks" ref="4b30c5c34e3503df8378b043a8a7776b" args="" --> |
---|
304 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#4b30c5c34e3503df8378b043a8a7776b">do_checks</a></td></tr> |
---|
305 | |
---|
306 | <tr><td class="mdescLeft"> </td><td class="mdescRight">indicates whether checks on input data are done <br></td></tr> |
---|
307 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6e0bfdbd0726a10128c5cab0ee121061"></a><!-- doxytag: member="itpp::MOG_generic::valid" ref="6e0bfdbd0726a10128c5cab0ee121061" args="" --> |
---|
308 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#6e0bfdbd0726a10128c5cab0ee121061">valid</a></td></tr> |
---|
309 | |
---|
310 | <tr><td class="mdescLeft"> </td><td class="mdescRight">indicates whether the parameters are valid <br></td></tr> |
---|
311 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d2285742cd7425f18a97e461a0e6ec82"></a><!-- doxytag: member="itpp::MOG_generic::full" ref="d2285742cd7425f18a97e461a0e6ec82" args="" --> |
---|
312 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#d2285742cd7425f18a97e461a0e6ec82">full</a></td></tr> |
---|
313 | |
---|
314 | <tr><td class="mdescLeft"> </td><td class="mdescRight">indicates whether we are using full or diagonal covariance matrices <br></td></tr> |
---|
315 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f9483049eadafc782080888da20ce9dd"></a><!-- doxytag: member="itpp::MOG_generic::paranoid" ref="f9483049eadafc782080888da20ce9dd" args="" --> |
---|
316 | bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#f9483049eadafc782080888da20ce9dd">paranoid</a></td></tr> |
---|
317 | |
---|
318 | <tr><td class="mdescLeft"> </td><td class="mdescRight">indicates whether we are paranoid about numerical stability <br></td></tr> |
---|
319 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="51e3fd88ae69555151a939a7361e1762"></a><!-- doxytag: member="itpp::MOG_generic::K" ref="51e3fd88ae69555151a939a7361e1762" args="" --> |
---|
320 | int </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#51e3fd88ae69555151a939a7361e1762">K</a></td></tr> |
---|
321 | |
---|
322 | <tr><td class="mdescLeft"> </td><td class="mdescRight">number of gaussians <br></td></tr> |
---|
323 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c03e7ca34817d33ecb3ec87f54e07cd7"></a><!-- doxytag: member="itpp::MOG_generic::D" ref="c03e7ca34817d33ecb3ec87f54e07cd7" args="" --> |
---|
324 | int </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c03e7ca34817d33ecb3ec87f54e07cd7">D</a></td></tr> |
---|
325 | |
---|
326 | <tr><td class="mdescLeft"> </td><td class="mdescRight">dimensionality <br></td></tr> |
---|
327 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce3f0974dc90c7616a76088500e1cbea"></a><!-- doxytag: member="itpp::MOG_generic::means" ref="ce3f0974dc90c7616a76088500e1cbea" args="" --> |
---|
328 | <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#ce3f0974dc90c7616a76088500e1cbea">means</a></td></tr> |
---|
329 | |
---|
330 | <tr><td class="mdescLeft"> </td><td class="mdescRight">means <br></td></tr> |
---|
331 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b15093a04bd84221c44b794831ebecd0"></a><!-- doxytag: member="itpp::MOG_generic::diag_covs" ref="b15093a04bd84221c44b794831ebecd0" args="" --> |
---|
332 | <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#b15093a04bd84221c44b794831ebecd0">diag_covs</a></td></tr> |
---|
333 | |
---|
334 | <tr><td class="mdescLeft"> </td><td class="mdescRight">diagonal covariance matrices, stored as vectors <br></td></tr> |
---|
335 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="25212d7e9406dd32620cd1f191562d8f"></a><!-- doxytag: member="itpp::MOG_generic::full_covs" ref="25212d7e9406dd32620cd1f191562d8f" args="" --> |
---|
336 | <a class="el" href="classitpp_1_1Array.html">Array</a>< mat > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#25212d7e9406dd32620cd1f191562d8f">full_covs</a></td></tr> |
---|
337 | |
---|
338 | <tr><td class="mdescLeft"> </td><td class="mdescRight">full covariance matrices <br></td></tr> |
---|
339 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="903961e6632638e3d91e1b0b8a5f4817"></a><!-- doxytag: member="itpp::MOG_generic::weights" ref="903961e6632638e3d91e1b0b8a5f4817" args="" --> |
---|
340 | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#903961e6632638e3d91e1b0b8a5f4817">weights</a></td></tr> |
---|
341 | |
---|
342 | <tr><td class="mdescLeft"> </td><td class="mdescRight">weights <br></td></tr> |
---|
343 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e63c0eb25aa38f9ee948e2566e239a2e"></a><!-- doxytag: member="itpp::MOG_generic::log_max_K" ref="e63c0eb25aa38f9ee948e2566e239a2e" args="" --> |
---|
344 | double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#e63c0eb25aa38f9ee948e2566e239a2e">log_max_K</a></td></tr> |
---|
345 | |
---|
346 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Pre-calcualted std::log(<a class="el" href="group__miscfunc.html#g343007ee24cfd630e8addeddd1d08e7d" title="Maximum value of vector.">std::numeric_limits<double>::max()</a> / K), where K is the number of Gaussians. <br></td></tr> |
---|
347 | <tr><td class="memItemLeft" nowrap align="right" valign="top">vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c950e3b9cb8f9b1d71b93131455de32b">log_det_etc</a></td></tr> |
---|
348 | |
---|
349 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Gaussian specific pre-calcualted constants. <a href="#c950e3b9cb8f9b1d71b93131455de32b"></a><br></td></tr> |
---|
350 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c8e7908f52565160667da80c03fcc0be"></a><!-- doxytag: member="itpp::MOG_generic::log_weights" ref="c8e7908f52565160667da80c03fcc0be" args="" --> |
---|
351 | vec </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c8e7908f52565160667da80c03fcc0be">log_weights</a></td></tr> |
---|
352 | |
---|
353 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Pre-calculated log versions of the weights. <br></td></tr> |
---|
354 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1324a33e5a5b5f9a75168415acc8a561"></a><!-- doxytag: member="itpp::MOG_generic::full_covs_inv" ref="1324a33e5a5b5f9a75168415acc8a561" args="" --> |
---|
355 | <a class="el" href="classitpp_1_1Array.html">Array</a>< mat > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#1324a33e5a5b5f9a75168415acc8a561">full_covs_inv</a></td></tr> |
---|
356 | |
---|
357 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Pre-calcuated inverted version of each full covariance matrix. <br></td></tr> |
---|
358 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c74ddce5d7899b0fa8c28b4f6aeb731b"></a><!-- doxytag: member="itpp::MOG_generic::diag_covs_inv_etc" ref="c74ddce5d7899b0fa8c28b4f6aeb731b" args="" --> |
---|
359 | <a class="el" href="classitpp_1_1Array.html">Array</a>< vec > </td><td class="memItemRight" valign="bottom"><a class="el" href="classitpp_1_1MOG__generic.html#c74ddce5d7899b0fa8c28b4f6aeb731b">diag_covs_inv_etc</a></td></tr> |
---|
360 | |
---|
361 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Pre-calcuated inverted version of each diagonal covariance vector, where the covariance elements are first multiplied by two. <br></td></tr> |
---|
362 | </table> |
---|
363 | <hr><a name="_details"></a><h2>Detailed Description</h2> |
---|
364 | Generic Mixture of Gaussians (MOG) class. Used as a base for other MOG classes. |
---|
365 | <p> |
---|
366 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Conrad Sanderson</dd></dl> |
---|
367 | Used for representing a statistical distribution as a convex combination of multi-variate Gaussian functions. Also known as a Gaussian Mixture Model. This class handles both full and diagonal covariance matrices, allows loading and saving of the MOG's parameters, as well as calculation of likelihoods. The parameters are set by the user or an optimisation algorithm (for example, see the MOG_diag_EM class). For speed and space reasons, diagonal and full covariance matrices are stored and handled separately. <hr><h2>Constructor & Destructor Documentation</h2> |
---|
368 | <a class="anchor" name="e43453749e36c5d049dfdf3693c9aba3"></a><!-- doxytag: member="itpp::MOG_generic::MOG_generic" ref="e43453749e36c5d049dfdf3693c9aba3" args="()" --> |
---|
369 | <div class="memitem"> |
---|
370 | <div class="memproto"> |
---|
371 | <table class="memname"> |
---|
372 | <tr> |
---|
373 | <td class="memname">itpp::MOG_generic::MOG_generic </td> |
---|
374 | <td>(</td> |
---|
375 | <td class="paramname"> </td> |
---|
376 | <td> ) </td> |
---|
377 | <td><code> [inline]</code></td> |
---|
378 | </tr> |
---|
379 | </table> |
---|
380 | </div> |
---|
381 | <div class="memdoc"> |
---|
382 | |
---|
383 | <p> |
---|
384 | Default constructor. |
---|
385 | <p> |
---|
386 | <dl class="note" compact><dt><b>Note:</b></dt><dd>An empty model is created. The likelihood functions are not useable until the model's parameters are set </dd></dl> |
---|
387 | |
---|
388 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>.</p> |
---|
389 | |
---|
390 | </div> |
---|
391 | </div><p> |
---|
392 | <a class="anchor" name="398c162cd9f5e5ce948ca64ccc78d32c"></a><!-- doxytag: member="itpp::MOG_generic::MOG_generic" ref="398c162cd9f5e5ce948ca64ccc78d32c" args="(const std::string &name_in)" --> |
---|
393 | <div class="memitem"> |
---|
394 | <div class="memproto"> |
---|
395 | <table class="memname"> |
---|
396 | <tr> |
---|
397 | <td class="memname">itpp::MOG_generic::MOG_generic </td> |
---|
398 | <td>(</td> |
---|
399 | <td class="paramtype">const std::string & </td> |
---|
400 | <td class="paramname"> <em>name_in</em> </td> |
---|
401 | <td> ) </td> |
---|
402 | <td><code> [inline]</code></td> |
---|
403 | </tr> |
---|
404 | </table> |
---|
405 | </div> |
---|
406 | <div class="memdoc"> |
---|
407 | |
---|
408 | <p> |
---|
409 | Construct the <a class="el" href="classitpp_1_1MOG__generic.html" title="Generic Mixture of Gaussians (MOG) class. Used as a base for other MOG classes.">MOG_generic</a> object by loading the parameters from a model file. |
---|
410 | <p> |
---|
411 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
412 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
413 | <tr><td valign="top"></td><td valign="top"><em>name_in</em> </td><td>The model's filename </td></tr> |
---|
414 | </table> |
---|
415 | </dl> |
---|
416 | |
---|
417 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00407">load()</a>.</p> |
---|
418 | |
---|
419 | </div> |
---|
420 | </div><p> |
---|
421 | <a class="anchor" name="67985c3af6d071384fa3241c20779f29"></a><!-- doxytag: member="itpp::MOG_generic::MOG_generic" ref="67985c3af6d071384fa3241c20779f29" args="(const int &K_in, const int &D_in, bool full_in=false)" --> |
---|
422 | <div class="memitem"> |
---|
423 | <div class="memproto"> |
---|
424 | <table class="memname"> |
---|
425 | <tr> |
---|
426 | <td class="memname">itpp::MOG_generic::MOG_generic </td> |
---|
427 | <td>(</td> |
---|
428 | <td class="paramtype">const int & </td> |
---|
429 | <td class="paramname"> <em>K_in</em>, </td> |
---|
430 | </tr> |
---|
431 | <tr> |
---|
432 | <td class="paramkey"></td> |
---|
433 | <td></td> |
---|
434 | <td class="paramtype">const int & </td> |
---|
435 | <td class="paramname"> <em>D_in</em>, </td> |
---|
436 | </tr> |
---|
437 | <tr> |
---|
438 | <td class="paramkey"></td> |
---|
439 | <td></td> |
---|
440 | <td class="paramtype">bool </td> |
---|
441 | <td class="paramname"> <em>full_in</em> = <code>false</code></td><td> </td> |
---|
442 | </tr> |
---|
443 | <tr> |
---|
444 | <td></td> |
---|
445 | <td>)</td> |
---|
446 | <td></td><td></td><td><code> [inline]</code></td> |
---|
447 | </tr> |
---|
448 | </table> |
---|
449 | </div> |
---|
450 | <div class="memdoc"> |
---|
451 | |
---|
452 | <p> |
---|
453 | construct a default model (all Gaussians have zero mean and unit variance for all dimensions) |
---|
454 | <p> |
---|
455 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
456 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
457 | <tr><td valign="top"></td><td valign="top"><em>K_in</em> </td><td>Number of Gaussians </td></tr> |
---|
458 | <tr><td valign="top"></td><td valign="top"><em>D_in</em> </td><td>Dimensionality </td></tr> |
---|
459 | <tr><td valign="top"></td><td valign="top"><em>full_in</em> </td><td>If true, use full covariance matrices; if false, use diagonal covariance matrices. Default = false. </td></tr> |
---|
460 | </table> |
---|
461 | </dl> |
---|
462 | |
---|
463 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>.</p> |
---|
464 | |
---|
465 | </div> |
---|
466 | </div><p> |
---|
467 | <a class="anchor" name="444867bddfc7f157ef0161ce122e7b22"></a><!-- doxytag: member="itpp::MOG_generic::MOG_generic" ref="444867bddfc7f157ef0161ce122e7b22" args="(Array< vec > &means_in, bool full_in=false)" --> |
---|
468 | <div class="memitem"> |
---|
469 | <div class="memproto"> |
---|
470 | <table class="memname"> |
---|
471 | <tr> |
---|
472 | <td class="memname">itpp::MOG_generic::MOG_generic </td> |
---|
473 | <td>(</td> |
---|
474 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
475 | <td class="paramname"> <em>means_in</em>, </td> |
---|
476 | </tr> |
---|
477 | <tr> |
---|
478 | <td class="paramkey"></td> |
---|
479 | <td></td> |
---|
480 | <td class="paramtype">bool </td> |
---|
481 | <td class="paramname"> <em>full_in</em> = <code>false</code></td><td> </td> |
---|
482 | </tr> |
---|
483 | <tr> |
---|
484 | <td></td> |
---|
485 | <td>)</td> |
---|
486 | <td></td><td></td><td><code> [inline]</code></td> |
---|
487 | </tr> |
---|
488 | </table> |
---|
489 | </div> |
---|
490 | <div class="memdoc"> |
---|
491 | |
---|
492 | <p> |
---|
493 | Construct a model using user supplied mean vectors. |
---|
494 | <p> |
---|
495 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
496 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
497 | <tr><td valign="top"></td><td valign="top"><em>means_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of mean vectors </td></tr> |
---|
498 | <tr><td valign="top"></td><td valign="top"><em>full_in</em> </td><td>If true, use full covariance matrices; if false, use diagonal covariance matrices. Default = false. </td></tr> |
---|
499 | </table> |
---|
500 | </dl> |
---|
501 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of mean vectors specifies the number of Gaussians. The covariance matrices are set to the identity matrix. The weights for all Gaussians are the same, equal to 1/K, where K is the number of Gaussians </dd></dl> |
---|
502 | |
---|
503 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>.</p> |
---|
504 | |
---|
505 | </div> |
---|
506 | </div><p> |
---|
507 | <a class="anchor" name="34e712cff720d4521628d3c01bbf1bf7"></a><!-- doxytag: member="itpp::MOG_generic::MOG_generic" ref="34e712cff720d4521628d3c01bbf1bf7" args="(Array< vec > &means_in, Array< vec > &diag_covs_in, vec &weights_in)" --> |
---|
508 | <div class="memitem"> |
---|
509 | <div class="memproto"> |
---|
510 | <table class="memname"> |
---|
511 | <tr> |
---|
512 | <td class="memname">itpp::MOG_generic::MOG_generic </td> |
---|
513 | <td>(</td> |
---|
514 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
515 | <td class="paramname"> <em>means_in</em>, </td> |
---|
516 | </tr> |
---|
517 | <tr> |
---|
518 | <td class="paramkey"></td> |
---|
519 | <td></td> |
---|
520 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
521 | <td class="paramname"> <em>diag_covs_in</em>, </td> |
---|
522 | </tr> |
---|
523 | <tr> |
---|
524 | <td class="paramkey"></td> |
---|
525 | <td></td> |
---|
526 | <td class="paramtype">vec & </td> |
---|
527 | <td class="paramname"> <em>weights_in</em></td><td> </td> |
---|
528 | </tr> |
---|
529 | <tr> |
---|
530 | <td></td> |
---|
531 | <td>)</td> |
---|
532 | <td></td><td></td><td><code> [inline]</code></td> |
---|
533 | </tr> |
---|
534 | </table> |
---|
535 | </div> |
---|
536 | <div class="memdoc"> |
---|
537 | |
---|
538 | <p> |
---|
539 | Construct a model using user supplied parameters (diagonal covariance version). |
---|
540 | <p> |
---|
541 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
542 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
543 | <tr><td valign="top"></td><td valign="top"><em>means_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of mean vectors </td></tr> |
---|
544 | <tr><td valign="top"></td><td valign="top"><em>diag_covs_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of vectors representing diagonal covariances </td></tr> |
---|
545 | <tr><td valign="top"></td><td valign="top"><em>weights_in</em> </td><td>vector of weights </td></tr> |
---|
546 | </table> |
---|
547 | </dl> |
---|
548 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of mean vectors, covariance vectors and weights must be the same </dd></dl> |
---|
549 | |
---|
550 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>.</p> |
---|
551 | |
---|
552 | </div> |
---|
553 | </div><p> |
---|
554 | <a class="anchor" name="654c32682d638a1cd93300f359468f70"></a><!-- doxytag: member="itpp::MOG_generic::MOG_generic" ref="654c32682d638a1cd93300f359468f70" args="(Array< vec > &means_in, Array< mat > &full_covs_in, vec &weights_in)" --> |
---|
555 | <div class="memitem"> |
---|
556 | <div class="memproto"> |
---|
557 | <table class="memname"> |
---|
558 | <tr> |
---|
559 | <td class="memname">itpp::MOG_generic::MOG_generic </td> |
---|
560 | <td>(</td> |
---|
561 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
562 | <td class="paramname"> <em>means_in</em>, </td> |
---|
563 | </tr> |
---|
564 | <tr> |
---|
565 | <td class="paramkey"></td> |
---|
566 | <td></td> |
---|
567 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< mat > & </td> |
---|
568 | <td class="paramname"> <em>full_covs_in</em>, </td> |
---|
569 | </tr> |
---|
570 | <tr> |
---|
571 | <td class="paramkey"></td> |
---|
572 | <td></td> |
---|
573 | <td class="paramtype">vec & </td> |
---|
574 | <td class="paramname"> <em>weights_in</em></td><td> </td> |
---|
575 | </tr> |
---|
576 | <tr> |
---|
577 | <td></td> |
---|
578 | <td>)</td> |
---|
579 | <td></td><td></td><td><code> [inline]</code></td> |
---|
580 | </tr> |
---|
581 | </table> |
---|
582 | </div> |
---|
583 | <div class="memdoc"> |
---|
584 | |
---|
585 | <p> |
---|
586 | Construct a model using user supplied parameters (full covariance version). |
---|
587 | <p> |
---|
588 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
589 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
590 | <tr><td valign="top"></td><td valign="top"><em>means_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of mean vectors </td></tr> |
---|
591 | <tr><td valign="top"></td><td valign="top"><em>full_covs_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of full covariance matrices </td></tr> |
---|
592 | <tr><td valign="top"></td><td valign="top"><em>weights_in</em> </td><td>vector of weights </td></tr> |
---|
593 | </table> |
---|
594 | </dl> |
---|
595 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of mean vectors, covariance matrices and weights must be the same </dd></dl> |
---|
596 | |
---|
597 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>.</p> |
---|
598 | |
---|
599 | </div> |
---|
600 | </div><p> |
---|
601 | <hr><h2>Member Function Documentation</h2> |
---|
602 | <a class="anchor" name="2954f4c30d0f58197d18a886bd17bcee"></a><!-- doxytag: member="itpp::MOG_generic::cleanup" ref="2954f4c30d0f58197d18a886bd17bcee" args="()" --> |
---|
603 | <div class="memitem"> |
---|
604 | <div class="memproto"> |
---|
605 | <table class="memname"> |
---|
606 | <tr> |
---|
607 | <td class="memname">void itpp::MOG_generic::cleanup </td> |
---|
608 | <td>(</td> |
---|
609 | <td class="paramname"> </td> |
---|
610 | <td> ) </td> |
---|
611 | <td><code> [virtual]</code></td> |
---|
612 | </tr> |
---|
613 | </table> |
---|
614 | </div> |
---|
615 | <div class="memdoc"> |
---|
616 | |
---|
617 | <p> |
---|
618 | Release memory used by the model. The model will be empty. |
---|
619 | <p> |
---|
620 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The likelihood functions are not useable until the model's parameters are re-initialised </dd></dl> |
---|
621 | |
---|
622 | <p>Reimplemented in <a class="el" href="classitpp_1_1MOG__diag.html#d22e7816dfb21d6e557d9ab3285f6a82">itpp::MOG_diag</a>.</p> |
---|
623 | |
---|
624 | <p>References <a class="el" href="mog__generic_8h-source.html#l00294">D</a>, <a class="el" href="mog__generic_8h-source.html#l00300">diag_covs</a>, <a class="el" href="mog__generic_8h-source.html#l00325">diag_covs_inv_etc</a>, <a class="el" href="mog__generic_8h-source.html#l00279">do_checks</a>, <a class="el" href="mog__generic_8h-source.html#l00303">full_covs</a>, <a class="el" href="mog__generic_8h-source.html#l00322">full_covs_inv</a>, <a class="el" href="mog__generic_8h-source.html#l00291">K</a>, <a class="el" href="mog__generic_8h-source.html#l00316">log_det_etc</a>, <a class="el" href="mog__generic_8h-source.html#l00319">log_weights</a>, <a class="el" href="mog__generic_8h-source.html#l00297">means</a>, <a class="el" href="array_8h-source.html#l00257">itpp::Array< T >::set_size()</a>, <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>, and <a class="el" href="mog__generic_8h-source.html#l00306">weights</a>.</p> |
---|
625 | |
---|
626 | <p>Referenced by <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>, and <a class="el" href="mog__generic_8h-source.html#l00106">~MOG_generic()</a>.</p> |
---|
627 | |
---|
628 | </div> |
---|
629 | </div><p> |
---|
630 | <a class="anchor" name="3bf2b05e3069a3d0082e372dc455bd9d"></a><!-- doxytag: member="itpp::MOG_generic::convert_to_diag" ref="3bf2b05e3069a3d0082e372dc455bd9d" args="()" --> |
---|
631 | <div class="memitem"> |
---|
632 | <div class="memproto"> |
---|
633 | <table class="memname"> |
---|
634 | <tr> |
---|
635 | <td class="memname">void itpp::MOG_generic::convert_to_diag </td> |
---|
636 | <td>(</td> |
---|
637 | <td class="paramname"> </td> |
---|
638 | <td> ) </td> |
---|
639 | <td><code> [virtual]</code></td> |
---|
640 | </tr> |
---|
641 | </table> |
---|
642 | </div> |
---|
643 | <div class="memdoc"> |
---|
644 | |
---|
645 | <p> |
---|
646 | Convert the model to use diagonal covariances. |
---|
647 | <p> |
---|
648 | <dl class="note" compact><dt><b>Note:</b></dt><dd>If the model is already diagonal, nothing is done. If the model has full covariance matrices, this results in irreversible information loss (in effect the off-diagonal covariance elements are now zero) </dd></dl> |
---|
649 | |
---|
650 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00486">convert_to_diag_internal()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
651 | |
---|
652 | <p>Referenced by <a class="el" href="mog__diag_8cpp-source.html#l00277">itpp::MOG_diag::load()</a>, and <a class="el" href="mog__diag_8h-source.html#l00101">itpp::MOG_diag::MOG_diag()</a>.</p> |
---|
653 | |
---|
654 | </div> |
---|
655 | </div><p> |
---|
656 | <a class="anchor" name="6fefdf2622cdcc10993e815b1f2d7a96"></a><!-- doxytag: member="itpp::MOG_generic::convert_to_full" ref="6fefdf2622cdcc10993e815b1f2d7a96" args="()" --> |
---|
657 | <div class="memitem"> |
---|
658 | <div class="memproto"> |
---|
659 | <table class="memname"> |
---|
660 | <tr> |
---|
661 | <td class="memname">void itpp::MOG_generic::convert_to_full </td> |
---|
662 | <td>(</td> |
---|
663 | <td class="paramname"> </td> |
---|
664 | <td> ) </td> |
---|
665 | <td><code> [virtual]</code></td> |
---|
666 | </tr> |
---|
667 | </table> |
---|
668 | </div> |
---|
669 | <div class="memdoc"> |
---|
670 | |
---|
671 | <p> |
---|
672 | Convert the model to have full covariance matrices. |
---|
673 | <p> |
---|
674 | <dl class="note" compact><dt><b>Note:</b></dt><dd>If the model has full covariance matrices, nothing is done. If the model has diagonal covariances, the off-diagonal elements in the full covariance matrices are set to zero. </dd></dl> |
---|
675 | |
---|
676 | <p>Reimplemented in <a class="el" href="classitpp_1_1MOG__diag.html#8d9e508bc4d26eee3c198748ea78530a">itpp::MOG_diag</a>.</p> |
---|
677 | |
---|
678 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00506">convert_to_full_internal()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
679 | |
---|
680 | </div> |
---|
681 | </div><p> |
---|
682 | <a class="anchor" name="3fdd538826fedfe7fc9ee4f198ef1a89"></a><!-- doxytag: member="itpp::MOG_generic::init" ref="3fdd538826fedfe7fc9ee4f198ef1a89" args="(Array< vec > &means_in, Array< mat > &full_covs_in, vec &weights_in)" --> |
---|
683 | <div class="memitem"> |
---|
684 | <div class="memproto"> |
---|
685 | <table class="memname"> |
---|
686 | <tr> |
---|
687 | <td class="memname">void itpp::MOG_generic::init </td> |
---|
688 | <td>(</td> |
---|
689 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
690 | <td class="paramname"> <em>means_in</em>, </td> |
---|
691 | </tr> |
---|
692 | <tr> |
---|
693 | <td class="paramkey"></td> |
---|
694 | <td></td> |
---|
695 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< mat > & </td> |
---|
696 | <td class="paramname"> <em>full_covs_in</em>, </td> |
---|
697 | </tr> |
---|
698 | <tr> |
---|
699 | <td class="paramkey"></td> |
---|
700 | <td></td> |
---|
701 | <td class="paramtype">vec & </td> |
---|
702 | <td class="paramname"> <em>weights_in</em></td><td> </td> |
---|
703 | </tr> |
---|
704 | <tr> |
---|
705 | <td></td> |
---|
706 | <td>)</td> |
---|
707 | <td></td><td></td><td></td> |
---|
708 | </tr> |
---|
709 | </table> |
---|
710 | </div> |
---|
711 | <div class="memdoc"> |
---|
712 | |
---|
713 | <p> |
---|
714 | Initialise the model using user supplied parameters (full covariance version). |
---|
715 | <p> |
---|
716 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
717 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
718 | <tr><td valign="top"></td><td valign="top"><em>means_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of mean vectors </td></tr> |
---|
719 | <tr><td valign="top"></td><td valign="top"><em>full_covs_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of covariance matrices </td></tr> |
---|
720 | <tr><td valign="top"></td><td valign="top"><em>weights_in</em> </td><td>vector of weights </td></tr> |
---|
721 | </table> |
---|
722 | </dl> |
---|
723 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of mean vectors, covariance matrices and weights must be the same </dd></dl> |
---|
724 | |
---|
725 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00144">check_array_uniformity()</a>, <a class="el" href="mog__generic_8h-source.html#l00294">D</a>, <a class="el" href="mog__generic_8h-source.html#l00279">do_checks</a>, <a class="el" href="mog__generic_8h-source.html#l00285">full</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mog__generic_8h-source.html#l00291">K</a>, <a class="el" href="mog__generic_8h-source.html#l00288">paranoid</a>, <a class="el" href="mog__generic_8cpp-source.html#l00200">set_full_covs_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00164">set_means_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00225">set_weights_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00321">setup_misc()</a>, <a class="el" href="array_8h-source.html#l00155">itpp::Array< T >::size()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
726 | |
---|
727 | </div> |
---|
728 | </div><p> |
---|
729 | <a class="anchor" name="7e016be79a1e1a2f3e25b1b27713cf91"></a><!-- doxytag: member="itpp::MOG_generic::init" ref="7e016be79a1e1a2f3e25b1b27713cf91" args="(Array< vec > &means_in, Array< vec > &diag_covs_in, vec &weights_in)" --> |
---|
730 | <div class="memitem"> |
---|
731 | <div class="memproto"> |
---|
732 | <table class="memname"> |
---|
733 | <tr> |
---|
734 | <td class="memname">void itpp::MOG_generic::init </td> |
---|
735 | <td>(</td> |
---|
736 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
737 | <td class="paramname"> <em>means_in</em>, </td> |
---|
738 | </tr> |
---|
739 | <tr> |
---|
740 | <td class="paramkey"></td> |
---|
741 | <td></td> |
---|
742 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
743 | <td class="paramname"> <em>diag_covs_in</em>, </td> |
---|
744 | </tr> |
---|
745 | <tr> |
---|
746 | <td class="paramkey"></td> |
---|
747 | <td></td> |
---|
748 | <td class="paramtype">vec & </td> |
---|
749 | <td class="paramname"> <em>weights_in</em></td><td> </td> |
---|
750 | </tr> |
---|
751 | <tr> |
---|
752 | <td></td> |
---|
753 | <td>)</td> |
---|
754 | <td></td><td></td><td></td> |
---|
755 | </tr> |
---|
756 | </table> |
---|
757 | </div> |
---|
758 | <div class="memdoc"> |
---|
759 | |
---|
760 | <p> |
---|
761 | Initialise the model using user supplied parameters (diagonal covariance version). |
---|
762 | <p> |
---|
763 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
764 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
765 | <tr><td valign="top"></td><td valign="top"><em>means_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of mean vectors </td></tr> |
---|
766 | <tr><td valign="top"></td><td valign="top"><em>diag_covs_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of vectors representing diagonal covariances </td></tr> |
---|
767 | <tr><td valign="top"></td><td valign="top"><em>weights_in</em> </td><td>vector of weights </td></tr> |
---|
768 | </table> |
---|
769 | </dl> |
---|
770 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of mean vectors, covariance vectors and weights must be the same </dd></dl> |
---|
771 | |
---|
772 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00144">check_array_uniformity()</a>, <a class="el" href="mog__generic_8h-source.html#l00294">D</a>, <a class="el" href="mog__generic_8h-source.html#l00279">do_checks</a>, <a class="el" href="mog__generic_8h-source.html#l00285">full</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mog__generic_8h-source.html#l00291">K</a>, <a class="el" href="mog__generic_8h-source.html#l00288">paranoid</a>, <a class="el" href="mog__generic_8cpp-source.html#l00180">set_diag_covs_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00164">set_means_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00225">set_weights_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00321">setup_misc()</a>, <a class="el" href="array_8h-source.html#l00155">itpp::Array< T >::size()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
773 | |
---|
774 | </div> |
---|
775 | </div><p> |
---|
776 | <a class="anchor" name="1373b38028afae89ac7566adbb2a2ab5"></a><!-- doxytag: member="itpp::MOG_generic::init" ref="1373b38028afae89ac7566adbb2a2ab5" args="(Array< vec > &means_in, bool full_in=false)" --> |
---|
777 | <div class="memitem"> |
---|
778 | <div class="memproto"> |
---|
779 | <table class="memname"> |
---|
780 | <tr> |
---|
781 | <td class="memname">void itpp::MOG_generic::init </td> |
---|
782 | <td>(</td> |
---|
783 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
784 | <td class="paramname"> <em>means_in</em>, </td> |
---|
785 | </tr> |
---|
786 | <tr> |
---|
787 | <td class="paramkey"></td> |
---|
788 | <td></td> |
---|
789 | <td class="paramtype">bool </td> |
---|
790 | <td class="paramname"> <em>full_in</em> = <code>false</code></td><td> </td> |
---|
791 | </tr> |
---|
792 | <tr> |
---|
793 | <td></td> |
---|
794 | <td>)</td> |
---|
795 | <td></td><td></td><td></td> |
---|
796 | </tr> |
---|
797 | </table> |
---|
798 | </div> |
---|
799 | <div class="memdoc"> |
---|
800 | |
---|
801 | <p> |
---|
802 | Initialise the model using user supplied mean vectors. |
---|
803 | <p> |
---|
804 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
805 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
806 | <tr><td valign="top"></td><td valign="top"><em>means_in</em> </td><td><a class="el" href="classitpp_1_1Array.html" title="General array class.">Array</a> of mean vectors </td></tr> |
---|
807 | <tr><td valign="top"></td><td valign="top"><em>full_in</em> </td><td>If true, use full covariance matrices; if false, use diagonal covariance matrices. Default = false. </td></tr> |
---|
808 | </table> |
---|
809 | </dl> |
---|
810 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of mean vectors specifies the number of Gaussians. The covariance matrices are set to the identity matrix. The weights for all Gaussians are the same, equal to 1/K, where K is the number of Gaussians </dd></dl> |
---|
811 | |
---|
812 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00144">check_array_uniformity()</a>, <a class="el" href="mog__generic_8h-source.html#l00294">D</a>, <a class="el" href="mog__generic_8h-source.html#l00279">do_checks</a>, <a class="el" href="mog__generic_8h-source.html#l00285">full</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mog__generic_8h-source.html#l00291">K</a>, <a class="el" href="mog__generic_8h-source.html#l00288">paranoid</a>, <a class="el" href="mog__generic_8cpp-source.html#l00241">set_diag_covs_unity_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00253">set_full_covs_unity_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00351">set_means()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00269">set_weights_uniform_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00321">setup_misc()</a>, <a class="el" href="array_8h-source.html#l00155">itpp::Array< T >::size()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
813 | |
---|
814 | </div> |
---|
815 | </div><p> |
---|
816 | <a class="anchor" name="3b73c4ad6feeb3588b7e379fca6eae3c"></a><!-- doxytag: member="itpp::MOG_generic::init" ref="3b73c4ad6feeb3588b7e379fca6eae3c" args="(const int &K_in, const int &D_in, bool full_in=false)" --> |
---|
817 | <div class="memitem"> |
---|
818 | <div class="memproto"> |
---|
819 | <table class="memname"> |
---|
820 | <tr> |
---|
821 | <td class="memname">void itpp::MOG_generic::init </td> |
---|
822 | <td>(</td> |
---|
823 | <td class="paramtype">const int & </td> |
---|
824 | <td class="paramname"> <em>K_in</em>, </td> |
---|
825 | </tr> |
---|
826 | <tr> |
---|
827 | <td class="paramkey"></td> |
---|
828 | <td></td> |
---|
829 | <td class="paramtype">const int & </td> |
---|
830 | <td class="paramname"> <em>D_in</em>, </td> |
---|
831 | </tr> |
---|
832 | <tr> |
---|
833 | <td class="paramkey"></td> |
---|
834 | <td></td> |
---|
835 | <td class="paramtype">bool </td> |
---|
836 | <td class="paramname"> <em>full_in</em> = <code>false</code></td><td> </td> |
---|
837 | </tr> |
---|
838 | <tr> |
---|
839 | <td></td> |
---|
840 | <td>)</td> |
---|
841 | <td></td><td></td><td></td> |
---|
842 | </tr> |
---|
843 | </table> |
---|
844 | </div> |
---|
845 | <div class="memdoc"> |
---|
846 | |
---|
847 | <p> |
---|
848 | initialise the model so that all Gaussians have zero mean and unit variance for all dimensions |
---|
849 | <p> |
---|
850 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
851 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
852 | <tr><td valign="top"></td><td valign="top"><em>K_in</em> </td><td>Number of Gaussians </td></tr> |
---|
853 | <tr><td valign="top"></td><td valign="top"><em>D_in</em> </td><td>Dimensionality </td></tr> |
---|
854 | <tr><td valign="top"></td><td valign="top"><em>full_in</em> </td><td>If true, use full covariance matrices; if false, use diagonal covariance matrices. Default = false. </td></tr> |
---|
855 | </table> |
---|
856 | </dl> |
---|
857 | |
---|
858 | <p>References <a class="el" href="mog__generic_8h-source.html#l00294">D</a>, <a class="el" href="mog__generic_8h-source.html#l00279">do_checks</a>, <a class="el" href="mog__generic_8h-source.html#l00285">full</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mog__generic_8h-source.html#l00291">K</a>, <a class="el" href="mog__generic_8h-source.html#l00288">paranoid</a>, <a class="el" href="mog__generic_8cpp-source.html#l00241">set_diag_covs_unity_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00253">set_full_covs_unity_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00156">set_means_zero_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00269">set_weights_uniform_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00321">setup_misc()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
859 | |
---|
860 | </div> |
---|
861 | </div><p> |
---|
862 | <a class="anchor" name="331210d0a4ebfbab47d1ba64c8033879"></a><!-- doxytag: member="itpp::MOG_generic::init" ref="331210d0a4ebfbab47d1ba64c8033879" args="()" --> |
---|
863 | <div class="memitem"> |
---|
864 | <div class="memproto"> |
---|
865 | <table class="memname"> |
---|
866 | <tr> |
---|
867 | <td class="memname">void itpp::MOG_generic::init </td> |
---|
868 | <td>(</td> |
---|
869 | <td class="paramname"> </td> |
---|
870 | <td> ) </td> |
---|
871 | <td></td> |
---|
872 | </tr> |
---|
873 | </table> |
---|
874 | </div> |
---|
875 | <div class="memdoc"> |
---|
876 | |
---|
877 | <p> |
---|
878 | Initialise the model to be empty. |
---|
879 | <p> |
---|
880 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The likelihood functions are not useable until the model's parameters are set </dd></dl> |
---|
881 | |
---|
882 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00329">cleanup()</a>.</p> |
---|
883 | |
---|
884 | <p>Referenced by <a class="el" href="mog__generic_8cpp-source.html#l00453">join()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00407">load()</a>, <a class="el" href="mog__diag__em_8cpp-source.html#l00228">itpp::MOG_diag_EM_sup::ml()</a>, <a class="el" href="mog__diag_8h-source.html#l00064">itpp::MOG_diag::MOG_diag()</a>, <a class="el" href="mog__generic_8h-source.html#l00066">MOG_generic()</a>, and <a class="el" href="mog__diag__kmeans_8cpp-source.html#l00264">itpp::MOG_diag_kmeans_sup::run()</a>.</p> |
---|
885 | |
---|
886 | </div> |
---|
887 | </div><p> |
---|
888 | <a class="anchor" name="bccd9353a67e9bda9f1db8872487ec30"></a><!-- doxytag: member="itpp::MOG_generic::join" ref="bccd9353a67e9bda9f1db8872487ec30" args="(const MOG_generic &B_in)" --> |
---|
889 | <div class="memitem"> |
---|
890 | <div class="memproto"> |
---|
891 | <table class="memname"> |
---|
892 | <tr> |
---|
893 | <td class="memname">void itpp::MOG_generic::join </td> |
---|
894 | <td>(</td> |
---|
895 | <td class="paramtype">const <a class="el" href="classitpp_1_1MOG__generic.html">MOG_generic</a> & </td> |
---|
896 | <td class="paramname"> <em>B_in</em> </td> |
---|
897 | <td> ) </td> |
---|
898 | <td><code> [virtual]</code></td> |
---|
899 | </tr> |
---|
900 | </table> |
---|
901 | </div> |
---|
902 | <div class="memdoc"> |
---|
903 | |
---|
904 | <p> |
---|
905 | Mathematically join the model with a user supplied model. |
---|
906 | <p> |
---|
907 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
908 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
909 | <tr><td valign="top"></td><td valign="top"><em>B_in</em> </td><td>user supplied model </td></tr> |
---|
910 | </table> |
---|
911 | </dl> |
---|
912 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The Arrays of mean vectors and covariance vectors/matrices from the two models are simply concatenated, while the weights of the resultant model are a function of the original weights and numbers of Gaussians from both models. Specifically, <img class="formulaInl" alt="$ w_{new} = [ \alpha \cdot w_{A} ~~~ \beta \cdot w_{B} ]^T $" src="form_388.png">, where <img class="formulaInl" alt="$ w_{new} $" src="form_389.png"> is the new weight vector, <img class="formulaInl" alt="$ w_{A} $" src="form_390.png"> and <img class="formulaInl" alt="$ w_{B} $" src="form_391.png"> are the weight vectors from model A and B, while <img class="formulaInl" alt="$ \alpha = K_A / (K_A + KB_in) $" src="form_392.png"> and <img class="formulaInl" alt="$ \beta = 1-\alpha $" src="form_393.png">. In turn, <img class="formulaInl" alt="$ K_A $" src="form_394.png"> and <img class="formulaInl" alt="$ KB_in $" src="form_395.png"> are the numbers of Gaussians in model A and B, respectively.</dd></dl> |
---|
913 | See <a href="http://dx.doi.org/10.1016/j.patcog.2005.07.001">On transforming statistical models...</a> for more information. |
---|
914 | <p>References <a class="el" href="mog__generic_8h-source.html#l00294">D</a>, <a class="el" href="mog__generic_8h-source.html#l00300">diag_covs</a>, <a class="el" href="mog__generic_8h-source.html#l00285">full</a>, <a class="el" href="mog__generic_8h-source.html#l00303">full_covs</a>, <a class="el" href="mog__generic_8h-source.html#l00162">get_D()</a>, <a class="el" href="mog__generic_8h-source.html#l00171">get_diag_covs()</a>, <a class="el" href="mog__generic_8h-source.html#l00174">get_full_covs()</a>, <a class="el" href="mog__generic_8h-source.html#l00159">get_K()</a>, <a class="el" href="mog__generic_8h-source.html#l00168">get_means()</a>, <a class="el" href="mog__generic_8h-source.html#l00165">get_weights()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>, <a class="el" href="mog__generic_8h-source.html#l00156">is_full()</a>, <a class="el" href="mog__generic_8h-source.html#l00153">is_valid()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mog__generic_8h-source.html#l00291">K</a>, <a class="el" href="mog__generic_8h-source.html#l00297">means</a>, <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>, and <a class="el" href="mog__generic_8h-source.html#l00306">weights</a>.</p> |
---|
915 | |
---|
916 | </div> |
---|
917 | </div><p> |
---|
918 | <a class="anchor" name="e6601e39373de56c23a52ca7eaabfbed"></a><!-- doxytag: member="itpp::MOG_generic::load" ref="e6601e39373de56c23a52ca7eaabfbed" args="(const std::string &name_in)" --> |
---|
919 | <div class="memitem"> |
---|
920 | <div class="memproto"> |
---|
921 | <table class="memname"> |
---|
922 | <tr> |
---|
923 | <td class="memname">void itpp::MOG_generic::load </td> |
---|
924 | <td>(</td> |
---|
925 | <td class="paramtype">const std::string & </td> |
---|
926 | <td class="paramname"> <em>name_in</em> </td> |
---|
927 | <td> ) </td> |
---|
928 | <td><code> [virtual]</code></td> |
---|
929 | </tr> |
---|
930 | </table> |
---|
931 | </div> |
---|
932 | <div class="memdoc"> |
---|
933 | |
---|
934 | <p> |
---|
935 | Initialise the model by loading the parameters from a model file. |
---|
936 | <p> |
---|
937 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
938 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
939 | <tr><td valign="top"></td><td valign="top"><em>name_in</em> </td><td>The model's filename </td></tr> |
---|
940 | </table> |
---|
941 | </dl> |
---|
942 | |
---|
943 | <p>Reimplemented in <a class="el" href="classitpp_1_1MOG__diag.html#655176beb0593c93853c25cbe889ab4d">itpp::MOG_diag</a>.</p> |
---|
944 | |
---|
945 | <p>References <a class="el" href="itfile_8cpp-source.html#l00532">itpp::it_file::close()</a>, <a class="el" href="binfile_8cpp-source.html#l00071">itpp::exist()</a>, <a class="el" href="itfile_8cpp-source.html#l00646">itpp::it_file::exists()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00043">init()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
946 | |
---|
947 | <p>Referenced by <a class="el" href="mog__generic_8h-source.html#l00071">MOG_generic()</a>.</p> |
---|
948 | |
---|
949 | </div> |
---|
950 | </div><p> |
---|
951 | <a class="anchor" name="c9446a81ab2227128e8a4180a082c809"></a><!-- doxytag: member="itpp::MOG_generic::save" ref="c9446a81ab2227128e8a4180a082c809" args="(const std::string &name_in) const " --> |
---|
952 | <div class="memitem"> |
---|
953 | <div class="memproto"> |
---|
954 | <table class="memname"> |
---|
955 | <tr> |
---|
956 | <td class="memname">void itpp::MOG_generic::save </td> |
---|
957 | <td>(</td> |
---|
958 | <td class="paramtype">const std::string & </td> |
---|
959 | <td class="paramname"> <em>name_in</em> </td> |
---|
960 | <td> ) </td> |
---|
961 | <td> const<code> [virtual]</code></td> |
---|
962 | </tr> |
---|
963 | </table> |
---|
964 | </div> |
---|
965 | <div class="memdoc"> |
---|
966 | |
---|
967 | <p> |
---|
968 | Save the model's parameters to a model file. |
---|
969 | <p> |
---|
970 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
971 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
972 | <tr><td valign="top"></td><td valign="top"><em>name_in</em> </td><td>The model's filename </td></tr> |
---|
973 | </table> |
---|
974 | </dl> |
---|
975 | |
---|
976 | <p>References <a class="el" href="itfile_8cpp-source.html#l00532">itpp::it_file::close()</a>, <a class="el" href="mog__generic_8h-source.html#l00300">diag_covs</a>, <a class="el" href="mog__generic_8h-source.html#l00285">full</a>, <a class="el" href="mog__generic_8h-source.html#l00303">full_covs</a>, <a class="el" href="mog__generic_8h-source.html#l00297">means</a>, <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>, and <a class="el" href="mog__generic_8h-source.html#l00306">weights</a>.</p> |
---|
977 | |
---|
978 | </div> |
---|
979 | </div><p> |
---|
980 | <a class="anchor" name="1fdbb97943bbb5bd634b062750f17f67"></a><!-- doxytag: member="itpp::MOG_generic::set_checks" ref="1fdbb97943bbb5bd634b062750f17f67" args="(bool do_checks_in)" --> |
---|
981 | <div class="memitem"> |
---|
982 | <div class="memproto"> |
---|
983 | <table class="memname"> |
---|
984 | <tr> |
---|
985 | <td class="memname">void itpp::MOG_generic::set_checks </td> |
---|
986 | <td>(</td> |
---|
987 | <td class="paramtype">bool </td> |
---|
988 | <td class="paramname"> <em>do_checks_in</em> </td> |
---|
989 | <td> ) </td> |
---|
990 | <td><code> [inline]</code></td> |
---|
991 | </tr> |
---|
992 | </table> |
---|
993 | </div> |
---|
994 | <div class="memdoc"> |
---|
995 | |
---|
996 | <p> |
---|
997 | Enable/disable internal checks for likelihood functions. |
---|
998 | <p> |
---|
999 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
1000 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
1001 | <tr><td valign="top"></td><td valign="top"><em>do_checks_in</em> </td><td>If true, checks are enabled; if false, checks are disabled </td></tr> |
---|
1002 | </table> |
---|
1003 | </dl> |
---|
1004 | <dl class="note" compact><dt><b>Note:</b></dt><dd>Disabling checks will provide a speedup in the likelihood functions. Disable them only when you're happy that everything is working correctly. </dd></dl> |
---|
1005 | |
---|
1006 | <p>References <a class="el" href="mog__generic_8h-source.html#l00279">do_checks</a>.</p> |
---|
1007 | |
---|
1008 | </div> |
---|
1009 | </div><p> |
---|
1010 | <a class="anchor" name="bb90adbcf6e3963dc63ce7fdc409faff"></a><!-- doxytag: member="itpp::MOG_generic::set_diag_covs" ref="bb90adbcf6e3963dc63ce7fdc409faff" args="(Array< vec > &diag_covs_in)" --> |
---|
1011 | <div class="memitem"> |
---|
1012 | <div class="memproto"> |
---|
1013 | <table class="memname"> |
---|
1014 | <tr> |
---|
1015 | <td class="memname">void itpp::MOG_generic::set_diag_covs </td> |
---|
1016 | <td>(</td> |
---|
1017 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
1018 | <td class="paramname"> <em>diag_covs_in</em> </td> |
---|
1019 | <td> ) </td> |
---|
1020 | <td></td> |
---|
1021 | </tr> |
---|
1022 | </table> |
---|
1023 | </div> |
---|
1024 | <div class="memdoc"> |
---|
1025 | |
---|
1026 | <p> |
---|
1027 | Set the diagonal covariance vectors of the model. |
---|
1028 | <p> |
---|
1029 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of diagonal covariance vectors must match the number of Gaussians in the model </dd></dl> |
---|
1030 | |
---|
1031 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00180">set_diag_covs_internal()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
1032 | |
---|
1033 | </div> |
---|
1034 | </div><p> |
---|
1035 | <a class="anchor" name="7582399d9bdbfa90eb1fe2381af6b5fb"></a><!-- doxytag: member="itpp::MOG_generic::set_full_covs" ref="7582399d9bdbfa90eb1fe2381af6b5fb" args="(Array< mat > &full_covs_in)" --> |
---|
1036 | <div class="memitem"> |
---|
1037 | <div class="memproto"> |
---|
1038 | <table class="memname"> |
---|
1039 | <tr> |
---|
1040 | <td class="memname">void itpp::MOG_generic::set_full_covs </td> |
---|
1041 | <td>(</td> |
---|
1042 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< mat > & </td> |
---|
1043 | <td class="paramname"> <em>full_covs_in</em> </td> |
---|
1044 | <td> ) </td> |
---|
1045 | <td></td> |
---|
1046 | </tr> |
---|
1047 | </table> |
---|
1048 | </div> |
---|
1049 | <div class="memdoc"> |
---|
1050 | |
---|
1051 | <p> |
---|
1052 | Set the full covariance matrices of the model. |
---|
1053 | <p> |
---|
1054 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of covariance matrices must match the number of Gaussians in the model </dd></dl> |
---|
1055 | |
---|
1056 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00200">set_full_covs_internal()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
1057 | |
---|
1058 | </div> |
---|
1059 | </div><p> |
---|
1060 | <a class="anchor" name="7cecfa0184f63f928381103dcff050ff"></a><!-- doxytag: member="itpp::MOG_generic::set_means" ref="7cecfa0184f63f928381103dcff050ff" args="(Array< vec > &means_in)" --> |
---|
1061 | <div class="memitem"> |
---|
1062 | <div class="memproto"> |
---|
1063 | <table class="memname"> |
---|
1064 | <tr> |
---|
1065 | <td class="memname">void itpp::MOG_generic::set_means </td> |
---|
1066 | <td>(</td> |
---|
1067 | <td class="paramtype"><a class="el" href="classitpp_1_1Array.html">Array</a>< vec > & </td> |
---|
1068 | <td class="paramname"> <em>means_in</em> </td> |
---|
1069 | <td> ) </td> |
---|
1070 | <td></td> |
---|
1071 | </tr> |
---|
1072 | </table> |
---|
1073 | </div> |
---|
1074 | <div class="memdoc"> |
---|
1075 | |
---|
1076 | <p> |
---|
1077 | Set the means of the model. |
---|
1078 | <p> |
---|
1079 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of means must match the number of Gaussians in the model </dd></dl> |
---|
1080 | |
---|
1081 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00164">set_means_internal()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
1082 | |
---|
1083 | <p>Referenced by <a class="el" href="mog__generic_8cpp-source.html#l00069">init()</a>.</p> |
---|
1084 | |
---|
1085 | </div> |
---|
1086 | </div><p> |
---|
1087 | <a class="anchor" name="edd93bdbe6f111a6f49e3b7176fa7c08"></a><!-- doxytag: member="itpp::MOG_generic::set_paranoid" ref="edd93bdbe6f111a6f49e3b7176fa7c08" args="(bool paranoid_in)" --> |
---|
1088 | <div class="memitem"> |
---|
1089 | <div class="memproto"> |
---|
1090 | <table class="memname"> |
---|
1091 | <tr> |
---|
1092 | <td class="memname">void itpp::MOG_generic::set_paranoid </td> |
---|
1093 | <td>(</td> |
---|
1094 | <td class="paramtype">bool </td> |
---|
1095 | <td class="paramname"> <em>paranoid_in</em> </td> |
---|
1096 | <td> ) </td> |
---|
1097 | <td><code> [inline]</code></td> |
---|
1098 | </tr> |
---|
1099 | </table> |
---|
1100 | </div> |
---|
1101 | <div class="memdoc"> |
---|
1102 | |
---|
1103 | <p> |
---|
1104 | Enable/disable paranoia about numerical stability. |
---|
1105 | <p> |
---|
1106 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
1107 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
1108 | <tr><td valign="top"></td><td valign="top"><em>paranoid_in</em> </td><td>If true, calculate likelihoods using a safer, but slower method. </td></tr> |
---|
1109 | </table> |
---|
1110 | </dl> |
---|
1111 | |
---|
1112 | <p>References <a class="el" href="mog__generic_8h-source.html#l00288">paranoid</a>.</p> |
---|
1113 | |
---|
1114 | </div> |
---|
1115 | </div><p> |
---|
1116 | <a class="anchor" name="f208b278df2f6334099b246c156094e0"></a><!-- doxytag: member="itpp::MOG_generic::set_weights" ref="f208b278df2f6334099b246c156094e0" args="(vec &weights_in)" --> |
---|
1117 | <div class="memitem"> |
---|
1118 | <div class="memproto"> |
---|
1119 | <table class="memname"> |
---|
1120 | <tr> |
---|
1121 | <td class="memname">void itpp::MOG_generic::set_weights </td> |
---|
1122 | <td>(</td> |
---|
1123 | <td class="paramtype">vec & </td> |
---|
1124 | <td class="paramname"> <em>weights_in</em> </td> |
---|
1125 | <td> ) </td> |
---|
1126 | <td></td> |
---|
1127 | </tr> |
---|
1128 | </table> |
---|
1129 | </div> |
---|
1130 | <div class="memdoc"> |
---|
1131 | |
---|
1132 | <p> |
---|
1133 | Set the weight vector of the model. |
---|
1134 | <p> |
---|
1135 | <dl class="note" compact><dt><b>Note:</b></dt><dd>The number of elements in the weight vector must match the number of Gaussians in the model </dd></dl> |
---|
1136 | |
---|
1137 | <p>References <a class="el" href="mog__generic_8cpp-source.html#l00225">set_weights_internal()</a>, and <a class="el" href="mog__generic_8h-source.html#l00282">valid</a>.</p> |
---|
1138 | |
---|
1139 | </div> |
---|
1140 | </div><p> |
---|
1141 | <hr><h2>Member Data Documentation</h2> |
---|
1142 | <a class="anchor" name="c950e3b9cb8f9b1d71b93131455de32b"></a><!-- doxytag: member="itpp::MOG_generic::log_det_etc" ref="c950e3b9cb8f9b1d71b93131455de32b" args="" --> |
---|
1143 | <div class="memitem"> |
---|
1144 | <div class="memproto"> |
---|
1145 | <table class="memname"> |
---|
1146 | <tr> |
---|
1147 | <td class="memname">vec <a class="el" href="classitpp_1_1MOG__generic.html#c950e3b9cb8f9b1d71b93131455de32b">itpp::MOG_generic::log_det_etc</a><code> [protected]</code> </td> |
---|
1148 | </tr> |
---|
1149 | </table> |
---|
1150 | </div> |
---|
1151 | <div class="memdoc"> |
---|
1152 | |
---|
1153 | <p> |
---|
1154 | Gaussian specific pre-calcualted constants. |
---|
1155 | <p> |
---|
1156 | <dl class="note" compact><dt><b>Note:</b></dt><dd>Vector of pre-calculated <img class="formulaInl" alt="$ -\frac{D}{2}\log(2\pi) -\frac{1}{2}\log(|\Sigma|) $" src="form_396.png"> for each Gaussian, where <img class="formulaInl" alt="$ D $" src="form_397.png"> is the dimensionality and <img class="formulaInl" alt="$ |\Sigma| $" src="form_398.png"> is the determinant for the Gaussian's covariance matrix <img class="formulaInl" alt="$ \Sigma $" src="form_399.png">. </dd></dl> |
---|
1157 | |
---|
1158 | <p>Referenced by <a class="el" href="mog__generic_8cpp-source.html#l00329">cleanup()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00526">log_lhood_single_gaus_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00279">setup_covs()</a>, and <a class="el" href="mog__diag_8cpp-source.html#l00239">itpp::MOG_diag::setup_covs()</a>.</p> |
---|
1159 | |
---|
1160 | </div> |
---|
1161 | </div><p> |
---|
1162 | <hr>The documentation for this class was generated from the following files:<ul> |
---|
1163 | <li><a class="el" href="mog__generic_8h-source.html">mog_generic.h</a><li><a class="el" href="mog__generic_8cpp.html">mog_generic.cpp</a></ul> |
---|
1164 | </div> |
---|
1165 | <hr size="1"><address style="text-align: right;"><small>Generated on Tue Jun 2 10:02:19 2009 for mixpp by |
---|
1166 | <a href="http://www.doxygen.org/index.html"> |
---|
1167 | <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address> |
---|
1168 | </body> |
---|
1169 | </html> |
---|