{ "cells": [ { "cell_type": "markdown", "id": "ab8548f7", "metadata": {}, "source": [ "# Spectral Clustering" ] }, { "cell_type": "markdown", "id": "696fd4cd", "metadata": {}, "source": [ "In this application, we'll show how `CoLA` can be used to perform Spectral Clustering. This application allows us to showcase our `Sparse` operator.\n", "\n", "In terms of the data, we will use the arXiv paper citation network of High Energy Physics. This is a directed graph showing the papers cited for each paper in the dataset. As in this case we will consider two papers to be related if at least one cited the other, then it will suffice to use an undirected graph. \n", "\n", "The following command would download the data in case it is not on the `data` folder under the user's `HOME` directory." ] }, { "cell_type": "code", "execution_count": 1, "id": "d8e38602-bdc3-4fba-9fac-a5a1d4e24509", "metadata": {}, "outputs": [], "source": [ "![ ! -f \"$HOME/data/cit-HepPh.txt\" ] && wget -P ~/data https://www.andpotap.com/static/cit-HepPh.txt" ] }, { "cell_type": "code", "execution_count": 2, "id": "03fb57d0-38f9-424f-8707-66103b7f01b2", "metadata": {}, "outputs": [], "source": [ "import os\n", "import warnings\n", "\n", "warnings.filterwarnings('ignore')\n", "input_path = os.path.join(os.environ['HOME'], \"data/cit-HepPh.txt\")" ] }, { "cell_type": "markdown", "id": "6dd6a841-7295-4a17-a330-dc916586ab71", "metadata": {}, "source": [ "To pre-process the data we will use the following code:" ] }, { "cell_type": "code", "execution_count": 3, "id": "c78356d3", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "from scipy.sparse import csr_matrix\n", "import numpy as np\n", "\n", "\n", "def load_graph_data(filepath, dtype, xnp, num_edges=-1):\n", " df = pd.read_csv(filepath, skiprows=4, delimiter=\"\\t\", header=None, names=[\"to\", \"from\"])\n", " df = df[:num_edges]\n", " df2 = pd.read_csv(filepath, skiprows=4, delimiter=\"\\t\", header=None, names=[\"from\", \"to\"])\n", " df2 = df2[:num_edges]\n", " df_undir = pd.concat((df, df2), axis=0)\n", " df_undir = df_undir.drop_duplicates()\n", " id_map = map_nodes_to_id(df_undir[\"from\"].unique())\n", " N = len(id_map)\n", " print(f\"Found {N:,d} nodes\")\n", " for col in [\"from\", \"to\"]:\n", " df_undir[col] = df_undir[col].map(id_map)\n", " data = np.ones(shape=len(df_undir))\n", " row, col = np.array(df_undir[\"to\"]), np.array(df_undir[\"from\"])\n", " sparse_matrix = csr_matrix((data, (row, col)), shape=(N, N))\n", " out = transform_to_csr(sparse_matrix, xnp, dtype)\n", " data, col_ind, rowptr, shape = out\n", " return data, col_ind, rowptr, shape\n", "\n", "\n", "def transform_to_csr(sparse_matrix, xnp, dtype):\n", " data = xnp.array(sparse_matrix.data, dtype=dtype, device=None)\n", " indices = xnp.array(sparse_matrix.indices, dtype=xnp.int64, device=None)\n", " indptr = xnp.array(sparse_matrix.indptr, dtype=xnp.int64, device=None)\n", " return data, indices, indptr, sparse_matrix.shape\n", "\n", "\n", "def map_nodes_to_id(nodes):\n", " out = {}\n", " for idx in range(len(nodes)):\n", " out[int(nodes[idx])] = idx\n", " return out" ] }, { "cell_type": "markdown", "id": "e0badcdf", "metadata": {}, "source": [ "The function `load_graph_data` creates the column indices and row pointers needed for the sparse [CSR format](https://en.wikipedia.org/wiki/Sparse_matrix). Now, we can load the data and create our `Sparse` adjacency matrix as follows" ] }, { "cell_type": "code", "execution_count": 4, "id": "7c5f6df8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Found 34,545 nodes\n" ] } ], "source": [ "import torch\n", "import cola\n", "from cola.backends import torch_fns as xnp\n", "\n", "num_edges = -1\n", "dtype = torch.float64\n", "data, col_ind, rowptr, shape = load_graph_data(input_path, dtype, xnp, num_edges)\n", "Ad = cola.ops.Sparse(data, col_ind, rowptr, shape)" ] }, { "cell_type": "markdown", "id": "69e37db8", "metadata": {}, "source": [ "Given the adjacency matrix, we can now create the normalized Laplacian defined as $L=I - D^{-1/2} A D^{-1/2}$, where $D$ is the diagonal matrix that contains the degree of each node, $A$ is the adjacency matrix and $I$ is the identity. We can create the Laplacian operator really easily in `CoLA` as" ] }, { "cell_type": "code", "execution_count": 5, "id": "b8918cf3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Size of the Laplacian: (34545, 34545)\n" ] } ], "source": [ "Deg = cola.ops.Diagonal(Ad @ torch.ones((Ad.shape[0], ), dtype=dtype))\n", "Id = cola.ops.I_like(Deg)\n", "Lap = Id - cola.inv(cola.sqrt(Deg)) @ Ad @ cola.inv(cola.sqrt(Deg))\n", "Lap = cola.SelfAdjoint(Lap)\n", "print(f\"Size of the Laplacian: {Lap.shape}\")" ] }, { "cell_type": "markdown", "id": "4dedbd96", "metadata": {}, "source": [ "Where I added the `SelfAdjoint` annotation at the end to ensure that `CoLA` dispatches algorithms for this type of symmetric operator. Spectral Clustering requires that we compute the eigenvectors of the smallest eigenvalues and use those eigenvectors as an embedding of our data. Once we do this, we can then use k-means to cluster points nearby as those points are related to cliques in the original graph." ] }, { "cell_type": "code", "execution_count": 6, "id": "89dac75a", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING:root:Non keyed randn used. To be deprecated soon.\n" ] } ], "source": [ "from sklearn.cluster import KMeans\n", "\n", "eigvals, eigvecs = cola.eig(Lap, k=20, which=\"SM\", alg=cola.Lanczos(max_iters=300))\n" ] }, { "cell_type": "code", "execution_count": 11, "id": "6b077609", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([-3.1070e-15, -1.0551e-15, 1.0093e-15, 1.5716e-02, 2.3005e-02,\n", " 3.2201e-02, 4.2626e-02, 4.2914e-02, 4.5332e-02, 4.5939e-02,\n", " 5.5096e-02, 5.7384e-02, 6.2086e-02, 6.5325e-02, 6.7329e-02,\n", " 6.9325e-02, 7.0176e-02, 7.0703e-02, 7.4464e-02, 7.5107e-02],\n", " dtype=torch.float64)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eigvals" ] }, { "cell_type": "markdown", "id": "1d809094", "metadata": {}, "source": [ "From the eigenvalues we can determine that there are 3 connected components of the citation graph. Let's identify these components" ] }, { "cell_type": "code", "execution_count": 12, "id": "caa951e5", "metadata": {}, "outputs": [], "source": [ "n_clusters = 3\n", "x_emb = eigvecs.to_dense()[:,:n_clusters]\n", "kmeans = KMeans(n_clusters=n_clusters).fit(x_emb)" ] }, { "cell_type": "markdown", "id": "4bcfbfa8", "metadata": {}, "source": [ "And now let's visualize these three components in the basis of these eigenvectors" ] }, { "cell_type": "code", "execution_count": 17, "id": "99ab03c5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure()\n", "ax = fig.add_subplot(projection='3d')\n", "ax.scatter(*x_emb.T, c=kmeans.labels_, cmap=\"tab10\")" ] } ], "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.10.13" } }, "nbformat": 4, "nbformat_minor": 5 }