Files
mlpack/doc/html/classmlpack_1_1ann_1_1Convolution.html
T

2038 lines
124 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>mlpack: mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra-stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">mlpack
&#160;<span id="projectnumber">master</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacemlpack.html">mlpack</a></li><li class="navelem"><a class="el" href="namespacemlpack_1_1ann.html">ann</a></li><li class="navelem"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html">Convolution</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classmlpack_1_1ann_1_1Convolution-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Implementation of the <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> class.
<a href="classmlpack_1_1ann_1_1Convolution.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a97f55f6503c149d51052466806f13c9c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a97f55f6503c149d51052466806f13c9c">Convolution</a> ()</td></tr>
<tr class="memdesc:a97f55f6503c149d51052466806f13c9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> object. <a href="#a97f55f6503c149d51052466806f13c9c">More...</a><br /></td></tr>
<tr class="separator:a97f55f6503c149d51052466806f13c9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdd5b26916a416a34d7e9f93048fd5ed"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#acdd5b26916a416a34d7e9f93048fd5ed">Convolution</a> (const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ac86096b84b4e1b81d1e51784840260cd">inSize</a>, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a4ab4efa70730deea85b1dea40a9f475f">outSize</a>, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#af4489dafb6cb83ea25fa5b6baf3b679e">kW</a>, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a4caa1d8911fd09f63ca4601019e15e13">kH</a>, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a9ad943345b3812c59f163f6e83b30d2e">dW</a>=1, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a1c276453c007cf96fc9e39fb5313be57">dH</a>=1, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a0d6dd4c3dc5ed18026d8ac23b69d71ed">padW</a>=0, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a82c26749edd6a44f4337d20a40ad391d">padH</a>=0, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a579220e11384a1ff5baa765056dacb64">inputWidth</a>=0, const size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aa4b83d01e8d1c746cbe28c6a50c2598a">inputHeight</a>=0)</td></tr>
<tr class="memdesc:acdd5b26916a416a34d7e9f93048fd5ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> object using the specified number of input maps, output maps, filter size, stride and padding parameter. <a href="#acdd5b26916a416a34d7e9f93048fd5ed">More...</a><br /></td></tr>
<tr class="separator:acdd5b26916a416a34d7e9f93048fd5ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abede1642dc47f49eac0dba0259594a69"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:abede1642dc47f49eac0dba0259594a69"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#abede1642dc47f49eac0dba0259594a69">Backward</a> (const arma::Mat&lt; eT &gt; &amp;&amp;, arma::Mat&lt; eT &gt; &amp;&amp;gy, arma::Mat&lt; eT &gt; &amp;&amp;g)</td></tr>
<tr class="memdesc:abede1642dc47f49eac0dba0259594a69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ordinary feed backward pass of a neural network, calculating the function f(x) by propagating x backwards through f. <a href="#abede1642dc47f49eac0dba0259594a69">More...</a><br /></td></tr>
<tr class="separator:abede1642dc47f49eac0dba0259594a69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2730019f32480fc3d984bb09666a03a"><td class="memItemLeft" align="right" valign="top">OutputDataType const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ab2730019f32480fc3d984bb09666a03a">Delta</a> () const </td></tr>
<tr class="memdesc:ab2730019f32480fc3d984bb09666a03a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the delta. <a href="#ab2730019f32480fc3d984bb09666a03a">More...</a><br /></td></tr>
<tr class="separator:ab2730019f32480fc3d984bb09666a03a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add7e33b52bda6e0602cb98cb91cb09a9"><td class="memItemLeft" align="right" valign="top">OutputDataType &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#add7e33b52bda6e0602cb98cb91cb09a9">Delta</a> ()</td></tr>
<tr class="memdesc:add7e33b52bda6e0602cb98cb91cb09a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the delta. <a href="#add7e33b52bda6e0602cb98cb91cb09a9">More...</a><br /></td></tr>
<tr class="separator:add7e33b52bda6e0602cb98cb91cb09a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6290e21f1659a6c17b6dc96dd10b6e92"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:a6290e21f1659a6c17b6dc96dd10b6e92"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a6290e21f1659a6c17b6dc96dd10b6e92">Forward</a> (const arma::Mat&lt; eT &gt; &amp;&amp;input, arma::Mat&lt; eT &gt; &amp;&amp;output)</td></tr>
<tr class="memdesc:a6290e21f1659a6c17b6dc96dd10b6e92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ordinary feed forward pass of a neural network, evaluating the function f(x) by propagating the activity forward through f. <a href="#a6290e21f1659a6c17b6dc96dd10b6e92">More...</a><br /></td></tr>
<tr class="separator:a6290e21f1659a6c17b6dc96dd10b6e92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad45c42673ebd2c1a8f471b267502a2d3"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:ad45c42673ebd2c1a8f471b267502a2d3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ad45c42673ebd2c1a8f471b267502a2d3">Gradient</a> (const arma::Mat&lt; eT &gt; &amp;&amp;, arma::Mat&lt; eT &gt; &amp;&amp;error, arma::Mat&lt; eT &gt; &amp;&amp;<a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aac575be6fc69cfee9ad0f1ad45299f80">gradient</a>)</td></tr>
<tr class="separator:ad45c42673ebd2c1a8f471b267502a2d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8b1e4d597519d1116d650ca0ecd51e3"><td class="memItemLeft" align="right" valign="top">OutputDataType const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aa8b1e4d597519d1116d650ca0ecd51e3">Gradient</a> () const </td></tr>
<tr class="memdesc:aa8b1e4d597519d1116d650ca0ecd51e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the gradient. <a href="#aa8b1e4d597519d1116d650ca0ecd51e3">More...</a><br /></td></tr>
<tr class="separator:aa8b1e4d597519d1116d650ca0ecd51e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2cf75e77fd91c629092486dfb6998ae"><td class="memItemLeft" align="right" valign="top">OutputDataType &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ab2cf75e77fd91c629092486dfb6998ae">Gradient</a> ()</td></tr>
<tr class="memdesc:ab2cf75e77fd91c629092486dfb6998ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the gradient. <a href="#ab2cf75e77fd91c629092486dfb6998ae">More...</a><br /></td></tr>
<tr class="separator:ab2cf75e77fd91c629092486dfb6998ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa73f23583b9c8d18c69bbd803a61832f"><td class="memItemLeft" align="right" valign="top">size_t const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aa73f23583b9c8d18c69bbd803a61832f">InputHeight</a> () const </td></tr>
<tr class="memdesc:aa73f23583b9c8d18c69bbd803a61832f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the input height. <a href="#aa73f23583b9c8d18c69bbd803a61832f">More...</a><br /></td></tr>
<tr class="separator:aa73f23583b9c8d18c69bbd803a61832f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b61105460d55ba1dc1f6f7e5df04ea"><td class="memItemLeft" align="right" valign="top">size_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a56b61105460d55ba1dc1f6f7e5df04ea">InputHeight</a> ()</td></tr>
<tr class="memdesc:a56b61105460d55ba1dc1f6f7e5df04ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the input height. <a href="#a56b61105460d55ba1dc1f6f7e5df04ea">More...</a><br /></td></tr>
<tr class="separator:a56b61105460d55ba1dc1f6f7e5df04ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2161039665a939782c59a32cab3bbb7c"><td class="memItemLeft" align="right" valign="top">InputDataType const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a2161039665a939782c59a32cab3bbb7c">InputParameter</a> () const </td></tr>
<tr class="memdesc:a2161039665a939782c59a32cab3bbb7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the input parameter. <a href="#a2161039665a939782c59a32cab3bbb7c">More...</a><br /></td></tr>
<tr class="separator:a2161039665a939782c59a32cab3bbb7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7904bf1fd0cd9f5fdba578eb500fb3e5"><td class="memItemLeft" align="right" valign="top">InputDataType &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a7904bf1fd0cd9f5fdba578eb500fb3e5">InputParameter</a> ()</td></tr>
<tr class="memdesc:a7904bf1fd0cd9f5fdba578eb500fb3e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the input parameter. <a href="#a7904bf1fd0cd9f5fdba578eb500fb3e5">More...</a><br /></td></tr>
<tr class="separator:a7904bf1fd0cd9f5fdba578eb500fb3e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fea71b2a4a57d1e235681344987eeb5"><td class="memItemLeft" align="right" valign="top">size_t const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a3fea71b2a4a57d1e235681344987eeb5">InputWidth</a> () const </td></tr>
<tr class="memdesc:a3fea71b2a4a57d1e235681344987eeb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the input width. <a href="#a3fea71b2a4a57d1e235681344987eeb5">More...</a><br /></td></tr>
<tr class="separator:a3fea71b2a4a57d1e235681344987eeb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b7d5eda34cdd884d5c601a15bc4e575"><td class="memItemLeft" align="right" valign="top">size_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a6b7d5eda34cdd884d5c601a15bc4e575">InputWidth</a> ()</td></tr>
<tr class="memdesc:a6b7d5eda34cdd884d5c601a15bc4e575"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify input the width. <a href="#a6b7d5eda34cdd884d5c601a15bc4e575">More...</a><br /></td></tr>
<tr class="separator:a6b7d5eda34cdd884d5c601a15bc4e575"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a252c37070ec53c4443bfdc6545b5602a"><td class="memItemLeft" align="right" valign="top">size_t const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a252c37070ec53c4443bfdc6545b5602a">OutputHeight</a> () const </td></tr>
<tr class="memdesc:a252c37070ec53c4443bfdc6545b5602a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the output height. <a href="#a252c37070ec53c4443bfdc6545b5602a">More...</a><br /></td></tr>
<tr class="separator:a252c37070ec53c4443bfdc6545b5602a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10046b541fc85e03e20268999a997659"><td class="memItemLeft" align="right" valign="top">size_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a10046b541fc85e03e20268999a997659">OutputHeight</a> ()</td></tr>
<tr class="memdesc:a10046b541fc85e03e20268999a997659"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the output height. <a href="#a10046b541fc85e03e20268999a997659">More...</a><br /></td></tr>
<tr class="separator:a10046b541fc85e03e20268999a997659"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad91d75b1fb8cb74da6d16f9db71f9c1a"><td class="memItemLeft" align="right" valign="top">OutputDataType const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ad91d75b1fb8cb74da6d16f9db71f9c1a">OutputParameter</a> () const </td></tr>
<tr class="memdesc:ad91d75b1fb8cb74da6d16f9db71f9c1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the output parameter. <a href="#ad91d75b1fb8cb74da6d16f9db71f9c1a">More...</a><br /></td></tr>
<tr class="separator:ad91d75b1fb8cb74da6d16f9db71f9c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a792cbbdcde774b1edff983c6eaf9fcb5"><td class="memItemLeft" align="right" valign="top">OutputDataType &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a792cbbdcde774b1edff983c6eaf9fcb5">OutputParameter</a> ()</td></tr>
<tr class="memdesc:a792cbbdcde774b1edff983c6eaf9fcb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the output parameter. <a href="#a792cbbdcde774b1edff983c6eaf9fcb5">More...</a><br /></td></tr>
<tr class="separator:a792cbbdcde774b1edff983c6eaf9fcb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ca0e14b866f33871403ab6e2938f40a"><td class="memItemLeft" align="right" valign="top">size_t const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a6ca0e14b866f33871403ab6e2938f40a">OutputWidth</a> () const </td></tr>
<tr class="memdesc:a6ca0e14b866f33871403ab6e2938f40a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the output width. <a href="#a6ca0e14b866f33871403ab6e2938f40a">More...</a><br /></td></tr>
<tr class="separator:a6ca0e14b866f33871403ab6e2938f40a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0379359de16f0934507feb5f2e049842"><td class="memItemLeft" align="right" valign="top">size_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a0379359de16f0934507feb5f2e049842">OutputWidth</a> ()</td></tr>
<tr class="memdesc:a0379359de16f0934507feb5f2e049842"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the output width. <a href="#a0379359de16f0934507feb5f2e049842">More...</a><br /></td></tr>
<tr class="separator:a0379359de16f0934507feb5f2e049842"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac117ff98346fba857f0c3392f877f577"><td class="memItemLeft" align="right" valign="top">OutputDataType const &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ac117ff98346fba857f0c3392f877f577">Parameters</a> () const </td></tr>
<tr class="memdesc:ac117ff98346fba857f0c3392f877f577"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the parameters. <a href="#ac117ff98346fba857f0c3392f877f577">More...</a><br /></td></tr>
<tr class="separator:ac117ff98346fba857f0c3392f877f577"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ed8cdacde8b8e430bdc55df6aa9dabd"><td class="memItemLeft" align="right" valign="top">OutputDataType &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a1ed8cdacde8b8e430bdc55df6aa9dabd">Parameters</a> ()</td></tr>
<tr class="memdesc:a1ed8cdacde8b8e430bdc55df6aa9dabd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the parameters. <a href="#a1ed8cdacde8b8e430bdc55df6aa9dabd">More...</a><br /></td></tr>
<tr class="separator:a1ed8cdacde8b8e430bdc55df6aa9dabd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c87bcfaa28fb51caffee542776bbe01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a7c87bcfaa28fb51caffee542776bbe01">Reset</a> ()</td></tr>
<tr class="separator:a7c87bcfaa28fb51caffee542776bbe01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc7ca2d8c0a7ba3ee2a9f3c1ba68401f"><td class="memTemplParams" colspan="2">template&lt;typename Archive &gt; </td></tr>
<tr class="memitem:afc7ca2d8c0a7ba3ee2a9f3c1ba68401f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#afc7ca2d8c0a7ba3ee2a9f3c1ba68401f">Serialize</a> (Archive &amp;ar, const unsigned int)</td></tr>
<tr class="memdesc:afc7ca2d8c0a7ba3ee2a9f3c1ba68401f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize the layer. <a href="#afc7ca2d8c0a7ba3ee2a9f3c1ba68401f">More...</a><br /></td></tr>
<tr class="separator:afc7ca2d8c0a7ba3ee2a9f3c1ba68401f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:ac43383dfb7f7843bc3226f838c45d0a1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ac43383dfb7f7843bc3226f838c45d0a1">ConvOutSize</a> (const size_t size, const size_t k, const size_t s, const size_t p)</td></tr>
<tr class="separator:ac43383dfb7f7843bc3226f838c45d0a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d164992ed786c51a2ffad07651703d1"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:a3d164992ed786c51a2ffad07651703d1"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a3d164992ed786c51a2ffad07651703d1">Pad</a> (const arma::Mat&lt; eT &gt; &amp;input, size_t wPad, size_t hPad, arma::Mat&lt; eT &gt; &amp;output)</td></tr>
<tr class="separator:a3d164992ed786c51a2ffad07651703d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0a782583488ffaeee7f94fc296b267c"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:af0a782583488ffaeee7f94fc296b267c"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#af0a782583488ffaeee7f94fc296b267c">Pad</a> (const arma::Cube&lt; eT &gt; &amp;input, size_t wPad, size_t hPad, arma::Cube&lt; eT &gt; &amp;output)</td></tr>
<tr class="separator:af0a782583488ffaeee7f94fc296b267c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20330974d27c36fda8b99246016339dc"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:a20330974d27c36fda8b99246016339dc"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a20330974d27c36fda8b99246016339dc">Rotate180</a> (const arma::Cube&lt; eT &gt; &amp;input, arma::Cube&lt; eT &gt; &amp;output)</td></tr>
<tr class="separator:a20330974d27c36fda8b99246016339dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59d310606ff68f8a21795f75136232d4"><td class="memTemplParams" colspan="2">template&lt;typename eT &gt; </td></tr>
<tr class="memitem:a59d310606ff68f8a21795f75136232d4"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a59d310606ff68f8a21795f75136232d4">Rotate180</a> (const arma::Mat&lt; eT &gt; &amp;input, arma::Mat&lt; eT &gt; &amp;output)</td></tr>
<tr class="separator:a59d310606ff68f8a21795f75136232d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a7795e6ce33416963ea1cdc4f310490c9"><td class="memItemLeft" align="right" valign="top">arma::mat&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a7795e6ce33416963ea1cdc4f310490c9">bias</a></td></tr>
<tr class="memdesc:a7795e6ce33416963ea1cdc4f310490c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored bias term object. <a href="#a7795e6ce33416963ea1cdc4f310490c9">More...</a><br /></td></tr>
<tr class="separator:a7795e6ce33416963ea1cdc4f310490c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7f6078d912b4d61940effec9d0cf69f"><td class="memItemLeft" align="right" valign="top">OutputDataType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aa7f6078d912b4d61940effec9d0cf69f">delta</a></td></tr>
<tr class="memdesc:aa7f6078d912b4d61940effec9d0cf69f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored delta object. <a href="#aa7f6078d912b4d61940effec9d0cf69f">More...</a><br /></td></tr>
<tr class="separator:aa7f6078d912b4d61940effec9d0cf69f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c276453c007cf96fc9e39fb5313be57"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a1c276453c007cf96fc9e39fb5313be57">dH</a></td></tr>
<tr class="memdesc:a1c276453c007cf96fc9e39fb5313be57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored stride of the filter in y-direction. <a href="#a1c276453c007cf96fc9e39fb5313be57">More...</a><br /></td></tr>
<tr class="separator:a1c276453c007cf96fc9e39fb5313be57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ad943345b3812c59f163f6e83b30d2e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a9ad943345b3812c59f163f6e83b30d2e">dW</a></td></tr>
<tr class="memdesc:a9ad943345b3812c59f163f6e83b30d2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored stride of the filter in x-direction. <a href="#a9ad943345b3812c59f163f6e83b30d2e">More...</a><br /></td></tr>
<tr class="separator:a9ad943345b3812c59f163f6e83b30d2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac575be6fc69cfee9ad0f1ad45299f80"><td class="memItemLeft" align="right" valign="top">OutputDataType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aac575be6fc69cfee9ad0f1ad45299f80">gradient</a></td></tr>
<tr class="memdesc:aac575be6fc69cfee9ad0f1ad45299f80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored gradient object. <a href="#aac575be6fc69cfee9ad0f1ad45299f80">More...</a><br /></td></tr>
<tr class="separator:aac575be6fc69cfee9ad0f1ad45299f80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a232c1a3aafc86a92a56d9b97c2c16a11"><td class="memItemLeft" align="right" valign="top">arma::cube&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a232c1a3aafc86a92a56d9b97c2c16a11">gradientTemp</a></td></tr>
<tr class="memdesc:a232c1a3aafc86a92a56d9b97c2c16a11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored transformed gradient parameter. <a href="#a232c1a3aafc86a92a56d9b97c2c16a11">More...</a><br /></td></tr>
<tr class="separator:a232c1a3aafc86a92a56d9b97c2c16a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5911ed415613205bbc64b3d0de4c9e5c"><td class="memItemLeft" align="right" valign="top">arma::cube&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a5911ed415613205bbc64b3d0de4c9e5c">gTemp</a></td></tr>
<tr class="memdesc:a5911ed415613205bbc64b3d0de4c9e5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored transformed error parameter. <a href="#a5911ed415613205bbc64b3d0de4c9e5c">More...</a><br /></td></tr>
<tr class="separator:a5911ed415613205bbc64b3d0de4c9e5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4b83d01e8d1c746cbe28c6a50c2598a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#aa4b83d01e8d1c746cbe28c6a50c2598a">inputHeight</a></td></tr>
<tr class="memdesc:aa4b83d01e8d1c746cbe28c6a50c2598a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored input height. <a href="#aa4b83d01e8d1c746cbe28c6a50c2598a">More...</a><br /></td></tr>
<tr class="separator:aa4b83d01e8d1c746cbe28c6a50c2598a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e433a18bf7cc4a3e38a7b2c7c5ea5d9"><td class="memItemLeft" align="right" valign="top">arma::cube&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a2e433a18bf7cc4a3e38a7b2c7c5ea5d9">inputPaddedTemp</a></td></tr>
<tr class="memdesc:a2e433a18bf7cc4a3e38a7b2c7c5ea5d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored transformed padded input parameter. <a href="#a2e433a18bf7cc4a3e38a7b2c7c5ea5d9">More...</a><br /></td></tr>
<tr class="separator:a2e433a18bf7cc4a3e38a7b2c7c5ea5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ff0124990223f536a7ad6c54ad72b7a"><td class="memItemLeft" align="right" valign="top">InputDataType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a7ff0124990223f536a7ad6c54ad72b7a">inputParameter</a></td></tr>
<tr class="memdesc:a7ff0124990223f536a7ad6c54ad72b7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored input parameter object. <a href="#a7ff0124990223f536a7ad6c54ad72b7a">More...</a><br /></td></tr>
<tr class="separator:a7ff0124990223f536a7ad6c54ad72b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a758afd04f19c960b5988e2548b380c55"><td class="memItemLeft" align="right" valign="top">arma::cube&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a758afd04f19c960b5988e2548b380c55">inputTemp</a></td></tr>
<tr class="memdesc:a758afd04f19c960b5988e2548b380c55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored transformed input parameter. <a href="#a758afd04f19c960b5988e2548b380c55">More...</a><br /></td></tr>
<tr class="separator:a758afd04f19c960b5988e2548b380c55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a579220e11384a1ff5baa765056dacb64"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a579220e11384a1ff5baa765056dacb64">inputWidth</a></td></tr>
<tr class="memdesc:a579220e11384a1ff5baa765056dacb64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored input width. <a href="#a579220e11384a1ff5baa765056dacb64">More...</a><br /></td></tr>
<tr class="separator:a579220e11384a1ff5baa765056dacb64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac86096b84b4e1b81d1e51784840260cd"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ac86096b84b4e1b81d1e51784840260cd">inSize</a></td></tr>
<tr class="memdesc:ac86096b84b4e1b81d1e51784840260cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored number of input units. <a href="#ac86096b84b4e1b81d1e51784840260cd">More...</a><br /></td></tr>
<tr class="separator:ac86096b84b4e1b81d1e51784840260cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4caa1d8911fd09f63ca4601019e15e13"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a4caa1d8911fd09f63ca4601019e15e13">kH</a></td></tr>
<tr class="memdesc:a4caa1d8911fd09f63ca4601019e15e13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored filter/kernel height. <a href="#a4caa1d8911fd09f63ca4601019e15e13">More...</a><br /></td></tr>
<tr class="separator:a4caa1d8911fd09f63ca4601019e15e13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4489dafb6cb83ea25fa5b6baf3b679e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#af4489dafb6cb83ea25fa5b6baf3b679e">kW</a></td></tr>
<tr class="memdesc:af4489dafb6cb83ea25fa5b6baf3b679e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored filter/kernel width. <a href="#af4489dafb6cb83ea25fa5b6baf3b679e">More...</a><br /></td></tr>
<tr class="separator:af4489dafb6cb83ea25fa5b6baf3b679e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54740c9e869934d997f5dd460aefb8c4"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a54740c9e869934d997f5dd460aefb8c4">outputHeight</a></td></tr>
<tr class="memdesc:a54740c9e869934d997f5dd460aefb8c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored output height. <a href="#a54740c9e869934d997f5dd460aefb8c4">More...</a><br /></td></tr>
<tr class="separator:a54740c9e869934d997f5dd460aefb8c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdcedb6413d0105ad69103feedeadcd8"><td class="memItemLeft" align="right" valign="top">OutputDataType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#abdcedb6413d0105ad69103feedeadcd8">outputParameter</a></td></tr>
<tr class="memdesc:abdcedb6413d0105ad69103feedeadcd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored output parameter object. <a href="#abdcedb6413d0105ad69103feedeadcd8">More...</a><br /></td></tr>
<tr class="separator:abdcedb6413d0105ad69103feedeadcd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1aa898b2d8cfc5ae1fde0760b2b43016"><td class="memItemLeft" align="right" valign="top">arma::cube&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a1aa898b2d8cfc5ae1fde0760b2b43016">outputTemp</a></td></tr>
<tr class="memdesc:a1aa898b2d8cfc5ae1fde0760b2b43016"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored transformed output parameter. <a href="#a1aa898b2d8cfc5ae1fde0760b2b43016">More...</a><br /></td></tr>
<tr class="separator:a1aa898b2d8cfc5ae1fde0760b2b43016"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a090eff12d5b41e937bf22c59b2190b1a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a090eff12d5b41e937bf22c59b2190b1a">outputWidth</a></td></tr>
<tr class="memdesc:a090eff12d5b41e937bf22c59b2190b1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored output width. <a href="#a090eff12d5b41e937bf22c59b2190b1a">More...</a><br /></td></tr>
<tr class="separator:a090eff12d5b41e937bf22c59b2190b1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ab4efa70730deea85b1dea40a9f475f"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a4ab4efa70730deea85b1dea40a9f475f">outSize</a></td></tr>
<tr class="memdesc:a4ab4efa70730deea85b1dea40a9f475f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored number of output units. <a href="#a4ab4efa70730deea85b1dea40a9f475f">More...</a><br /></td></tr>
<tr class="separator:a4ab4efa70730deea85b1dea40a9f475f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82c26749edd6a44f4337d20a40ad391d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a82c26749edd6a44f4337d20a40ad391d">padH</a></td></tr>
<tr class="memdesc:a82c26749edd6a44f4337d20a40ad391d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored padding height. <a href="#a82c26749edd6a44f4337d20a40ad391d">More...</a><br /></td></tr>
<tr class="separator:a82c26749edd6a44f4337d20a40ad391d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d6dd4c3dc5ed18026d8ac23b69d71ed"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a0d6dd4c3dc5ed18026d8ac23b69d71ed">padW</a></td></tr>
<tr class="memdesc:a0d6dd4c3dc5ed18026d8ac23b69d71ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored padding width. <a href="#a0d6dd4c3dc5ed18026d8ac23b69d71ed">More...</a><br /></td></tr>
<tr class="separator:a0d6dd4c3dc5ed18026d8ac23b69d71ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac72cad8bc050bf0841c37c6a8785f624"><td class="memItemLeft" align="right" valign="top">arma::cube&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#ac72cad8bc050bf0841c37c6a8785f624">weight</a></td></tr>
<tr class="memdesc:ac72cad8bc050bf0841c37c6a8785f624"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored weight object. <a href="#ac72cad8bc050bf0841c37c6a8785f624">More...</a><br /></td></tr>
<tr class="separator:ac72cad8bc050bf0841c37c6a8785f624"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b469fdbc5785c9951cbd5ed2d221efb"><td class="memItemLeft" align="right" valign="top">OutputDataType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html#a7b469fdbc5785c9951cbd5ed2d221efb">weights</a></td></tr>
<tr class="memdesc:a7b469fdbc5785c9951cbd5ed2d221efb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Locally-stored weight object. <a href="#a7b469fdbc5785c9951cbd5ed2d221efb">More...</a><br /></td></tr>
<tr class="separator:a7b469fdbc5785c9951cbd5ed2d221efb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt;<br />
class mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;</h3>
<p>Implementation of the <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> class. </p>
<p>The <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> class represents a single layer of a neural network.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">ForwardConvolutionRule</td><td><a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> to perform forward process. </td></tr>
<tr><td class="paramname">BackwardConvolutionRule</td><td><a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> to perform backward process. </td></tr>
<tr><td class="paramname">GradientConvolutionRule</td><td><a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> to calculate gradient. </td></tr>
<tr><td class="paramname">InputDataType</td><td>Type of the input data (arma::colvec, arma::mat, arma::sp_mat or arma::cube). </td></tr>
<tr><td class="paramname">OutputDataType</td><td>Type of the output data (arma::colvec, arma::mat, arma::sp_mat or arma::cube). </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00046">46</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a97f55f6503c149d51052466806f13c9c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::<a class="el" href="classmlpack_1_1ann_1_1Convolution.html">Convolution</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create the <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> object. </p>
</div>
</div>
<a class="anchor" id="acdd5b26916a416a34d7e9f93048fd5ed"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::<a class="el" href="classmlpack_1_1ann_1_1Convolution.html">Convolution</a> </td>
<td>(</td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>inSize</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>outSize</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>kW</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>kH</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>dW</em> = <code>1</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>dH</em> = <code>1</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>padW</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>padH</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>inputWidth</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>inputHeight</em> = <code>0</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create the <a class="el" href="classmlpack_1_1ann_1_1Convolution.html" title="Implementation of the Convolution class. ">Convolution</a> object using the specified number of input maps, output maps, filter size, stride and padding parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">inSize</td><td>The number of input maps. </td></tr>
<tr><td class="paramname">outSize</td><td>The number of output maps. </td></tr>
<tr><td class="paramname">kW</td><td>Width of the filter/kernel. </td></tr>
<tr><td class="paramname">kH</td><td>Height of the filter/kernel. </td></tr>
<tr><td class="paramname">dW</td><td>Stride of filter application in the x direction. </td></tr>
<tr><td class="paramname">dH</td><td>Stride of filter application in the y direction. </td></tr>
<tr><td class="paramname">padW</td><td>Padding width of the input. </td></tr>
<tr><td class="paramname">padH</td><td>Padding height of the input. </td></tr>
<tr><td class="paramname">inputWidth</td><td>The widht of the input data. </td></tr>
<tr><td class="paramname">inputHeight</td><td>The height of the input data. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="abede1642dc47f49eac0dba0259594a69"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Backward </td>
<td>(</td>
<td class="paramtype">const arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>gy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>g</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Ordinary feed backward pass of a neural network, calculating the function f(x) by propagating x backwards through f. </p>
<p>Using the results from the feed forward pass.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">input</td><td>The propagated input activation. </td></tr>
<tr><td class="paramname">gy</td><td>The backpropagated error. </td></tr>
<tr><td class="paramname">g</td><td>The calculated gradient. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ac43383dfb7f7843bc3226f838c45d0a1"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::ConvOutSize </td>
<td>(</td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>k</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>s</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>p</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00181">181</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ab2730019f32480fc3d984bb09666a03a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Delta </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the delta. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00135">135</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00326">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::delta</a>.</p>
</div>
</div>
<a class="anchor" id="add7e33b52bda6e0602cb98cb91cb09a9"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Delta </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the delta. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00137">137</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00326">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::delta</a>.</p>
</div>
</div>
<a class="anchor" id="a6290e21f1659a6c17b6dc96dd10b6e92"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Forward </td>
<td>(</td>
<td class="paramtype">const arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>input</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>output</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Ordinary feed forward pass of a neural network, evaluating the function f(x) by propagating the activity forward through f. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">input</td><td>Input data used for evaluating the specified function. </td></tr>
<tr><td class="paramname">output</td><td>Resulting output activation. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ad45c42673ebd2c1a8f471b267502a2d3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Gradient </td>
<td>(</td>
<td class="paramtype">const arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>error</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>gradient</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aa8b1e4d597519d1116d650ca0ecd51e3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Gradient </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the gradient. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00140">140</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00329">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::gradient</a>.</p>
</div>
</div>
<a class="anchor" id="ab2cf75e77fd91c629092486dfb6998ae"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Gradient </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the gradient. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00142">142</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00329">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::gradient</a>.</p>
</div>
</div>
<a class="anchor" id="aa73f23583b9c8d18c69bbd803a61832f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputHeight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the input height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00150">150</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00302">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputHeight</a>.</p>
</div>
</div>
<a class="anchor" id="a56b61105460d55ba1dc1f6f7e5df04ea"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputHeight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the input height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00152">152</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00302">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputHeight</a>.</p>
</div>
</div>
<a class="anchor" id="a2161039665a939782c59a32cab3bbb7c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">InputDataType const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputParameter </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the input parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00125">125</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00332">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputParameter</a>.</p>
</div>
</div>
<a class="anchor" id="a7904bf1fd0cd9f5fdba578eb500fb3e5"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">InputDataType&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputParameter </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the input parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00127">127</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00332">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputParameter</a>.</p>
</div>
</div>
<a class="anchor" id="a3fea71b2a4a57d1e235681344987eeb5"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputWidth </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the input width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00145">145</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00299">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputWidth</a>.</p>
</div>
</div>
<a class="anchor" id="a6b7d5eda34cdd884d5c601a15bc4e575"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputWidth </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify input the width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00147">147</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00299">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputWidth</a>.</p>
</div>
</div>
<a class="anchor" id="a252c37070ec53c4443bfdc6545b5602a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputHeight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the output height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00160">160</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00308">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputHeight</a>.</p>
</div>
</div>
<a class="anchor" id="a10046b541fc85e03e20268999a997659"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputHeight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the output height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00162">162</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00308">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputHeight</a>, and <a class="el" href="classmlpack_1_1ann_1_1Convolution.html#afc7ca2d8c0a7ba3ee2a9f3c1ba68401f">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Serialize()</a>.</p>
</div>
</div>
<a class="anchor" id="ad91d75b1fb8cb74da6d16f9db71f9c1a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputParameter </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the output parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00130">130</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00335">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputParameter</a>.</p>
</div>
</div>
<a class="anchor" id="a792cbbdcde774b1edff983c6eaf9fcb5"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputParameter </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the output parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00132">132</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00335">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputParameter</a>.</p>
</div>
</div>
<a class="anchor" id="a6ca0e14b866f33871403ab6e2938f40a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputWidth </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the output width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00155">155</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00305">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputWidth</a>.</p>
</div>
</div>
<a class="anchor" id="a0379359de16f0934507feb5f2e049842"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputWidth </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the output width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00157">157</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00305">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputWidth</a>.</p>
</div>
</div>
<a class="anchor" id="a3d164992ed786c51a2ffad07651703d1"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Pad </td>
<td>(</td>
<td class="paramtype">const arma::Mat&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>input</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>wPad</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>hPad</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>output</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00227">227</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="af0a782583488ffaeee7f94fc296b267c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Pad </td>
<td>(</td>
<td class="paramtype">const arma::Cube&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>input</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>wPad</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>hPad</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Cube&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>output</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00251">251</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ac117ff98346fba857f0c3392f877f577"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType const&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Parameters </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the parameters. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00120">120</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00290">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::weights</a>.</p>
</div>
</div>
<a class="anchor" id="a1ed8cdacde8b8e430bdc55df6aa9dabd"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType&amp; <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Parameters </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Modify the parameters. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00122">122</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>References <a class="el" href="convolution_8hpp_source.html#l00290">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::weights</a>.</p>
</div>
</div>
<a class="anchor" id="a7c87bcfaa28fb51caffee542776bbe01"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Reset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a20330974d27c36fda8b99246016339dc"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Rotate180 </td>
<td>(</td>
<td class="paramtype">const arma::Cube&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>input</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Cube&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>output</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00196">196</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a59d310606ff68f8a21795f75136232d4"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename eT &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Rotate180 </td>
<td>(</td>
<td class="paramtype">const arma::Mat&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>input</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">arma::Mat&lt; eT &gt; &amp;&#160;</td>
<td class="paramname"><em>output</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00212">212</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="afc7ca2d8c0a7ba3ee2a9f3c1ba68401f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<div class="memtemplate">
template&lt;typename Archive &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Serialize </td>
<td>(</td>
<td class="paramtype">Archive &amp;&#160;</td>
<td class="paramname"><em>ar</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned&#160;</td>
<td class="paramname"><em>int</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Serialize the layer. </p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00162">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputHeight()</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a7795e6ce33416963ea1cdc4f310490c9"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::mat <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::bias</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored bias term object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00296">296</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="aa7f6078d912b4d61940effec9d0cf69f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::delta</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored delta object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00326">326</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00135">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Delta()</a>.</p>
</div>
</div>
<a class="anchor" id="a1c276453c007cf96fc9e39fb5313be57"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::dH</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored stride of the filter in y-direction. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00281">281</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a9ad943345b3812c59f163f6e83b30d2e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::dW</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored stride of the filter in x-direction. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00278">278</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="aac575be6fc69cfee9ad0f1ad45299f80"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::gradient</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored gradient object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00329">329</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00140">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Gradient()</a>.</p>
</div>
</div>
<a class="anchor" id="a232c1a3aafc86a92a56d9b97c2c16a11"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::cube <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::gradientTemp</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored transformed gradient parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00323">323</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a5911ed415613205bbc64b3d0de4c9e5c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::cube <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::gTemp</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored transformed error parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00320">320</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="aa4b83d01e8d1c746cbe28c6a50c2598a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputHeight</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored input height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00302">302</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00150">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputHeight()</a>.</p>
</div>
</div>
<a class="anchor" id="a2e433a18bf7cc4a3e38a7b2c7c5ea5d9"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::cube <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputPaddedTemp</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored transformed padded input parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00317">317</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a7ff0124990223f536a7ad6c54ad72b7a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">InputDataType <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputParameter</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored input parameter object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00332">332</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00125">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputParameter()</a>.</p>
</div>
</div>
<a class="anchor" id="a758afd04f19c960b5988e2548b380c55"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::cube <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputTemp</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored transformed input parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00314">314</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a579220e11384a1ff5baa765056dacb64"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inputWidth</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored input width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00299">299</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00145">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::InputWidth()</a>.</p>
</div>
</div>
<a class="anchor" id="ac86096b84b4e1b81d1e51784840260cd"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::inSize</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored number of input units. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00266">266</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a4caa1d8911fd09f63ca4601019e15e13"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::kH</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored filter/kernel height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00275">275</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="af4489dafb6cb83ea25fa5b6baf3b679e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::kW</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored filter/kernel width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00272">272</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a54740c9e869934d997f5dd460aefb8c4"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputHeight</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored output height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00308">308</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00160">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputHeight()</a>.</p>
</div>
</div>
<a class="anchor" id="abdcedb6413d0105ad69103feedeadcd8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputParameter</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored output parameter object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00335">335</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00130">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputParameter()</a>.</p>
</div>
</div>
<a class="anchor" id="a1aa898b2d8cfc5ae1fde0760b2b43016"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::cube <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputTemp</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored transformed output parameter. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00311">311</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a090eff12d5b41e937bf22c59b2190b1a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outputWidth</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored output width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00305">305</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00155">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::OutputWidth()</a>.</p>
</div>
</div>
<a class="anchor" id="a4ab4efa70730deea85b1dea40a9f475f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::outSize</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored number of output units. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00269">269</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a82c26749edd6a44f4337d20a40ad391d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::padH</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored padding height. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00287">287</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a0d6dd4c3dc5ed18026d8ac23b69d71ed"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::padW</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored padding width. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00284">284</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ac72cad8bc050bf0841c37c6a8785f624"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">arma::cube <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::weight</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored weight object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00293">293</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="a7b469fdbc5785c9951cbd5ed2d221efb"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ForwardConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename BackwardConvolutionRule = NaiveConvolution&lt;FullConvolution&gt;, typename GradientConvolutionRule = NaiveConvolution&lt;ValidConvolution&gt;, typename InputDataType = arma::mat, typename OutputDataType = arma::mat&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">OutputDataType <a class="el" href="classmlpack_1_1ann_1_1Convolution.html">mlpack::ann::Convolution</a>&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::weights</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Locally-stored weight object. </p>
<p>Definition at line <a class="el" href="convolution_8hpp_source.html#l00290">290</a> of file <a class="el" href="convolution_8hpp_source.html">convolution.hpp</a>.</p>
<p>Referenced by <a class="el" href="convolution_8hpp_source.html#l00120">mlpack::ann::Convolution&lt; ForwardConvolutionRule, BackwardConvolutionRule, GradientConvolutionRule, InputDataType, OutputDataType &gt;::Parameters()</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/mlpack/methods/ann/layer/<a class="el" href="convolution_8hpp_source.html">convolution.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
<script type="text/javascript">
var x = document.getElementsByClassName("formulaDsp");
var i;
for (i = 0; i < x.length; i++)
{
x[i].width /= 4;
}
</script>
</html>