On 7/19/11 4:13 PM, Greg Sterijevski wrote:
> I think Luc was suggesting implementing the algorithm in extended precision.
I don't really see need for that at this point. To settle the issue
on results precision, you should start though with highprecision
(or at least precision at the level presented for the X and Y data
by NIST) for the higher X powers. Doing just that computation in
extended precision is one way to do that. Of course, that could be
done externally and the data loaded by the test as a file.
Phil
>
> Greg
>
> On Tue, Jul 19, 2011 at 4:55 PM, Phil Steitz <phil.steitz@gmail.com> wrote:
>
>> On 7/18/11 6:31 PM, Greg Sterijevski wrote:
>>> All,
>>>
>>> I have pushed the implementation of the Miller Regression technique,
>> along
>>> with some tests. I am sure that there are a lot of sharp corners to file
>>> down and improve. However, I thought it would be prudent to get it out
>> and
>>> then we can further refine the code.
>> Thanks! I just committed the code, with just minor cleanup. I am
>> reviewing the article as we speak to verify implementation. Others
>> are encouraged to join in here. We need to complete the javadoc
>> and decide on exceptions as we stabilize the API here.
>>> On accuracy:
>>>
>>> I seem to match all of the digits of longley and wampler data. Filippelli
>> I
>>> have a very hard time matching except to a tolerance of 1.0e5. If you
>> look
>>> at LIMDEP's website:
>>>
>>>
>> http://www.limdep.com/features/capabilities/accuracy/linear_regression_3.php
>>> I think that the code I am checking in does a bit better. I am happy
>> about
>>> that. However, there are some other issues with Filippelli. Namely, one
>> can
>>> affect the 'accuracy' of your results depending on how you present the
>> data.
>>> For example, if I generate the high order polynomial naively, x1 = x0 *
>> x0,
>>> x2 = x0 * x1, ..., x10 = x0 * x9, then I can hit the numbers within
>> 1.0e5.
>>> If, however, I generate the Filipelli regressors by multiplying numbers
>>> whose magnitudes are similar:
>>> x1 = x0 * x0;
>>> x2 = x0 * x1;
>>> x3 = x0 * x2;
>>> x4 = x2 * x2;
>>> x5 = x2 *x3;
>>> x6 = x3 * x3;
>>> Then I have a very hard time making that 1.0e5 tolerance.
>>>
>>> Does anyone know if there is some article which explains the proper way
>> to
>>> set up Filippelli's test?
>> Have not seen anything on this.
>>>
>>> Speaking to Luc's point, maybe the correct thing to do is to move to
>>> arbitrary precision. I wanted to avoid this until I was at a deadend.
>>> Perhaps the time is now....
>> To generate the x values, yes that would probably be best.
>>
>>
>> Phil
>>
>>> On tests:
>>>
>>> I intend to push 34 tests soon. There are 17 tests in the first suite I
>>> sent in.
>>>
>>> Greg
>>>
>>
>> 
>> To unsubscribe, email: devunsubscribe@commons.apache.org
>> For additional commands, email: devhelp@commons.apache.org
>>
>>

To unsubscribe, email: devunsubscribe@commons.apache.org
For additional commands, email: devhelp@commons.apache.org
