Skip to content

Commit b2dff95

Browse files
committedApr 16, 2018
Code Challenge progress at solution lecture time.
1 parent e0f4b82 commit b2dff95

File tree

1 file changed

+328
-0
lines changed

1 file changed

+328
-0
lines changed
 
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,328 @@
1+
{
2+
"nbformat": 4,
3+
"nbformat_minor": 0,
4+
"metadata": {
5+
"colab": {
6+
"name": "Troy Bradley High Dimensional Vector Distance CC - Master.ipynb",
7+
"version": "0.3.2",
8+
"provenance": [],
9+
"collapsed_sections": []
10+
},
11+
"kernelspec": {
12+
"name": "python3",
13+
"display_name": "Python 3"
14+
}
15+
},
16+
"cells": [
17+
{
18+
"cell_type": "markdown",
19+
"metadata": {
20+
"id": "view-in-github",
21+
"colab_type": "text"
22+
},
23+
"source": [
24+
"[View in Colaboratory](https://colab.research.google.com/github/bitcointroy/MLcodechallenges/blob/master/Troy_Bradley_High_Dimensional_Vector_Distance_CC.ipynb)"
25+
]
26+
},
27+
{
28+
"metadata": {
29+
"id": "luCg81YEjaP1",
30+
"colab_type": "code",
31+
"colab": {}
32+
},
33+
"cell_type": "code",
34+
"source": [
35+
"import numpy as np\n",
36+
"import matplotlib.pyplot as plt"
37+
],
38+
"execution_count": 0,
39+
"outputs": []
40+
},
41+
{
42+
"metadata": {
43+
"id": "k3P7Si8cj37a",
44+
"colab_type": "text"
45+
},
46+
"cell_type": "markdown",
47+
"source": [
48+
"First, define a function that takes two inputs (a mean and a standard deviation) and spits out a random number.\n",
49+
"The number should be generated randomly from a normal distribution with that mean and that standard deviation. See [numpy.random.normal](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.normal.html), though, implementing the PDF for a normal distribution is a good exercise if you finish early."
50+
]
51+
},
52+
{
53+
"metadata": {
54+
"id": "wMkZOsQ2kUpX",
55+
"colab_type": "code",
56+
"colab": {
57+
"base_uri": "https://localhost:8080/",
58+
"height": 34
59+
},
60+
"outputId": "e1aa1926-4eed-4e95-d8fa-134b4cb18abd"
61+
},
62+
"cell_type": "code",
63+
"source": [
64+
"def rand_val(mean, stdev):\n",
65+
" return np.random.normal(mean, stdev)\n",
66+
" \n",
67+
"rand_val(10, 2)\n",
68+
" "
69+
],
70+
"execution_count": 63,
71+
"outputs": [
72+
{
73+
"output_type": "execute_result",
74+
"data": {
75+
"text/plain": [
76+
"11.051335018124922"
77+
]
78+
},
79+
"metadata": {
80+
"tags": []
81+
},
82+
"execution_count": 63
83+
}
84+
]
85+
},
86+
{
87+
"metadata": {
88+
"id": "nayMEH_3nRZC",
89+
"colab_type": "text"
90+
},
91+
"cell_type": "markdown",
92+
"source": [
93+
"Now define a function that takes in a mean, a standard deviation, and a number n, and returns a numpy vector with n components.\n",
94+
"The components should be randomly generated from a normal distribution with that mean and standard deviation"
95+
]
96+
},
97+
{
98+
"metadata": {
99+
"id": "ExAJD2CxngF1",
100+
"colab_type": "code",
101+
"colab": {
102+
"base_uri": "https://localhost:8080/",
103+
"height": 136
104+
},
105+
"outputId": "0ece737d-f53a-4517-ee01-dc489afee13f"
106+
},
107+
"cell_type": "code",
108+
"source": [
109+
"new_vec = []\n",
110+
"def rand_vec(mean, stdev, n):\n",
111+
" new_vec = np.random.normal(mean, stdev, size=n)\n",
112+
" return new_vec\n",
113+
"\n",
114+
"print('random: \\n', rand_vec(10,2,(5,2)))\n",
115+
"print('new: ', new_vec)"
116+
],
117+
"execution_count": 73,
118+
"outputs": [
119+
{
120+
"output_type": "stream",
121+
"text": [
122+
"random: \n",
123+
"\r [[ 9.2406166 7.39290715]\n",
124+
" [ 9.32357534 10.89028469]\n",
125+
" [11.63520949 11.31414626]\n",
126+
" [11.11438854 12.81961532]\n",
127+
" [12.29890036 8.6219731 ]]\n",
128+
"new: []\n"
129+
],
130+
"name": "stdout"
131+
}
132+
]
133+
},
134+
{
135+
"metadata": {
136+
"id": "FdU1-hoOsyXz",
137+
"colab_type": "text"
138+
},
139+
"cell_type": "markdown",
140+
"source": [
141+
"Recall that there are many ways to compute the distance between two vectors. However you wish to do so, write a function that takes in\n",
142+
"two vectors and returns the distance between them. Since this function only makes sense if the two vectors have the same number of\n",
143+
"components, this function should return -1 if the two vectors live in different numbers of dimensions"
144+
]
145+
},
146+
{
147+
"metadata": {
148+
"id": "F6OKPxP8nvFn",
149+
"colab_type": "code",
150+
"colab": {}
151+
},
152+
"cell_type": "code",
153+
"source": [
154+
"def vec_dist(vecA, vecB):\n",
155+
" if vecA.shape !== vecB.shape\n",
156+
" "
157+
],
158+
"execution_count": 0,
159+
"outputs": []
160+
},
161+
{
162+
"metadata": {
163+
"id": "tEPgA2qHuaFT",
164+
"colab_type": "text"
165+
},
166+
"cell_type": "markdown",
167+
"source": [
168+
"From here on out, every component you randomly generate should come from a normal distribution centered at 0 with standard\n",
169+
"deviation 1. With that in mind, write a function that takes in a number n (the number of dimensions), creates two random\n",
170+
"vectors in n-dimensional space, calculates the distance between them, and returns that distance."
171+
]
172+
},
173+
{
174+
"metadata": {
175+
"id": "8dAXAmjyuZGm",
176+
"colab_type": "code",
177+
"colab": {}
178+
},
179+
"cell_type": "code",
180+
"source": [
181+
"def rand_vec_dist(n):\n",
182+
" return None\n",
183+
" ##################\n",
184+
" # Your Code Here #\n",
185+
" ##################"
186+
],
187+
"execution_count": 0,
188+
"outputs": []
189+
},
190+
{
191+
"metadata": {
192+
"id": "MuRwge4GvZrS",
193+
"colab_type": "text"
194+
},
195+
"cell_type": "markdown",
196+
"source": [
197+
"Using what you've made so far, what is the average distance between two points in 1-dimensional space? In other words, between\n",
198+
"two regular old floating point numbers with mean 0 and standard deviation 1. After you calculate this, store it as the first\n",
199+
"component in a Pythin list named average_dist_list."
200+
]
201+
},
202+
{
203+
"metadata": {
204+
"id": "-xBiAWMHvw3h",
205+
"colab_type": "code",
206+
"colab": {
207+
"base_uri": "https://localhost:8080/",
208+
"height": 34
209+
},
210+
"outputId": "ccdcd419-85cf-47ca-9c3d-5fe6bf147f9e"
211+
},
212+
"cell_type": "code",
213+
"source": [
214+
"def average_dist_calculator(n, trials):\n",
215+
" return None\n",
216+
" ##################\n",
217+
" # Your Code Here #\n",
218+
" ##################\n",
219+
"average_dist_list = []\n",
220+
"print(average_dist_list)"
221+
],
222+
"execution_count": 0,
223+
"outputs": [
224+
{
225+
"output_type": "stream",
226+
"text": [
227+
"[]\n"
228+
],
229+
"name": "stdout"
230+
}
231+
]
232+
},
233+
{
234+
"metadata": {
235+
"id": "8mPH39jfzLM4",
236+
"colab_type": "text"
237+
},
238+
"cell_type": "markdown",
239+
"source": [
240+
"What's the average distance between two points in 2-dimensional space? What about 3? Keep calculating these average distances and\n",
241+
"appending them to average_dist_list up through 200-dimensional space."
242+
]
243+
},
244+
{
245+
"metadata": {
246+
"id": "dxHLm6J1wMwP",
247+
"colab_type": "code",
248+
"colab": {
249+
"base_uri": "https://localhost:8080/",
250+
"height": 34
251+
},
252+
"outputId": "3d843ecd-308b-473c-f682-a97ba2358fbe"
253+
},
254+
"cell_type": "code",
255+
"source": [
256+
"##################\n",
257+
"# Your Code Here #\n",
258+
"##################\n",
259+
"print(average_dist_list)"
260+
],
261+
"execution_count": 0,
262+
"outputs": [
263+
{
264+
"output_type": "stream",
265+
"text": [
266+
"[]\n"
267+
],
268+
"name": "stdout"
269+
}
270+
]
271+
},
272+
{
273+
"metadata": {
274+
"id": "t_DED4x70zMV",
275+
"colab_type": "code",
276+
"colab": {
277+
"base_uri": "https://localhost:8080/",
278+
"height": 347
279+
},
280+
"outputId": "82f21134-4fe5-4051-900f-19787f0f22c6"
281+
},
282+
"cell_type": "code",
283+
"source": [
284+
"plt.plot(np.arange(0,0),average_dist_list);"
285+
],
286+
"execution_count": 0,
287+
"outputs": [
288+
{
289+
"output_type": "display_data",
290+
"data": {
291+
"image/png": "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\n7qYAAAAASUVORK5CYII=\n",
292+
"text/plain": [
293+
"<matplotlib.figure.Figure at 0x7f6e708e2b38>"
294+
]
295+
},
296+
"metadata": {
297+
"tags": []
298+
}
299+
}
300+
]
301+
},
302+
{
303+
"metadata": {
304+
"id": "urd9Ficj4axm",
305+
"colab_type": "text"
306+
},
307+
"cell_type": "markdown",
308+
"source": [
309+
"As the number of dimensions n grows larger and larger, approximately how does the average distance grow?\n",
310+
"\n",
311+
"It should be well-approximated by the function f(n) = c*n^p for some numbers c and p. However you choose to do so, find the values of c and p."
312+
]
313+
},
314+
{
315+
"metadata": {
316+
"id": "YBVLh9gM16kI",
317+
"colab_type": "code",
318+
"colab": {}
319+
},
320+
"cell_type": "code",
321+
"source": [
322+
""
323+
],
324+
"execution_count": 0,
325+
"outputs": []
326+
}
327+
]
328+
}

0 commit comments

Comments
 (0)
Please sign in to comment.