# -*- coding: utf-8 -*-

 import numpy as np
import matplotlib.pyplot as plt
from certifi import __main__ def cost(x,y,theta=np.zeros((2,1))):
m=len(y);
J=1.0/(2*m)*sum((x.dot(theta).flatten()-y)**2);
return J; def gradientDesc(x,y,theat=np.zeros((2,1)),alpha=0.001,iterations=1500):
m=len(y)
J=[]
for i in xrange(iterations):
a=theat[0][0]-alpha*(1.0/m)*sum((x.dot(theat).flatten()-y)*x[:,0]);
b=theat[1][0]-alpha*(1.0/m)*sum((x.dot(theat).flatten()-y)*1);
theat[0][0],theat[1][0]=a,b
print theat[0][0], theat[1][0]
print cost(x, y, theat); return theat; if __name__=="__main__":
x=np.array([[9,1],[15,1],[25,1],[14,1],[10,1],[18,1]]);
y=np.array([39,56,93,61,50,75]);
ans=gradientDesc(x, y);
xx=[1,30]
yy=[ans[0][0]*1+ans[1][0],ans[0][0]*30+ans[1][0]]
plt.plot(xx,yy)
plt.scatter(x[:,0],y)
plt.show() print 'end' #显示数据
'''
plt.scatter(x,y);
plt.show();
'''

结果显示

线性回归&&code的更多相关文章

  1. 【machine learning通俗讲解code逐行注释】之线性回归实现

    现在机器学习算法在分类.回归.数据挖掘等问题上运用的十分广泛,对于初学者来说,可能一听到'算法'或其他的专属名词都感觉高深莫测,以致很多人望而却步,这让很多人在处理很多问题上失去了一个很有用的工具.机 ...

  2. stanford coursera 机器学习编程作业 exercise 5(正则化线性回归及偏差和方差)

    本文根据水库中蓄水标线(water level) 使用正则化的线性回归模型预 水流量(water flowing out of dam),然后 debug 学习算法 以及 讨论偏差和方差对 该线性回归 ...

  3. Matlab实现线性回归和逻辑回归: Linear Regression & Logistic Regression

    原文:http://blog.csdn.net/abcjennifer/article/details/7732417 本文为Maching Learning 栏目补充内容,为上几章中所提到单参数线性 ...

  4. (原创)(三)机器学习笔记之Scikit Learn的线性回归模型初探

    一.Scikit Learn中使用estimator三部曲 1. 构造estimator 2. 训练模型:fit 3. 利用模型进行预测:predict 二.模型评价 模型训练好后,度量模型拟合效果的 ...

  5. LinearRegression 线性回归

    一.预测 先来看看这样一个场景: 假如你手头有一套房子要出售,你咨询了房产中介.中介跟你要了一系列的数据,例如房子面积.位置.楼层.年限等,然后进行一系列计算后,给出了建议的定价. 房产中介是如何帮你 ...

  6. 吴恩达《机器学习》编程作业——machine-learning-ex1:线性回归

    ❄❄❄❄❄❄❄❄[回到目录]❄❄❄❄❄❄❄❄ 本次编程作业中,需要完成的代码有如下几部分: [⋆] warmUpExercise.m - Simple example function in Octa ...

  7. 大叔学ML第二:线性回归

    目录 基本形式 求解参数\(\vec\theta\) 梯度下降法 正规方程导法 调用函数库 基本形式 线性回归非常直观简洁,是一种常用的回归模型,大叔总结如下: 设有样本\(X\)形如: \[\beg ...

  8. AI学习---基于TensorFlow的案例[实现线性回归的训练]

    线性回归原理复习 1)构建模型               |_> y = w1x1 + w2x2 + -- + wnxn + b        2)构造损失函数               | ...

  9. (线性回归)Liner Regression简单应用

    警告:本文为小白入门学习笔记 数据连接: http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearni ...

随机推荐

  1. 拓扑排序 POJ2367Genealogical tree[topo-sort]

    ---恢复内容开始--- Genealogical tree Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4875   A ...

  2. Linux下监听或绑定(bind)843端口失败

    问题:写了一个程序,尝试在843端口监听,结果在执行bind的时候失败了 原来,系统不允许用户程序在1-1024端口监听,因为他们是知名端口. 解决办法: 换成root用户,即可成功bind.(ubu ...

  3. LFI漏洞利用总结

    主要涉及到的函数 include(),require().include_once(),require_once() magic_quotes_gpc().allow_url_fopen().allo ...

  4. 基于jquery的消息提示框toastr.js

    //消息提示全局配置 toastr.options = { "closeButton": false,//是否配置关闭按钮 "debug": false,//是 ...

  5. 让IE10等支持classList2.0(转)

    chrome24+, firesfox26+起支持classList2.0,即让它同时添加或删除多个类名, toggle方法支持第2个参数,用于强制添加或删除 var div = document.c ...

  6. vim一些常用的快捷键

    快速注释: Ctrl+v I // esc 打开文件 gf ctrl+o

  7. wireshake抓包,飞秋发送信息,python

    http://wenku.baidu.com/link?url=Xze_JY8T15pqI9mBLRpTxWF2d6MP-32xb6UwuE6tsUmitRDheJe-Ju87WlDEDBGuI5MF ...

  8. BZOJ 1087 【SCOI2005】 互不侵犯King

    Description 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. Input 只有一行,包 ...

  9. [转]java去除List中重复的元素

    java去除List中重复的元素 如果用Set ,倘若list里边的元素不是基本数据类型而是对象, 那么请覆写Object的boolean   equals(Object   obj)   和int  ...

  10. C#加密解密大全

    1.方法一 (不可逆加密)     public string EncryptPassword(string PasswordString,string PasswordFormat )      { ...