I had the same result when used make_tuple rather than tie. I fixed it<br>
though in my own fork:<br>
http://github.com/theSundayProgrammer/mlpack<br>
fork:mytweaks<br>
SHA1: 540dd7c3b3a5f3857eed922d446bfeb5016dbcd9<br>
<br>
Although it is for CNN not FNN, I guess a similar change for FNN should<br>
work too<br>
<br>
<br>
On Thu, Mar 3, 2016 at 3:29 AM, sudarshan &lt;notifications@github.com&gt; wrote:<br>
<br>
&gt; Thank you. I checked out pr/536 and linked the include directories and lib<br>
&gt; from there. I got rid off all the compiler error. However, I get a 100%<br>
&gt; classification error when I use std::make_tuple, but when I use std::tie I<br>
&gt; get 4.95916%. This is my funciton:<br>
&gt;<br>
&gt; auto BuildFFN(MatType&amp; trainData, MatType&amp; trainLabels, MatType&amp; testData, MatType&amp; testLabels, const size_t hiddenLayerSize)<br>
&gt; {<br>
&gt;     // input layer<br>
&gt;     ann::LinearLayer&lt;&gt; inputLayer(trainData.n_rows, hiddenLayerSize);<br>
&gt;     ann::BiasLayer&lt;&gt; inputBiasLayer(hiddenLayerSize);<br>
&gt;     ann::BaseLayer&lt;PerformanceFunction&gt; inputBaseLayer;<br>
&gt;<br>
&gt;     // hidden layer<br>
&gt;     ann::LinearLayer&lt;&gt; hiddenLayer1(hiddenLayerSize, trainLabels.n_rows);<br>
&gt;     ann::BiasLayer&lt;&gt; hiddenBiasLayer1(trainLabels.n_rows);<br>
&gt;     ann::BaseLayer&lt;PerformanceFunction&gt; outputLayer;<br>
&gt;<br>
&gt;     // output layer<br>
&gt;     OutputLayerType classOutputLayer;<br>
&gt;<br>
&gt;     auto modules = std::tie(inputLayer, inputBiasLayer, inputBaseLayer, hiddenLayer1, hiddenBiasLayer1, outputLayer);<br>
&gt;     ann::FFN&lt;decltype(modules), decltype(classOutputLayer), ann::RandomInitialization, PerformanceFunctionType&gt; net(modules, classOutputLayer);<br>
&gt;<br>
&gt;     net.Train(trainData, trainLabels);<br>
&gt;     arma::mat prediction;<br>
&gt;     net.Predict(testData, prediction);<br>
&gt;<br>
&gt;     double classificationError;<br>
&gt;     for (size_t i = 0; i &lt; testData.n_cols; i++)<br>
&gt;     {<br>
&gt;         if (arma::sum(arma::sum(arma::abs(prediction.col(i) - testLabels.col(i)))) != 0)<br>
&gt;         {<br>
&gt;             classificationError++;<br>
&gt;         }<br>
&gt;     }<br>
&gt;<br>
&gt;     std::cout &lt;&lt; &quot;Classification Error = &quot; &lt;&lt; (double(classificationError) / testData.n_cols) * 100 &lt;&lt; &quot;%&quot; &lt;&lt; std::endl;<br>
&gt;<br>
&gt;     return net;<br>
&gt; }<br>
&gt;<br>
&gt; —<br>
&gt; Reply to this email directly or view it on GitHub<br>
&gt; &lt;https://github.com/mlpack/mlpack/issues/531#issuecomment-191313956&gt;.<br>
&gt;<br>
<br>
<br>
<br>
-- <br>
Joseph Chakravarti Mariadassou<br>
http://thesundayprogrammer.com<br>


<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">&mdash;<br>Reply to this email directly or <a href="https://github.com/mlpack/mlpack/issues/531#issuecomment-191389288">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AJ4bFC_pt6-W7M4noQe2D9D3d9bDXgBPks5ppeYFgaJpZM4HmbCC.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/mlpack/mlpack/issues/531#issuecomment-191389288"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>