Breeze 1.0-RC1

24 views
Skip to first unread message

David Hall

unread,
Jan 13, 2018, 10:46:14 PM1/13/18
to scala-...@googlegroups.com
Hi everyone,

I'm cutting a first release candidate for Breeze 1.0. I fixed something like 40 issues, including some very old ones. There are still a few (pending/promised) PRs and issues I'd like to get resolved and I need to delete some deprecated APIs, but most of the stuff I wanted to get done I got done.

If people could kick it around for a bit I would very much appreciate it. I don't have a particular timeline for 1.0 final, but probably sometime in the next month. If you have some favorite bugbear you want fixed, this is the time to raise it. I'm not interested in adding large new features right now, but I'm happy to tackle correctness problems, significant speed issues, and surprising missing functionality. 

Thanks to everyone who contributed! And my apologies to those of you who submitted issues years ago to have me just sit on them, and even more apologies to those whose issues I still haven't gotten to.

-- David

Interesting Changes:

* Functions like sin for which f(0) == 0 can now exploit sparsity in SparseVectors etc.
* added population variance and stddev
* Vector[Float] can now be used in optimization routines
* fix equality and equals for SparseVector/SparseArray (dlwh, superbobry)
* much faster CSC matrix multiply
* much faster DM transpose copy
* support for CSC \ CSC solve
* considerably faster sparse/hashvector binary operations
* various improvements to DV[Float] support
* SliceVector operators fleshed out

* overflow check in SVD (WeichenXu123)
* update to SBT 1.0 (Martin Mauch)
* improved build stability
* fixed RingBuffer, modernized its API
* fixed DenseVector.rangeD
* Fixed a dumb bug in SparseArray.filter
* FirstOrderMinimizer can now return convergence reason (mrkm4ntr)
* OWLQN now accepts a convergence check (superbobry)
* HashVector is now serializable (superbobry)
* bug fixes to CSC \ DV solve
* bug fix to transposed dm solve
* broadcasting now works somewhat more consistently in several places
* BitVector.copy is now a deep copy
* removed randomness from argtopk, now uses median of 3
Reply all
Reply to author
Forward
0 new messages