Skip to content

Instantly share code, notes, and snippets.

@Kautenja
Last active September 3, 2017 20:31
Show Gist options
  • Save Kautenja/508f8dcf84b6ec9dc66a6fcbe4f0f40e to your computer and use it in GitHub Desktop.
Save Kautenja/508f8dcf84b6ec9dc66a6fcbe4f0f40e to your computer and use it in GitHub Desktop.
Learning XOR with a random forest in `sklearn`
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# XOR\n",
"\n",
"$$\\veebar(x, y) = x'y + xy'$$\n",
"\n",
"| $x$ | $y$ | XOR |\n",
"|:---:|:---:|:----:|\n",
"| 0 | 0 | 0 |\n",
"| 0 | 1 | 1 |\n",
"| 1 | 0 | 1 |\n",
"| 1 | 1 | 0 |"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>$x$</th>\n",
" <th>$y$</th>\n",
" <th>XOR</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" $x$ $y$ XOR\n",
"0 0 0 0\n",
"1 0 1 1\n",
"2 1 0 1\n",
"3 1 1 0"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from pandas import DataFrame\n",
"# generate a design matrix for XOR\n",
"truthtable = [[0, 0, 0], [0, 1, 1], [1, 0, 1], [1, 1, 0]]\n",
"columns = ['$x$', '$y$', 'XOR']\n",
"df = DataFrame(truthtable, columns=columns)\n",
"df"
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x1171cf940>"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nuUboJtn10yCLGJ12A3tn6htDPtVsgEi13OvXx4iISYVc2XMRlXuN0G03sXu2vpEo0mNf5z5GREwq\nuq1m3IlpoaLbakCMNjevaySK3IUdiHHuERFziU67ES33hQrpsATqu4WdTGQCouUeETGXSByq0XJf\nkJChhkCdLfe0j5Fzj4iYOySh0tFyX5DotutvFcua7s0GgaiefYyImER0R4UFuYjKvUZQlXtdrWJp\nudd18omImFTIwoJcROVeI2Qpj3q+GukXqGO9+YiISUYsP7CA0VGclXVNEJKri2i5R0TMLbrtBqYj\nLbMwsSAs95HTN4ZBRkTMLbqtJgZDwT4+jtAaYSE4VKPlHhExP+i0w9R1VO41ghpDXluH6shyr2v/\nIiImFarxx0FU7jVChpapOedex8JmERGTDNX44yCO0Boh41CtOeceLfeIiLlFpGUWMFTLva6cduTc\nIyLmB5GWWcBQa8vUvfxApGUiIuYWankSDuIIrREWkuUeaZmIiLlFtNwXMORmGEB948jHnHtNVxYR\nEZOKUOXe2kf9iCgAuRnGdG9YW8u9Ey33CAZ6vR62b9+O6enp+e7KgkW328Xq1avRbreTz4EO1ajc\na4akfsSwtsozOlQjONi+fTuWLVuGtWvXxuqhBSCEwM6dO7F9+3asW7cOQDaajoN6rv0XMWQsa10d\nlt1YfiCCgenpaaxYsSIq9oIgIqxYsSKz8gm13OMIrRlkLGtdLfdOtNwjmIiKvRz05xeTmBY4uq16\nK89YfiBiIeHaa68FEeHuu++e766URoyWWeBI48jrqTzTUMgoOhH1x+bNm3H66adj8+bN+6yNwYBf\nY70MYpz7Aken5spz7FCt6eQTESGxe/du/Mu//AuuuOIKXH311ePvP/rRj+K4447Dhg0bcMkllwAA\ntm3bhte+9rXYsGEDTjrpJNx777341re+hXPOOWd83jvf+U5cddVVAIC1a9fi93//93HSSSfhC1/4\nAv72b/8WJ598MjZs2IA3velN2Lt3LwDgsccew6ZNm7BhwwZs2LABN998Mz70oQ/h4x//+Pi6H/jA\nB3DppZd676fRIEwF+LpitEzNUPc48nE990jLRDDxR1+5E1sffrbSax5z2AH4g195ifOY6667Dmed\ndRaOOuoorFixArfeeisef/xxXHfddfjBD36ApUuX4sknnwQAvOUtb8Ell1yCTZs2YXp6GsPhEA8+\n+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\nz+kAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x11716d550>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from sklearn.ensemble import RandomForestClassifier\n",
"from sklearn.metrics import accuracy_score\n",
"import matplotlib\n",
"%matplotlib inline\n",
"\n",
"def random_forest_using(random_state=100):\n",
" # split the dataset\n",
" train_x = df[['$x$', '$y$']]\n",
" train_y = df['XOR']\n",
" # train the model\n",
" clf = RandomForestClassifier(random_state=random_state)\n",
" clf.fit(train_x, train_y)\n",
" # predict values for the training data\n",
" predictions = clf.predict(train_x)\n",
" # get an accuracy score reading\n",
" return accuracy_score(train_y, predictions)\n",
" \n",
"# generate a list of accuracies over the random seeds\n",
"accuracies = [] \n",
"for random_state in range(0, 100):\n",
" accuracies.append(random_forest_using(random_state))\n",
" \n",
"graph = DataFrame(accuracies, columns=['Accuracy'])\n",
"graph.plot()"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x117278780>"
]
},
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x117082860>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"graph.Accuracy.value_counts().plot(kind='pie')"
]
}
],
"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.1"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment