|
183 | 183 | }, |
184 | 184 | { |
185 | 185 | "cell_type": "code", |
186 | | - "execution_count": 9, |
| 186 | + "execution_count": 2, |
187 | 187 | "metadata": {}, |
188 | 188 | "outputs": [ |
189 | 189 | { |
190 | 190 | "name": "stdout", |
191 | 191 | "output_type": "stream", |
192 | 192 | "text": [ |
193 | | - "\nmatrix multiplication (matmul) \nnumpy: [[ 7 10]\n [15 22]] \ntorch: tensor([[ 7., 10.],\n [ 15., 22.]])\n" |
| 193 | + "\nmatrix multiplication (matmul) \nnumpy: [[ 7 10]\n [15 22]] \ntorch: tensor([[ 7., 10.],\n [15., 22.]])\n" |
194 | 194 | ] |
195 | 195 | } |
196 | 196 | ], |
|
208 | 208 | }, |
209 | 209 | { |
210 | 210 | "cell_type": "code", |
211 | | - "execution_count": 14, |
| 211 | + "execution_count": 3, |
212 | 212 | "metadata": {}, |
213 | 213 | "outputs": [ |
214 | 214 | { |
215 | | - "name": "stdout", |
216 | | - "output_type": "stream", |
217 | | - "text": [ |
218 | | - "\n", |
219 | | - "matrix multiplication (dot) \n", |
220 | | - "numpy: [[ 7 10]\n", |
221 | | - " [15 22]] \n", |
222 | | - "torch: 30.0\n" |
223 | | - ] |
| 215 | + "ename": "RuntimeError", |
| 216 | + "evalue": "dot: Expected 1-D argument self, but got 2-D", |
| 217 | + "traceback": [ |
| 218 | + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", |
| 219 | + "\u001b[0;31mRuntimeError\u001b[0m Traceback (most recent call last)", |
| 220 | + "\u001b[0;32m<ipython-input-3-a29f9258176b>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;34m'\\nmatrix multiplication (dot)'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;34m'\\nnumpy: '\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;31m# [[7, 10], [15, 22]]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0;34m'\\ntorch: '\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtorch\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtensor\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtensor\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# 30.0. Beware that torch.dot does not broadcast, only works for 1-dimensional tensor\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m )\n", |
| 221 | + "\u001b[0;31mRuntimeError\u001b[0m: dot: Expected 1-D argument self, but got 2-D" |
| 222 | + ], |
| 223 | + "output_type": "error" |
224 | 224 | } |
225 | 225 | ], |
226 | 226 | "source": [ |
227 | 227 | "# incorrect method\n", |
228 | 228 | "data = np.array(data)\n", |
229 | | - "tensor = torch.Tensor([1,2,3,4]\n", |
| 229 | + "tensor = torch.Tensor(data)\n", |
230 | 230 | "print(\n", |
231 | 231 | " '\\nmatrix multiplication (dot)',\n", |
232 | 232 | " '\\nnumpy: ', data.dot(data), # [[7, 10], [15, 22]]\n", |
233 | | - " '\\ntorch: ', torch.dot(tensor.dot(tensor) # 30.0. Beware that torch.dot does not broadcast, only works for 1-dimensional tensor\n", |
| 233 | + " '\\ntorch: ', torch.dot(tensor.dot(tensor)) # NOT WORKING! Beware that torch.dot does not broadcast, only works for 1-dimensional tensor\n", |
234 | 234 | ")" |
235 | 235 | ] |
236 | 236 | }, |
|
0 commit comments