<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Hi Yaniv, in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105210#M24065</link>
    <description>&lt;P&gt;Hi Yaniv,&lt;/P&gt;

&lt;P&gt;The size of the basic subset m used in the Bacon flow is suggested&amp;nbsp;to be &amp;nbsp;m = cp where m is 4 or 5, by the original paper. Intel MKL version of the&amp;nbsp;BACON uses c = 5. So, if&amp;nbsp;number of observations/feature vectors passed into the library is smaller than 5 p, the library returns the respective error indicating the bad number of the observations.&amp;nbsp;The library indicates that all observations are outliers, if the size of the basic subset becomes smaller than 5p during the computation. We should extend the documentation on the algorithm with description of those cases. Please, let me know, if it answers your question.&lt;/P&gt;

&lt;P&gt;Thanks,&lt;/P&gt;

&lt;P&gt;Andrey&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 23 Jun 2016 06:37:47 GMT</pubDate>
    <dc:creator>Andrey_N_Intel</dc:creator>
    <dc:date>2016-06-23T06:37:47Z</dc:date>
    <item>
      <title>BACON outlier detection</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105209#M24064</link>
      <description>&lt;P&gt;I'm trying to run the following code:&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;#include &amp;lt;iostream&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;#include "mkl.h"&lt;/P&gt;

&lt;P&gt;int main () {&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Define vector of obseravations (5 2D observation points) */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; float pObservations [] = {1., 2., 3., 4.2, 5, 9., 10., 8., 7., 6., 5., 9.};&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Creates and initializes a new summary statistics task descriptor */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; VSLSSTaskPtr task;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; const int p = 2;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; const int n = 5;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; const int xstorage = VSL_SS_MATRIX_STORAGE_ROWS;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; int status = 0;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; status = vslsSSNewTask (&amp;amp;task, &amp;amp;p, &amp;amp;n, &amp;amp;xstorage, pObservations, NULL, NULL);&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; if (status != VSL_STATUS_OK) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; std::cout &amp;lt;&amp;lt; "Failed to create a new summary statistics task descriptor" &amp;lt;&amp;lt; std::endl;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw false;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; }&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Modifies array pointers related to multivariate mean calculation */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; float* pMean = new float &lt;/P&gt;&lt;P&gt;;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; status = vslsSSEditTask (task, VSL_SS_ED_MEAN, pMean);&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; if (status != VSL_STATUS_OK) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; std::cout &amp;lt;&amp;lt; "Failed to modifies array pointers related to multivariate mean calculation" &amp;lt;&amp;lt; std::endl;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw false;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; }&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Computes Summary Statistics estimates - mean calculation */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; status = vslsSSCompute(task, VSL_SS_MEAN, VSL_SS_METHOD_FAST);&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; if (status != VSL_STATUS_OK) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; std::cout &amp;lt;&amp;lt; "Failed to compute summary statistics estimates with error code " &amp;lt;&amp;lt; status &amp;lt;&amp;lt; std::endl;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw false;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; }&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; // Print mean values&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; for (int ip = 0; ip &amp;lt; p; ip++)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; std::cout &amp;lt;&amp;lt; pMean [ip] &amp;lt;&amp;lt; std::endl;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Modifies array pointers related to multivariate outliers detection */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; const int nParams = 0;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; float* pWeights = new float &lt;N&gt;;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; status = vslsSSEditOutliersDetection (task, &amp;amp;nParams, NULL, pWeights);&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; if (status != VSL_STATUS_OK) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; std::cout &amp;lt;&amp;lt; "Failed to modifies array pointers related to multivariate outliers detection" &amp;lt;&amp;lt; std::endl;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw false;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; }&lt;/N&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Computes Summary Statistics estimates - outlier detection */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; status = vslsSSCompute(task, VSL_SS_OUTLIERS, VSL_SS_METHOD_BACON);&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; if (status != VSL_STATUS_OK) {&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; std::cout &amp;lt;&amp;lt; "Failed to compute summary statistics estimates with error code " &amp;lt;&amp;lt; status &amp;lt;&amp;lt; std::endl;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; throw false;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; }&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; return (0);&lt;BR /&gt;
	}&lt;/P&gt;

&lt;P&gt;for a 2D data set consisting of 5 pairs of observation. The output of the program reads:&lt;/P&gt;

&lt;P&gt;3.04&lt;BR /&gt;
	8&lt;BR /&gt;
	Failed to compute summary statistics estimates with error code -4002&lt;BR /&gt;
	terminate called after throwing an instance of 'bool'&lt;BR /&gt;
	Abort (core dumped)&lt;/P&gt;

&lt;P&gt;The first two numbers are the mean values of the observations in each dimension (2), and the result is accurate.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;I'm using the same dataset for the outlier detection BACON algorithm, but can an error -4002, which means that the number of input observation (5 in my case) is either 0 or negative.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Is this a bug in MKL, or something wrong on my side.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Thanks,&lt;/P&gt;

&lt;P&gt;Yaniv&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jun 2016 19:16:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105209#M24064</guid>
      <dc:creator>Yaniv_H_1</dc:creator>
      <dc:date>2016-06-22T19:16:01Z</dc:date>
    </item>
    <item>
      <title>Hi Yaniv,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105210#M24065</link>
      <description>&lt;P&gt;Hi Yaniv,&lt;/P&gt;

&lt;P&gt;The size of the basic subset m used in the Bacon flow is suggested&amp;nbsp;to be &amp;nbsp;m = cp where m is 4 or 5, by the original paper. Intel MKL version of the&amp;nbsp;BACON uses c = 5. So, if&amp;nbsp;number of observations/feature vectors passed into the library is smaller than 5 p, the library returns the respective error indicating the bad number of the observations.&amp;nbsp;The library indicates that all observations are outliers, if the size of the basic subset becomes smaller than 5p during the computation. We should extend the documentation on the algorithm with description of those cases. Please, let me know, if it answers your question.&lt;/P&gt;

&lt;P&gt;Thanks,&lt;/P&gt;

&lt;P&gt;Andrey&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2016 06:37:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105210#M24065</guid>
      <dc:creator>Andrey_N_Intel</dc:creator>
      <dc:date>2016-06-23T06:37:47Z</dc:date>
    </item>
    <item>
      <title>Hi, I changed the code I</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105211#M24066</link>
      <description>&lt;P&gt;Hi, I changed the code I originally posted:&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;...&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; float pObservations [] = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, &amp;nbsp;7.0, &amp;nbsp;8.0, 9.0, 10.0, 11.0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, &amp;nbsp;1.0};&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; /* Creates and initializes a new summary statistics task descriptor */&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; VSLSSTaskPtr task;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; const int p = 2;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; const int n = 11;&lt;/P&gt;

&lt;P&gt;...&lt;/P&gt;

&lt;P&gt;and it finished without errors. The algorithm, naturally, didn't find any outliers. However, when I changed the observation array to:&lt;/P&gt;

&lt;P style="font-size: 13.008px; line-height: 19.512px;"&gt;&amp;nbsp; &amp;nbsp; float pObservations [] = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, &amp;nbsp;7.0, &amp;nbsp;8.0, 9.0, 10.0, 11.0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -10.0, 1.0, &amp;nbsp;1.0};&lt;/P&gt;

&lt;P&gt;with observation 9 clearly an outlier, the algorithm hanged in BACON computation. I had to manually abort the program.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2016 15:24:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105211#M24066</guid>
      <dc:creator>Yaniv_H_1</dc:creator>
      <dc:date>2016-06-23T15:24:28Z</dc:date>
    </item>
    <item>
      <title>Hi Yaniv, this behavior of</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105212#M24067</link>
      <description>&lt;P&gt;Hi Yaniv, this behavior of the algorithm is reproduced with the dataset above,&amp;nbsp;will investigate it. Andrey&lt;/P&gt;</description>
      <pubDate>Fri, 24 Jun 2016 07:29:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105212#M24067</guid>
      <dc:creator>Andrey_N_Intel</dc:creator>
      <dc:date>2016-06-24T07:29:44Z</dc:date>
    </item>
    <item>
      <title>Dear Yaniv! </title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105213#M24068</link>
      <description>&lt;P&gt;Dear Yaniv!&amp;nbsp;&lt;/P&gt;

&lt;P&gt;the problem has been fixed in MKL v.2017 update 1 ( released at Nov 1st ). Could you please check this update and let us know how it works on your side.&lt;/P&gt;

&lt;P&gt;regards, MKL team&lt;/P&gt;</description>
      <pubDate>Mon, 14 Nov 2016 08:48:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/BACON-outlier-detection/m-p/1105213#M24068</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2016-11-14T08:48:56Z</dc:date>
    </item>
  </channel>
</rss>

