当前位置: 首页 > wzjs >正文

东莞网站开发技术公司电话建设网站前的市场分析

东莞网站开发技术公司电话,建设网站前的市场分析,深圳建网站兴田德润很好,杭州房产网 官方整体流程 数据预处理:标准化->加一列全为1的偏置项 训练:梯度下降,将数学公式转换成代码 预测 模型代码 import numpy as np# 标准化函数:对特征做均值-方差标准化 # 返回标准化后的特征、新数据的均值和标准差,用于后续预测def standard(feats…

整体流程

数据预处理:标准化->加一列全为1的偏置项

训练:梯度下降,将数学公式转换成代码

预测

模型代码 

import numpy as np# 标准化函数:对特征做均值-方差标准化
# 返回标准化后的特征、新数据的均值和标准差,用于后续预测def standard(feats):new_feats = np.copy(feats).astype(float)mean = np.mean(new_feats, axis=0)std = np.std(new_feats, axis=0)std[std == 0] = 1new_feats = (new_feats - mean) / stdreturn new_feats, mean, stdclass LinearRegression:def __init__(self, data, labels):# 对训练数据进行标准化new_data, mean, std = standard(data)# 存储用于预测的均值和标准差self.mean = meanself.std = std# 样本数 m 和 原始特征数 nm, n = new_data.shape# 在特征矩阵前加一列 1 作为偏置项X = np.hstack((np.ones((m, 1)), new_data))  # shape (m, n+1)self.X = X                # 训练特征 (m, n+1)self.y = labels           # 训练标签 (m, 1)self.m = m                # 样本数self.n = n + 1            # 特征数(含偏置)# 初始化参数 thetaself.theta = np.zeros((self.n, 1))def train(self, alpha, num_iterations=500):"""执行梯度下降:param alpha: 学习率:param num_iterations: 迭代次数:return: 学习到的 theta 和每次迭代的损失历史"""cost_history = []for _ in range(num_iterations):self.gradient_step(alpha)cost_history.append(self.cost_function())return self.theta, cost_historydef gradient_step(self, alpha):# 计算预测值predictions = self.X.dot(self.theta)          # shape (m,1)# 计算误差delta = predictions - self.y                  # shape (m,1)# 计算梯度并更新 thetagrad = (self.X.T.dot(delta)) / self.m         # shape (n+1,1)self.theta -= alpha * graddef cost_function(self):# 计算当前 theta 下的损失delta = self.X.dot(self.theta) - self.y       # shape (m,1)return float((delta.T.dot(delta)) / (2 * self.m))def predict(self, data):"""对新数据进行预测:param data: 新数据,shape (m_new, n):return: 预测值,shape (m_new, 1)"""# 确保输入为二维数组data = np.array(data, ndmin=2)# 使用训练时的均值和标准差进行标准化new_data = (data - self.mean) / self.std# 加入偏置项m_new = new_data.shape[0]X_new = np.hstack((np.ones((m_new, 1)), new_data))# 返回预测结果return X_new.dot(self.theta)

测试代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as pltfrom linear_regression import LinearRegression
data = pd.read_csv('../data/world-happiness-report-2017.csv')train_data = data.sample(frac = 0.8)
test_data = data.drop(train_data.index)
input_param_name = 'Economy..GDP.per.Capita.'
output_param_name = 'Happiness.Score'
# 取出城市gdp的值和对应的幸福指数
x_train = train_data[[input_param_name]].values
y_train = train_data[[output_param_name]].values
x_test = test_data[input_param_name].values
y_test = test_data[output_param_name].valuesnum_iterations = 500
learning_rate = 0.01
# 训练
# x_train是gdp值,y_train是幸福指数
linear_regression = LinearRegression(x_train,y_train)
# 梯度下降比率,训练轮数
(theta,cost_history) = linear_regression.train(learning_rate,num_iterations)print ('开始时的损失:',cost_history[0])
print ('训练后的损失:',cost_history[-1])plt.plot(range(num_iterations),cost_history)
plt.xlabel('Iter')
plt.ylabel('cost')
plt.title('GD')
plt.show()predictions_num = 100
# 最小值,最大值,多少个等间隔的数,然后做成列向量的形式
x_predictions = np.linspace(x_train.min(),x_train.max(),predictions_num).reshape(predictions_num,1)y_predictions = linear_regression.predict(x_predictions)plt.scatter(x_train,y_train,label='Train data')
plt.scatter(x_test,y_test,label='test data')
plt.plot(x_predictions,y_predictions,'r',label = 'Prediction')
plt.xlabel(input_param_name)
plt.ylabel(output_param_name)
plt.title('Happy')
plt.legend()
plt.show()

http://www.dtcms.com/wzjs/183077.html

相关文章:

  • 做网站需准备些什么问题seo网站优化案例
  • html5制作网站开发专业的网络推广
  • 国内最大的开源网站工具站seo
  • 购物网站一般分几大模块百度注册
  • 做自媒体的网站湖南seo排名
  • 日本优秀设计网站网络营销知名企业
  • b2b网站大全网址大全域名ip查询
  • 购物网站建设教程18款禁用软件黄app免费
  • 手机网站建设电话seo的作用主要有
  • 淘宝网站首页设计分析百度官方网站下载
  • 深圳城乡和住房建设局网站课程培训
  • 河北做it的网站360推广平台登录入口
  • 如何建立自己的网站步骤网络服务包括哪些内容
  • 设计大型网站建设市场调研分析
  • 互联免费虚拟主机sem优化师是做什么的
  • 常见的网站推广途径深圳网络优化seo
  • 深圳百度推广网站建设合肥seo排名优化
  • 想学网站建设与设计的书籍国内最大的搜索引擎
  • 网站做wanzhihou百度一下你就知道了主页
  • 岳阳网站建设有哪些营业推广是什么意思
  • 学做网站论坛会员账号做网站公司
  • 请人做网站 出现纠纷怎么办百度百家号注册
  • 仿木鱼网络网站在线磁力搜索引擎
  • 做测试的网站有哪些合作seo公司
  • 如何做经营性网站备案如何制作一个网页
  • 金湖县住房和城乡建设局网站网络工程师
  • 建设银行信用卡积分兑换商城网站新网站排名优化怎么做
  • dtcms怎么做自己网站竞价排名的弊端
  • 高德北斗导航网站站长seo推广
  • 北京东站英文seo推广