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

教育网站的建设dw设计网页步骤

教育网站的建设,dw设计网页步骤,网站建设服务商24小时接单,莱州做网站摘要#xff1a; 什么是数据挖掘#xff1f;什么是机器学习#xff1f;又如何进行Python数据预处理#xff1f;本文将带领大家一同了解数据挖掘和机器学习技术#xff0c;通过淘宝商品案例进行数据预处理实战#xff0c;通过鸢尾花案例介绍各种分类算法。 课程主讲简介 什么是数据挖掘什么是机器学习又如何进行Python数据预处理本文将带领大家一同了解数据挖掘和机器学习技术通过淘宝商品案例进行数据预处理实战通过鸢尾花案例介绍各种分类算法。 课程主讲简介 韦玮企业家资深IT领域专家/讲师/作家畅销书《精通Python网络爬虫》作者阿里云社区技术专家。 以下内容根据主讲嘉宾视频分享以及PPT整理而成。 本次课程包含了五个知识点 1.数据挖掘与机器学习技术简介 2.Python数据预处理实战 3.常见分类算法介绍 4.对鸢尾花进行分类案例实战 5.分类算法的选择思路与技巧 一、数据挖掘与机器学习技术简介 什么是数据挖掘数据挖掘指的是对现有的一些数据进行相应的处理和分析最终得到数据与数据之间深层次关系的一种技术。例如在对超市货品进行摆放时牛奶到底是和面包摆放在一起销量更高还是和其他商品摆在一起销量更高。数据挖掘技术就可以用于解决这类问题。具体来说超市的货品摆放问题可以划分为关联分析类场景。 在日常生活中数据挖掘技术应用的非常广泛。例如对于商户而言常常需要对其客户的等级svip、vip、普通客户等进行划分这时候可以将一部分客户数据作为训练数据另一部分客户数据作为测试数据。然后将训练数据输入到模型中进行训练在训练完成后输入另一部分数据进行测试最终实现客户等级的自动划分。其他类似的应用例子还有验证码识别、水果品质自动筛选等。 那么机器学习技术又是什么呢一言以蔽之凡是让机器通过我们所建立的模型和算法对数据之间的关系或者规则进行学习最后供我们利用的技术都是机器学习技术。其实机器学习技术是一个交叉的学科它可以大致分为两类传统的机器学习技术与深度学习技术其中深度学习技术包含了神经网络相关技术。在本次课程中着重讲解的是传统的机器学习技术及各种算法。 由于机器学习技术和数据挖掘技术都是对数据之间的规律进行探索所以人们通常将两者放在一起提及。而这两种技术在现实生活中也有着非常广阔的应用场景其中经典的几类应用场景如下图所示1、分类对客户等级进行划分、验证码识别、水果品质自动筛选等 机器学习和数据挖掘技术可以用于解决分类问题如对客户等级进行划分、验证码识别、水果品质自动筛选等。 以验证码识别为例现需要设计一种方案用以识别由0到9的手写体数字组成的验证码。有一种解决思路是先将一些出现的0到9的手写体数字划分为训练集然后人工的对这个训练集进行划分即将各个手写体映射到其对应的数字类别下面在建立了这些映射关系之后就可以通过分类算法建立相应的模型。这时候如果出现了一个新的数字手写体该模型可以对该手写体代表的数字进行预测即它到底属于哪个数字类别。例如该模型预测某手写体属于数字1的这个类别就可以将该手写体自动识别为数字1。所以验证码识别问题实质上就是一个分类问题。 水果品质的自动筛选问题也是一个分类问题。水果的大小、颜色等特征也可以映射到对应的甜度类别下面例如1这个类别可以代表甜0这个类别代表不甜。在获得一些训练集的数据之后同样可以通过分类算法建立模型这时候如果出现一个新的水果就可以通过它的大小、颜色等特征来自动的判断它到底是甜的还是不甜的。这样就实现了水果品质的自动筛选。 2、回归对连续型数据进行预测、趋势预测等 除了分类之外数据挖掘技术和机器学习技术还有一个非常经典的场景——回归。在前文提到的分类的场景其类别的数量都有一定的限制。比如数字验证码识别场景中包含了0到9的数字类别再比如字母验证码识别场景中包含了a到z的有限的类别。无论是数字类别还是字母类别其类别数量都是有限的。 现在假设存在一些数据在对其进行映射后最好的结果没有落在某个0、1或者2的点上而是连续的落在1.2、1.3、1.4…上面。而分类算法就无法解决这类问题这时候就可以采用回归分析算法进行解决。在实际的应用中回归分析算法可以实现对连续型数据进行预测和趋势预测等。 3、聚类客户价值预测、商圈预测等 什么是聚类在上文中提过要想解决分类问题必须要有历史数据即人为建立的正确的训练数据。倘若没有历史数据而需要直接将某对象的特征划分到其对应的类别分类算法和回归算法无法解决这个问题。这种时候有一种解决办法——聚类聚类方法直接根据对象特征划分出对应的类别它是不需要经过训练的所以它是一种非监督的学习方法。 在什么时候能用到聚类假如数据库中有一群客户的特征数据现在需要根据这些客户的特征直接划分出客户的级别如SVIP客户、VIP客户这时候就可以使用聚类的模型去解决。另外在预测商圈的时候也可以使用聚类的算法。 4、关联分析超市货品摆放、个性化推荐等 关联分析是指对物品之间的关联性进行分析。例如某超市内存放有大量的货品现在需要分析出这些货品之间的关联性如面包商品与牛奶商品之间的关联性的强弱程度这时候可以采用关联分析算法借助于用户的购买记录等信息直接分析出这些商品之间的关联性。在了解了这些商品的关联性之后就可以将之应用于超市的商品摆放通过将关联性强的商品放在相近的位置上可以有效提升该超市的商品销量。 此外关联分析还可以用于个性化推荐技术。比如借助于用户的浏览记录分析各个网页之间存在的关联性在用户浏览网页时可以向其推送强关联的网页。例如在分析了浏览记录数据后发现网页A与网页C之间有很强的关联关系那么在某个用户浏览网页A时可以向他推送网页C这样就实现了个性化推荐。 5、自然语言处理文本相似度技术、聊天机器人等 除了上述的应用场景之外数据挖掘和机器学习技术也可以用于自然语言处理和语音处理等等。例如对文本相似度的计算和聊天机器人。 二、Python数据预处理实战 在进行数据挖掘与机器学习之前首先要做的一步是对已有数据进行预处理。倘若连初始数据都是不正确的那么就无法保证最后的结果的正确性。只有对数据进行预处理保证其准确性才能保证最后结果的正确性。 数据预处理指的是对数据进行初步处理把脏数据即影响结果准确率的数据处理掉否则很容易影响最终的结果。常见的数据预处理方法如下图所示1、缺失值处理 缺失值是指在一组数据中某行数据缺失的某个特征值。解决缺失值有两种方法一是将该缺失值所在的这行数据删除掉二是将这个缺失值补充一个正确的值。 2、异常值处理 异常值产生的原因往往是数据在采集时发生了错误如在采集数字68时发生了错误误将其采集成680。在处理异常值之前自然需要先发现这些异常值数据往往可以借助画图的方法来发现这些异常值数据。在对异常值数据处理完成之后原始数据才会趋于正确才能保证最终结果的准确性。 3、数据集成 相较于上文的缺失值处理和异常值处理数据集成是一种较为简单的数据预处理方式。那么数据集成是什么假设存在两组结构一样的数据A和数据B且两组数据都已加载进入内存这时候如果用户想将这两组数据合并为一组数据可以直接使用Pandas对其进行合并而这个合并的过程实际上就是数据的集成。 接下来以淘宝商品数据为例介绍一下上文预处理的实战。 在进行数据预处理之前首先需要从MySQL数据库中导入淘宝商品数据。在开启MySQL数据库之后对其中的taob表进行查询得到了如下的输出可以看到taob表中有四个字段。其中title字段用于存储淘宝商品的名称link字段存储淘宝商品的链接price存储淘宝商品的价格comment存储淘宝商品的评论数一定程度上代表商品的销量。 那么接下来如何将这些数据导入进来首先通过pymysql连接数据库如果出现乱码则对pymysql的源码进行修改连接成功后将taob中的数据全部检索出来然后借助pandas中的read_sql()方法便可以将数据导入到内存中。read_sql()方法有两个参数第一个参数是sql语句第二个参数是MySQL数据库的连接信息。具体代码如下图1、缺失值处理实战 对缺失值进行处理可以采用数据清洗的方式。以上面的淘宝商品数据为例某件商品的评论数可能为0但是它的价格却不可能为0。然而实际上在数据库内存在一些price值为0的数据之所以会出现这种情况是因为对部分数据的价格属性没有爬到。 那么如何才能判断出这些数据出现了缺失值呢可以通过以下的方法来进行判别首先对于之前的taob表调用data.describe()方法会出现如下图所示的结果如何看懂这个统计结果第一步要注意观察price和comment字段的count数据如果两者不相等说明一定有信息缺失如果两者相等则暂时无法看出是否有缺失情况。例如price的count为9616.0000而comment的count为9615.0000说明评论数据至少缺失了一条。 其他各个字段的含义分别为mean代表平均数std代表标准差min代表最小值max代表最大值。 那么如何对这些缺失数据进行处理一种方法是删掉这些数据还有一种方法是在缺失值处插入一个新值。第二种方法中的值可以是平均数或者中位数而具体使用平均数还是中位数需要根据实际情况来决定。例如年龄这个数据1到100岁这类平稳、变化的级差不大的数据一般插入平均数而变化的间隔比较大的数据一般插入中位数。 处理价格的缺失值的具体操作如下2、异常值处理实战 跟缺失值的处理过程类似想要处理异常值首先要发现异常值。而异常值的发现往往是通过画散点图的方法因为相似的数据会在散点图中集中分布到一块区域而异常的数据会分布到远离这块区域的地方。根据这个性质可以很方便的找到数据中的异常值。具体操作如下图首先需要从数据中抽出价格数据和评论数据。通常的做法可以借助循环去抽取但是这种方法太复杂有一种简单的方法是这个数据框进行转置这时候原先的列数据就变成了现在的行数据可以很方便的获取价格数据和评论数据。接下来通过plot()方法绘制散点图plot()方法第一个参数代表横坐标第二个参数代表纵坐标第三个参数代表图的类型”o”代表散点图。最后通过show()方法将其展现出来这样就可以直观的观测到离群点。这些离群点对数据的分析没有帮助在实际操作中往往需要将这些离群点代表的数据删除或者转成正常的值。下图是绘制的散点图根据上图所示将评论大于100000价格大于1000的数据都处理掉就可以达到处理异常值的效果。而具体的两种处理方法的实现过程如下 第一种是改值法将其改为中位数、平均数或者其他的值。具体操作如下图所示第二种是删除处理法即直接删除这些异常数据也是推荐使用的一种方法。具体操作如下图所示3、分布分析 分布分析是指对数据的分布状态进行分析即观察其是线性分布还是正态分布。一般采用画直方图的方式来进行分布分析。直方图的绘制有以下几个步骤计算极差、计算组距和绘制直方图。具体的操作如下图所示其中借助arrange()方法来制定样式arrange()方法第一个参数代表最小值第二个参数代表最大值第三个参数代表组距接下来使用hist()方法来绘制直方图。 taob表中的淘宝商品价格直方图如下图所示大致上符合正态分布taob表中的淘宝商品评论直方图如下图所示大致上是递减的曲线4、词云图的绘制 有的时候常常需要根据一段文本信息来进行词云图的绘制绘制的具体操作如下图实现的大致流程是先使用cut()对文档进行切词在切词完成之后将这些词语整理为固定格式然后根据所需的词云图的展现形式读取相应的图片下图中的词云图是猫的形状接着使用wc.WordCloud()进行词云图的转换最后通过imshow()展现出相应的词云图。例如根据老九门.txt文档绘制的词云图效果如下图所示三、常见分类算法介绍 常见的分类算法有很多如下图所示其中KNN算法和贝叶斯算法都是较为重要的算法除此之外还有其他的一些算法如决策树算法、逻辑回归算法和SVM算法。Adaboost算法主要是用于弱分类算法改造成强分类算法。 四、对鸢尾花进行分类案例实战 假如现有一些鸢尾花的数据这些数据包含了鸢尾花的一些特征如花瓣长度、花瓣宽度、花萼长度和花萼宽度这四个特征。有了这些历史数据之后可以利用这些数据进行分类模型的训练在模型训练完成后当新出现一朵不知类型的鸢尾花时便可以借助已训练的模型判断出这朵鸢尾花的类型。这个案例有着不同的实现方法但是借助哪种分类算法进行实现会更好呢 1、KNN算法 1、KNN算法简介 首先考虑这样一个问题在上文的淘宝商品中有三类商品分别是零食、名牌包包和电器它们都有两个特征price和comment。按照价格来排序名牌包包最贵电器次之零食最便宜按照评论数来排序零食评论数最多电器次之名牌包包最少。然后以price为x轴、comment为y轴建立直角坐标系将这三类商品的分布绘制在坐标系中如下图所示显然可以发现这三类商品都集中分布在不同的区域。如果现在出现了一个已知其特征的新商品用表示这个新商品。根据其特征该商品在坐标系映射的位置如图所示问该商品最有可能是这三类商品中的哪种 这类问题可以采用KNN算法进行解决该算法的实现思路是分别计算未知商品到其他各个商品的欧几里得距离之和然后进行排序距离之和越小说明该未知商品与这类商品越相似。例如在经过计算之后得出该未知商品与电器类的商品的欧几里得距离之和最小那么就可以认为该商品属于电器类商品。 2实现方式 上述过程的具体实现如下当然也可以直接调包这样更加简洁和方便缺点在于使用的人无法理解它的原理3使用KNN算法解决鸢尾花的分类问题 首先加载鸢尾花数据。具体有两种加载方案一种是直接从鸢尾花数据集中读取在设置好路径之后通过read_csv()方法进行读取分离数据集的特征和结果具体操作如下还有一种加载方法是借助sklearn来实现加载。sklearn的datasets中自带有鸢尾花的数据集通过使用datasets的load_iris()方法就可以将数据加载出来随后同样获取特征和类别然后进行训练数据和测试数据的分离一般做交叉验证具体是使用train_test_split()方法进行分离该方法第三个参数代表测试比例第四个参数是随机种子具体操作如下在加载完成之后就可以调用上文中提到的KNN算法进行分类了。 2、贝叶斯算法 1、贝叶斯算法的介绍 首先介绍朴素贝叶斯公式PB|APA|BPB/PA。假如现在有一些课程的数据如下表所示价格和课时数是课程的特征销量是课程的结果若出现了一门新课其价格高且课时多根据已有的数据预测新课的销量。显然这个问题属于分类问题。先对表格进行处理将特征一与特征二转化成数字即0代表低1代表中2代表高。在进行数字化之后[[t1,t2],[t1,t2],[t1,t2]]——[[0,2],[2,1],[0,0]]然后对这个二维列表进行转置便于后续统计得到[[t1,t1,t1],[t2,t2,t2]]——-[[0,2,0],[2,1,0]]。其中[0,2,0]代表着各个课程价格[2,1,0]代表各个课程的课时数。 而原问题可以等价于求在价格高、课时多的情况下新课程销量分别为高、中、低的概率。即PC|ABPAB|CPC/PABPA|CPB|CPC/PAB》PA|CPB|CPC其中C有三种情况c0高c1中c2低。而最终需要比较Pc0|AB、Pc1|AB和Pc2|AB这三者的大小又 Pc0|ABPA|C0PB|C0PC02/4*2/4*4/71/7 Pc1|ABPA|C1PB|C1PC100 Pc2|ABPA|C2PB|C2PC200 显然Pc0|AB最大即可预测这门新课的销量为高。 2、实现方式 跟KNN算法一样贝叶斯算法也有两种实现方式一种是详细的实现另一种是集成的实现方式3、决策树算法 决策树算法是基于信息熵的理论去实现的该算法的计算流程分为以下几个步骤 1先计算总信息熵 2计算各个特征的信息熵 3计算E以及信息增益E总信息熵-信息增益信息增益总信息熵-E 4E如果越小信息增益越大不确定因素越小 决策树是指对于多特征的数据对于第一个特征是否考虑这个特征0代表不考虑1代表考虑会形成一颗二叉树然后对第二个特征也这么考虑…直到所有特征都考虑完最终形成一颗决策树。如下图就是一颗决策树决策树算法实现过程为首先取出数据的类别然后对数据转化描述的方式例如将“是”转化成1“否”转化成0借助于sklearn中的DecisionTreeClassifier建立决策树使用fit()方法进行数据训练训练完成后直接使用predict()即可得到预测结果最后使用export_graphviz进行决策树的可视化。具体实现过程如下图所示4、逻辑回归算法 逻辑回归算法是借助于线性回归的原理来实现的。假如存在一个线性回归函数ya1x1a2x2a3x3…anxnb其中x1到xn代表的是各个特征虽然可以用这条直线去拟合它但是由于y范围太大导致其鲁棒性太差。若想实现分类需要缩小y的范围到一定的空间内如[0,1]。这时候通过换元法可以实现y范围的缩小 令ylnp/1-p 那么e^ye^(lnp/1-p) e^yp/(1-p) e^y*(1-p)p e^y-p*e^yp e^yp(1e^y) pe^y/(1e^y) p属于[0,1] 这样y就降低了范围从而实现了精准分类进而实现逻辑回归。 逻辑回归算法对应的实现过程如下图所示5、SVM算法 SVM算法是一种精准分类的算法但是其可解释性并不强。它可以将低维空间线性不可分的问题变为高位空间上的线性可分。SVM算法的使用十分简单直接导入SVC然后训练模型并进行预测。具体操作如下尽管实现非常简单然而该算法的关键却在于如何选择核函数。核函数可分为以下几类各个核函数也适用于不同的情况 1线性核函数 2多项式核函数 3径向基核函数 4Sigmoid核函数 对于不是特别复杂的数据可以采用线性核函数或者多项式核函数。对于复杂的数据则采用径向基核函数。采用各个核函数绘制的图像如下图所示5、Adaboost算法 假如有一个单层决策树的算法它是一种弱分类算法准确率很低的算法。如果想对这个弱分类器进行加强可以使用boost的思想去实现比如使用Adaboost算法即进行多次的迭代每次都赋予不同的权重同时进行错误率的计算并调整权重最终形成一个综合的结果。 Adaboost算法一般不单独使用而是组合使用来加强那些弱分类的算法。 五、分类算法的选择思路与技巧 首先看是二分类还是多分类问题如果是二分类问题一般这些算法都可以使用如果是多分类问题则可以使用KNN和贝叶斯算法。其次看是否要求高可解释性如果要求高可解释性则不能使用SVM算法。再看训练样本数量、再看训练样本数量如果训练样本的数量太大则不适合使用KNN算法。最后看是否需要进行弱-强算法改造如果需要则使用Adaboost算法否则不使用Adaboost算法。如果不确定可以选择部分数据进行验证并进行模型评价耗时和准确率。 综上所述可以总结出各个分类算法的优缺点为 KNN多分类惰性调用不宜训练数据过大 贝叶斯多分类计算量较大特征间不能相关 决策树算法二分类可解释性非常好 逻辑回归算法二分类特征之间是否具有关联无所谓 SVM算法二分类效果比较不错但可解释性欠缺 Adaboost算法适用于对弱分类算法进行加强 原文链接 干货好文请关注扫描以下二维码
http://www.yutouwan.com/news/165733/

相关文章:

  • 网站建设哪个公司好知乎三只松鼠网站怎样做
  • 临清网站制作唐山做网站价格
  • 网站制作的地方东莞核酸检测收费
  • 上海模板网站套餐做网站客户要先看效果后付款
  • 成都网站建设有限公司上海最专业的集团网站建设
  • 网站用户维度无锡百度网站排名
  • 企业网站建设公司网络服务让网站快速收录最新
  • 最专业的网站建设团队平顶山市住房和城乡建设局网站
  • 公司网站制作费计入会计什么科目登录设备管理
  • 网站桥页怎么找wordpress widget id
  • 东莞高明网站设计外贸网站推广和建站
  • 国内知名的网站建设公司有哪些宣传片制作模板
  • 世界工厂采购网站大型网络游戏排行榜前十
  • 建站程序的选择郑州网站制作公司怎么样
  • 全国建设造价信息网站这几年做网站怎么样
  • 扁平化网站建设公司朗格手表网站
  • 甘肃省建设厅执业资格注册中心网站常德网站制作公司多少钱
  • 网站建设公司长沙网站策划论文
  • 手机自助建站系统网站降权恢复
  • 网站搭建上门多少钱移动开发专业
  • 做门户网站的公司有哪些wordpress插件的页面文件
  • 网站管理登录系统北京网站域名备案查询
  • 带数据库的网站怎么建十堰网站建设多少钱
  • 中山中小型网站国内营销策划咨询公司
  • 网站改域名个人资料库网站怎么做
  • 城阳网站建设培训兰州网站建设方案
  • 建筑工程网人才网长沙seo智优营家
  • 谷歌怎么做网站优化网站开发分析报告
  • 品牌设计公司网站钢铁网站哪家做的好
  • 网站建设是属于什么岗位网站网域名查询