mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-05-11 11:07:27 +08:00
Documentation for eddda4e43e
This commit is contained in:
@@ -99,13 +99,15 @@ $(document).ready(function(){initNavTree('dc/d38/ordinary__least__squares__regre
|
||||
|
||||
<p>Linear regression example using <a href="https://en.wikipedia.org/wiki/Ordinary_least_squares">Ordinary least squares</a>
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <iomanip></code><br />
|
||||
<div class="textblock"><code>#include <cassert></code><br />
|
||||
<code>#include <cmath></code><br />
|
||||
<code>#include <iomanip></code><br />
|
||||
<code>#include <iostream></code><br />
|
||||
<code>#include <vector></code><br />
|
||||
</div><div class="textblock"><div class="dynheader">
|
||||
Include dependency graph for ordinary_least_squares_regressor.cpp:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/d4b/ordinary__least__squares__regressor_8cpp__incl.svg" width="256" height="127"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/d4b/ordinary__least__squares__regressor_8cpp__incl.svg" width="430" height="127"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div><table class="memberdecls">
|
||||
@@ -153,6 +155,8 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:a4bcaaf41c66da4d3a471dacef133def7"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
||||
<tr class="memitem:a4bcaaf41c66da4d3a471dacef133def7"><td class="memTemplItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< float > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T >> const &X, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< float > const &beta)</td></tr>
|
||||
<tr class="separator:a4bcaaf41c66da4d3a471dacef133def7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae1a3968e7947464bee7714f6d43b7002"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002">test</a> ()</td></tr>
|
||||
<tr class="separator:ae1a3968e7947464bee7714f6d43b7002"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
@@ -199,24 +203,24 @@ template<typename T > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>fitted regression model polynomial coefficients </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  {</div>
|
||||
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <span class="comment">// NxF</span></div>
|
||||
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> X2 = X;</div>
|
||||
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < X2.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); i++)</div>
|
||||
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <span class="comment">// add Y-intercept -> Nx(F+1)</span></div>
|
||||
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  X2[i].push_back(1);</div>
|
||||
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="comment">// (F+1)xN</span></div>
|
||||
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> Xt = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05">get_transpose</a>(X2);</div>
|
||||
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <span class="comment">// (F+1)x(F+1)</span></div>
|
||||
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> tmp = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483">get_inverse</a>(Xt * X2);</div>
|
||||
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <span class="comment">// (F+1)xN</span></div>
|
||||
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> out = tmp * Xt;</div>
|
||||
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="comment">// cout << endl</span></div>
|
||||
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <span class="comment">// << "Projection matrix: " << X2 * out << endl;</span></div>
|
||||
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  </div>
|
||||
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="comment">// Fx1,1 -> (F+1)^th element is the independent constant</span></div>
|
||||
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  <span class="keywordflow">return</span> out * Y;</div>
|
||||
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  {</div>
|
||||
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  <span class="comment">// NxF</span></div>
|
||||
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> X2 = X;</div>
|
||||
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < X2.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); i++)</div>
|
||||
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="comment">// add Y-intercept -> Nx(F+1)</span></div>
|
||||
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  X2[i].push_back(1);</div>
|
||||
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <span class="comment">// (F+1)xN</span></div>
|
||||
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> Xt = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05">get_transpose</a>(X2);</div>
|
||||
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <span class="comment">// (F+1)x(F+1)</span></div>
|
||||
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> tmp = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483">get_inverse</a>(Xt * X2);</div>
|
||||
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="comment">// (F+1)xN</span></div>
|
||||
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> out = tmp * Xt;</div>
|
||||
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <span class="comment">// cout << endl</span></div>
|
||||
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="comment">// << "Projection matrix: " << X2 * out << endl;</span></div>
|
||||
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  </div>
|
||||
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="comment">// Fx1,1 -> (F+1)^th element is the independent constant</span></div>
|
||||
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  <span class="keywordflow">return</span> out * Y;</div>
|
||||
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -244,70 +248,70 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Get matrix inverse using Row-trasnformations. Given matrix must be a square and non-singular. </p><dl class="section return"><dt>Returns</dt><dd>inverse matrix </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  {</div>
|
||||
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="comment">// Assuming A is square matrix</span></div>
|
||||
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  </div>
|
||||
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> inverse(N);</div>
|
||||
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) {</div>
|
||||
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="comment">// preallocatae a resultant identity matrix</span></div>
|
||||
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  inverse[row] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a>(N);</div>
|
||||
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < N; col++)</div>
|
||||
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  inverse[row][col] = (row == col) ? 1.f : 0.f;</div>
|
||||
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  }</div>
|
||||
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  </div>
|
||||
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordflow">if</span> (!<a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f">is_square</a>(A)) {</div>
|
||||
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"A must be a square matrix!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">return</span> inverse;</div>
|
||||
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  }</div>
|
||||
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  </div>
|
||||
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  <span class="comment">// preallocatae a temporary matrix identical to A</span></div>
|
||||
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> temp(N);</div>
|
||||
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) {</div>
|
||||
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> v(N);</div>
|
||||
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < N; col++)</div>
|
||||
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  v[col] = <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(A[row][col]);</div>
|
||||
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  temp[row] = v;</div>
|
||||
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  }</div>
|
||||
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  </div>
|
||||
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <span class="comment">// start transformations</span></div>
|
||||
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) {</div>
|
||||
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row2 = row; row2 < N && temp[row][row] == 0; row2++) {</div>
|
||||
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  <span class="comment">// this to ensure diagonal elements are not 0</span></div>
|
||||
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  temp[row] = temp[row] + temp[row2];</div>
|
||||
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  inverse[row] = inverse[row] + inverse[row2];</div>
|
||||
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  }</div>
|
||||
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  </div>
|
||||
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col2 = row; col2 < N && temp[row][row] == 0; col2++) {</div>
|
||||
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  <span class="comment">// this to further ensure diagonal elements are not 0</span></div>
|
||||
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row2 = 0; row2 < N; row2++) {</div>
|
||||
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  temp[row2][row] = temp[row2][row] + temp[row2][col2];</div>
|
||||
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  inverse[row2][row] = inverse[row2][row] + inverse[row2][col2];</div>
|
||||
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  }</div>
|
||||
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  }</div>
|
||||
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  </div>
|
||||
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">if</span> (temp[row][row] == 0) {</div>
|
||||
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  <span class="comment">// Probably a low-rank matrix and hence singular</span></div>
|
||||
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Low-rank matrix, no inverse!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  <span class="keywordflow">return</span> inverse;</div>
|
||||
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  }</div>
|
||||
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  </div>
|
||||
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="comment">// set diagonal to 1</span></div>
|
||||
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  <span class="keywordtype">float</span> divisor = <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(temp[row][row]);</div>
|
||||
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  temp[row] = temp[row] / divisor;</div>
|
||||
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  inverse[row] = inverse[row] / divisor;</div>
|
||||
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <span class="comment">// Row transformations</span></div>
|
||||
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row2 = 0; row2 < N; row2++) {</div>
|
||||
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="keywordflow">if</span> (row2 == row)</div>
|
||||
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  <span class="keywordflow">continue</span>;</div>
|
||||
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <span class="keywordtype">float</span> factor = temp[row2][row];</div>
|
||||
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  temp[row2] = temp[row2] - factor * temp[row];</div>
|
||||
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  inverse[row2] = inverse[row2] - factor * inverse[row];</div>
|
||||
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  }</div>
|
||||
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  }</div>
|
||||
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  </div>
|
||||
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">return</span> inverse;</div>
|
||||
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  {</div>
|
||||
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="comment">// Assuming A is square matrix</span></div>
|
||||
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  </div>
|
||||
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> inverse(N);</div>
|
||||
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) {</div>
|
||||
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="comment">// preallocatae a resultant identity matrix</span></div>
|
||||
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  inverse[row] = <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a>(N);</div>
|
||||
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < N; col++)</div>
|
||||
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  inverse[row][col] = (row == col) ? 1.f : 0.f;</div>
|
||||
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  }</div>
|
||||
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  </div>
|
||||
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">if</span> (!<a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f">is_square</a>(A)) {</div>
|
||||
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"A must be a square matrix!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  <span class="keywordflow">return</span> inverse;</div>
|
||||
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  }</div>
|
||||
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  </div>
|
||||
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <span class="comment">// preallocatae a temporary matrix identical to A</span></div>
|
||||
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> temp(N);</div>
|
||||
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) {</div>
|
||||
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> v(N);</div>
|
||||
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < N; col++)</div>
|
||||
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  v[col] = <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(A[row][col]);</div>
|
||||
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  temp[row] = v;</div>
|
||||
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  }</div>
|
||||
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  </div>
|
||||
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="comment">// start transformations</span></div>
|
||||
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) {</div>
|
||||
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row2 = row; row2 < N && temp[row][row] == 0; row2++) {</div>
|
||||
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <span class="comment">// this to ensure diagonal elements are not 0</span></div>
|
||||
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  temp[row] = temp[row] + temp[row2];</div>
|
||||
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  inverse[row] = inverse[row] + inverse[row2];</div>
|
||||
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  }</div>
|
||||
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  </div>
|
||||
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col2 = row; col2 < N && temp[row][row] == 0; col2++) {</div>
|
||||
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="comment">// this to further ensure diagonal elements are not 0</span></div>
|
||||
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row2 = 0; row2 < N; row2++) {</div>
|
||||
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  temp[row2][row] = temp[row2][row] + temp[row2][col2];</div>
|
||||
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  inverse[row2][row] = inverse[row2][row] + inverse[row2][col2];</div>
|
||||
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  }</div>
|
||||
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  }</div>
|
||||
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  </div>
|
||||
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordflow">if</span> (temp[row][row] == 0) {</div>
|
||||
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  <span class="comment">// Probably a low-rank matrix and hence singular</span></div>
|
||||
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Low-rank matrix, no inverse!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  <span class="keywordflow">return</span> inverse;</div>
|
||||
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  }</div>
|
||||
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  </div>
|
||||
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <span class="comment">// set diagonal to 1</span></div>
|
||||
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <span class="keywordtype">float</span> divisor = <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(temp[row][row]);</div>
|
||||
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  temp[row] = temp[row] / divisor;</div>
|
||||
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  inverse[row] = inverse[row] / divisor;</div>
|
||||
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="comment">// Row transformations</span></div>
|
||||
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row2 = 0; row2 < N; row2++) {</div>
|
||||
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <span class="keywordflow">if</span> (row2 == row)</div>
|
||||
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <span class="keywordflow">continue</span>;</div>
|
||||
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  <span class="keywordtype">float</span> factor = temp[row2][row];</div>
|
||||
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  temp[row2] = temp[row2] - factor * temp[row];</div>
|
||||
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  inverse[row2] = inverse[row2] - factor * inverse[row];</div>
|
||||
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  }</div>
|
||||
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  }</div>
|
||||
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  </div>
|
||||
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <span class="keywordflow">return</span> inverse;</div>
|
||||
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -335,17 +339,17 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>matrix transpose </p><dl class="section return"><dt>Returns</dt><dd>resultant matrix </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  {</div>
|
||||
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> result(A[0].size());</div>
|
||||
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  </div>
|
||||
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < A[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); row++) {</div>
|
||||
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> v(A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); col++) v[col] = A[col][row];</div>
|
||||
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  </div>
|
||||
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  result[row] = v;</div>
|
||||
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  }</div>
|
||||
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  {</div>
|
||||
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> result(A[0].size());</div>
|
||||
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  </div>
|
||||
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < A[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); row++) {</div>
|
||||
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> v(A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); col++) v[col] = A[col][row];</div>
|
||||
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  </div>
|
||||
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  result[row] = v;</div>
|
||||
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  }</div>
|
||||
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
@@ -375,14 +379,14 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>function to check if given matrix is a square matrix </p><dl class="section return"><dt>Returns</dt><dd>1 if true, 0 if false </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  {</div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="comment">// Assuming A is square matrix</span></div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < N; i++)</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordflow">if</span> (A[i].size() != N)</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  {</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="comment">// Assuming A is square matrix</span></div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < N; i++)</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">if</span> (A[i].size() != N)</div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
@@ -401,60 +405,62 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>main function </p>
|
||||
<div class="fragment"><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  {</div>
|
||||
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordtype">size_t</span> N, F;</div>
|
||||
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  </div>
|
||||
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Enter number of features: "</span>;</div>
|
||||
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="comment">// number of features = columns</span></div>
|
||||
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> F;</div>
|
||||
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Enter number of samples: "</span>;</div>
|
||||
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  <span class="comment">// number of samples = rows</span></div>
|
||||
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> N;</div>
|
||||
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  </div>
|
||||
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>(N);</div>
|
||||
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> Y(N);</div>
|
||||
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  </div>
|
||||
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div>
|
||||
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  << <span class="stringliteral">"Enter training data. Per sample, provide features ad one output."</span></div>
|
||||
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  </div>
|
||||
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < N; rows++) {</div>
|
||||
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> v(F);</div>
|
||||
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Sample# "</span> << rows + 1 << <span class="stringliteral">": "</span>;</div>
|
||||
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cols = 0; cols < F; cols++)</div>
|
||||
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  <span class="comment">// get the F features</span></div>
|
||||
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> v[cols];</div>
|
||||
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[rows] = v;</div>
|
||||
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  <span class="comment">// get the corresponding output</span></div>
|
||||
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> Y[rows];</div>
|
||||
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  }</div>
|
||||
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  </div>
|
||||
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> beta = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045">fit_OLS_regressor</a>(<a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>, Y);</div>
|
||||
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a> << <span class="stringliteral">"beta:"</span> << beta << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  </div>
|
||||
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  <span class="keywordtype">size_t</span> T;</div>
|
||||
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Enter number of test samples: "</span>;</div>
|
||||
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="comment">// number of test sample inputs</span></div>
|
||||
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> T;</div>
|
||||
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> data2(T);</div>
|
||||
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  <span class="comment">// vector<float> Y2(T);</span></div>
|
||||
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  </div>
|
||||
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < T; rows++) {</div>
|
||||
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Sample# "</span> << rows + 1 << <span class="stringliteral">": "</span>;</div>
|
||||
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> v(F);</div>
|
||||
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cols = 0; cols < F; cols++) std::cin >> v[cols];</div>
|
||||
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  data2[rows] = v;</div>
|
||||
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  }</div>
|
||||
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  </div>
|
||||
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> out = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a>(data2, beta);</div>
|
||||
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < T; rows++) <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << out[rows] << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  </div>
|
||||
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  {</div>
|
||||
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002">test</a>();</div>
|
||||
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  </div>
|
||||
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  <span class="keywordtype">size_t</span> N, F;</div>
|
||||
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  </div>
|
||||
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Enter number of features: "</span>;</div>
|
||||
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  <span class="comment">// number of features = columns</span></div>
|
||||
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> F;</div>
|
||||
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Enter number of samples: "</span>;</div>
|
||||
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  <span class="comment">// number of samples = rows</span></div>
|
||||
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> N;</div>
|
||||
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  </div>
|
||||
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>(N);</div>
|
||||
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> Y(N);</div>
|
||||
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  </div>
|
||||
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div>
|
||||
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  << <span class="stringliteral">"Enter training data. Per sample, provide features and one output."</span></div>
|
||||
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  </div>
|
||||
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < N; rows++) {</div>
|
||||
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> v(F);</div>
|
||||
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Sample# "</span> << rows + 1 << <span class="stringliteral">": "</span>;</div>
|
||||
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cols = 0; cols < F; cols++)</div>
|
||||
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  <span class="comment">// get the F features</span></div>
|
||||
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> v[cols];</div>
|
||||
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  <a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>[rows] = v;</div>
|
||||
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  <span class="comment">// get the corresponding output</span></div>
|
||||
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> Y[rows];</div>
|
||||
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  }</div>
|
||||
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  </div>
|
||||
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> beta = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045">fit_OLS_regressor</a>(<a class="code" href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a>, Y);</div>
|
||||
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a> << <span class="stringliteral">"beta:"</span> << beta << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  </div>
|
||||
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  <span class="keywordtype">size_t</span> T;</div>
|
||||
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Enter number of test samples: "</span>;</div>
|
||||
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  <span class="comment">// number of test sample inputs</span></div>
|
||||
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> T;</div>
|
||||
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> data2(T);</div>
|
||||
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="comment">// vector<float> Y2(T);</span></div>
|
||||
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  </div>
|
||||
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < T; rows++) {</div>
|
||||
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Sample# "</span> << rows + 1 << <span class="stringliteral">": "</span>;</div>
|
||||
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> v(F);</div>
|
||||
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cols = 0; cols < F; cols++) std::cin >> v[cols];</div>
|
||||
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  data2[rows] = v;</div>
|
||||
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  }</div>
|
||||
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  </div>
|
||||
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> out = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a>(data2, beta);</div>
|
||||
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < T; rows++) <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << out[rows] << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  </div>
|
||||
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../dc/d38/ordinary__least__squares__regressor_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="555" height="190"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../dc/d38/ordinary__least__squares__regressor_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -488,18 +494,18 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>pre-multiplication of a vector by a scalar </p><dl class="section return"><dt>Returns</dt><dd>resultant vector </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  {</div>
|
||||
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  </div>
|
||||
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> result(N_A);</div>
|
||||
<div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  {</div>
|
||||
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  </div>
|
||||
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++) {</div>
|
||||
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  result[row] += A[row] * <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(scalar);</div>
|
||||
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  }</div>
|
||||
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  </div>
|
||||
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
|
||||
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> result(N_A);</div>
|
||||
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  </div>
|
||||
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++) {</div>
|
||||
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  result[row] += A[row] * <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(scalar);</div>
|
||||
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  }</div>
|
||||
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  </div>
|
||||
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -538,32 +544,32 @@ template<typename T > </div>
|
||||
</div><div class="memdoc">
|
||||
<p>Matrix multiplication such that if A is size (mxn) and B is of size (pxq) then the multiplication is defined only when n = p and the resultant matrix is of size (mxq)</p>
|
||||
<dl class="section return"><dt>Returns</dt><dd>resultant matrix </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  {</div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="comment">// Number of columns in B</span></div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keywordtype">size_t</span> N_B = B[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  </div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> result(N_A);</div>
|
||||
<div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  {</div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="comment">// Number of columns in B</span></div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordtype">size_t</span> N_B = B[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  </div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keywordflow">if</span> (A[0].size() != B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Number of columns in A != Number of rows in B ("</span></div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  << A[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">", "</span> << B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">")"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  </div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++) {</div>
|
||||
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> v(N_B);</div>
|
||||
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < N_B; col++) {</div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  v[col] = <span class="keyword">static_cast<</span>T<span class="keyword">></span>(0);</div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j < B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); j++)</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  v[col] += A[row][j] * B[j][col];</div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  }</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  result[row] = v;</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div>
|
||||
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  </div>
|
||||
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> }</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<T></a>> result(N_A);</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  </div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">if</span> (A[0].size() != B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Number of columns in A != Number of rows in B ("</span></div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  << A[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">", "</span> << B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">")"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div>
|
||||
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  </div>
|
||||
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++) {</div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> v(N_B);</div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < N_B; col++) {</div>
|
||||
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  v[col] = <span class="keyword">static_cast<</span>T<span class="keyword">></span>(0);</div>
|
||||
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j < B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); j++)</div>
|
||||
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  v[col] += A[row][j] * B[j][col];</div>
|
||||
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div>
|
||||
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  result[row] = v;</div>
|
||||
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div>
|
||||
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  </div>
|
||||
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -601,25 +607,25 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>multiplication of a matrix with a column vector </p><dl class="section return"><dt>Returns</dt><dd>resultant vector </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  {</div>
|
||||
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  </div>
|
||||
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> result(N_A);</div>
|
||||
<div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  {</div>
|
||||
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  </div>
|
||||
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <span class="keywordflow">if</span> (A[0].size() != B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Number of columns in A != Number of rows in B ("</span></div>
|
||||
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  << A[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">", "</span> << B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">")"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div>
|
||||
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  </div>
|
||||
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++) {</div>
|
||||
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  result[row] = <span class="keyword">static_cast<</span>T<span class="keyword">></span>(0);</div>
|
||||
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j < B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); j++) result[row] += A[row][j] * B[j];</div>
|
||||
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  }</div>
|
||||
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  </div>
|
||||
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> }</div>
|
||||
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> result(N_A);</div>
|
||||
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  </div>
|
||||
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keywordflow">if</span> (A[0].size() != B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>()) {</div>
|
||||
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Number of columns in A != Number of rows in B ("</span></div>
|
||||
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  << A[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">", "</span> << B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() << <span class="stringliteral">")"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  }</div>
|
||||
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  </div>
|
||||
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++) {</div>
|
||||
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  result[row] = <span class="keyword">static_cast<</span>T<span class="keyword">></span>(0);</div>
|
||||
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 0; j < B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); j++) result[row] += A[row][j] * B[j];</div>
|
||||
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  }</div>
|
||||
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  </div>
|
||||
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -657,17 +663,17 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>post-multiplication of a vector by a scalar </p><dl class="section return"><dt>Returns</dt><dd>resultant vector </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  {</div>
|
||||
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  </div>
|
||||
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> result(N_A);</div>
|
||||
<div class="fragment"><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  {</div>
|
||||
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordtype">size_t</span> N_A = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  </div>
|
||||
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++)</div>
|
||||
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  result[row] = A[row] * <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(scalar);</div>
|
||||
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  </div>
|
||||
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> }</div>
|
||||
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> result(N_A);</div>
|
||||
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  </div>
|
||||
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N_A; row++)</div>
|
||||
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  result[row] = A[row] * <span class="keyword">static_cast<</span><span class="keywordtype">float</span><span class="keyword">></span>(scalar);</div>
|
||||
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  </div>
|
||||
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -705,21 +711,21 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>addition of two vectors of identical lengths </p><dl class="section return"><dt>Returns</dt><dd>resultant vector </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  {</div>
|
||||
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  </div>
|
||||
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> result(N);</div>
|
||||
<div class="fragment"><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  {</div>
|
||||
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  </div>
|
||||
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <span class="keywordflow">if</span> (B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() != N) {</div>
|
||||
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Vector dimensions shouldbe identical!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keywordflow">return</span> A;</div>
|
||||
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  }</div>
|
||||
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  </div>
|
||||
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) result[row] = A[row] + B[row];</div>
|
||||
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> result(N);</div>
|
||||
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  </div>
|
||||
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keywordflow">if</span> (B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() != N) {</div>
|
||||
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Vector dimensions shouldbe identical!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="keywordflow">return</span> A;</div>
|
||||
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  }</div>
|
||||
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  </div>
|
||||
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> }</div>
|
||||
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) result[row] = A[row] + B[row];</div>
|
||||
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  </div>
|
||||
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -757,21 +763,21 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>subtraction of two vectors of identical lengths </p><dl class="section return"><dt>Returns</dt><dd>resultant vector </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  {</div>
|
||||
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  </div>
|
||||
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> result(N);</div>
|
||||
<div class="fragment"><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  {</div>
|
||||
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <span class="comment">// Number of rows in A</span></div>
|
||||
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordtype">size_t</span> N = A.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>();</div>
|
||||
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  </div>
|
||||
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <span class="keywordflow">if</span> (B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() != N) {</div>
|
||||
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Vector dimensions shouldbe identical!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">return</span> A;</div>
|
||||
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  }</div>
|
||||
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  </div>
|
||||
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) result[row] = A[row] - B[row];</div>
|
||||
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<T></a> result(N);</div>
|
||||
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  </div>
|
||||
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">if</span> (B.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>() != N) {</div>
|
||||
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a> << <span class="stringliteral">"Vector dimensions shouldbe identical!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">return</span> A;</div>
|
||||
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  }</div>
|
||||
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  </div>
|
||||
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> }</div>
|
||||
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < N; row++) result[row] = A[row] - B[row];</div>
|
||||
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  </div>
|
||||
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -809,9 +815,9 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>division of a vector by a scalar </p><dl class="section return"><dt>Returns</dt><dd>resultant vector </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  {</div>
|
||||
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keywordflow">return</span> (1.f / scalar) * A;</div>
|
||||
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  {</div>
|
||||
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">return</span> (1.f / scalar) * A;</div>
|
||||
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
@@ -843,19 +849,19 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>operator to print a matrix </p>
|
||||
<div class="fragment"><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  {</div>
|
||||
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> width = 10;</div>
|
||||
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  <span class="keyword">const</span> <span class="keywordtype">char</span> separator = <span class="charliteral">' '</span>;</div>
|
||||
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  </div>
|
||||
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < v.size(); row++) {</div>
|
||||
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < v[row].size(); col++)</div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  out << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/left.html">std::left</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setw.html">std::setw</a>(width) << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setfill.html">std::setfill</a>(separator)</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  << v[row][col];</div>
|
||||
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  out << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  }</div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  </div>
|
||||
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <span class="keywordflow">return</span> out;</div>
|
||||
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  {</div>
|
||||
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> width = 10;</div>
|
||||
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  <span class="keyword">const</span> <span class="keywordtype">char</span> separator = <span class="charliteral">' '</span>;</div>
|
||||
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  </div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < v.size(); row++) {</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> col = 0; col < v[row].size(); col++)</div>
|
||||
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  out << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/left.html">std::left</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setw.html">std::setw</a>(width) << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setfill.html">std::setfill</a>(separator)</div>
|
||||
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  << v[row][col];</div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  out << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  }</div>
|
||||
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  </div>
|
||||
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <span class="keywordflow">return</span> out;</div>
|
||||
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -893,16 +899,16 @@ template<typename T > </div>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>operator to print a vector </p>
|
||||
<div class="fragment"><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  {</div>
|
||||
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> width = 15;</div>
|
||||
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="keyword">const</span> <span class="keywordtype">char</span> separator = <span class="charliteral">' '</span>;</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  </div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < v.size(); row++)</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  out << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/left.html">std::left</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setw.html">std::setw</a>(width) << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setfill.html">std::setfill</a>(separator)</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  << v[row];</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  </div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">return</span> out;</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  {</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <span class="keyword">const</span> <span class="keywordtype">int</span> width = 15;</div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <span class="keyword">const</span> <span class="keywordtype">char</span> separator = <span class="charliteral">' '</span>;</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  </div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> row = 0; row < v.size(); row++)</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  out << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/left.html">std::left</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setw.html">std::setw</a>(width) << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/setfill.html">std::setfill</a>(separator)</div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  << v[row];</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  </div>
|
||||
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordflow">return</span> out;</div>
|
||||
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
@@ -950,19 +956,91 @@ template<typename T > </div>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>vector with regression values for each sample </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  {</div>
|
||||
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> result(X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  </div>
|
||||
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); rows++) {</div>
|
||||
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  <span class="comment">// -> start with constant term</span></div>
|
||||
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  result[rows] = beta[X[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>()];</div>
|
||||
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cols = 0; cols < X[0].size(); cols++)</div>
|
||||
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  result[rows] += beta[cols] * X[rows][cols];</div>
|
||||
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  }</div>
|
||||
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="comment">// Nx1</span></div>
|
||||
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> }</div>
|
||||
<div class="fragment"><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  {</div>
|
||||
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> result(X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>());</div>
|
||||
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  </div>
|
||||
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < X.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); rows++) {</div>
|
||||
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="comment">// -> start with constant term</span></div>
|
||||
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  result[rows] = beta[X[0].<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>()];</div>
|
||||
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cols = 0; cols < X[0].size(); cols++)</div>
|
||||
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  result[rows] += beta[cols] * X[rows][cols];</div>
|
||||
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  }</div>
|
||||
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  <span class="comment">// Nx1</span></div>
|
||||
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keywordflow">return</span> result;</div>
|
||||
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> }</div>
|
||||
</div><!-- fragment -->
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae1a3968e7947464bee7714f6d43b7002"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae1a3968e7947464bee7714f6d43b7002">◆ </a></span>test()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void test </td>
|
||||
<td>(</td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Self test checks </p>
|
||||
<div class="fragment"><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  {</div>
|
||||
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordtype">int</span> F = 3, N = 5;</div>
|
||||
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  </div>
|
||||
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="comment">/* test function = x^2 -5 */</span></div>
|
||||
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 1 (quadratic function)...."</span>;</div>
|
||||
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  <span class="comment">// create training data set with features = x, x^2, x^3</span></div>
|
||||
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> data1(</div>
|
||||
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  {{-5, 25, -125}, {-1, 1, -1}, {0, 0, 0}, {1, 1, 1}, {6, 36, 216}});</div>
|
||||
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <span class="comment">// create corresponding outputs</span></div>
|
||||
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> Y1({20, -4, -5, -4, 31});</div>
|
||||
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <span class="comment">// perform regression modelling</span></div>
|
||||
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> beta1 = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045">fit_OLS_regressor</a>(data1, Y1);</div>
|
||||
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  <span class="comment">// create test data set with same features = x, x^2, x^3</span></div>
|
||||
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> <a class="code" href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499">test1</a>(</div>
|
||||
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  {{-2, 4, -8}, {2, 4, 8}, {-10, 100, -1000}, {10, 100, 1000}});</div>
|
||||
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <span class="comment">// expected regression outputs</span></div>
|
||||
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> expected1({-1, -1, 95, 95});</div>
|
||||
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <span class="comment">// predicted regression outputs</span></div>
|
||||
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> out1 = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a>(<a class="code" href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499">test1</a>, beta1);</div>
|
||||
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <span class="comment">// compare predicted results are within +-0.01 limit of expected</span></div>
|
||||
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < out1.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); rows++)</div>
|
||||
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  assert(std::abs(out1[rows] - expected1[rows]) < 0.01);</div>
|
||||
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  </div>
|
||||
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  <span class="comment">/* test function = x^3 + x^2 - 100 */</span></div>
|
||||
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Test 2 (cubic function)...."</span>;</div>
|
||||
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <span class="comment">// create training data set with features = x, x^2, x^3</span></div>
|
||||
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> data2(</div>
|
||||
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  {{-5, 25, -125}, {-1, 1, -1}, {0, 0, 0}, {1, 1, 1}, {6, 36, 216}});</div>
|
||||
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="comment">// create corresponding outputs</span></div>
|
||||
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> Y2({-200, -100, -100, 98, 152});</div>
|
||||
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  <span class="comment">// perform regression modelling</span></div>
|
||||
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> beta2 = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045">fit_OLS_regressor</a>(data2, Y2);</div>
|
||||
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="comment">// create test data set with same features = x, x^2, x^3</span></div>
|
||||
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<std::vector<float></a>> <a class="code" href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82">test2</a>(</div>
|
||||
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  {{-2, 4, -8}, {2, 4, 8}, {-10, 100, -1000}, {10, 100, 1000}});</div>
|
||||
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  <span class="comment">// expected regression outputs</span></div>
|
||||
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> expected2({-104, -88, -1000, 1000});</div>
|
||||
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  <span class="comment">// predicted regression outputs</span></div>
|
||||
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<float></a> out2 = <a class="code" href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a>(<a class="code" href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82">test2</a>, beta2);</div>
|
||||
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <span class="comment">// compare predicted results are within +-0.01 limit of expected</span></div>
|
||||
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> rows = 0; rows < out2.<a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector/size.html">size</a>(); rows++)</div>
|
||||
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  assert(std::abs(out2[rows] - expected2[rows]) < 0.01);</div>
|
||||
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"passed\n"</span>;</div>
|
||||
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  </div>
|
||||
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>; <span class="comment">// ensure test results are displayed on screen</span></div>
|
||||
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <span class="comment">// (flush stdout)</span></div>
|
||||
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../dc/d38/ordinary__least__squares__regressor_8cpp_ae1a3968e7947464bee7714f6d43b7002_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- contents -->
|
||||
@@ -970,17 +1048,20 @@ template<typename T > </div>
|
||||
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div><div class="ttdoc">STL class.</div></div>
|
||||
<div class="ttc" id="asize_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector/size.html">std::vector::size</a></div><div class="ttdeci">T size(T... args)</div></div>
|
||||
<div class="ttc" id="asetfill_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/setfill.html">std::setfill</a></div><div class="ttdeci">T setfill(T... args)</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a4921874435266592b222e3f2eda0e01f"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f">is_square</a></div><div class="ttdeci">bool is_square(std::vector< std::vector< T >> const &A)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:55</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a4921874435266592b222e3f2eda0e01f"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f">is_square</a></div><div class="ttdeci">bool is_square(std::vector< std::vector< T >> const &A)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:57</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_ae1a3968e7947464bee7714f6d43b7002"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002">test</a></div><div class="ttdeci">void test()</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:358</div></div>
|
||||
<div class="ttc" id="aadaline__learning_8cpp_html_a52053d88ea1bcbbed9aca67ab4eeb499"><div class="ttname"><a href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499">test1</a></div><div class="ttdeci">void test1(double eta=0.01)</div><div class="ttdef"><b>Definition:</b> adaline_learning.cpp:204</div></div>
|
||||
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cerr</a></div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a4bcaaf41c66da4d3a471dacef133def7"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a></div><div class="ttdeci">std::vector< float > predict_OLS_regressor(std::vector< std::vector< T >> const &X, std::vector< float > const &beta)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:340</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a4bcaaf41c66da4d3a471dacef133def7"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7">predict_OLS_regressor</a></div><div class="ttdeci">std::vector< float > predict_OLS_regressor(std::vector< std::vector< T >> const &X, std::vector< float > const &beta)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:342</div></div>
|
||||
<div class="ttc" id="ahash__search_8cpp_html_a6e1a77282bc65ad359d753d25df23243"><div class="ttname"><a href="../../d1/df3/hash__search_8cpp.html#a6e1a77282bc65ad359d753d25df23243">data</a></div><div class="ttdeci">int data[MAX]</div><div class="ttdoc">test data</div><div class="ttdef"><b>Definition:</b> hash_search.cpp:24</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a38ff1d954e9b7de93eb20e2dd101a045"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045">fit_OLS_regressor</a></div><div class="ttdeci">std::vector< float > fit_OLS_regressor(std::vector< std::vector< T >> const &X, std::vector< T > const &Y)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:310</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a38ff1d954e9b7de93eb20e2dd101a045"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045">fit_OLS_regressor</a></div><div class="ttdeci">std::vector< float > fit_OLS_regressor(std::vector< std::vector< T >> const &X, std::vector< T > const &Y)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:312</div></div>
|
||||
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a98ab8f75d981088369b89b8be2182483"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483">get_inverse</a></div><div class="ttdeci">std::vector< std::vector< float > > get_inverse(std::vector< std::vector< T >> const &A)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:218</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a98ab8f75d981088369b89b8be2182483"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483">get_inverse</a></div><div class="ttdeci">std::vector< std::vector< float > > get_inverse(std::vector< std::vector< T >> const &A)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:220</div></div>
|
||||
<div class="ttc" id="aleft_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/left.html">std::left</a></div><div class="ttdeci">T left(T... args)</div></div>
|
||||
<div class="ttc" id="asetw_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/setw.html">std::setw</a></div><div class="ttdeci">T setw(T... args)</div></div>
|
||||
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a889f9de199fa793497c864d8e493af05"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05">get_transpose</a></div><div class="ttdeci">std::vector< std::vector< T > > get_transpose(std::vector< std::vector< T >> const &A)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:289</div></div>
|
||||
<div class="ttc" id="aadaline__learning_8cpp_html_a379f7488a305f2571f2932b319931f82"><div class="ttname"><a href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82">test2</a></div><div class="ttdeci">void test2(double eta=0.01)</div><div class="ttdef"><b>Definition:</b> adaline_learning.cpp:238</div></div>
|
||||
<div class="ttc" id="aordinary__least__squares__regressor_8cpp_html_a889f9de199fa793497c864d8e493af05"><div class="ttname"><a href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05">get_transpose</a></div><div class="ttdeci">std::vector< std::vector< T > > get_transpose(std::vector< std::vector< T >> const &A)</div><div class="ttdef"><b>Definition:</b> ordinary_least_squares_regressor.cpp:291</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
|
||||
@@ -14,5 +14,6 @@ var ordinary__least__squares__regressor_8cpp =
|
||||
[ "operator/", "dc/d38/ordinary__least__squares__regressor_8cpp.html#a30acf52af3184bc22274234ef5a73536", null ],
|
||||
[ "operator<<", "dc/d38/ordinary__least__squares__regressor_8cpp.html#a98eb5807f21b783c341cab402ced6732", null ],
|
||||
[ "operator<<", "dc/d38/ordinary__least__squares__regressor_8cpp.html#aa799b4cec1681219887d89d037cfab50", null ],
|
||||
[ "predict_OLS_regressor", "dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7", null ]
|
||||
[ "predict_OLS_regressor", "dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7", null ],
|
||||
[ "test", "dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002", null ]
|
||||
];
|
||||
@@ -0,0 +1,20 @@
|
||||
<map id="test" name="test">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,385,49,412"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="1001,157,1073,184"/>
|
||||
<area shape="rect" id="node3" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" title=" " alt="" coords="561,107,688,133"/>
|
||||
<area shape="rect" id="node7" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="979,549,1095,576"/>
|
||||
<area shape="rect" id="node8" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" title=" " alt="" coords="97,680,252,707"/>
|
||||
<area shape="rect" id="node9" href="$d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499" title=" " alt="" coords="149,360,200,387"/>
|
||||
<area shape="rect" id="node17" href="$d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82" title=" " alt="" coords="149,411,200,437"/>
|
||||
<area shape="rect" id="node4" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" title=" " alt="" coords="800,5,889,32"/>
|
||||
<area shape="rect" id="node6" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" title=" " alt="" coords="793,107,897,133"/>
|
||||
<area shape="rect" id="node5" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" title=" " alt="" coords="997,5,1076,32"/>
|
||||
<area shape="rect" id="node10" href="$d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5" title=" " alt="" coords="300,461,491,488"/>
|
||||
<area shape="rect" id="node12" href="$d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3" title=" " alt="" coords="539,403,711,445"/>
|
||||
<area shape="rect" id="node11" href="$d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56" title=" " alt="" coords="759,513,931,554"/>
|
||||
<area shape="rect" id="node13" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/back.html#" title=" " alt="" coords="785,360,905,387"/>
|
||||
<area shape="rect" id="node14" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/begin.html#" title=" " alt="" coords="783,411,906,437"/>
|
||||
<area shape="rect" id="node15" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/end.html#" title=" " alt="" coords="788,461,901,488"/>
|
||||
<area shape="rect" id="node16" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/inner_product.html#" title=" " alt="" coords="781,309,908,336"/>
|
||||
<area shape="rect" id="node18" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/random/rand.html#" title=" " alt="" coords="359,512,432,539"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
f516f3d9b3c83458e76475e3672f4836
|
||||
@@ -0,0 +1,433 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.0 (20200408.0750)
|
||||
-->
|
||||
<!-- Title: test Pages: 1 -->
|
||||
<!--zoomable 534 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 825;
|
||||
var viewHeight = 534;
|
||||
var sectionId = 'dynsection-12';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<title>test</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-530 821,-530 821,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-221.5 0,-240.5 33,-240.5 33,-221.5 0,-221.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-228.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="746.5,-392.5 746.5,-411.5 800.5,-411.5 800.5,-392.5 746.5,-392.5"/>
|
||||
<text text-anchor="middle" x="773.5" y="-399.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M18.99,-240.74C23.03,-264.22 36.19,-324.8 69,-362 142.77,-445.64 179.98,-478 291.5,-478 291.5,-478 291.5,-478 465.5,-478 567.41,-478 598.47,-494.47 694,-459 717.71,-450.2 740.62,-432.1 755.51,-418.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="757.98,-421.13 762.91,-411.74 753.21,-416.01 757.98,-421.13"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-430.5 417,-449.5 512,-449.5 512,-430.5 417,-430.5"/>
|
||||
<text text-anchor="middle" x="464.5" y="-437.5" font-family="Helvetica,sans-Serif" font-size="10.00">fit_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.27,-240.51C47.42,-272.16 127.19,-374.31 221,-416 280.32,-442.36 355.64,-445.75 406.47,-444.23"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="406.76,-447.72 416.62,-443.85 406.5,-440.72 406.76,-447.72"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="730,-98.5 730,-117.5 817,-117.5 817,-98.5 730,-98.5"/>
|
||||
<text text-anchor="middle" x="773.5" y="-105.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node7 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node1->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.57,-221.42C53.24,-183.77 165.37,-48 291.5,-48 291.5,-48 291.5,-48 465.5,-48 563.61,-48 676.13,-77.88 733.87,-95.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="733.07,-98.88 743.66,-98.49 735.14,-92.2 733.07,-98.88"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="69,-0.5 69,-19.5 185,-19.5 185,-0.5 69,-0.5"/>
|
||||
<text text-anchor="middle" x="127" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">predict_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node8 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node1->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M17.2,-221.45C16.76,-190.42 19.46,-91.17 69,-34 72.21,-30.29 76.1,-27.14 80.31,-24.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="82.16,-27.45 89.31,-19.63 78.84,-21.28 82.16,-27.45"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="108,-240.5 108,-259.5 146,-259.5 146,-240.5 108,-240.5"/>
|
||||
<text text-anchor="middle" x="127" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node9 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node1->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.05,-233.72C49.91,-236.68 77.19,-241.45 97.85,-245.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="97.5,-248.56 107.95,-246.84 98.71,-241.67 97.5,-248.56"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="108,-202.5 108,-221.5 146,-221.5 146,-202.5 108,-202.5"/>
|
||||
<text text-anchor="middle" x="127" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node17 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node1->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.05,-228.28C49.91,-225.32 77.19,-220.55 97.85,-216.93"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="98.71,-220.33 107.95,-215.16 97.5,-213.44 98.71,-220.33"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="596,-506.5 596,-525.5 663,-525.5 663,-506.5 596,-506.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-513.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_inverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M486.14,-449.63C514.56,-462.87 565.9,-486.81 598.54,-502.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="597.48,-505.4 608.02,-506.45 600.44,-499.05 597.48,-505.4"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="590.5,-430.5 590.5,-449.5 668.5,-449.5 668.5,-430.5 590.5,-430.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-437.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_transpose</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node6 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node3->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M512.21,-440C533.47,-440 558.62,-440 580.09,-440"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="580.29,-443.5 590.29,-440 580.29,-436.5 580.29,-443.5"/>
|
||||
</g>
|
||||
<!-- Node3->Node7 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node3->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M494.16,-430.41C541.93,-413.07 638.07,-372.11 694,-307 740.92,-252.38 761.79,-166.37 769.16,-127.83"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="772.63,-128.34 770.96,-117.88 765.74,-127.1 772.63,-128.34"/>
|
||||
</g>
|
||||
<!-- Node4->Node2 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M663.02,-507.16C673.46,-503.45 684.71,-498.46 694,-492 722.36,-472.28 747.06,-440.11 760.85,-420.04"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="763.9,-421.78 766.55,-411.52 758.08,-417.89 763.9,-421.78"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="744,-506.5 744,-525.5 803,-525.5 803,-506.5 744,-506.5"/>
|
||||
<text text-anchor="middle" x="773.5" y="-513.5" font-family="Helvetica,sans-Serif" font-size="10.00">is_square</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M663.08,-516C684.14,-516 711.66,-516 733.84,-516"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="733.92,-519.5 743.92,-516 733.92,-512.5 733.92,-519.5"/>
|
||||
</g>
|
||||
<!-- Node9->Node2 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node9->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M141.85,-259.56C153.86,-268.16 171.41,-281.49 185,-295 203.17,-313.05 198.57,-327.63 221,-340 394.04,-435.43 643.8,-417.75 736.28,-406.94"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="736.75,-410.41 746.26,-405.73 735.91,-403.46 736.75,-410.41"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="221,-164.5 221,-183.5 364,-183.5 364,-164.5 221,-164.5"/>
|
||||
<text text-anchor="middle" x="292.5" y="-171.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline::fit</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node10 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node9->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.01,-244.86C157.37,-241.4 172.26,-236.49 185,-231 214.03,-218.5 245.79,-200.97 267,-188.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="268.83,-191.64 275.68,-183.57 265.29,-185.6 268.83,-191.64"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="400,-197 400,-227 529,-227 529,-197 400,-197"/>
|
||||
<text text-anchor="start" x="408" y="-215" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="464.5" y="-204" font-family="Helvetica,sans-Serif" font-size="10.00">::predict</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node12 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node9->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.09,-248.4C185.65,-244.85 282.84,-235.83 364,-226 372.34,-224.99 381.06,-223.86 389.73,-222.7"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="390.41,-226.14 399.85,-221.33 389.47,-219.21 390.41,-226.14"/>
|
||||
</g>
|
||||
<!-- Node10->Node7 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node10->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M331.77,-164.49C342.29,-161.66 353.64,-158.4 364,-155 380.31,-149.65 383.56,-145.96 400,-141 471.86,-119.33 490.37,-113.05 565,-105 622,-98.85 636.68,-103.91 694,-105 702.24,-105.16 710.96,-105.41 719.48,-105.7"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="719.61,-109.2 729.73,-106.07 719.86,-102.21 719.61,-109.2"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="565,-115 565,-145 694,-145 694,-115 565,-115"/>
|
||||
<text text-anchor="start" x="573" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="629.5" y="-122" font-family="Helvetica,sans-Serif" font-size="10.00">::check_size_match</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node10->Node11 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node10->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M364.14,-164.72C420.09,-157.37 498.02,-147.14 554.77,-139.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="555.29,-143.15 564.75,-138.37 554.38,-136.2 555.29,-143.15"/>
|
||||
</g>
|
||||
<!-- Node10->Node12 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node10->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M336.4,-183.59C352.66,-187.22 371.66,-191.47 389.95,-195.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="389.2,-198.98 399.72,-197.74 390.73,-192.15 389.2,-198.98"/>
|
||||
</g>
|
||||
<!-- Node11->Node2 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node11->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M681.38,-145.02C686.04,-147.81 690.36,-151.11 694,-155 755.75,-221.06 768.93,-335.62 771.74,-381.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="768.25,-382.21 772.25,-392.03 775.24,-381.86 768.25,-382.21"/>
|
||||
</g>
|
||||
<!-- Node11->Node7 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node11->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M694.02,-120.16C702.63,-118.82 711.39,-117.47 719.78,-116.17"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="720.46,-119.6 729.81,-114.61 719.39,-112.69 720.46,-119.6"/>
|
||||
</g>
|
||||
<!-- Node12->Node11 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node12->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M489.5,-196.93C509.33,-184.81 538.44,-167.75 565,-155 569.31,-152.93 573.84,-150.89 578.42,-148.92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="579.93,-152.09 587.81,-145 577.23,-145.63 579.93,-152.09"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="584.5,-240.5 584.5,-259.5 674.5,-259.5 674.5,-240.5 584.5,-240.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node13 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node12->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M529.45,-226.91C545.55,-230.66 562.6,-234.64 577.94,-238.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="577.21,-241.64 587.75,-240.5 578.8,-234.82 577.21,-241.64"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/begin.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="583.5,-202.5 583.5,-221.5 675.5,-221.5 675.5,-202.5 583.5,-202.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::begin</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node14 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node12->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M529.45,-212C543.95,-212 559.23,-212 573.32,-212"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="573.35,-215.5 583.35,-212 573.35,-208.5 573.35,-215.5"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/end.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="587,-164.5 587,-183.5 672,-183.5 672,-164.5 587,-164.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-171.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::end</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node15 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node12->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M529.45,-197.09C545.55,-193.34 562.6,-189.36 577.94,-185.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="578.8,-189.18 587.75,-183.5 577.21,-182.36 578.8,-189.18"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/inner_product.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="582,-278.5 582,-297.5 677,-297.5 677,-278.5 582,-278.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::inner_product</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node16 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node12->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M488.44,-227.17C508.12,-239.68 537.56,-257.22 565,-269 570.35,-271.3 576.07,-273.43 581.8,-275.37"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="580.8,-278.73 591.39,-278.45 582.94,-272.06 580.8,-278.73"/>
|
||||
</g>
|
||||
<!-- Node17->Node2 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node17->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.25,-217.38C234.43,-243.38 616.99,-356.16 736.61,-391.42"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="735.81,-394.83 746.39,-394.3 737.79,-388.12 735.81,-394.83"/>
|
||||
</g>
|
||||
<!-- Node17->Node10 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node17->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.12,-207.79C168.7,-202.54 208.24,-193.35 240.38,-185.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="241.58,-189.19 250.53,-183.52 240,-182.38 241.58,-189.19"/>
|
||||
</g>
|
||||
<!-- Node17->Node12 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node17->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.04,-212C191.11,-212 310.67,-212 389.51,-212"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="389.88,-215.5 399.88,-212 389.88,-208.5 389.88,-215.5"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/random/rand.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="265,-126.5 265,-145.5 320,-145.5 320,-126.5 265,-126.5"/>
|
||||
<text text-anchor="middle" x="292.5" y="-133.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::rand</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node17->Node18 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node17->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M140.9,-202.43C158.28,-189.93 190.56,-168.11 221,-155 231.7,-150.39 243.8,-146.65 254.91,-143.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="255.91,-147.09 264.78,-141.3 254.23,-140.3 255.91,-147.09"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="ordinary__least__squares__regressor_8cpp_ae1a3968e7947464bee7714f6d43b7002_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 23 KiB |
@@ -0,0 +1,345 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.0 (20200408.0750)
|
||||
-->
|
||||
<!-- Title: test Pages: 1 -->
|
||||
<svg width="825pt" height="534pt"
|
||||
viewBox="0.00 0.00 825.00 534.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 530)">
|
||||
<title>test</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-530 821,-530 821,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-221.5 0,-240.5 33,-240.5 33,-221.5 0,-221.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-228.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="746.5,-392.5 746.5,-411.5 800.5,-411.5 800.5,-392.5 746.5,-392.5"/>
|
||||
<text text-anchor="middle" x="773.5" y="-399.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M18.99,-240.74C23.03,-264.22 36.19,-324.8 69,-362 142.77,-445.64 179.98,-478 291.5,-478 291.5,-478 291.5,-478 465.5,-478 567.41,-478 598.47,-494.47 694,-459 717.71,-450.2 740.62,-432.1 755.51,-418.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="757.98,-421.13 762.91,-411.74 753.21,-416.01 757.98,-421.13"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="417,-430.5 417,-449.5 512,-449.5 512,-430.5 417,-430.5"/>
|
||||
<text text-anchor="middle" x="464.5" y="-437.5" font-family="Helvetica,sans-Serif" font-size="10.00">fit_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.27,-240.51C47.42,-272.16 127.19,-374.31 221,-416 280.32,-442.36 355.64,-445.75 406.47,-444.23"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="406.76,-447.72 416.62,-443.85 406.5,-440.72 406.76,-447.72"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="730,-98.5 730,-117.5 817,-117.5 817,-98.5 730,-98.5"/>
|
||||
<text text-anchor="middle" x="773.5" y="-105.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node7 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node1->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.57,-221.42C53.24,-183.77 165.37,-48 291.5,-48 291.5,-48 291.5,-48 465.5,-48 563.61,-48 676.13,-77.88 733.87,-95.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="733.07,-98.88 743.66,-98.49 735.14,-92.2 733.07,-98.88"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="69,-0.5 69,-19.5 185,-19.5 185,-0.5 69,-0.5"/>
|
||||
<text text-anchor="middle" x="127" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">predict_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node8 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node1->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M17.2,-221.45C16.76,-190.42 19.46,-91.17 69,-34 72.21,-30.29 76.1,-27.14 80.31,-24.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="82.16,-27.45 89.31,-19.63 78.84,-21.28 82.16,-27.45"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="108,-240.5 108,-259.5 146,-259.5 146,-240.5 108,-240.5"/>
|
||||
<text text-anchor="middle" x="127" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node9 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node1->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.05,-233.72C49.91,-236.68 77.19,-241.45 97.85,-245.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="97.5,-248.56 107.95,-246.84 98.71,-241.67 97.5,-248.56"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="108,-202.5 108,-221.5 146,-221.5 146,-202.5 108,-202.5"/>
|
||||
<text text-anchor="middle" x="127" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node17 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node1->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.05,-228.28C49.91,-225.32 77.19,-220.55 97.85,-216.93"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="98.71,-220.33 107.95,-215.16 97.5,-213.44 98.71,-220.33"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="596,-506.5 596,-525.5 663,-525.5 663,-506.5 596,-506.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-513.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_inverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M486.14,-449.63C514.56,-462.87 565.9,-486.81 598.54,-502.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="597.48,-505.4 608.02,-506.45 600.44,-499.05 597.48,-505.4"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="590.5,-430.5 590.5,-449.5 668.5,-449.5 668.5,-430.5 590.5,-430.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-437.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_transpose</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node6 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node3->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M512.21,-440C533.47,-440 558.62,-440 580.09,-440"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="580.29,-443.5 590.29,-440 580.29,-436.5 580.29,-443.5"/>
|
||||
</g>
|
||||
<!-- Node3->Node7 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node3->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M494.16,-430.41C541.93,-413.07 638.07,-372.11 694,-307 740.92,-252.38 761.79,-166.37 769.16,-127.83"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="772.63,-128.34 770.96,-117.88 765.74,-127.1 772.63,-128.34"/>
|
||||
</g>
|
||||
<!-- Node4->Node2 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M663.02,-507.16C673.46,-503.45 684.71,-498.46 694,-492 722.36,-472.28 747.06,-440.11 760.85,-420.04"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="763.9,-421.78 766.55,-411.52 758.08,-417.89 763.9,-421.78"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="744,-506.5 744,-525.5 803,-525.5 803,-506.5 744,-506.5"/>
|
||||
<text text-anchor="middle" x="773.5" y="-513.5" font-family="Helvetica,sans-Serif" font-size="10.00">is_square</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M663.08,-516C684.14,-516 711.66,-516 733.84,-516"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="733.92,-519.5 743.92,-516 733.92,-512.5 733.92,-519.5"/>
|
||||
</g>
|
||||
<!-- Node9->Node2 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node9->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M141.85,-259.56C153.86,-268.16 171.41,-281.49 185,-295 203.17,-313.05 198.57,-327.63 221,-340 394.04,-435.43 643.8,-417.75 736.28,-406.94"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="736.75,-410.41 746.26,-405.73 735.91,-403.46 736.75,-410.41"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="221,-164.5 221,-183.5 364,-183.5 364,-164.5 221,-164.5"/>
|
||||
<text text-anchor="middle" x="292.5" y="-171.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline::fit</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node10 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node9->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.01,-244.86C157.37,-241.4 172.26,-236.49 185,-231 214.03,-218.5 245.79,-200.97 267,-188.65"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="268.83,-191.64 275.68,-183.57 265.29,-185.6 268.83,-191.64"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="400,-197 400,-227 529,-227 529,-197 400,-197"/>
|
||||
<text text-anchor="start" x="408" y="-215" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="464.5" y="-204" font-family="Helvetica,sans-Serif" font-size="10.00">::predict</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node12 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node9->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.09,-248.4C185.65,-244.85 282.84,-235.83 364,-226 372.34,-224.99 381.06,-223.86 389.73,-222.7"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="390.41,-226.14 399.85,-221.33 389.47,-219.21 390.41,-226.14"/>
|
||||
</g>
|
||||
<!-- Node10->Node7 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node10->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M331.77,-164.49C342.29,-161.66 353.64,-158.4 364,-155 380.31,-149.65 383.56,-145.96 400,-141 471.86,-119.33 490.37,-113.05 565,-105 622,-98.85 636.68,-103.91 694,-105 702.24,-105.16 710.96,-105.41 719.48,-105.7"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="719.61,-109.2 729.73,-106.07 719.86,-102.21 719.61,-109.2"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="565,-115 565,-145 694,-145 694,-115 565,-115"/>
|
||||
<text text-anchor="start" x="573" y="-133" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="629.5" y="-122" font-family="Helvetica,sans-Serif" font-size="10.00">::check_size_match</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node10->Node11 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node10->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M364.14,-164.72C420.09,-157.37 498.02,-147.14 554.77,-139.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="555.29,-143.15 564.75,-138.37 554.38,-136.2 555.29,-143.15"/>
|
||||
</g>
|
||||
<!-- Node10->Node12 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node10->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M336.4,-183.59C352.66,-187.22 371.66,-191.47 389.95,-195.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="389.2,-198.98 399.72,-197.74 390.73,-192.15 389.2,-198.98"/>
|
||||
</g>
|
||||
<!-- Node11->Node2 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node11->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M681.38,-145.02C686.04,-147.81 690.36,-151.11 694,-155 755.75,-221.06 768.93,-335.62 771.74,-381.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="768.25,-382.21 772.25,-392.03 775.24,-381.86 768.25,-382.21"/>
|
||||
</g>
|
||||
<!-- Node11->Node7 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node11->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M694.02,-120.16C702.63,-118.82 711.39,-117.47 719.78,-116.17"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="720.46,-119.6 729.81,-114.61 719.39,-112.69 720.46,-119.6"/>
|
||||
</g>
|
||||
<!-- Node12->Node11 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node12->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M489.5,-196.93C509.33,-184.81 538.44,-167.75 565,-155 569.31,-152.93 573.84,-150.89 578.42,-148.92"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="579.93,-152.09 587.81,-145 577.23,-145.63 579.93,-152.09"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="584.5,-240.5 584.5,-259.5 674.5,-259.5 674.5,-240.5 584.5,-240.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node13 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node12->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M529.45,-226.91C545.55,-230.66 562.6,-234.64 577.94,-238.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="577.21,-241.64 587.75,-240.5 578.8,-234.82 577.21,-241.64"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/begin.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="583.5,-202.5 583.5,-221.5 675.5,-221.5 675.5,-202.5 583.5,-202.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::begin</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node14 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node12->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M529.45,-212C543.95,-212 559.23,-212 573.32,-212"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="573.35,-215.5 583.35,-212 573.35,-208.5 573.35,-215.5"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/end.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="587,-164.5 587,-183.5 672,-183.5 672,-164.5 587,-164.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-171.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::end</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node15 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node12->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M529.45,-197.09C545.55,-193.34 562.6,-189.36 577.94,-185.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="578.8,-189.18 587.75,-183.5 577.21,-182.36 578.8,-189.18"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/inner_product.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="582,-278.5 582,-297.5 677,-297.5 677,-278.5 582,-278.5"/>
|
||||
<text text-anchor="middle" x="629.5" y="-285.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::inner_product</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node16 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node12->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M488.44,-227.17C508.12,-239.68 537.56,-257.22 565,-269 570.35,-271.3 576.07,-273.43 581.8,-275.37"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="580.8,-278.73 591.39,-278.45 582.94,-272.06 580.8,-278.73"/>
|
||||
</g>
|
||||
<!-- Node17->Node2 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node17->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.25,-217.38C234.43,-243.38 616.99,-356.16 736.61,-391.42"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="735.81,-394.83 746.39,-394.3 737.79,-388.12 735.81,-394.83"/>
|
||||
</g>
|
||||
<!-- Node17->Node10 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node17->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.12,-207.79C168.7,-202.54 208.24,-193.35 240.38,-185.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="241.58,-189.19 250.53,-183.52 240,-182.38 241.58,-189.19"/>
|
||||
</g>
|
||||
<!-- Node17->Node12 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node17->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M146.04,-212C191.11,-212 310.67,-212 389.51,-212"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="389.88,-215.5 399.88,-212 389.88,-208.5 389.88,-215.5"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/random/rand.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="265,-126.5 265,-145.5 320,-145.5 320,-126.5 265,-126.5"/>
|
||||
<text text-anchor="middle" x="292.5" y="-133.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::rand</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node17->Node18 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node17->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M140.9,-202.43C158.28,-189.93 190.56,-168.11 221,-155 231.7,-150.39 243.8,-146.65 254.91,-143.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="255.91,-147.09 264.78,-141.3 254.23,-140.3 255.91,-147.09"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 18 KiB |
@@ -1,10 +1,21 @@
|
||||
<map id="main" name="main">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,81,56,108"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="474,5,546,32"/>
|
||||
<area shape="rect" id="node3" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" title=" " alt="" coords="118,81,245,108"/>
|
||||
<area shape="rect" id="node8" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" title=" " alt="" coords="104,132,259,159"/>
|
||||
<area shape="rect" id="node4" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" title=" " alt="" coords="320,56,409,83"/>
|
||||
<area shape="rect" id="node6" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" title=" " alt="" coords="313,107,417,133"/>
|
||||
<area shape="rect" id="node7" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="307,157,423,184"/>
|
||||
<area shape="rect" id="node5" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" title=" " alt="" coords="471,56,549,83"/>
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,183,56,209"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="1099,553,1171,580"/>
|
||||
<area shape="rect" id="node3" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" title=" " alt="" coords="210,157,337,184"/>
|
||||
<area shape="rect" id="node8" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" title=" " alt="" coords="196,107,351,133"/>
|
||||
<area shape="rect" id="node9" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002" title=" " alt="" coords="104,208,148,235"/>
|
||||
<area shape="rect" id="node4" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" title=" " alt="" coords="449,157,539,184"/>
|
||||
<area shape="rect" id="node6" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" title=" " alt="" coords="442,5,546,32"/>
|
||||
<area shape="rect" id="node7" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="1077,157,1193,184"/>
|
||||
<area shape="rect" id="node5" href="$dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" title=" " alt="" coords="684,107,763,133"/>
|
||||
<area shape="rect" id="node10" href="$d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499" title=" " alt="" coords="248,344,299,371"/>
|
||||
<area shape="rect" id="node18" href="$d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82" title=" " alt="" coords="248,420,299,447"/>
|
||||
<area shape="rect" id="node11" href="$d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5" title=" " alt="" coords="399,319,589,345"/>
|
||||
<area shape="rect" id="node13" href="$d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3" title=" " alt="" coords="637,367,809,409"/>
|
||||
<area shape="rect" id="node12" href="$d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56" title=" " alt="" coords="857,259,1029,301"/>
|
||||
<area shape="rect" id="node14" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/back.html#" title=" " alt="" coords="883,477,1003,504"/>
|
||||
<area shape="rect" id="node15" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/begin.html#" title=" " alt="" coords="882,325,1005,352"/>
|
||||
<area shape="rect" id="node16" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/end.html#" title=" " alt="" coords="887,376,1000,403"/>
|
||||
<area shape="rect" id="node17" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/algorithm/inner_product.html#" title=" " alt="" coords="880,427,1007,453"/>
|
||||
<area shape="rect" id="node19" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/numeric/random/rand.html#" title=" " alt="" coords="457,528,531,555"/>
|
||||
</map>
|
||||
|
||||
@@ -1 +1 @@
|
||||
3be803d1be527cedbaf861f9e381bfd1
|
||||
456aff2915e1427888608ce5ceb90cf3
|
||||
@@ -4,17 +4,63 @@
|
||||
<!-- Generated by graphviz version 2.44.0 (20200408.0750)
|
||||
-->
|
||||
<!-- Title: main Pages: 1 -->
|
||||
<svg width="416pt" height="142pt"
|
||||
viewBox="0.00 0.00 416.00 142.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 138)">
|
||||
<!--zoomable 524 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 899;
|
||||
var viewHeight = 524;
|
||||
var sectionId = 'dynsection-3';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-138 412,-138 412,4 -4,4"/>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-520 895,-520 895,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-57.5 0,-76.5 38,-76.5 38,-57.5 0,-57.5"/>
|
||||
<text text-anchor="middle" x="19" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-363.5 0,-382.5 38,-382.5 38,-363.5 0,-363.5"/>
|
||||
<text text-anchor="middle" x="19" y="-370.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
@@ -22,112 +68,399 @@
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="351.5,-114.5 351.5,-133.5 405.5,-133.5 405.5,-114.5 351.5,-114.5"/>
|
||||
<text text-anchor="middle" x="378.5" y="-121.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
<polygon fill="white" stroke="black" points="820.5,-85.5 820.5,-104.5 874.5,-104.5 874.5,-85.5 820.5,-85.5"/>
|
||||
<text text-anchor="middle" x="847.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.2,-74.5C48.54,-78.48 61.81,-83.13 74,-86 168.88,-108.36 283.75,-118.19 341.15,-121.97"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="340.98,-125.46 351.18,-122.6 341.42,-118.48 340.98,-125.46"/>
|
||||
<path fill="none" stroke="midnightblue" d="M20.06,-363.4C20.94,-305.02 33.54,0 200,0 200,0 200,0 539.5,0 642.84,0 672.25,-4.14 768,-43 789.91,-51.89 812.11,-67.33 827.29,-79.08"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="825.35,-82.02 835.36,-85.5 829.71,-76.54 825.35,-82.02"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="84.5,-57.5 84.5,-76.5 179.5,-76.5 179.5,-57.5 84.5,-57.5"/>
|
||||
<text text-anchor="middle" x="132" y="-64.5" font-family="Helvetica,sans-Serif" font-size="10.00">fit_OLS_regressor</text>
|
||||
<polygon fill="white" stroke="black" points="153.5,-382.5 153.5,-401.5 248.5,-401.5 248.5,-382.5 153.5,-382.5"/>
|
||||
<text text-anchor="middle" x="201" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">fit_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.33,-67C48.24,-67 61.08,-67 74.03,-67"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.38,-70.5 84.38,-67 74.38,-63.5 74.38,-70.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M38.25,-374.93C62.68,-377.5 107.12,-382.2 143.24,-386.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="142.87,-389.49 153.19,-387.06 143.61,-382.53 142.87,-389.49"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-19.5 74,-38.5 190,-38.5 190,-19.5 74,-19.5"/>
|
||||
<text text-anchor="middle" x="132" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">predict_OLS_regressor</text>
|
||||
<polygon fill="white" stroke="black" points="143,-420.5 143,-439.5 259,-439.5 259,-420.5 143,-420.5"/>
|
||||
<text text-anchor="middle" x="201" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">predict_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node8 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node1->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.47,-60.42C48.89,-56.72 62.15,-52.06 74,-48 79.96,-45.96 86.28,-43.82 92.45,-41.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="93.6,-45.06 101.97,-38.57 91.38,-38.42 93.6,-45.06"/>
|
||||
<path fill="none" stroke="midnightblue" d="M38.34,-380.62C48.72,-384.81 61.99,-389.96 74,-394 100.04,-402.76 129.54,-411.27 153.46,-417.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="152.77,-421.25 163.33,-420.49 154.6,-414.49 152.77,-421.25"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-344.5 74,-363.5 107,-363.5 107,-344.5 74,-344.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-351.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node9 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node1->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-368.01C46.15,-365.85 55.52,-363.29 64.07,-360.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="65.23,-364.26 73.95,-358.25 63.38,-357.51 65.23,-364.26"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="236,-76.5 236,-95.5 303,-95.5 303,-76.5 236,-76.5"/>
|
||||
<text text-anchor="middle" x="269.5" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_inverse</text>
|
||||
<polygon fill="white" stroke="black" points="333,-382.5 333,-401.5 400,-401.5 400,-382.5 333,-382.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_inverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M179.63,-73.54C194.54,-75.63 210.96,-77.93 225.59,-79.98"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="225.49,-83.5 235.88,-81.43 226.46,-76.57 225.49,-83.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M248.85,-392C272.17,-392 300.16,-392 322.87,-392"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="322.9,-395.5 332.9,-392 322.9,-388.5 322.9,-395.5"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="230.5,-38.5 230.5,-57.5 308.5,-57.5 308.5,-38.5 230.5,-38.5"/>
|
||||
<text text-anchor="middle" x="269.5" y="-45.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_transpose</text>
|
||||
<polygon fill="white" stroke="black" points="327.5,-496.5 327.5,-515.5 405.5,-515.5 405.5,-496.5 327.5,-496.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-503.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_transpose</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node6 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node3->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M179.63,-60.46C192.68,-58.63 206.89,-56.64 220.04,-54.8"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="220.9,-58.21 230.32,-53.35 219.93,-51.28 220.9,-58.21"/>
|
||||
<path fill="none" stroke="midnightblue" d="M243.62,-401.55C249.17,-404.02 254.5,-407.12 259,-411 285.79,-434.11 268.28,-458.81 295,-482 301.53,-487.67 309.45,-492.01 317.6,-495.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="316.6,-498.69 327.2,-498.79 318.97,-492.11 316.6,-498.69"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="226,-0.5 226,-19.5 313,-19.5 313,-0.5 226,-0.5"/>
|
||||
<text text-anchor="middle" x="269.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
<polygon fill="white" stroke="black" points="804,-382.5 804,-401.5 891,-401.5 891,-382.5 804,-382.5"/>
|
||||
<text text-anchor="middle" x="847.5" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node7 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node3->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M164.7,-57.46C173.04,-54.67 181.94,-51.44 190,-48 206.64,-40.89 209.73,-36.92 226,-29 229.58,-27.26 233.35,-25.49 237.11,-23.76"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="238.65,-26.9 246.32,-19.59 235.76,-20.52 238.65,-26.9"/>
|
||||
<path fill="none" stroke="midnightblue" d="M236.42,-401.61C287.68,-415.37 387.38,-440.02 474,-449 603.99,-462.47 643.45,-483.58 768,-444 790.92,-436.72 813.42,-420.63 828.42,-408.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="831,-410.66 836.33,-401.51 826.45,-405.34 831,-410.66"/>
|
||||
</g>
|
||||
<!-- Node4->Node2 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M297.5,-95.59C310.88,-100.34 327.22,-106.14 341.64,-111.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="340.65,-114.63 351.25,-114.68 343,-108.03 340.65,-114.63"/>
|
||||
<path fill="none" stroke="midnightblue" d="M400.04,-397.8C474.63,-409.12 659.85,-425.73 768,-335 835.81,-278.12 845.49,-161.69 846.55,-115.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="850.05,-114.76 846.66,-104.72 843.05,-114.68 850.05,-114.76"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="349,-76.5 349,-95.5 408,-95.5 408,-76.5 349,-76.5"/>
|
||||
<text text-anchor="middle" x="378.5" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">is_square</text>
|
||||
<polygon fill="white" stroke="black" points="509,-420.5 509,-439.5 568,-439.5 568,-420.5 509,-420.5"/>
|
||||
<text text-anchor="middle" x="538.5" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">is_square</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M303.18,-86C314.38,-86 327.02,-86 338.66,-86"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="339,-89.5 349,-86 339,-82.5 339,-89.5"/>
|
||||
<path fill="none" stroke="midnightblue" d="M400.28,-399.33C428.41,-405.62 469.02,-414.69 498.75,-421.34"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="498.26,-424.81 508.78,-423.58 499.79,-417.98 498.26,-424.81"/>
|
||||
</g>
|
||||
<!-- Node9->Node2 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node9->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M92.07,-344.13C94.16,-315.48 103.53,-230.83 143,-176 210.99,-81.56 249.14,-38 365.5,-38 365.5,-38 365.5,-38 539.5,-38 638.97,-38 753.56,-67.28 810.5,-83.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="809.53,-87.23 820.11,-86.71 811.52,-80.52 809.53,-87.23"/>
|
||||
</g>
|
||||
<!-- Node9->Node3 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node9->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.05,-359.44C121.62,-364.55 143.96,-372.37 163.09,-379.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="162.14,-382.45 172.74,-382.45 164.46,-375.84 162.14,-382.45"/>
|
||||
</g>
|
||||
<!-- Node9->Node7 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node9->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.27,-354.79C196.49,-359.28 639.44,-381.58 793.54,-389.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="793.54,-392.84 803.7,-389.85 793.89,-385.85 793.54,-392.84"/>
|
||||
</g>
|
||||
<!-- Node9->Node8 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node9->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M97.99,-363.89C106.76,-376.53 123.58,-398.3 143,-411 146.11,-413.03 149.45,-414.87 152.91,-416.52"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="151.66,-419.79 162.24,-420.48 154.4,-413.35 151.66,-419.79"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="182,-242.5 182,-261.5 220,-261.5 220,-242.5 182,-242.5"/>
|
||||
<text text-anchor="middle" x="201" y="-249.5" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node10 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node9->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M101.9,-344.22C120.5,-326.74 159.64,-289.94 182.46,-268.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.9,-271 189.79,-261.6 180.1,-265.9 184.9,-271"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="182,-185.5 182,-204.5 220,-204.5 220,-185.5 182,-185.5"/>
|
||||
<text text-anchor="middle" x="201" y="-192.5" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node18 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node9->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M93.63,-344.21C98.81,-322.23 113.84,-268.14 143,-233 151.16,-223.16 162.52,-214.88 172.96,-208.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.81,-211.56 181.78,-203.58 171.35,-205.48 174.81,-211.56"/>
|
||||
</g>
|
||||
<!-- Node10->Node2 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node10->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.18,-246.45C279.79,-228.39 474.92,-170.3 639,-133 698.75,-119.42 769.04,-107.36 810.56,-100.63"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="811.16,-104.08 820.48,-99.04 810.05,-97.17 811.16,-104.08"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="295,-261.5 295,-280.5 438,-280.5 438,-261.5 295,-261.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-268.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline::fit</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node10->Node11 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node10->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.12,-254.11C236.05,-255.96 260.42,-258.79 284.68,-261.61"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="284.34,-265.09 294.67,-262.77 285.15,-258.14 284.34,-265.09"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="474,-214 474,-244 603,-244 603,-214 474,-214"/>
|
||||
<text text-anchor="start" x="482" y="-232" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="538.5" y="-221" font-family="Helvetica,sans-Serif" font-size="10.00">::predict</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node10->Node13 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node10->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.04,-250.76C265.11,-247.67 384.67,-239.48 463.51,-234.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="464.14,-237.54 473.88,-233.36 463.66,-230.55 464.14,-237.54"/>
|
||||
</g>
|
||||
<!-- Node11->Node7 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node11->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M399.08,-280.61C420.22,-286.94 448.69,-295.26 474,-302 587.75,-332.28 722.2,-363.69 794.4,-380.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="793.63,-383.63 804.16,-382.44 795.19,-376.8 793.63,-383.63"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="639,-295 639,-325 768,-325 768,-295 639,-295"/>
|
||||
<text text-anchor="start" x="647" y="-313" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="703.5" y="-302" font-family="Helvetica,sans-Serif" font-size="10.00">::check_size_match</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node11->Node12 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node11->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M438.14,-279.22C494.09,-285.74 572.02,-294.81 628.77,-301.42"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="628.42,-304.9 638.75,-302.58 629.23,-297.95 628.42,-304.9"/>
|
||||
</g>
|
||||
<!-- Node11->Node13 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node11->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M406.08,-261.47C424.09,-257.02 446.11,-251.58 466.95,-246.43"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="467.87,-249.81 476.74,-244.01 466.19,-243.01 467.87,-249.81"/>
|
||||
</g>
|
||||
<!-- Node12->Node2 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node12->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M754.74,-294.85C759.57,-292.08 764.11,-288.82 768,-285 817.12,-236.69 836.8,-153.21 843.5,-115.06"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="847.03,-115.2 845.19,-104.77 840.12,-114.07 847.03,-115.2"/>
|
||||
</g>
|
||||
<!-- Node12->Node7 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node12->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M738.9,-325.15C748.46,-329.66 758.76,-334.79 768,-340 787.88,-351.2 809.42,-365.65 824.9,-376.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="823.07,-379.47 833.26,-382.38 827.11,-373.75 823.07,-379.47"/>
|
||||
</g>
|
||||
<!-- Node13->Node12 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node13->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M571.23,-244.05C581.51,-249.17 592.87,-255.1 603,-261 619.62,-270.68 621.96,-276.09 639,-285 642.95,-287.06 647.1,-289.06 651.32,-290.96"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="650.03,-294.22 660.6,-294.97 652.81,-287.79 650.03,-294.22"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="658.5,-142.5 658.5,-161.5 748.5,-161.5 748.5,-142.5 658.5,-142.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node14 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node13->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M562.01,-213.8C581.66,-201.03 611.3,-183.01 639,-171 644.34,-168.68 650.05,-166.54 655.78,-164.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="656.93,-167.9 665.37,-161.5 654.78,-161.24 656.93,-167.9"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/begin.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="657.5,-256.5 657.5,-275.5 749.5,-275.5 749.5,-256.5 657.5,-256.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-263.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::begin</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node15 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node13->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M603.45,-243.52C618.96,-247.04 635.36,-250.76 650.25,-254.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="649.77,-257.62 660.3,-256.42 651.32,-250.79 649.77,-257.62"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/end.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="661,-218.5 661,-237.5 746,-237.5 746,-218.5 661,-218.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-225.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::end</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node16 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node13->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M603.45,-228.61C619.11,-228.51 635.67,-228.41 650.67,-228.32"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="650.8,-231.82 660.78,-228.26 650.76,-224.82 650.8,-231.82"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/inner_product.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="656,-180.5 656,-199.5 751,-199.5 751,-180.5 656,-180.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::inner_product</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node17 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node13->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M602.52,-213.92C619.13,-209.95 636.82,-205.72 652.63,-201.93"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="653.8,-205.25 662.72,-199.52 652.18,-198.44 653.8,-205.25"/>
|
||||
</g>
|
||||
<!-- Node18->Node2 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node18->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M207.16,-185.46C219.22,-164.32 251.53,-113.94 295,-95 387.7,-54.62 702.86,-80.87 810.28,-91.29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="810.01,-94.78 820.31,-92.28 810.7,-87.82 810.01,-94.78"/>
|
||||
</g>
|
||||
<!-- Node18->Node11 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node18->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.12,-203.42C248.05,-216.4 301.89,-241.43 335.63,-257.12"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="334.45,-260.43 344.99,-261.47 337.4,-254.08 334.45,-260.43"/>
|
||||
</g>
|
||||
<!-- Node18->Node13 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node18->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.04,-196.83C265.11,-201.4 384.67,-213.51 463.51,-221.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="463.58,-225.03 473.88,-222.55 464.28,-218.06 463.58,-225.03"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/random/rand.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="339,-104.5 339,-123.5 394,-123.5 394,-104.5 339,-104.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-111.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::rand</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M215.64,-185.3C233.3,-173.06 265.35,-151.92 295,-138 305.75,-132.95 317.87,-128.44 328.98,-124.72"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="330.4,-127.94 338.84,-121.54 328.25,-121.28 330.4,-127.94"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="ordinary__least__squares__regressor_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 25 KiB |
@@ -0,0 +1,378 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.0 (20200408.0750)
|
||||
-->
|
||||
<!-- Title: main Pages: 1 -->
|
||||
<svg width="899pt" height="524pt"
|
||||
viewBox="0.00 0.00 899.00 524.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 520)">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-520 895,-520 895,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-363.5 0,-382.5 38,-382.5 38,-363.5 0,-363.5"/>
|
||||
<text text-anchor="middle" x="19" y="-370.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="820.5,-85.5 820.5,-104.5 874.5,-104.5 874.5,-85.5 820.5,-85.5"/>
|
||||
<text text-anchor="middle" x="847.5" y="-92.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M20.06,-363.4C20.94,-305.02 33.54,0 200,0 200,0 200,0 539.5,0 642.84,0 672.25,-4.14 768,-43 789.91,-51.89 812.11,-67.33 827.29,-79.08"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="825.35,-82.02 835.36,-85.5 829.71,-76.54 825.35,-82.02"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a38ff1d954e9b7de93eb20e2dd101a045" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="153.5,-382.5 153.5,-401.5 248.5,-401.5 248.5,-382.5 153.5,-382.5"/>
|
||||
<text text-anchor="middle" x="201" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">fit_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.25,-374.93C62.68,-377.5 107.12,-382.2 143.24,-386.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="142.87,-389.49 153.19,-387.06 143.61,-382.53 142.87,-389.49"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4bcaaf41c66da4d3a471dacef133def7" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-420.5 143,-439.5 259,-439.5 259,-420.5 143,-420.5"/>
|
||||
<text text-anchor="middle" x="201" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">predict_OLS_regressor</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node8 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node1->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.34,-380.62C48.72,-384.81 61.99,-389.96 74,-394 100.04,-402.76 129.54,-411.27 153.46,-417.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="152.77,-421.25 163.33,-420.49 154.6,-414.49 152.77,-421.25"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#ae1a3968e7947464bee7714f6d43b7002" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-344.5 74,-363.5 107,-363.5 107,-344.5 74,-344.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-351.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node9 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node1->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-368.01C46.15,-365.85 55.52,-363.29 64.07,-360.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="65.23,-364.26 73.95,-358.25 63.38,-357.51 65.23,-364.26"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a98ab8f75d981088369b89b8be2182483" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="333,-382.5 333,-401.5 400,-401.5 400,-382.5 333,-382.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_inverse</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M248.85,-392C272.17,-392 300.16,-392 322.87,-392"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="322.9,-395.5 332.9,-392 322.9,-388.5 322.9,-395.5"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a889f9de199fa793497c864d8e493af05" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="327.5,-496.5 327.5,-515.5 405.5,-515.5 405.5,-496.5 327.5,-496.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-503.5" font-family="Helvetica,sans-Serif" font-size="10.00">get_transpose</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node6 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node3->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M243.62,-401.55C249.17,-404.02 254.5,-407.12 259,-411 285.79,-434.11 268.28,-458.81 295,-482 301.53,-487.67 309.45,-492.01 317.6,-495.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="316.6,-498.69 327.2,-498.79 318.97,-492.11 316.6,-498.69"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="804,-382.5 804,-401.5 891,-401.5 891,-382.5 804,-382.5"/>
|
||||
<text text-anchor="middle" x="847.5" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node7 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node3->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M236.42,-401.61C287.68,-415.37 387.38,-440.02 474,-449 603.99,-462.47 643.45,-483.58 768,-444 790.92,-436.72 813.42,-420.63 828.42,-408.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="831,-410.66 836.33,-401.51 826.45,-405.34 831,-410.66"/>
|
||||
</g>
|
||||
<!-- Node4->Node2 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M400.04,-397.8C474.63,-409.12 659.85,-425.73 768,-335 835.81,-278.12 845.49,-161.69 846.55,-115.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="850.05,-114.76 846.66,-104.72 843.05,-114.68 850.05,-114.76"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../dc/d38/ordinary__least__squares__regressor_8cpp.html#a4921874435266592b222e3f2eda0e01f" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="509,-420.5 509,-439.5 568,-439.5 568,-420.5 509,-420.5"/>
|
||||
<text text-anchor="middle" x="538.5" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">is_square</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M400.28,-399.33C428.41,-405.62 469.02,-414.69 498.75,-421.34"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="498.26,-424.81 508.78,-423.58 499.79,-417.98 498.26,-424.81"/>
|
||||
</g>
|
||||
<!-- Node9->Node2 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node9->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M92.07,-344.13C94.16,-315.48 103.53,-230.83 143,-176 210.99,-81.56 249.14,-38 365.5,-38 365.5,-38 365.5,-38 539.5,-38 638.97,-38 753.56,-67.28 810.5,-83.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="809.53,-87.23 820.11,-86.71 811.52,-80.52 809.53,-87.23"/>
|
||||
</g>
|
||||
<!-- Node9->Node3 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node9->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.05,-359.44C121.62,-364.55 143.96,-372.37 163.09,-379.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="162.14,-382.45 172.74,-382.45 164.46,-375.84 162.14,-382.45"/>
|
||||
</g>
|
||||
<!-- Node9->Node7 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node9->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.27,-354.79C196.49,-359.28 639.44,-381.58 793.54,-389.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="793.54,-392.84 803.7,-389.85 793.89,-385.85 793.54,-392.84"/>
|
||||
</g>
|
||||
<!-- Node9->Node8 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node9->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M97.99,-363.89C106.76,-376.53 123.58,-398.3 143,-411 146.11,-413.03 149.45,-414.87 152.91,-416.52"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="151.66,-419.79 162.24,-420.48 154.4,-413.35 151.66,-419.79"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a52053d88ea1bcbbed9aca67ab4eeb499" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="182,-242.5 182,-261.5 220,-261.5 220,-242.5 182,-242.5"/>
|
||||
<text text-anchor="middle" x="201" y="-249.5" font-family="Helvetica,sans-Serif" font-size="10.00">test1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node10 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node9->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M101.9,-344.22C120.5,-326.74 159.64,-289.94 182.46,-268.49"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.9,-271 189.79,-261.6 180.1,-265.9 184.9,-271"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d5/db0/adaline__learning_8cpp.html#a379f7488a305f2571f2932b319931f82" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="182,-185.5 182,-204.5 220,-204.5 220,-185.5 182,-185.5"/>
|
||||
<text text-anchor="middle" x="201" y="-192.5" font-family="Helvetica,sans-Serif" font-size="10.00">test2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node9->Node18 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node9->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M93.63,-344.21C98.81,-322.23 113.84,-268.14 143,-233 151.16,-223.16 162.52,-214.88 172.96,-208.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.81,-211.56 181.78,-203.58 171.35,-205.48 174.81,-211.56"/>
|
||||
</g>
|
||||
<!-- Node10->Node2 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node10->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.18,-246.45C279.79,-228.39 474.92,-170.3 639,-133 698.75,-119.42 769.04,-107.36 810.56,-100.63"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="811.16,-104.08 820.48,-99.04 810.05,-97.17 811.16,-104.08"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#a74e3c6c037b67895014414c5d75465e5" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="295,-261.5 295,-280.5 438,-280.5 438,-261.5 295,-261.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-268.5" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline::fit</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node10->Node11 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node10->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.12,-254.11C236.05,-255.96 260.42,-258.79 284.68,-261.61"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="284.34,-265.09 294.67,-262.77 285.15,-258.14 284.34,-265.09"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ab11242d9ad5b03a75911e29b04f78fd3" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="474,-214 474,-244 603,-244 603,-214 474,-214"/>
|
||||
<text text-anchor="start" x="482" y="-232" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="538.5" y="-221" font-family="Helvetica,sans-Serif" font-size="10.00">::predict</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node10->Node13 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node10->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.04,-250.76C265.11,-247.67 384.67,-239.48 463.51,-234.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="464.14,-237.54 473.88,-233.36 463.66,-230.55 464.14,-237.54"/>
|
||||
</g>
|
||||
<!-- Node11->Node7 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node11->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M399.08,-280.61C420.22,-286.94 448.69,-295.26 474,-302 587.75,-332.28 722.2,-363.69 794.4,-380.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="793.63,-383.63 804.16,-382.44 795.19,-376.8 793.63,-383.63"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d6/d30/classmachine__learning_1_1adaline.html#ac8a9c2aaaa63b0f27ea176857e1e7d56" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="639,-295 639,-325 768,-325 768,-295 639,-295"/>
|
||||
<text text-anchor="start" x="647" y="-313" font-family="Helvetica,sans-Serif" font-size="10.00">machine_learning::adaline</text>
|
||||
<text text-anchor="middle" x="703.5" y="-302" font-family="Helvetica,sans-Serif" font-size="10.00">::check_size_match</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node11->Node12 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node11->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M438.14,-279.22C494.09,-285.74 572.02,-294.81 628.77,-301.42"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="628.42,-304.9 638.75,-302.58 629.23,-297.95 628.42,-304.9"/>
|
||||
</g>
|
||||
<!-- Node11->Node13 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node11->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M406.08,-261.47C424.09,-257.02 446.11,-251.58 466.95,-246.43"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="467.87,-249.81 476.74,-244.01 466.19,-243.01 467.87,-249.81"/>
|
||||
</g>
|
||||
<!-- Node12->Node2 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node12->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M754.74,-294.85C759.57,-292.08 764.11,-288.82 768,-285 817.12,-236.69 836.8,-153.21 843.5,-115.06"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="847.03,-115.2 845.19,-104.77 840.12,-114.07 847.03,-115.2"/>
|
||||
</g>
|
||||
<!-- Node12->Node7 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node12->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M738.9,-325.15C748.46,-329.66 758.76,-334.79 768,-340 787.88,-351.2 809.42,-365.65 824.9,-376.47"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="823.07,-379.47 833.26,-382.38 827.11,-373.75 823.07,-379.47"/>
|
||||
</g>
|
||||
<!-- Node13->Node12 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node13->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M571.23,-244.05C581.51,-249.17 592.87,-255.1 603,-261 619.62,-270.68 621.96,-276.09 639,-285 642.95,-287.06 647.1,-289.06 651.32,-290.96"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="650.03,-294.22 660.6,-294.97 652.81,-287.79 650.03,-294.22"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/back.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="658.5,-142.5 658.5,-161.5 748.5,-161.5 748.5,-142.5 658.5,-142.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node14 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node13->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M562.01,-213.8C581.66,-201.03 611.3,-183.01 639,-171 644.34,-168.68 650.05,-166.54 655.78,-164.59"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="656.93,-167.9 665.37,-161.5 654.78,-161.24 656.93,-167.9"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/begin.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="657.5,-256.5 657.5,-275.5 749.5,-275.5 749.5,-256.5 657.5,-256.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-263.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::begin</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node15 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node13->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M603.45,-243.52C618.96,-247.04 635.36,-250.76 650.25,-254.14"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="649.77,-257.62 660.3,-256.42 651.32,-250.79 649.77,-257.62"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/end.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="661,-218.5 661,-237.5 746,-237.5 746,-218.5 661,-218.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-225.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::end</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node16 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node13->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M603.45,-228.61C619.11,-228.51 635.67,-228.41 650.67,-228.32"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="650.8,-231.82 660.78,-228.26 650.76,-224.82 650.8,-231.82"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/algorithm/inner_product.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="656,-180.5 656,-199.5 751,-199.5 751,-180.5 656,-180.5"/>
|
||||
<text text-anchor="middle" x="703.5" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::inner_product</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node17 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node13->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M602.52,-213.92C619.13,-209.95 636.82,-205.72 652.63,-201.93"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="653.8,-205.25 662.72,-199.52 652.18,-198.44 653.8,-205.25"/>
|
||||
</g>
|
||||
<!-- Node18->Node2 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node18->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M207.16,-185.46C219.22,-164.32 251.53,-113.94 295,-95 387.7,-54.62 702.86,-80.87 810.28,-91.29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="810.01,-94.78 820.31,-92.28 810.7,-87.82 810.01,-94.78"/>
|
||||
</g>
|
||||
<!-- Node18->Node11 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node18->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.12,-203.42C248.05,-216.4 301.89,-241.43 335.63,-257.12"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="334.45,-260.43 344.99,-261.47 337.4,-254.08 334.45,-260.43"/>
|
||||
</g>
|
||||
<!-- Node18->Node13 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node18->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M220.04,-196.83C265.11,-201.4 384.67,-213.51 463.51,-221.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="463.58,-225.03 473.88,-222.55 464.28,-218.06 463.58,-225.03"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/numeric/random/rand.html#" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="339,-104.5 339,-123.5 394,-123.5 394,-104.5 339,-104.5"/>
|
||||
<text text-anchor="middle" x="366.5" y="-111.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::rand</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M215.64,-185.3C233.3,-173.06 265.35,-151.92 295,-138 305.75,-132.95 317.87,-128.44 328.98,-124.72"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="330.4,-127.94 338.84,-121.54 328.25,-121.28 330.4,-127.94"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 20 KiB |
Reference in New Issue
Block a user