Skip to content

Commit 4f3c728

Browse files
committed
minor changes
1 parent 27cf4cb commit 4f3c728

File tree

2 files changed

+65
-112
lines changed

2 files changed

+65
-112
lines changed

Diff for: GradientDescent.ipynb

+17-17
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,23 @@
99
},
1010
{
1111
"cell_type": "code",
12-
"execution_count": 8,
12+
"execution_count": 17,
1313
"metadata": {},
1414
"outputs": [
1515
{
1616
"name": "stdout",
1717
"output_type": "stream",
1818
"text": [
19-
"0 : 15.9938818182\n",
20-
"1 : 11.6346546383\n",
21-
"2 : 8.57455118197\n",
22-
"3 : 6.4263659935\n",
23-
"4 : 4.91830088281\n",
24-
"5 : 3.85956758638\n",
25-
"6 : 3.11624261595\n",
26-
"7 : 2.5943186121\n",
27-
"8 : 2.2278072717\n",
28-
"9 : 1.97038821883\n"
19+
"0 : 253.620021909\n",
20+
"1 : 251.913914932\n",
21+
"2 : 250.219709044\n",
22+
"3 : 248.537321226\n",
23+
"4 : 246.866669041\n",
24+
"5 : 245.207670624\n",
25+
"6 : 243.560244685\n",
26+
"7 : 241.924310497\n",
27+
"8 : 240.299787898\n",
28+
"9 : 238.686597286\n"
2929
]
3030
}
3131
],
@@ -45,14 +45,14 @@
4545
"N = len(x)\n",
4646
"\n",
4747
"# Design matrix\n",
48-
"A = np.vstack((np.ones(N), x)).T\n",
48+
"A = np.vstack((np.ones(N), x, x**2, x**3)).T\n",
4949
"\n",
5050
"# Learning rate\n",
5151
"\n",
52-
"eta = 0.01\n",
52+
"eta = 0.000000001\n",
5353
" \n",
5454
"# initial parameters\n",
55-
"w = np.array([2., 1.])\n",
55+
"w = np.array([2., 1.,0.1, 0.001])\n",
5656
"\n",
5757
"for epoch in range(10):\n",
5858
" # Error\n",
@@ -74,14 +74,14 @@
7474
},
7575
{
7676
"cell_type": "code",
77-
"execution_count": 9,
77+
"execution_count": 14,
7878
"metadata": {},
7979
"outputs": [
8080
{
8181
"data": {
8282
"image/png": "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\n",
8383
"text/plain": [
84-
"<matplotlib.figure.Figure at 0x10d2a7588>"
84+
"<matplotlib.figure.Figure at 0x10cf351d0>"
8585
]
8686
},
8787
"metadata": {},
@@ -91,7 +91,7 @@
9191
"data": {
9292
"image/png": "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\n",
9393
"text/plain": [
94-
"<matplotlib.figure.Figure at 0x10d2a7588>"
94+
"<matplotlib.figure.Figure at 0x10cf351d0>"
9595
]
9696
},
9797
"metadata": {},

0 commit comments

Comments
 (0)