<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.4.0/javadoc/org/apache/ignite/ml/nn/trainers/distributed/package-frame.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (1.8.0_77) on Mon Mar 05 10:43:21 UTC 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.ml.nn.trainers.distributed (Ignite 2.4.0)</title>
<meta name="date" content="2018-03-05">
<link rel="stylesheet" type="text/css" href="../../../../../../../javadoc.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
<body>
<h1 class="bar"><a href="../../../../../../../org/apache/ignite/ml/nn/trainers/distributed/package-summary.html" target="classFrame">org.apache.ignite.ml.nn.trainers.distributed</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="AbstractMLPGroupUpdateTrainerInput.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">AbstractMLPGroupUpdateTrainerInput</a></li>
<li><a href="MLPCache.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPCache</a></li>
<li><a href="MLPGroupTrainingCacheValue.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupTrainingCacheValue</a></li>
<li><a href="MLPGroupUpdateTrainer.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupUpdateTrainer</a></li>
<li><a href="MLPGroupUpdateTrainerDataCache.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupUpdateTrainerDataCache</a></li>
<li><a href="MLPGroupUpdateTrainerLocalContext.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupUpdateTrainerLocalContext</a></li>
<li><a href="MLPGroupUpdateTrainingContext.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupUpdateTrainingContext</a></li>
<li><a href="MLPGroupUpdateTrainingData.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupUpdateTrainingData</a></li>
<li><a href="MLPGroupUpdateTrainingLoopData.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPGroupUpdateTrainingLoopData</a></li>
<li><a href="MLPMetaoptimizer.html" title="class in org.apache.ignite.ml.nn.trainers.distributed" target="classFrame">MLPMetaoptimizer</a></li>
</ul>
</div>
</body>
</html>
