{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Dask for Machine Learning\n", "\n", "This is a high-level overview demonstrating some the components of Dask-ML.\n", "Visit the main [Dask-ML](http://ml.dask.org) documentation, see the [dask tutorial](https://github.com/dask/dask-tutorial) notebook 08, or explore some of the other machine-learning examples." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:35.097263Z", "iopub.status.busy": "2022-07-27T19:12:35.096995Z", "iopub.status.idle": "2022-07-27T19:12:36.218984Z", "shell.execute_reply": "2022-07-27T19:12:36.218490Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "
\n", "
\n", "

Client

\n", "

Client-12a6896d-0de0-11ed-9ba6-000d3a8f7959

\n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "
Connection method: Cluster objectCluster type: distributed.LocalCluster
\n", " Dashboard: http://10.1.1.64:8787/status\n", "
\n", "\n", " \n", "
\n", "

Cluster Info

\n", "
\n", "
\n", "
\n", "
\n", "

LocalCluster

\n", "

ced599b8

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", " \n", "
\n", " Dashboard: http://10.1.1.64:8787/status\n", " \n", " Workers: 1\n", "
\n", " Total threads: 4\n", " \n", " Total memory: 1.86 GiB\n", "
Status: runningUsing processes: False
\n", "\n", "
\n", " \n", "

Scheduler Info

\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", "

Scheduler

\n", "

Scheduler-60443685-4058-48d1-ba10-996f80c21c06

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", " Comm: inproc://10.1.1.64/7078/1\n", " \n", " Workers: 1\n", "
\n", " Dashboard: http://10.1.1.64:8787/status\n", " \n", " Total threads: 4\n", "
\n", " Started: Just now\n", " \n", " Total memory: 1.86 GiB\n", "
\n", "
\n", "
\n", "\n", "
\n", " \n", "

Workers

\n", "
\n", "\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 0

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: inproc://10.1.1.64/7078/4\n", " \n", " Total threads: 4\n", "
\n", " Dashboard: http://10.1.1.64:42349/status\n", " \n", " Memory: 1.86 GiB\n", "
\n", " Nanny: None\n", "
\n", " Local directory: /home/runner/work/dask-examples/dask-examples/dask-worker-space/worker-0l66zwyz\n", "
\n", "
\n", "
\n", "
\n", " \n", "\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " \n", "\n", "
\n", "
" ], "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from dask.distributed import Client, progress\n", "client = Client(processes=False, threads_per_worker=4,\n", " n_workers=1, memory_limit='2GB')\n", "client" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Distributed Training\n", "\n", " \n", "\n", "Scikit-learn uses [joblib](http://joblib.readthedocs.io/) for single-machine parallelism. This lets you train most estimators (anything that accepts an `n_jobs` parameter) using all the cores of your laptop or workstation.\n", "\n", "Alternatively, Scikit-Learn can use Dask for parallelism. This lets you train those estimators using all the cores of your *cluster* without significantly changing your code.\n", "\n", "This is most useful for training large models on medium-sized datasets. You may have a large model when searching over many hyper-parameters, or when using an ensemble method with many individual estimators. For too small datasets, training times will typically be small enough that cluster-wide parallelism isn't helpful. For too large datasets (larger than a single machine's memory), the scikit-learn estimators may not be able to cope (see below)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create Scikit-Learn Estimator" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:36.222286Z", "iopub.status.busy": "2022-07-27T19:12:36.221855Z", "iopub.status.idle": "2022-07-27T19:12:36.751178Z", "shell.execute_reply": "2022-07-27T19:12:36.750574Z" } }, "outputs": [], "source": [ "from sklearn.datasets import make_classification\n", "from sklearn.svm import SVC\n", "from sklearn.model_selection import GridSearchCV\n", "import pandas as pd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll use scikit-learn to create a pair of small random arrays, one for the features `X`, and one for the target `y`." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:36.754981Z", "iopub.status.busy": "2022-07-27T19:12:36.754585Z", "iopub.status.idle": "2022-07-27T19:12:36.763103Z", "shell.execute_reply": "2022-07-27T19:12:36.762478Z" } }, "outputs": [ { "data": { "text/plain": [ "array([[-1.06377997, 0.67640868, 1.06935647, -0.21758002, 0.46021477,\n", " -0.39916689, -0.07918751, 1.20938491, -0.78531472, -0.17218611,\n", " -1.08535744, -0.99311895, 0.30693511, 0.06405769, -1.0542328 ,\n", " -0.52749607, -0.0741832 , -0.35562842, 1.05721416, -0.90259159],\n", " [ 0.0708476 , -1.69528125, 2.44944917, -0.5304942 , -0.93296221,\n", " 2.86520354, 2.43572851, -1.61850016, 1.30071691, 0.34840246,\n", " 0.54493439, 0.22532411, 0.60556322, -0.19210097, -0.06802699,\n", " 0.9716812 , -1.79204799, 0.01708348, -0.37566904, -0.62323644],\n", " [ 0.94028404, -0.49214582, 0.67795602, -0.22775445, 1.40175261,\n", " 1.23165333, -0.77746425, 0.01561602, 1.33171299, 1.08477266,\n", " -0.97805157, -0.05012039, 0.94838552, -0.17342825, -0.47767184,\n", " 0.76089649, 1.00115812, -0.06946407, 1.35904607, -1.18958963],\n", " [-0.29951677, 0.75988955, 0.18280267, -1.55023271, 0.33821802,\n", " 0.36324148, -2.10052547, -0.4380675 , -0.16639343, -0.34083531,\n", " 0.42435643, 1.17872434, 2.8314804 , 0.14241375, -0.20281911,\n", " 2.40571546, 0.31330473, 0.40435568, -0.28754632, -2.8478034 ],\n", " [-2.63062675, 0.23103376, 0.04246253, 0.47885055, 1.54674163,\n", " 1.6379556 , -1.53207229, -0.73444479, 0.46585484, 0.4738362 ,\n", " 0.98981401, -1.06119392, -0.88887952, 1.23840892, -0.57282854,\n", " -1.27533949, 1.0030065 , -0.47712843, 0.09853558, 0.52780407]])" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X, y = make_classification(n_samples=1000, random_state=0)\n", "X[:5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll fit a [Support Vector Classifier](http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html), using [grid search](http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html) to find the best value of the $C$ hyperparameter." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:36.769182Z", "iopub.status.busy": "2022-07-27T19:12:36.768165Z", "iopub.status.idle": "2022-07-27T19:12:36.773922Z", "shell.execute_reply": "2022-07-27T19:12:36.772862Z" } }, "outputs": [], "source": [ "param_grid = {\"C\": [0.001, 0.01, 0.1, 0.5, 1.0, 2.0, 5.0, 10.0],\n", " \"kernel\": ['rbf', 'poly', 'sigmoid'],\n", " \"shrinking\": [True, False]}\n", "\n", "grid_search = GridSearchCV(SVC(gamma='auto', random_state=0, probability=True),\n", " param_grid=param_grid,\n", " return_train_score=False,\n", " cv=3,\n", " n_jobs=-1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To fit that normally, we would call\n", "\n", "```python\n", "grid_search.fit(X, y)\n", "```\n", "\n", "To fit it using the cluster, we just need to use a context manager provided by joblib." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:36.776729Z", "iopub.status.busy": "2022-07-27T19:12:36.776244Z", "iopub.status.idle": "2022-07-27T19:12:44.251087Z", "shell.execute_reply": "2022-07-27T19:12:44.250371Z" } }, "outputs": [], "source": [ "import joblib\n", "\n", "with joblib.parallel_backend('dask'):\n", " grid_search.fit(X, y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We fit 48 different models, one for each hyper-parameter combination in `param_grid`, distributed across the cluster. At this point, we have a regular scikit-learn model, which can be used for prediction, scoring, etc." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:44.254628Z", "iopub.status.busy": "2022-07-27T19:12:44.254166Z", "iopub.status.idle": "2022-07-27T19:12:44.274113Z", "shell.execute_reply": "2022-07-27T19:12:44.273432Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
mean_fit_timestd_fit_timemean_score_timestd_score_timeparam_Cparam_kernelparam_shrinkingparamssplit0_test_scoresplit1_test_scoresplit2_test_scoremean_test_scorestd_test_scorerank_test_score
00.2671770.0119280.0305910.0062840.001rbfTrue{'C': 0.001, 'kernel': 'rbf', 'shrinking': True}0.5029940.5015020.5015020.5019990.00070441
10.2637380.0051830.0289030.0054110.001rbfFalse{'C': 0.001, 'kernel': 'rbf', 'shrinking': False}0.5029940.5015020.5015020.5019990.00070441
20.1934000.0058580.0187730.0030980.001polyTrue{'C': 0.001, 'kernel': 'poly', 'shrinking': True}0.5029940.5015020.5015020.5019990.00070441
30.1962290.0066280.0188260.0022500.001polyFalse{'C': 0.001, 'kernel': 'poly', 'shrinking': Fa...0.5029940.5015020.5015020.5019990.00070441
40.3781060.0067290.0374000.0025860.001sigmoidTrue{'C': 0.001, 'kernel': 'sigmoid', 'shrinking':...0.5029940.5015020.5015020.5019990.00070441
\n", "
" ], "text/plain": [ " mean_fit_time std_fit_time mean_score_time std_score_time param_C \\\n", "0 0.267177 0.011928 0.030591 0.006284 0.001 \n", "1 0.263738 0.005183 0.028903 0.005411 0.001 \n", "2 0.193400 0.005858 0.018773 0.003098 0.001 \n", "3 0.196229 0.006628 0.018826 0.002250 0.001 \n", "4 0.378106 0.006729 0.037400 0.002586 0.001 \n", "\n", " param_kernel param_shrinking \\\n", "0 rbf True \n", "1 rbf False \n", "2 poly True \n", "3 poly False \n", "4 sigmoid True \n", "\n", " params split0_test_score \\\n", "0 {'C': 0.001, 'kernel': 'rbf', 'shrinking': True} 0.502994 \n", "1 {'C': 0.001, 'kernel': 'rbf', 'shrinking': False} 0.502994 \n", "2 {'C': 0.001, 'kernel': 'poly', 'shrinking': True} 0.502994 \n", "3 {'C': 0.001, 'kernel': 'poly', 'shrinking': Fa... 0.502994 \n", "4 {'C': 0.001, 'kernel': 'sigmoid', 'shrinking':... 0.502994 \n", "\n", " split1_test_score split2_test_score mean_test_score std_test_score \\\n", "0 0.501502 0.501502 0.501999 0.000704 \n", "1 0.501502 0.501502 0.501999 0.000704 \n", "2 0.501502 0.501502 0.501999 0.000704 \n", "3 0.501502 0.501502 0.501999 0.000704 \n", "4 0.501502 0.501502 0.501999 0.000704 \n", "\n", " rank_test_score \n", "0 41 \n", "1 41 \n", "2 41 \n", "3 41 \n", "4 41 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.DataFrame(grid_search.cv_results_).head()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:44.276891Z", "iopub.status.busy": "2022-07-27T19:12:44.276473Z", "iopub.status.idle": "2022-07-27T19:12:44.304577Z", "shell.execute_reply": "2022-07-27T19:12:44.303903Z" } }, "outputs": [ { "data": { "text/plain": [ "array([0, 1, 1, 1, 0])" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "grid_search.predict(X)[:5]" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:44.307515Z", "iopub.status.busy": "2022-07-27T19:12:44.307023Z", "iopub.status.idle": "2022-07-27T19:12:44.337705Z", "shell.execute_reply": "2022-07-27T19:12:44.337033Z" } }, "outputs": [ { "data": { "text/plain": [ "0.983" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "grid_search.score(X, y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For more on training scikit-learn models with distributed joblib, see the [dask-ml documentation](http://dask-ml.readthedocs.io/en/latest/joblib.html)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Training on Large Datasets\n", "\n", "Most estimators in scikit-learn are designed to work on in-memory arrays. Training with larger datasets may require different algorithms.\n", "\n", "All of the algorithms implemented in Dask-ML work well on larger than memory datasets, which you might store in a [dask array](http://dask.pydata.org/en/latest/array.html) or [dataframe](http://dask.pydata.org/en/latest/dataframe.html)." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:44.341250Z", "iopub.status.busy": "2022-07-27T19:12:44.340706Z", "iopub.status.idle": "2022-07-27T19:12:44.991641Z", "shell.execute_reply": "2022-07-27T19:12:44.990962Z" } }, "outputs": [], "source": [ "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:44.995409Z", "iopub.status.busy": "2022-07-27T19:12:44.995052Z", "iopub.status.idle": "2022-07-27T19:12:45.627429Z", "shell.execute_reply": "2022-07-27T19:12:45.626606Z" } }, "outputs": [], "source": [ "import dask_ml.datasets\n", "import dask_ml.cluster\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this example, we'll use `dask_ml.datasets.make_blobs` to generate some random *dask* arrays." ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:45.631640Z", "iopub.status.busy": "2022-07-27T19:12:45.631434Z", "iopub.status.idle": "2022-07-27T19:12:46.099958Z", "shell.execute_reply": "2022-07-27T19:12:46.099480Z" } }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Array Chunk
Bytes 152.59 MiB 15.26 MiB
Shape (10000000, 2) (1000000, 2)
Count 10 Tasks 10 Chunks
Type float64 numpy.ndarray
\n", "
\n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", "\n", " \n", " \n", "\n", " \n", " 2\n", " 10000000\n", "\n", "
" ], "text/plain": [ "dask.array" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X, y = dask_ml.datasets.make_blobs(n_samples=10000000,\n", " chunks=1000000,\n", " random_state=0,\n", " centers=3)\n", "X = X.persist()\n", "X" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll use the k-means implemented in Dask-ML to cluster the points. It uses the `k-means||` (read: \"k-means parallel\") initialization algorithm, which scales better than `k-means++`. All of the computation, both during and after initialization, can be done in parallel." ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:46.109933Z", "iopub.status.busy": "2022-07-27T19:12:46.102624Z", "iopub.status.idle": "2022-07-27T19:12:58.815987Z", "shell.execute_reply": "2022-07-27T19:12:58.815469Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/usr/share/miniconda3/envs/dask-examples/lib/python3.9/site-packages/dask/base.py:1283: UserWarning: Running on a single-machine scheduler when a distributed client is active might lead to unexpected results.\n", " warnings.warn(\n" ] }, { "data": { "text/plain": [ "KMeans(init_max_iter=2, n_clusters=3, oversampling_factor=10)" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "km = dask_ml.cluster.KMeans(n_clusters=3, init_max_iter=2, oversampling_factor=10)\n", "km.fit(X)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll plot a sample of points, colored by the cluster each falls into." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "execution": { "iopub.execute_input": "2022-07-27T19:12:58.819353Z", "iopub.status.busy": "2022-07-27T19:12:58.818875Z", "iopub.status.idle": "2022-07-27T19:12:59.589019Z", "shell.execute_reply": "2022-07-27T19:12:59.588532Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.scatter(X[::10000, 0], X[::10000, 1], marker='.', c=km.labels_[::10000],\n", " cmap='viridis', alpha=0.25);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For all the estimators implemented in Dask-ML, see the [API documentation](http://dask-ml.readthedocs.io/en/latest/modules/api.html)." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" } }, "nbformat": 4, "nbformat_minor": 4 }