FIX raise error when number of features changes in partial fit, Add common test for inconsisten number of features for partial fit.
Fixed issue 3815. Discrete AdaBoostClassifier now fails early if the base classifier if worse than random.
FIX #2986: ZeroDivisionError in LinearRegression on sparse data
DOC FIX: typo and minor update
Merge pull request #3854 from justmarkham/doc-changes

DOC FIX: typo and minor update
Merge pull request #3833 from amueller/sgd_partial_fit_variable_length

[MRG] TST raise error when number of features changes in partial fit
Merge pull request #3853 from ogrisel/backport-lsqr-fix

[MRG] Fix ZeroDivisionError in LinearRegression on sparse data
TST stronger non-regression test for #3815

Also fixed the testing imports.
Merge branch 'pr/3837'

Fixes gh-3815.
FIX make assert_raises_regex backport for 2.6 consistent with 2.7+

Use regex.search instead of regex.match.

Furthermore, silence the deprecation warning from Python 3.4 as
assert_raises_regexp is now deprecated in favor of the shorter name:
assert_raises_regex.
Merge pull request #3861 from ogrisel/fix-python-2.6-test

[MRG] FIX make assert_raises_regex backport for 2.6 consistent with 2.7+
ENH: Birch, first commit
add example for birch + make it more pythonic
Made the following changes
1. Improved documentation.
2. Added sanity test.
3. Moved example to a separate folder
4. Optimised compuation of centroids.
5. Added underscore to public attributes.
ENH: Made the following changes
1. Added partial_fit and predict methods
2. Inherit from ClusterMixin from fit_predict methods
3. Removed inplace modification of X and self.copy
4. Added final global clustering and n_clusters param.
OPT: Set check_X_y=False internally in birch
OPT: Increased the code speed by doing the following.
1. Prevent recomputing centroids.
2. Precompute the squared_norms as much as possible, and remove
call to pairwise_distances_argmin_min
3. Cached centroids_ and squared_norms_ to prevent repeated
iteration across subclusters_
4. Compute the closest_threshold when needed.
5. Remove enumeration of X
6. In plase modification of dot products.
OPT: Made the following changes.
1. Used np.unravel_index
2. Improved docs and removed unused imports.
ENH: Added example to compare birch and minibatchkmeans
ENH: Add arbitrary clusterer in the global clustering step and test