{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%reload_ext autoreload\n", "%autoreload 2\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from fastai.tabular import *" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "path=Path('data/tabular/')" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[PosixPath('data/tabular/models'),\n", " PosixPath('data/tabular/train_bhu_ml.csv'),\n", " PosixPath('data/tabular/test_bhu_ml.csv'),\n", " PosixPath('data/tabular/Data_Test.xlsx'),\n", " PosixPath('data/tabular/ml2_test.csv'),\n", " PosixPath('data/tabular/Data_Train.xlsx'),\n", " PosixPath('data/tabular/ml2_train.csv')]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "path.ls()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "df=pd.read_csv(path/'train_bhu_ml.csv')" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "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", "
IDTagReputationAnswersUsernameViewsUpvotes
052664a3942.02.01556237855.042.0
1327662a26046.012.02178155801.01175.0
2468453c1358.04.0561778067.060.0
396996a264.03.016879327064.09.0
4131465c4271.04.011222313986.083.0
\n", "
" ], "text/plain": [ " ID Tag Reputation Answers Username Views Upvotes\n", "0 52664 a 3942.0 2.0 155623 7855.0 42.0\n", "1 327662 a 26046.0 12.0 21781 55801.0 1175.0\n", "2 468453 c 1358.0 4.0 56177 8067.0 60.0\n", "3 96996 a 264.0 3.0 168793 27064.0 9.0\n", "4 131465 c 4271.0 4.0 112223 13986.0 83.0" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
IDTagReputationAnswersUsernameViewsUpvotes
count330045.0000003300453.300450e+05330045.000000330045.0000003.300450e+05330045.000000
uniqueNaN10NaNNaNNaNNaNNaN
topNaNcNaNNaNNaNNaNNaN
freqNaN72458NaNNaNNaNNaNNaN
mean235748.682789NaN7.773147e+033.91767281442.8888032.964507e+04337.505358
std136039.418471NaN2.706141e+043.57951549215.1007308.095646e+043592.441135
min1.000000NaN0.000000e+000.0000000.0000009.000000e+000.000000
25%117909.000000NaN2.820000e+022.00000039808.0000002.594000e+038.000000
50%235699.000000NaN1.236000e+033.00000079010.0000008.954000e+0328.000000
75%353620.000000NaN5.118000e+035.000000122559.0000002.687000e+04107.000000
max471493.000000NaN1.042428e+0676.000000175738.0000005.231058e+06615278.000000
\n", "
" ], "text/plain": [ " ID Tag Reputation Answers Username \\\n", "count 330045.000000 330045 3.300450e+05 330045.000000 330045.000000 \n", "unique NaN 10 NaN NaN NaN \n", "top NaN c NaN NaN NaN \n", "freq NaN 72458 NaN NaN NaN \n", "mean 235748.682789 NaN 7.773147e+03 3.917672 81442.888803 \n", "std 136039.418471 NaN 2.706141e+04 3.579515 49215.100730 \n", "min 1.000000 NaN 0.000000e+00 0.000000 0.000000 \n", "25% 117909.000000 NaN 2.820000e+02 2.000000 39808.000000 \n", "50% 235699.000000 NaN 1.236000e+03 3.000000 79010.000000 \n", "75% 353620.000000 NaN 5.118000e+03 5.000000 122559.000000 \n", "max 471493.000000 NaN 1.042428e+06 76.000000 175738.000000 \n", "\n", " Views Upvotes \n", "count 3.300450e+05 330045.000000 \n", "unique NaN NaN \n", "top NaN NaN \n", "freq NaN NaN \n", "mean 2.964507e+04 337.505358 \n", "std 8.095646e+04 3592.441135 \n", "min 9.000000e+00 0.000000 \n", "25% 2.594000e+03 8.000000 \n", "50% 8.954000e+03 28.000000 \n", "75% 2.687000e+04 107.000000 \n", "max 5.231058e+06 615278.000000 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.describe(include='all')" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(330045, 7)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.shape" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "df.drop('ID',axis=1,inplace=True)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "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", "
TagReputationAnswersUsernameViewsUpvotes
0a3942.02.01556237855.042.0
1a26046.012.02178155801.01175.0
2c1358.04.0561778067.060.0
3a264.03.016879327064.09.0
4c4271.04.011222313986.083.0
\n", "
" ], "text/plain": [ " Tag Reputation Answers Username Views Upvotes\n", "0 a 3942.0 2.0 155623 7855.0 42.0\n", "1 a 26046.0 12.0 21781 55801.0 1175.0\n", "2 c 1358.0 4.0 56177 8067.0 60.0\n", "3 a 264.0 3.0 168793 27064.0 9.0\n", "4 c 4271.0 4.0 112223 13986.0 83.0" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "cont,cat=cont_cat_split(df=df, max_card=2, dep_var='Upvotes')" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Tag']" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cat" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Reputation', 'Answers', 'Username', 'Views']" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cont" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "procs=[FillMissing,Categorify,Normalize]" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "dep='Upvotes'" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "test=TabularList.from_df(df.iloc[300000:].copy(), path=path, cat_names=cat ,cont_names=cont ,procs=procs)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "data=(TabularList.from_df(df, path=path, cat_names=cat, cont_names=cont, procs=procs)\n", " .split_by_idx(list(range(300000,330045)))\n", "# .split_by_rand_pct(.3)\n", " .label_from_df(cols=dep)\n", " .add_test(test)\n", " .databunch())" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "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", "
TagReputationAnswersUsernameViewstarget
j-0.2733-0.53610.3411-0.030847.0
r0.29961.14341.12812.62745664.0
c-0.2709-0.5361-0.69210.024330.0
o-0.2618-0.81600.3635-0.200210.0
c3.73150.86351.19770.37626626.0
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data.show_batch()" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [], "source": [ "learn = tabular_learner(data, layers=[100,100,100,100,100,100,100,100,100],ps=[0.001],emb_drop=.04, metrics=root_mean_squared_error)" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 0.00% [0/1 00:00<00:00]\n", "
\n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossroot_mean_squared_errortime

\n", "\n", "

\n", " \n", " \n", " 0.09% [4/4687 00:00<11:01 1147915.1250]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] } ], "source": [ "learn.lr_find()" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Failed to compute the gradients, there might not be enough points.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learn.recorder.plot(suggestion=True)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "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", "
epochtrain_lossvalid_lossroot_mean_squared_errortime
09108702.00000010813853.0000001460.15026900:55
115765001.00000010616855.0000001426.87304700:56
210329053.00000010603879.0000001423.52026400:56
34453435.00000010414276.0000001395.45568800:55
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn.fit_one_cycle(4,1.58E-04)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learn.recorder.plot_losses()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.6.8" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }