TF之LiR:基于tensorflow实现机器学习之线性回归算法

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: TF之LiR:基于tensorflow实现机器学习之线性回归算法

输出结果

image.png

代码设计


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

#TF之LiR:基于tensorflow实现机器学习之线性回归算法

import tensorflow as tf

import numpy

import matplotlib.pyplot as plt

rng =numpy.random

#参数设定

learning_rate=0.01

training_epochs=10000

display_step=50        #每隔50次迭代输出一次

#训练数据

train_X=numpy.asarray([……])

train_Y=numpy.asarray([……])

n_samples=train_X.shape[0]

print("train_X:",train_X)

print("train_Y:",train_Y)  

#设置placeholder

X=tf.placeholder("float")

Y=tf.placeholder("float")

#设置模型的权重和偏置,因为是不断更新的所以采用Variable定义

W=tf.Variable(rng.randn(),name="weight")

b=tf.Variable(rng.randn(),name="bias")

#设置线性回归方程LiR:w*x+b

pred=tf.add(tf.multiply(X,W),b)

cost=tf.reduce_sum(tf.pow(pred-Y,2))/(2*n_samples)  #设置cost为均方差即reduce_sum函数

optimizer=tf.train.GradientDescentOptimizer(learning_rate).minimize(cost) #梯度下降,minimize函数默认下自动修正w和b

init=tf.global_variables_initializer() #在session运算时初始化所有变量

#开始训练

with tf.Session() as sess:

   sess.run(init)                        #运行一下初始化的变量

   for epoch in range(training_epochs):  #输入所有训练数据

       for(x,y) in zip(train_X,train_Y):

           sess.run(optimizer,feed_dict={X:x,Y:y})

         

           #打印出每次迭代的log日志,每隔50个打印一次

           if (epoch+1) % display_step ==0:

               c=sess.run(cost,feed_dict={X:train_X,Y:train_Y})

               print("迭代次数Epoch:","%04d" % (epoch+1),"下降值cost=","{:.9f}".format(c),

                     "W=",sess.run(W),"b=",sess.run(b))

   print("Optimizer Finished!")

   training_cost=sess.run(cost,feed_dict={X:train_X,Y:train_Y})

   print("Training cost=",training_cost,"W=",sess.run(W),"b=",sess.run(b))

   #绘图

   plt.rcParams['font.sans-serif']=['SimHei']

   plt.subplot(121)

   plt.plot(train_X, train_Y, 'ro', label='Original data')

   plt.plot(train_X, sess.run(W) * train_X + sess.run(b), label='Fitted line')

   plt.legend()

   plt.title("TF之LiR:Original data")

 

 

   #测试样本

   test_X = numpy.asarray([6.83, 4.668, 8.9, 7.91, 5.7, 8.7, 3.1, 2.1])

   test_Y = numpy.asarray([1.84, 2.273, 3.2, 2.831,2.92, 3.24, 1.35, 1.03])

   print("Testing... (Mean square loss Comparison)")

   testing_cost = sess.run(tf.reduce_sum(tf.pow(pred - Y, 2)) / (2 * test_X.shape[0]),

                           feed_dict={X:test_X,Y:test_Y}) # same function as cost above

   print("Testing cost=", testing_cost)

   print("Absolute mean square loss difference:", abs( training_cost - testing_cost))

   #绘图

   plt.subplot(122)

   plt.plot(test_X, test_Y, 'bo', label='Testing data')

   plt.plot(train_X, sess.run(W) * train_X + sess.run(b), label='Fitted line')

   plt.legend()

   plt.title("TF之LiR:Testing data")

   plt.show()


相关文章
|
9月前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
986 8
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
539 6
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
1500 55
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
923 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
机器学习/深度学习 数据采集 数据可视化
TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤
本文介绍了 TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤,包括数据准备、模型定义、损失函数与优化器选择、模型训练与评估、模型保存与部署,并展示了构建全连接神经网络的具体示例。此外,还探讨了 TensorFlow 的高级特性,如自动微分、模型可视化和分布式训练,以及其在未来的发展前景。
1194 5
|
机器学习/深度学习 人工智能 TensorFlow
基于TensorFlow的深度学习模型训练与优化实战
基于TensorFlow的深度学习模型训练与优化实战
810 3
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
670 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络

热门文章

最新文章