XData

tensorflow

与世无争的帅哥 提交于 2021-02-16 13:09:51
今天我们通过tensorflow来实现一个简单的小例子: 假如我定义一个一元一次函数y = 0.1x + 0.3,然后我在程序中定义两个变量 Weight 和 biases 怎么让我的这两个变量自己学习然后最终学习的成果就是让Weight ≈ 0.1和 biases ≈ 0.3. 开始吧! 1 import tensorflow as tf 2 import numpy as np 3 4 # create data 5 x_data = np.random.rand(100 ).astype(np.float32) 6 y_data = x_data*0.1 + 0.3 7 8 # ## create tensorflow structure start ### 9 10 Weights = tf.Variable(tf.random_uniform([1], -1.0, 1.0 )) 11 biases = tf.Variable(tf.zeros([1 ])) 12 y = Weights*x_data + biases 13 loss = tf.reduce_mean(tf.square(y- y_data)) 14 optimizer = tf.train.GradientDescentOptimizer(0.5 ) 15 train = optimizer

TensorFlow实现线性回归

拟墨画扇 提交于 2021-01-22 15:28:16
线性回归(Linear regression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式。 特点:只有一个自变量的情况称为单变量回归,大于一个自变量情况的叫做多元回归 通用公式:h(w) = w 1 x 1 +w 2 x 2 +w 3 x 3 +...+b=w T x + b 根据数据建立回归模型,w1x1+w2x2+…..+b = y,通过真实值与预测值之间建立误差,使用梯度下降优化得到损失最小对应的权重和偏置。最终确定模型的权重和偏置参数,最后可以用这些参数进行预测。 线性回归案例: 假设随机指定100个点,只有一个特征 数据本身的分布为 y = 0.7 * x + 0.8 这里将数据分布的规律确定,是为了使我们训练出的参数跟真实的参数(即0.7和0.8)比较是否训练准确 TensorFlow计算API: 运算 矩阵运算 tf.matmul(x, w) 平方 tf.square(error) 均值 tf.reduce_mean(error) 梯度下降优化 tf.train.GradientDescentOptimizer(learning_rate) 梯度下降优化 learning_rate:学习率,一般为0~1之间比较小的值 method: minimize(loss) return:梯度下降op 步骤分析: 1

tensorflow基础【5】-tensorboard

落花浮王杯 提交于 2021-01-07 07:58:06
先学习几个英文单词 summary  汇总,摘要 scope    范围 我这是很早以前的笔记,后来有了博客才发布的,有些内容比较老,懒得改了。 先说明总体流程 暂时不管怎么编程,假设已经有了如下代码,可执行的。 # encoding:utf-8 import tensorflow as tf print ( ' version: ' , tf. __version__ ) foo = tf.Variable(3, name= ' foo ' ) bar = tf.Variable(2, name= ' bar ' ) result = tf.add(foo, bar, name= ' add ' ) # 初始化变量 init = tf.global_variables_initializer() # 启动图 (graph) sess = tf.Session() sess.run(init) res = sess.run(result) print ( ' result: ' , res) train_writer = tf.summary.FileWriter( ' log2 ' , sess.graph) 可视化效果,先感性认识一下 可视化简要步骤 1.运行该代码   // 此时在log2中已经生成文件 2.启动可视化工具   a.

单片机工程师的7种能力!

…衆ロ難τιáo~ 提交于 2020-12-16 15:13:42
01 设计满足要求的最精简的系统 正确估计单片机的能力,知道单片机能做什么,最大程度的挖掘单片机的潜力对一个单片机系统设计者来说是至关重要的。我们应该有这样一个认识,即单片机的处理能力是非常强大的。 早期的PC机,其CPU(8086)处理能力和8051相当,却能处理相当复杂的任务。单片机的能力的关键就在软件设计者编写的软件上。只有充分地了解到单片机的能力,才不会做出“冗余”的系统设计。而采用许多的外围芯片来实现单片机能实现的功能。这样做,即增加了系统成本,也可能会降低了系统的可靠性。 02 使用看门狗 看门狗电路通常是一块在有规律的时间间隔中进行更新的硬件。更新一般由单片机来完成,如果在一定间隔内没能更新看门狗,那看门狗将产生复位信号,重新复位单片机。更新看门狗的具体形式多是给看门狗芯片相关引脚提供一个电平上升沿或读写它的某个寄存器。使用看门狗电路将在单片机发生故障进行死机状态时,重新复位单片机。 当前有多种看门狗的芯片,如MAXIM公司的MAX802、MAX813等。而且,有好多种单片机中本身就集成有看门狗。一个外部的看门狗是最好的,因为它不依赖于单片机。如果可能的话,看门狗更新程序不应该放在中断或是子程序中,原则上应该放在主程序中。 我曾经见过一个工程师,他所调试的程序在运行时偶尔会引起看门狗的复位动作,于是他干脆在每10ms就中断一次的时钟中断程序中清看门狗

RAM,ROM:单片机存储器小结,以51为例

心不动则不痛 提交于 2020-11-24 19:01:55
存储器分为程序存储器(ROM)和数据存储器(RAM),两种又都可以分为片内和片外,片外即需要自己在单片机外部扩展。 8051单片机的片内程序存储器有4K,片内数据存储器有256个字节,其中又分为高128字节位特殊功能寄存器区,真正用户能用的RAM只有低128字节。 8052单片机有8K片内程序存储器,而数据存储器除了低128字节外还有扩展的高128字节,地址上跟特殊功能寄存器一样,但物理上是独立的,寻址方式不一样,扩展的高128字节只能间接寻址。 Keil中变量的存储类型: code : 程序空间(无需改变的变量) data : 直接访问的内部数据存储器(速度最快) idata : 间接访问的内部数据存储器(可以访问全部256字节RAM) bdata : 可位寻址的内部数据存储器 xdata : 外部数据寄存器(最大64K) pdata : 分页的外部数据寄存器(最大256字节,少用) 【如无使用关键字,系统则按默认处理(根据存储模式)】 Keil中的存储模式: Small : 变量默认为data型,最大128字节 Compare : 变量默认为pdata型,最大256字节 Large : 变量默认为xdata型,最大64K Keil中设置如下图: 我们平常使用的STC单片机,有很多型号,具体存储器大小都要看型号: 【89/90系列的机器周期需要12个或6个时钟周期】 【12

机器学习——决策树

徘徊边缘 提交于 2020-11-11 15:06:41
决策树是一种用于分类和回归的非参数监督学习方法。目标是创建一个模型,通过从数据特性中推导出简单的决策规则来预测目标变量的值 导入类库 1 import numpy as np 2 import pandas as pd 3 from sklearn.feature_extraction import DictVectorizer 4 from sklearn.tree import DecisionTreeClassifier 5 from sklearn.model_selection import train_test_split 简单版 1 def decide_play1(): 2 df = pd.read_csv( ' dtree.csv ' ) 3 dict_train = df.to_dict(orient= ' record ' ) 4 5 dv = DictVectorizer(sparse= False) 6 dv_train = dv.fit_transform(dict_train) 7 # print(dv_train) 8 # dv_train1 = np.append(dv_train, dv_train[:, 5].reshape(-1, 1), axis=1) 9 # dv_train2 = np.delete(dv_train1, 5, axis

使用Python+TensorFlow2构建基于卷积神经网络(CNN)的ECG心电信号识别分类(四)

天大地大妈咪最大 提交于 2020-10-22 05:31:45
在上一篇文章中,我们已经对心电信号进行了预处理,将含有噪声的信号变得平滑,以便分类。本篇文章我们将正式开始利用深度学习对心电信号进行分类识别。 卷积神经网络 不论是传统机器学习,还是深度学习,分类的依据都是不同类别的数据中包含的不同特征。要进行分类识别就需要对数据的特征进行提取,但是二者的提取方式并不相同。对于传统的机器学习而言,数据的特征需要设计者或专业人员针对其特性进行手动提取,而深度学习则可以自动提取每类数据中的不同特征。对于卷积神经网络CNN而言,能够自动提取特征的关键在于卷积操作。经过卷积操作提取的特征往往会有冗余,并且多次卷积会使神经网络的参数过多不便于训练,所以CNN往往会在卷积层的后面跟上一个池化层。经过多次的卷积和池化后,较低层次的特征就会逐步构成高层次的特征,最后神经网络根据提取出的高层次特征进行分类。 另外需要指出的是,为什么在心电信号分类中可以使用CNN呢。这是因为CNN具有的卷积操作具有局部连接和权值共享的特征。 局部连接:用于区别不同种类的图片所需的特征只是整张图片中的某些局部区域,因此在进行卷积操作时使用的卷积核(感受野)可以只是几个不同小区域,而不必使用整张图片大小的卷积核(全连接)。这样做不仅可以更好地表达不同的特征,还能起到减少参数的作用。例如下图,左边是使用全连接的神经网络,右边是使用局部连接卷积核的网络。 权值共享:对于一类图片而言

刚过去的520,大家都在送什么礼物,Python用可视化图告诉你

本秂侑毒 提交于 2020-08-17 12:53:22
前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 一年一度的520刚刚过去。 由于受疫情影响错过了今年的2月14日情人节,2020年5月20日,这个谐音为“爱你爱你我爱你”的 “世纪520”,对情侣们来说显得格外有吸引力。 网上都是婚礼、告白、结婚等甜蜜新闻,微博排行榜上的蜜都要溢出屏幕了,520简直就是大型“撒狗粮”节日。 其中,最大的狗粮来自民政局!全国各地的民政局都爆满了! 想在这天领证的新人们把民政局围得水泄不通,有人甚至凌晨4点就前往排队。 一、“世纪520”送礼物 ,大家都在买什么? 除了领证的,对于情侣们来说,关于520要怎么度过,改送什么礼物给心爱的ta也是关注度非常高的话题。 首先,看到知乎上关于“520送什么的话题”,我们经过分析整理发现: 知乎数据 给女朋友送什么 关于给女朋友的礼物,广大网友都提到了口红、香水、项链、手表、还有玫瑰巧克力等礼物; 给男朋友送什么 送男朋友方面,剃须刀、键盘、鼠标、游戏机等也频频被提到。 淘宝数据 那么事实究竟是怎样的呢?接下来让我们看到淘宝天猫的数据,真正做到用数据来说话。 我们搜集整理了淘宝网关于520礼物的100页商品数据,使用Python进行整理分析,经过预处理之后,一共得到3854条数据。 520大家都在买什么礼物? 我们在淘宝搜索520礼物

使用Python+TensorFlow2构建基于卷积神经网络(CNN)的ECG心电信号识别分类(四)

余生颓废 提交于 2020-08-12 15:12:47
在上一篇文章中,我们已经对心电信号进行了预处理,将含有噪声的信号变得平滑,以便分类。本篇文章我们将正式开始利用深度学习对心电信号进行分类识别。 卷积神经网络 不论是传统机器学习,还是深度学习,分类的依据都是不同类别的数据中包含的不同特征。要进行分类识别就需要对数据的特征进行提取,但是二者的提取方式并不相同。对于传统的机器学习而言,数据的特征需要设计者或专业人员针对其特性进行手动提取,而深度学习则可以自动提取每类数据中的不同特征。对于卷积神经网络CNN而言,能够自动提取特征的关键在于卷积操作。经过卷积操作提取的特征往往会有冗余,并且多次卷积会使神经网络的参数过多不便于训练,所以CNN往往会在卷积层的后面跟上一个池化层。经过多次的卷积和池化后,较低层次的特征就会逐步构成高层次的特征,最后神经网络根据提取出的高层次特征进行分类。 另外需要指出的是,为什么在心电信号分类中可以使用CNN呢。这是因为CNN具有的卷积操作具有局部连接和权值共享的特征。 局部连接:用于区别不同种类的图片所需的特征只是整张图片中的某些局部区域,因此在进行卷积操作时使用的卷积核(感受野)可以只是几个不同小区域,而不必使用整张图片大小的卷积核(全连接)。这样做不仅可以更好地表达不同的特征,还能起到减少参数的作用。例如下图,左边是使用全连接的神经网络,右边是使用局部连接卷积核的网络。 权值共享:对于一类图片而言

数据挖掘入门——以二手车价格预测为例

安稳与你 提交于 2020-08-10 23:51:41
数据挖掘入门——以二手车价格预测为例 作者:张杰 数据挖掘的步骤 Data Analysis Feature Engineering Feature Selection Model Building Model Deployment 1. Data Analysis 对于数据分析部分,需要探索以下几个点: 1)Missing Values 2)All The Numerical Variables 3)Distribution of the Numerical Variables 4)Categorical Variables 5)Cardinality of Categorical Variables 6)Outliers Relationship between independent and dependent feature(SalePrice) 2. Feature Engineering 数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。那特征工程到底是什么呢?顾名思义,其本质是一项工程活动,目的是最大限度地从原始数据中提取特征以供算法和模型使用。 特征工程中可能有以下问题: 不属于同一量纲:即特征的规格不一样,不能够放在一起比较; 定性特征不能直接使用:某些机器学习算法和模型只能接受定量特征的输入,那么需要将定性特征转换为定量特征