[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Is this the best way to compute a sigmoid functi
o;?Apart from determining the value of G or the fine constant, or a few other esoteric determination of funadamental constants, what practical issues require more than 7-8 significant figures of precision? Yes, some interplanetary differentials might at times. (Our moon recedes from us as fast as your fingernails grow, and GPS internals can need sub-nanosecond differential time intervals) but what ones we might encounter in the XML world. o;?The bfetishb of chasing decimal places in most, but not all, cases shows a lack of understanding of the essence of the problem. The (artificial) epitome of this is the well-trodden problem of a railway around the world that must be lifted up 1 cm, but stays circular... how much more rail is needed? bWhere angels fear to treadb rush in with finding the difference by 2*pi*6,357,000.01 - 2*pi*6,357,000 which requires 9-10 places of numerical precision (i.e. approaching 30 bits of mantissa) neglecting the deeper structure of the mathematics.. John Lumley john@xxxxxxxxxxxxxx >> On 2 May 2020, at 19:09, Michael Kay mike@xxxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > o;? > >> On 2 May 2020, at 18:55, Costello, Roger L. costello@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: >> >> >> I want to compute the result of evaluating this sigmoid function: >> >> 1 >> ---------------- >> (1 + e**-x) >> >> That is, compute 1 divided by (1 + e raised to the -x power) > > In recent versions of XPath, you can simply do > > (1 div (1 + math:exp(-$x))) > >> (However, it already appears to be mighty accurate -- look at all those digits to the right of the decimal point) > > I hope you don't seriously believe that precision implies accuracy - that someone who claims the population of the world is 7,345,651,523 is more likely to be right than someone who says it is 7 billion. > >> Notice that for the variable $e-to-the-minus-x-power I specified it this way: as="xs:decimal". Should I have specified it this way: as="xs:float" instead? > > For calculations like this it's best to use xs:double. You don't need any more precision than this, and exponential/trigonometric functions are likely to be implemented as double-precision floating point by whatever underlying library is used. > > Michael Kay > Saxonica > XSL-List info and archive > EasyUnsubscribe (by email)
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|