[SciPy-Dev] changes to autosol.py / arls.py

rlucas7 at vt.edu rlucas7 at vt.edu
Fri Oct 16 11:48:00 EDT 2020


There is another existing procedure not in scipy AFAIK but in literature that is referred to as ARLS.

Google search for 
‘Alternating recursive least squares’

 Will Show the initialism used in various places.

Perhaps a different name to avoid potential user confusion? 

One proposal is ‘auto_reg_ls’ but there might be objections to that too. 

Naming is difficult.

Sincerely, 

-Lucas Roberts 

> On Oct 16, 2020, at 11:08 AM, Ralf Gommers <ralf.gommers at gmail.com> wrote:
> 
> 
> 
> 
>> On Thu, Oct 15, 2020 at 8:39 PM rondall jones <rejones7 at msn.com> wrote:
>> To Ilhan, Ralf, Stefan, others...
>> 
>> Ilhan really wants arls() to give the user some feedback about the solution.
>> I didn't understand his/your point at first but I eventually realized that I can
>> and should return the artifacts I compute about the problem.
>> And I really like the result. Ilhan was right.
>> (There are no changes whatsoever to algorithms.)
>> 
>> Also, Ilhan objected to the name, autosol, feeling that it implies too much.
>> I had already changed all the routine names to arlsxxx, for 
>> "automatically regularized least squares". 
>> I guess I should have changed the file name, too, and am doing that too.
>> I hope that doesn't foul up your review process.
> 
> That does seem like a better name. And no worries, renames are perfectly fine and won't interfere with PR review.
> 
>> 
>> So I just uploaded arls() and its test_arls() with these changes"
>> each solver now returns:
>> the tradition numerical rank of A ( I checked other current solvers in scipy to be sure I was doing this in the same exact way)
>> the "usable rank" which involves both A and b, and is the crucial artifact needed to do autoregularization
>> the estimate of the right-hand-side RMS error, sigma. Some people will be surprised to see that this is possible.
>> the resulting Tikhonov regularization parameter, lambda
>> The in-code comments have been updated
>> The test_arls() code has been updated to use one function per test, as best as I understand how to do it at this point
>> Unfortunately I don't know how to delete the old autosol.py and test_autosol.py.
>> Maybe one of you code managers have to do that?
> 
> On your local branch you do `git rm autosol.py` and then commit the result and push it to your fork. 
> 
> Unless you mean you are only using the GitHub UI for adding code. That won't work for reasonably complex code changes, it really is only meant for tiny fixes like doc updates. It's well worth taking the time to learn Git (I know it's a pain to start with).
> 
>> 
>> Thanks for your interest and tolerance of my areas of ignorance.
>> By the way, I am not seeking to REPLACE any current scipy solvers. Arls should only be an additional feature for a long time.
> 
> Yes, understood. If you had removed existing functionality, you'd have heard howls of protest quickly:)
> 
>> But I think it will be a significant asset for scipy.
>> I have mostly publicized these codes strictly via my web site in the past, as C++ has no central code repository like python.
> 
> I suggest to keep the rest of this conversation on GitHub, no need to keep the mailing list subscribers up to date. The habit is simply to make them aware once and take a decision on adding functionality yes/no on the list; anything else is easier on GitHub.
> 
> Cheers.
> Ralf
> 
> _______________________________________________
> SciPy-Dev mailing list
> SciPy-Dev at python.org
> https://mail.python.org/mailman/listinfo/scipy-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.python.org/pipermail/scipy-dev/attachments/20201016/cb3e0df5/attachment.html>


More information about the SciPy-Dev mailing list