From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.67.7.233 with SMTP id df9mr569834pad.4.1470514250718; Sat, 06 Aug 2016 13:10:50 -0700 (PDT) X-Received: by 10.157.41.230 with SMTP id g35mr157947otd.19.1470514250612; Sat, 06 Aug 2016 13:10:50 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!f6no7880973ith.0!news-out.google.com!d68ni18946ith.0!nntp.google.com!f6no7901940ith.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sat, 6 Aug 2016 13:10:50 -0700 (PDT) In-Reply-To: <2a3fc931-feb3-4542-a4c9-e43affa5c4f4@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=2601:191:8302:3f70:49c2:3a36:cc37:a052; posting-account=fdRd8woAAADTIlxCu9FgvDrUK4wPzvy3 NNTP-Posting-Host: 2601:191:8302:3f70:49c2:3a36:cc37:a052 References: <31c22983-150c-4dab-abba-588e15f75914@googlegroups.com> <84d258dc-b60d-4a49-9af4-27dd6f3e5f5f@googlegroups.com> <1703ca9a-2665-4435-9564-4abd8a77ebe9@googlegroups.com> <12ca4276-cd1e-49ae-b5dc-56432e721687@googlegroups.com> <2a3fc931-feb3-4542-a4c9-e43affa5c4f4@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: New IEEE Language Popularity Ratings From: rieachus@comcast.net Injection-Date: Sat, 06 Aug 2016 20:10:50 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:31307 Date: 2016-08-06T13:10:50-07:00 List-Id: On Saturday, August 6, 2016 at 11:53:56 AM UTC-4, brbar...@gmail.com wrote: > 1. Do I trust the algorithms in the library? >=20 > Numerical procedures may need care to ensure they've been implemented car= efully. > For example, if one has to do matrix inversion, it's important to use a S= ingular > Value Decomposition (SVD) algorithm implemented with long floats (or doub= le > precision). I don't know whether spreadsheet inversions do that, so I mi= ght > not want to use a spreadsheet - even if the spreadsheet has matrix invers= ion. I'm going to take potshots at the inversion advice here, random numbers to = follow. I have always used LUP decomposition for inversion of large matrices. (And = scaling if the values have a wide range.) L is a lower triangular matrix, = U an upper triangular matrix, and P is a permutation matrix. (All zeroes ex= cept one one in each row and column.) Computing the inverse from the LUP d= ecomposition is easy, and multiplying out the LUP decomposition will tell y= ou how badly you have mangled the data. (And yes, you should also multiply= the original matrix by the inverse to get a residuals matrix.) =20 As for using double precision, consider that a default. Packages for x86 f= amily chips can use the x87 IEEE Extended support that is still there. The= re are (mostly software) routines that provide even more precision. Why so= much precision, when you are not measuring the diameter of the galaxy to t= he nearest atom? Because mixing float addition and multiplication burns off= precision very quickly. In fact, for some peculiar data, I have used disc= rete arithmetic, and an arbitrary precision package. Not needed often, but= if you are investing your money based on the results? An extra few minute= s of CPU time are cheap.