{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "data = np.loadtxt(\"housing_data.txt\")\n", "train_data = data[:450,:]\n", "test_data = data[450:,:]" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "train_x = train_data[:, :-1]\n", "train_y = train_data[:, -1]\n", "test_x = test_data[:, :-1]\n", "test_y = test_data[:, -1]\n", "bias1 = [1 for i in range(450)]\n", "train_x = np.c_[train_x, bias1]\n", "bias2 = [1 for i in range(56)]\n", "test_x = np.c_[test_x, bias2]" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "w1 = (np.linalg.inv(train_x.T.dot(train_x)).dot(train_x.T)).dot(train_y)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "err = 0\n", "for i, v in enumerate(test_x):\n", " err += (v.T.dot(w1) - test_y[i])**2\n", "err /= len(test_y)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "11.40700326882932\n" ] } ], "source": [ "print(err)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "w:\n", "[-1.12706397e-01 4.84679322e-02 3.51619982e-02 2.43036682e+00\n", " -1.71555914e+01 3.92937664e+00 1.05952560e-02 -1.40598405e+00\n", " 3.72316544e-01 -1.54340774e-02 -9.03360601e-01 9.74047349e-03\n", " -5.51630479e-01]\n", "bias:\n", "34.26122511497033\n" ] } ], "source": [ "print(\"w:\")\n", "print(w1[:-1])\n", "print(\"bias:\")\n", "print(w1[-1])" ] }, { "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" } }, "nbformat": 4, "nbformat_minor": 2 }