<?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 MKL Summary Statistics computation of skewness and kurtosis seems to be broken when the standard deviation is more than four orders of magnitude smaller than the mean. in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798404#M2854</link>
    <description>MKL Summary Statistics computation of skewness and kurtosis seems to be broken when the standard deviation is more than four orders of magnitude smaller than the mean.&lt;BR /&gt;Can anyone tell me how to fix this, please?&lt;BR /&gt;&lt;BR /&gt;For example, given normal random samples around 2, I should get skewness and excess kurtosis close to zero. However, at a standard deviation of 1.0e-4, Excess kurtosis jumps to -311. At 1.0e-5, skewness jumps to 11. At 1.0e-6, the absolute values of both skewness and kurtosis are gigantic.&lt;BR /&gt;&lt;BR /&gt;In R, I get the correct values much longer.&lt;BR /&gt;&lt;BR /&gt;I have 
confirmed that I can workaround this problem by copying the data, 
subtracting the mean and computing the moments with another MKL task.&lt;BR /&gt;But, man, this is ugly.&lt;BR /&gt;&lt;BR /&gt;Here is my C++ code for computing summary stats with MKL&lt;BR /&gt;------------------------------------------------------------------&lt;BR /&gt; // Setup a Summary Statistic task pointing at the data&lt;BR /&gt; int status;&lt;BR /&gt; VSLSSTaskPtr task;&lt;BR /&gt; MKL_INT numRows = m_count;&lt;BR /&gt; MKL_INT numCols = 1;&lt;BR /&gt; MKL_INT xstorage = VSL_SS_MATRIX_STORAGE_ROWS;&lt;BR /&gt; int indices[1] = {1};&lt;BR /&gt; status = vsldSSNewTask( &amp;amp;task, &amp;amp;numCols, &amp;amp;numRows, &amp;amp;xstorage, &amp;amp;(m_data[0]), 0, indices );&lt;BR /&gt;&lt;BR /&gt; // Setup 1st, 2nd and 3rd quartile computation&lt;BR /&gt; double quants[3];&lt;BR /&gt; double q_order[3] = {.25,.5,.75};&lt;BR /&gt; MKL_INT q_order_n = 3;&lt;BR /&gt; status = vsldSSEditQuantiles( task, &amp;amp;q_order_n, q_order, quants, NULL, NULL );&lt;BR /&gt;&lt;BR /&gt; // Setup max and min computation&lt;BR /&gt; double min_est = m_data[0];&lt;BR /&gt; double max_est = m_data[0];&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_MIN, &amp;amp;min_est);&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_MAX, &amp;amp;max_est);&lt;BR /&gt;&lt;BR /&gt; // Setup moment computation. Computing kurtosis requires all the other moments.&lt;BR /&gt; double mean_est, skewness_est, kurtosis_est;&lt;BR /&gt; double raw2mom, raw3mom, raw4mom;&lt;BR /&gt; double cen2mom, cen3mom, cen4mom;&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_SKEWNESS, &amp;amp;skewness_est);&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_KURTOSIS, &amp;amp;kurtosis_est);&lt;BR /&gt; status = vsldSSEditMoments( task, &amp;amp;mean_est, &amp;amp;raw2mom, &amp;amp;raw3mom, &amp;amp;raw4mom, &amp;amp;cen2mom, &amp;amp;cen3mom, &amp;amp;cen4mom );&lt;BR /&gt;&lt;BR /&gt; // Request five number summary and moment computation&lt;BR /&gt; MKL_UINT64 mask = VSL_SS_MEAN | VSL_SS_KURTOSIS | VSL_SS_SKEWNESS | &lt;BR /&gt; VSL_SS_2R_MOM | VSL_SS_3R_MOM | VSL_SS_4R_MOM | &lt;BR /&gt; VSL_SS_2C_MOM | VSL_SS_3C_MOM | VSL_SS_4C_MOM |&lt;BR /&gt; VSL_SS_QUANTS | VSL_SS_MIN | VSL_SS_MAX; &lt;BR /&gt; status = vsldSSCompute(task, mask, VSL_SS_METHOD_FAST);&lt;BR /&gt;--------------------------------------------------------------------------&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Here is the R code that I used to generate the test data as well and check skewness and kurtosis:&lt;BR /&gt;-----------------------------------------------------------------------&lt;BR /&gt;library(moments)&lt;BR /&gt;setwd("C:/Users/stennican/Documents/Rcode")&lt;BR /&gt;&lt;BR /&gt;N = 500&lt;BR /&gt;normDist = rnorm(N)&lt;BR /&gt;trial = seq(1,N)&lt;BR /&gt;twos = rep(2,N)&lt;BR /&gt;twoSd1 = twos + 1e-1*normDist&lt;BR /&gt;twoSd2 = twos + 1e-2*normDist&lt;BR /&gt;twoSd3 = twos + 1e-3*normDist&lt;BR /&gt;twoSd4 = twos + 1e-4*normDist&lt;BR /&gt;twoSd5 = twos + 1e-5*normDist&lt;BR /&gt;twoSd7 = twos + 1e-7*normDist&lt;BR /&gt;twoSd10 = twos + 1e-10*normDist&lt;BR /&gt;twoSd13 = twos + 1e-13*normDist&lt;BR /&gt;zeros = rep(0,N)&lt;BR /&gt;zeroSd1 = 1e-1*normDist&lt;BR /&gt;zeroSd2 = 1e-2*normDist&lt;BR /&gt;zeroSd3 = 1e-3*normDist&lt;BR /&gt;zeroSd4 = 1e-4*normDist&lt;BR /&gt;zeroSd5 = 1e-5*normDist&lt;BR /&gt;zeroSd7 = 1e-7*normDist&lt;BR /&gt;zeroSd10 = 1e-10*normDist&lt;BR /&gt;zeroSd13 = 1e-13*normDist&lt;BR /&gt;&lt;BR /&gt;out = data.frame(trial,zeros,twos,&lt;BR /&gt; zeroSd1,zeroSd2,zeroSd3,zeroSd4,zeroSd5,&lt;BR /&gt; zeroSd7,zeroSd10,zeroSd13,&lt;BR /&gt; twoSd1,twoSd2,twoSd3,twoSd4,twoSd5,&lt;BR /&gt; twoSd7,twoSd10,twoSd13)&lt;BR /&gt;&lt;BR /&gt;apply(out,2,sd)&lt;BR /&gt;apply(out,2,skewness)&lt;BR /&gt;apply(out,2,kurtosis)&lt;BR /&gt;&lt;BR /&gt;options(digits = 22)&lt;BR /&gt;write.csv(out,"testB42382.csv",row.names=FALSE)</description>
    <pubDate>Fri, 04 Nov 2011 22:32:34 GMT</pubDate>
    <dc:creator>tennican</dc:creator>
    <dc:date>2011-11-04T22:32:34Z</dc:date>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis seems to be broken when the standard deviation is more than four orders of magnitude smaller than the mean.</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798404#M2854</link>
      <description>MKL Summary Statistics computation of skewness and kurtosis seems to be broken when the standard deviation is more than four orders of magnitude smaller than the mean.&lt;BR /&gt;Can anyone tell me how to fix this, please?&lt;BR /&gt;&lt;BR /&gt;For example, given normal random samples around 2, I should get skewness and excess kurtosis close to zero. However, at a standard deviation of 1.0e-4, Excess kurtosis jumps to -311. At 1.0e-5, skewness jumps to 11. At 1.0e-6, the absolute values of both skewness and kurtosis are gigantic.&lt;BR /&gt;&lt;BR /&gt;In R, I get the correct values much longer.&lt;BR /&gt;&lt;BR /&gt;I have 
confirmed that I can workaround this problem by copying the data, 
subtracting the mean and computing the moments with another MKL task.&lt;BR /&gt;But, man, this is ugly.&lt;BR /&gt;&lt;BR /&gt;Here is my C++ code for computing summary stats with MKL&lt;BR /&gt;------------------------------------------------------------------&lt;BR /&gt; // Setup a Summary Statistic task pointing at the data&lt;BR /&gt; int status;&lt;BR /&gt; VSLSSTaskPtr task;&lt;BR /&gt; MKL_INT numRows = m_count;&lt;BR /&gt; MKL_INT numCols = 1;&lt;BR /&gt; MKL_INT xstorage = VSL_SS_MATRIX_STORAGE_ROWS;&lt;BR /&gt; int indices[1] = {1};&lt;BR /&gt; status = vsldSSNewTask( &amp;amp;task, &amp;amp;numCols, &amp;amp;numRows, &amp;amp;xstorage, &amp;amp;(m_data[0]), 0, indices );&lt;BR /&gt;&lt;BR /&gt; // Setup 1st, 2nd and 3rd quartile computation&lt;BR /&gt; double quants[3];&lt;BR /&gt; double q_order[3] = {.25,.5,.75};&lt;BR /&gt; MKL_INT q_order_n = 3;&lt;BR /&gt; status = vsldSSEditQuantiles( task, &amp;amp;q_order_n, q_order, quants, NULL, NULL );&lt;BR /&gt;&lt;BR /&gt; // Setup max and min computation&lt;BR /&gt; double min_est = m_data[0];&lt;BR /&gt; double max_est = m_data[0];&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_MIN, &amp;amp;min_est);&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_MAX, &amp;amp;max_est);&lt;BR /&gt;&lt;BR /&gt; // Setup moment computation. Computing kurtosis requires all the other moments.&lt;BR /&gt; double mean_est, skewness_est, kurtosis_est;&lt;BR /&gt; double raw2mom, raw3mom, raw4mom;&lt;BR /&gt; double cen2mom, cen3mom, cen4mom;&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_SKEWNESS, &amp;amp;skewness_est);&lt;BR /&gt; status = vsldSSEditTask(task, VSL_SS_ED_KURTOSIS, &amp;amp;kurtosis_est);&lt;BR /&gt; status = vsldSSEditMoments( task, &amp;amp;mean_est, &amp;amp;raw2mom, &amp;amp;raw3mom, &amp;amp;raw4mom, &amp;amp;cen2mom, &amp;amp;cen3mom, &amp;amp;cen4mom );&lt;BR /&gt;&lt;BR /&gt; // Request five number summary and moment computation&lt;BR /&gt; MKL_UINT64 mask = VSL_SS_MEAN | VSL_SS_KURTOSIS | VSL_SS_SKEWNESS | &lt;BR /&gt; VSL_SS_2R_MOM | VSL_SS_3R_MOM | VSL_SS_4R_MOM | &lt;BR /&gt; VSL_SS_2C_MOM | VSL_SS_3C_MOM | VSL_SS_4C_MOM |&lt;BR /&gt; VSL_SS_QUANTS | VSL_SS_MIN | VSL_SS_MAX; &lt;BR /&gt; status = vsldSSCompute(task, mask, VSL_SS_METHOD_FAST);&lt;BR /&gt;--------------------------------------------------------------------------&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Here is the R code that I used to generate the test data as well and check skewness and kurtosis:&lt;BR /&gt;-----------------------------------------------------------------------&lt;BR /&gt;library(moments)&lt;BR /&gt;setwd("C:/Users/stennican/Documents/Rcode")&lt;BR /&gt;&lt;BR /&gt;N = 500&lt;BR /&gt;normDist = rnorm(N)&lt;BR /&gt;trial = seq(1,N)&lt;BR /&gt;twos = rep(2,N)&lt;BR /&gt;twoSd1 = twos + 1e-1*normDist&lt;BR /&gt;twoSd2 = twos + 1e-2*normDist&lt;BR /&gt;twoSd3 = twos + 1e-3*normDist&lt;BR /&gt;twoSd4 = twos + 1e-4*normDist&lt;BR /&gt;twoSd5 = twos + 1e-5*normDist&lt;BR /&gt;twoSd7 = twos + 1e-7*normDist&lt;BR /&gt;twoSd10 = twos + 1e-10*normDist&lt;BR /&gt;twoSd13 = twos + 1e-13*normDist&lt;BR /&gt;zeros = rep(0,N)&lt;BR /&gt;zeroSd1 = 1e-1*normDist&lt;BR /&gt;zeroSd2 = 1e-2*normDist&lt;BR /&gt;zeroSd3 = 1e-3*normDist&lt;BR /&gt;zeroSd4 = 1e-4*normDist&lt;BR /&gt;zeroSd5 = 1e-5*normDist&lt;BR /&gt;zeroSd7 = 1e-7*normDist&lt;BR /&gt;zeroSd10 = 1e-10*normDist&lt;BR /&gt;zeroSd13 = 1e-13*normDist&lt;BR /&gt;&lt;BR /&gt;out = data.frame(trial,zeros,twos,&lt;BR /&gt; zeroSd1,zeroSd2,zeroSd3,zeroSd4,zeroSd5,&lt;BR /&gt; zeroSd7,zeroSd10,zeroSd13,&lt;BR /&gt; twoSd1,twoSd2,twoSd3,twoSd4,twoSd5,&lt;BR /&gt; twoSd7,twoSd10,twoSd13)&lt;BR /&gt;&lt;BR /&gt;apply(out,2,sd)&lt;BR /&gt;apply(out,2,skewness)&lt;BR /&gt;apply(out,2,kurtosis)&lt;BR /&gt;&lt;BR /&gt;options(digits = 22)&lt;BR /&gt;write.csv(out,"testB42382.csv",row.names=FALSE)</description>
      <pubDate>Fri, 04 Nov 2011 22:32:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798404#M2854</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-04T22:32:34Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798405#M2855</link>
      <description>Hi Scott,&lt;BR /&gt;Thanks for the post and the detailed description of the issue. We will have a look atthe dataset and the test case on our side. Can you please clarifywhat the value of the m_count variable in your code is? Is it equal to 500?&lt;BR /&gt;Thanks,&lt;BR /&gt;Andrey&lt;BR /&gt;</description>
      <pubDate>Mon, 07 Nov 2011 09:13:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798405#M2855</guid>
      <dc:creator>Andrey_N_Intel</dc:creator>
      <dc:date>2011-11-07T09:13:34Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798406#M2856</link>
      <description>Hi Andrey,&lt;BR /&gt;&lt;BR /&gt;Yes, m_count is 500 because I just imported the data generated in the R code where N = 500.&lt;BR /&gt;I believe there is some change in the behavior if you vary sample size from 50 to 500 to 5000.&lt;BR /&gt;But, I wasn't testing in an organized fashion at the time. So, I'd have to retest to be sure.&lt;BR /&gt;&lt;BR /&gt;thanks for you help, Scott</description>
      <pubDate>Mon, 07 Nov 2011 16:58:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798406#M2856</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-07T16:58:58Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798407#M2857</link>
      <description>Hi Scott,&lt;BR /&gt;&lt;BR /&gt;May I clarify one more thing? Is this behavior reproducible on different random sequences? In other words, isn't it because of large statistical error due to relatively small sample size?&lt;BR /&gt;&lt;BR /&gt;Sergey</description>
      <pubDate>Tue, 08 Nov 2011 05:02:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798407#M2857</guid>
      <dc:creator>Sergey_M_Intel2</dc:creator>
      <dc:date>2011-11-08T05:02:39Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798408#M2858</link>
      <description>Hi Sergey,&lt;BR /&gt;&lt;BR /&gt;Yes, it is reproducible with various random samples of various sizes.&lt;BR /&gt;Most would call 500 a large sample since the CLT is working for you big time at that point.&lt;BR /&gt;I haven't tried any small samples of less than 30 yet.&lt;BR /&gt;Let me know if you need me to do additional testing and send you the results.&lt;BR /&gt;&lt;BR /&gt;thanks, Scott</description>
      <pubDate>Tue, 08 Nov 2011 17:15:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798408#M2858</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-08T17:15:47Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798409#M2859</link>
      <description>Hi Scott,&lt;BR /&gt;We did the analysis of the datasetsyou work with,computed confidence intervals for sample kurtosis for the dataset from Gaussian distribution, and the output of Summary Stats routines for kurtosis/skewness estimation.&lt;BR /&gt;The current conlusion is that it makes sensefor us tounderstand the opportunities for having the algorithms for computation of the moments/covariance which would bemore tolerant to numerical errors to address the case of the datasets with variance several orders smaller than its expectation.&lt;BR /&gt;I wonder if the work-around you mention earlier and which sounds like a two pass algorithm would currently work for your needs? &lt;BR /&gt;Also, canyouplease specify howoftenyouget the datasets with such structure in your work?&lt;BR /&gt;Iwould appreciate if you could also clarify if you work with in-memory datasets only, or data that can have such structure and which does not fit into memory of the computer is also the case?&lt;BR /&gt;Thanks,&lt;BR /&gt;Andrey</description>
      <pubDate>Tue, 08 Nov 2011 17:33:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798409#M2859</guid>
      <dc:creator>Andrey_N_Intel</dc:creator>
      <dc:date>2011-11-08T17:33:05Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798410#M2860</link>
      <description>Hi Andrey,&lt;BR /&gt;
&lt;BR /&gt;
Our tool makes it very easy for people with no statistical background to
 access any sort of database, transform columns of data from that database
 and then request summary stats for the column. So, while it doesn't 
make sense to care about the kurtosis of a variable with almost no 
variance, we will have to compute this at some point. For a constant, 
kurtosis is undefined and it is correct to say so. But, for small 
variance, kurtosis and skewness are well defined and we should report 
them correctly.&lt;BR /&gt;
&lt;BR /&gt;
The data on which MKL operates is in an in-memory database.&lt;BR /&gt;
&lt;BR /&gt;As I said before, I can work around the problem by first computing the mean of the original data, subtracting the mean from a copy of the data and computing the higher moments using the demeaned data.&lt;BR /&gt;The extra cost in time and memory are acceptable in the short term.&lt;BR /&gt;&lt;BR /&gt;How long do you think it will take for MKL to be improved to match the precision of R in this respect?&lt;BR /&gt;&lt;BR /&gt;thanks, Scott&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 08 Nov 2011 17:59:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798410#M2860</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-08T17:59:20Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798411#M2861</link>
      <description>Hi Scott, &lt;BR /&gt;We would do the deeper analysis of your requestwithin the next several weeks. Once the analysisis completedwe would understand the next steps.&lt;BR /&gt;Does it sound reasonable for you?&lt;BR /&gt;Thanks,&lt;BR /&gt;Andrey</description>
      <pubDate>Wed, 09 Nov 2011 07:21:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798411#M2861</guid>
      <dc:creator>Andrey_N_Intel</dc:creator>
      <dc:date>2011-11-09T07:21:44Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798412#M2862</link>
      <description>Hi Andrey,&lt;BR /&gt;&lt;BR /&gt;Sure, I'm not in a huge rush.&lt;BR /&gt;The workaround only triggers in this very special case.&lt;BR /&gt;So, it won't impact performance.&lt;BR /&gt;&lt;BR /&gt;thanks, Scott</description>
      <pubDate>Wed, 09 Nov 2011 19:12:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798412#M2862</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-09T19:12:50Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798413#M2863</link>
      <description>Hi Scott,&lt;BR /&gt;&lt;BR /&gt;One more clarification to be 100% sure that we address your needs. &lt;BR /&gt;&lt;BR /&gt;You indicated that majority of your customers are not experts in statistics so you would like to provide basic statistics capabilities as simple (to use) as possible. Does it mean that you want to avoid giving customers some controls to let your software know about properties of incoming dataset?&lt;BR /&gt;&lt;BR /&gt;For example, Andrey gave you an example of the one-pass method for the mean estimate, which is rather expensive (compared to naive implementation) but it is more numerically robust. At the same time for datasets with certain known a priori properties the naive method may work quite well either (e.g. relatively small size dataset, mean isn't too far from 0, etc).&lt;BR /&gt;&lt;BR /&gt;Would you like us to consider such cases either?&lt;BR /&gt;&lt;BR /&gt;The opposite direction is an option either. One-pass method described by Andrey has its own limitations. There are more robust but at the same time more computationally intensive methods for moment estimates. Should we be looking into that either?&lt;BR /&gt;&lt;BR /&gt;Many thanks!&lt;BR /&gt;Sergey</description>
      <pubDate>Thu, 10 Nov 2011 05:27:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798413#M2863</guid>
      <dc:creator>Sergey_M_Intel2</dc:creator>
      <dc:date>2011-11-10T05:27:19Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798414#M2864</link>
      <description>Hi Sergey,&lt;BR /&gt;&lt;BR /&gt;Actually, yes, if you could.&lt;BR /&gt;If MKL could switch from naive to one-pass based on parameters of the data, it would be awesome.&lt;BR /&gt;In fact, the current vsldSSNewTask function requires me to specify number of rows.&lt;BR /&gt;So, if you switched to the naive method whenever, the number of rows is not large that would be great.&lt;BR /&gt;I could code that myself. But, it would be cleaner if it were all build in to MKL.&lt;BR /&gt;&lt;BR /&gt;Also, I don't need this yet.&lt;BR /&gt;But, for future reference, how would I set up the computation if I don't yet know how many rows I will be feeding to the vsldSS task?&lt;BR /&gt;&lt;BR /&gt;thanks, scott&lt;BR /&gt;</description>
      <pubDate>Thu, 10 Nov 2011 18:50:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798414#M2864</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-10T18:50:44Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798415#M2865</link>
      <description>&lt;P&gt;Hi Scott,&lt;/P&gt;&lt;P&gt;Perfect. That certainly helps us to define the scope of experiments.&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;But, for future reference, how would I set up the computation if I don't yet know how many rows I will be feeding to the vsldSS task?&lt;/P&gt;&lt;/BLOCKQUOTE&gt;One of Summary Statistics features is the possibility to feed data in blocks, so-called streaming data processing. That may help. Andrey may have some comments on that either.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Sergey</description>
      <pubDate>Fri, 11 Nov 2011 05:28:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798415#M2865</guid>
      <dc:creator>Sergey_M_Intel2</dc:creator>
      <dc:date>2011-11-11T05:28:30Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798416#M2866</link>
      <description>Hi Scott,&lt;BR /&gt;You might want to have a look atSummary Statistics Application Notes, &lt;A href="http://software.intel.com/sites/products/documentation/hpc/mkl/sslnotes/index.htm"&gt;http://software.intel.com/sites/products/documentation/hpc/mkl/sslnotes/index.htm&lt;/A&gt;, chapter "Processing Data in Blocks" which describes the usage model for streaming data processing. In Intel MKL Manual, Chapter StatisticalFunctions/Summary Statistics,Section Task Computation Routine you would find the tablelisting estimates that support streaming processing. It's worth noting thatbesidesbasic estimates like variance-covariance or meanthis feature is available for quantiles.&lt;BR /&gt;Thanks,&lt;BR /&gt;Andrey&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 11 Nov 2011 14:10:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798416#M2866</guid>
      <dc:creator>Andrey_N_Intel</dc:creator>
      <dc:date>2011-11-11T14:10:25Z</dc:date>
    </item>
    <item>
      <title>MKL Summary Statistics computation of skewness and kurtosis see</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798417#M2867</link>
      <description>Great. The example in the documentation will make this easy to implement when the time comes.&lt;BR /&gt;&lt;BR /&gt;thanks, Scott</description>
      <pubDate>Fri, 11 Nov 2011 23:04:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/MKL-Summary-Statistics-computation-of-skewness-and-kurtosis/m-p/798417#M2867</guid>
      <dc:creator>tennican</dc:creator>
      <dc:date>2011-11-11T23:04:38Z</dc:date>
    </item>
  </channel>
</rss>

