{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from utils import *\n", "warnings.filterwarnings('ignore')\n", "%matplotlib inline\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "fd_collection = getCollection(\"team_5_mwdb_phase_2\", \"fd_collection\")\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Applying kmeans on the given similarity matrix to get 10 latent semantics (showing only top 10 image-weight pairs for each latent semantic)...\n", "Initialized centroids\n", "Iteration 78 - Converged\n", "Note: for K-Means we display distances, in ascending order\n", "Latent semantic no. 0\n", "image\t2035\t-\tDistance\t15.193245192997269\n", "image\t3813\t-\tDistance\t16.04888912166159\n", "image\t3846\t-\tDistance\t16.9147608871532\n", "image\t2925\t-\tDistance\t17.10454309878603\n", "image\t3455\t-\tDistance\t18.102307562986407\n", "image\t2410\t-\tDistance\t18.94942620886487\n", "image\t2107\t-\tDistance\t19.47309707424604\n", "image\t169\t-\tDistance\t19.533352544481723\n", "image\t2584\t-\tDistance\t20.078954258235058\n", "image\t2554\t-\tDistance\t20.31870945722174\n", "Latent semantic no. 1\n", "image\t4287\t-\tDistance\t19.736469352294893\n", "image\t1903\t-\tDistance\t20.625366718297947\n", "image\t4283\t-\tDistance\t21.293764261460364\n", "image\t2020\t-\tDistance\t21.439372707924147\n", "image\t2216\t-\tDistance\t21.50575404583331\n", "image\t4272\t-\tDistance\t22.731747308700246\n", "image\t73\t-\tDistance\t22.984525532773183\n", "image\t3118\t-\tDistance\t23.05742728400208\n", "image\t622\t-\tDistance\t23.38211853588565\n", "image\t4257\t-\tDistance\t23.952073196825147\n", "Latent semantic no. 2\n", "image\t1607\t-\tDistance\t19.475143670438978\n", "image\t1946\t-\tDistance\t21.51656357453921\n", "image\t2356\t-\tDistance\t21.828572283680128\n", "image\t3908\t-\tDistance\t22.05022203753488\n", "image\t3547\t-\tDistance\t22.443143797259534\n", "image\t2199\t-\tDistance\t22.571833277582463\n", "image\t3519\t-\tDistance\t22.86028550513413\n", "image\t1890\t-\tDistance\t23.30071966551519\n", "image\t173\t-\tDistance\t23.303977110625112\n", "image\t4270\t-\tDistance\t23.49369113941158\n", "Latent semantic no. 3\n", "image\t3877\t-\tDistance\t26.69192882188752\n", "image\t3763\t-\tDistance\t30.515760593946236\n", "image\t3788\t-\tDistance\t32.71038293371164\n", "image\t2735\t-\tDistance\t33.09699801502328\n", "image\t1506\t-\tDistance\t36.057724149884244\n", "image\t1686\t-\tDistance\t36.473691930187435\n", "image\t3485\t-\tDistance\t36.49488863581563\n", "image\t3920\t-\tDistance\t36.56582383384961\n", "image\t3403\t-\tDistance\t37.44068139304385\n", "image\t3762\t-\tDistance\t37.70577701904375\n", "Latent semantic no. 4\n", "image\t1783\t-\tDistance\t16.117313734508425\n", "image\t1395\t-\tDistance\t16.95429167145128\n", "image\t1784\t-\tDistance\t17.57009310160933\n", "image\t1789\t-\tDistance\t17.973453810738004\n", "image\t1765\t-\tDistance\t18.610362195798043\n", "image\t1773\t-\tDistance\t19.041096692299885\n", "image\t2926\t-\tDistance\t19.11502996606766\n", "image\t1685\t-\tDistance\t19.414760349222448\n", "image\t2841\t-\tDistance\t19.81113964538446\n", "image\t1460\t-\tDistance\t19.898834382884864\n", "Latent semantic no. 5\n", "image\t3303\t-\tDistance\t20.969885324908756\n", "image\t2045\t-\tDistance\t21.631692888420304\n", "image\t3825\t-\tDistance\t21.716033288921732\n", "image\t3929\t-\tDistance\t22.774521397811917\n", "image\t1859\t-\tDistance\t23.372667860565386\n", "image\t3232\t-\tDistance\t26.60481926894494\n", "image\t3149\t-\tDistance\t26.715214213345696\n", "image\t1502\t-\tDistance\t27.72700742629819\n", "image\t1579\t-\tDistance\t28.000908326829553\n", "image\t3021\t-\tDistance\t28.227049715323034\n", "Latent semantic no. 6\n", "image\t1576\t-\tDistance\t18.87169047631405\n", "image\t2858\t-\tDistance\t20.03847155817962\n", "image\t1586\t-\tDistance\t20.080662203948876\n", "image\t2850\t-\tDistance\t20.838413387796493\n", "image\t2028\t-\tDistance\t21.169189788615924\n", "image\t2716\t-\tDistance\t21.48136423054197\n", "image\t4102\t-\tDistance\t21.660099255138686\n", "image\t3457\t-\tDistance\t21.769184940550623\n", "image\t1736\t-\tDistance\t21.85959261306364\n", "image\t4314\t-\tDistance\t22.54861914619658\n", "Latent semantic no. 7\n", "image\t3950\t-\tDistance\t25.18109439269185\n", "image\t2023\t-\tDistance\t25.789279523766343\n", "image\t3932\t-\tDistance\t27.90805288360532\n", "image\t1434\t-\tDistance\t28.944408149134258\n", "image\t2330\t-\tDistance\t29.442864276116474\n", "image\t2349\t-\tDistance\t30.24950272216615\n", "image\t3252\t-\tDistance\t30.39413795688458\n", "image\t3526\t-\tDistance\t30.998757072825036\n", "image\t1504\t-\tDistance\t31.665045303749636\n", "image\t3117\t-\tDistance\t32.420320427638046\n", "Latent semantic no. 8\n", "image\t2077\t-\tDistance\t13.954066038827099\n", "image\t3402\t-\tDistance\t14.458733182318412\n", "image\t1563\t-\tDistance\t16.656651855034323\n", "image\t1846\t-\tDistance\t17.052974589353724\n", "image\t730\t-\tDistance\t17.25680776558567\n", "image\t3503\t-\tDistance\t17.367570425682572\n", "image\t3405\t-\tDistance\t18.378448265500502\n", "image\t4284\t-\tDistance\t19.017406411077424\n", "image\t3809\t-\tDistance\t19.162266095814548\n", "image\t2510\t-\tDistance\t19.361042141304708\n", "Latent semantic no. 9\n", "image\t3393\t-\tDistance\t18.57180005298004\n", "image\t2544\t-\tDistance\t20.113218222781388\n", "image\t1930\t-\tDistance\t20.383444354935005\n", "image\t1682\t-\tDistance\t21.019603660594967\n", "image\t3155\t-\tDistance\t21.019680109622932\n", "image\t4000\t-\tDistance\t21.85089581447219\n", "image\t2815\t-\tDistance\t21.85923223224687\n", "image\t2524\t-\tDistance\t22.415510254934645\n", "image\t2907\t-\tDistance\t22.896560385522896\n", "image\t2434\t-\tDistance\t22.9031446197451\n" ] } ], "source": [ "selected_feature_model = valid_feature_models[\n", " str(input(\"Enter feature model - one of \" + str(list(valid_feature_models.keys()))))\n", "]\n", "\n", "k = int(input(\"Enter value of k: \"))\n", "if k < 1:\n", " raise ValueError(\"k should be a positive integer\")\n", "\n", "selected_dim_reduction_method = str(\n", " input(\n", " \"Enter dimensionality reduction method - one of \"\n", " + str(list(valid_dim_reduction_methods.keys()))\n", " )\n", ")\n", "\n", "image_sim_matrix = find_image_image_similarity(fd_collection,selected_feature_model)\n", "\n", "extract_latent_semantics_from_sim_matrix(\n", " image_sim_matrix,\n", " selected_feature_model,\n", " \"image\",\n", "\tk,\n", " selected_dim_reduction_method,\n", " top_images=10,\n", ")\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.11.4" } }, "nbformat": 4, "nbformat_minor": 2 }