Re: Mir Algorithm v1.1.3

2018-07-03 Thread jmh530 via Digitalmars-d-announce

On Tuesday, 3 July 2018 at 12:47:58 UTC, 9il wrote:

[snip]

New Mir features are open source reflection of work on large 
proprietary codebase. We have awesome Levenberg–Marquardt 
algorithm implementation (ndim non-linear least squares solver) 
in mir.optim, but it is closed source. Maybe if people from the 
community ask Laeeth to allow to open source it he would like 
to do so. No idea why it is closed source for now.


-- Ilya


There are a lot of cases where non-linear least squares can be 
useful: options pricing, yield curve fitting, etc. I've been 
doing so much of my statistics with MC-Stan that I forget about 
how useful stuff like that can be. Bayesian techniques are always 
so much slower.


Re: Mir Algorithm v1.1.3

2018-07-03 Thread 9il via Digitalmars-d-announce

On Monday, 2 July 2018 at 13:51:17 UTC, jmh530 wrote:

On Sunday, 1 July 2018 at 15:18:55 UTC, 9il wrote:

Mir Algorithm [1, 2]
=

Dlang core library for math, finance and a home for Dlang 
multidimensional array package - ndslice.


New features:
 - most of routines in mir.ndslice.topology (e.g. map, zip, 
stride) accept common arrays
 - `Series` got the same formating as builtin associative 
arrays

 - `Series` got ~ overloaded operator for set union.
 - mir.series: `unionSeries` was added (for N=2 optimised 
using `troykaSeries`)
 - mir.series: `troykaGalop` and `troykaSeries` were added. 
They are awesome too iterate over set union when both side set 
differences and/or set intersection should be handled 
seprately [6, 7]

 - ... and a lot of others I forgot since v0.8.0 announce
[snip]


Great. I'll need to look into some of these changes, 
particularly on Series.


What are you plans for next steps with Mir?


New Mir features are open source reflection of work on large 
proprietary codebase. We have awesome Levenberg–Marquardt 
algorithm implementation (ndim non-linear least squares solver) 
in mir.optim, but it is closed source. Maybe if people from the 
community ask Laeeth to allow to open source it he would like to 
do so. No idea why it is closed source for now.


-- Ilya


Re: Mir Algorithm v1.1.3

2018-07-02 Thread Bauss via Digitalmars-d-announce

On Sunday, 1 July 2018 at 15:18:55 UTC, 9il wrote:

Mir Algorithm [1, 2]
=

Dlang core library for math, finance and a home for Dlang 
multidimensional array package - ndslice.


New features:
 - most of routines in mir.ndslice.topology (e.g. map, zip, 
stride) accept common arrays

 - `Series` got the same formating as builtin associative arrays
 - `Series` got ~ overloaded operator for set union.
 - mir.series: `unionSeries` was added (for N=2 optimised using 
`troykaSeries`)
 - mir.series: `troykaGalop` and `troykaSeries` were added. 
They are awesome too iterate over set union when both side set 
differences and/or set intersection should be handled seprately 
[6, 7]

 - ... and a lot of others I forgot since v0.8.0 announce

Few bugs was fixed.

And a small tip about syntax sugar [3]:

/+dub.sdl:
dependency "mir-algorithm" version="~>1.1.3"
+/

import mir.ndslice;
void main()
{
auto v = [1.0, 2];
auto w = [1.0, 2];

 // `map` knows about `zip`
auto lazySum1 = zip(v, w).map!((a, b) => a + b);

//  it is elementwise sum too.
auto lazySum2 = v.sliced + w.sliced;

assert(lazySum1 == lazySum2);
}

Major part of this work has been sponsored by Symmetry 
Investments [4] and Kaleidic Associates [5].


Acknowledgements:
  Sebastian Wilzbach,
  Nathan Sashihara,
  John Hall,
  Shigeki Karita.

[1] https://github.com/libmir/mir-algorithm
[2] http://docs.algorithm.dlang.io/latest/index.html
[3] https://run.dlang.io/gist/e45d9892299131cee9c90541bbc00183
[4] http://symmetryinvestments.com
[5] https://github.com/kaleidicassociates
[6] 
http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaGalop
[7] 
http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaSeries


Best Regards,
Ilya Yaroshenko


Thank you for the great work!


Re: Mir Algorithm v1.1.3

2018-07-02 Thread jmh530 via Digitalmars-d-announce

On Sunday, 1 July 2018 at 15:18:55 UTC, 9il wrote:

Mir Algorithm [1, 2]
=

Dlang core library for math, finance and a home for Dlang 
multidimensional array package - ndslice.


New features:
 - most of routines in mir.ndslice.topology (e.g. map, zip, 
stride) accept common arrays

 - `Series` got the same formating as builtin associative arrays
 - `Series` got ~ overloaded operator for set union.
 - mir.series: `unionSeries` was added (for N=2 optimised using 
`troykaSeries`)
 - mir.series: `troykaGalop` and `troykaSeries` were added. 
They are awesome too iterate over set union when both side set 
differences and/or set intersection should be handled seprately 
[6, 7]

 - ... and a lot of others I forgot since v0.8.0 announce
[snip]


Great. I'll need to look into some of these changes, particularly 
on Series.


What are you plans for next steps with Mir?





Mir Algorithm v1.1.3

2018-07-01 Thread 9il via Digitalmars-d-announce

Mir Algorithm [1, 2]
=

Dlang core library for math, finance and a home for Dlang 
multidimensional array package - ndslice.


New features:
 - most of routines in mir.ndslice.topology (e.g. map, zip, 
stride) accept common arrays

 - `Series` got the same formating as builtin associative arrays
 - `Series` got ~ overloaded operator for set union.
 - mir.series: `unionSeries` was added (for N=2 optimised using 
`troykaSeries`)
 - mir.series: `troykaGalop` and `troykaSeries` were added. They 
are awesome too iterate over set union when both side set 
differences and/or set intersection should be handled seprately 
[6, 7]

 - ... and a lot of others I forgot since v0.8.0 announce

Few bugs was fixed.

And a small tip about syntax sugar [3]:

/+dub.sdl:
dependency "mir-algorithm" version="~>1.1.3"
+/

import mir.ndslice;
void main()
{
auto v = [1.0, 2];
auto w = [1.0, 2];

 // `map` knows about `zip`
auto lazySum1 = zip(v, w).map!((a, b) => a + b);

//  it is elementwise sum too.
auto lazySum2 = v.sliced + w.sliced;

assert(lazySum1 == lazySum2);
}

Major part of this work has been sponsored by Symmetry 
Investments [4] and Kaleidic Associates [5].


Acknowledgements:
  Sebastian Wilzbach,
  Nathan Sashihara,
  John Hall,
  Shigeki Karita.

[1] https://github.com/libmir/mir-algorithm
[2] http://docs.algorithm.dlang.io/latest/index.html
[3] https://run.dlang.io/gist/e45d9892299131cee9c90541bbc00183
[4] http://symmetryinvestments.com
[5] https://github.com/kaleidicassociates
[6] 
http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaGalop
[7] 
http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaSeries


Best Regards,
Ilya Yaroshenko