<!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/latest/javadoc/org/apache/ignite/ml/knn/package-frame.html" />


<!-- Generated by javadoc (1.8.0_221) on Thu Feb 27 14:09:44 MSK 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.ml.knn (Ignite 2.8.0)</title>
<meta name="date" content="2020-02-27">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<link rel='shortcut icon' href='https://ignite.apache.org/favicon.ico'/>

<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/knn/package-summary.html" target="classFrame">org.apache.ignite.ml.knn</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="KNNModel.html" title="class in org.apache.ignite.ml.knn" target="classFrame">KNNModel</a></li>
<li><a href="KNNPartitionDataBuilder.html" title="class in org.apache.ignite.ml.knn" target="classFrame">KNNPartitionDataBuilder</a></li>
<li><a href="KNNTrainer.html" title="class in org.apache.ignite.ml.knn" target="classFrame">KNNTrainer</a></li>
<li><a href="NNClassificationModel.html" title="class in org.apache.ignite.ml.knn" target="classFrame">NNClassificationModel</a></li>
</ul>
</div>
</body>
</html>
