Issue #2455: Make RBM work with sparse input when verbose=True.
Change RBM sparse format from CSC to CSR.
Cosmetic changes.
Add issparse import.
Cosmetic changes.
TST "confusion_matrix" was a duplicated key in CLASSIFICATION_METRICS and NOT_SYMMETRIC_METRICS dicts
TST style fix: old_error_settings should be outside try-finally block to be safely used in finally statement
FIX classification_report shouldn't fail on unicode labels in Python 2.x

'{0}'.format(arg) doesn't promote the whole string to unicode if arg is unicode - it tries to encode arg to sys.getdefaultencoding() instead.
"%s" doesn't have this gotcha.
ENH: added PresortBestSplitter
ENH: remove assert
Merge pull request #2462 from kmike/metrics-unicode

[MRG] Add unicode support to sklearn.metrics.classification_report
COMIST: shorten some long lines
DOC: added entry to What's New
Merge pull request #2469 from glouppe/tree-presort

[MRG] Make GBRT faster by presorting X
FIX: don't bias random feature selection
FIX: random number generator

FIX: address @larsmans + @ogrisel comments

ENH: add INT32_t type

ENH: rename INT32_t to UINT32_t

FIX: modulo RAND_R_MAX+1

FIX: broken tests
FIX: module RAND_R_MAX
TEST: improve test_distribution
TEST: improved test_distribution
FIX: use XorShift random number generator