A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

【郑州校区】机器学习第二天笔记分享
机器学习第二天的重难点:
        1.了解神经网络发展过程
        2.明确MP神经元模型---感知机模型---BP神经网络
        3.如何构建一个机器学习系统。(以分类为例)
        4.模型选择部分--如何进行模型选择?
        5.机器学习成熟库:Python的sklearn(scikit-learn)
                                          Spark的MLLIB、WEKA
回顾机器学习第一天的内容:
        1.大数据架构
                以电信日志分析为例
                数据:电信用户上网所产生的的日志
                        用户的访问日志--地区码|目标ip|用户ip|流量数据|其他数据
                        用户的安全日志--安全规则|安全码
                获取数据的方式:
                        ftp方式---上传的是用户的访问日志
                                   ---每个小时上传上一个小时的日志
                                   ---通过shell将小文件进行合并之后上传到文件系统中
                        socket方式---上传的是用户的安全日志
                                          ---以socket流文件的方式上传,先缓存在加载到内存中
                数据存储:HDFS(分布式文件系统)
                数据清洗(ETL): 使用Mapreduce--处理用户访问数据,用于Hive进行进一步分析
                                                                        --Mapreduce和Redis进行交互将访问日志中401地区码变更为地区名字,如“上海”
                                                数据清洗包括缺失字段的处理(可以删除字段、均值填充、中位数填充)                       
                数据分析:Hive、Impala、HBase、Spark
                        Hive处理的是小文件合并,临时业务需求,用户的访问查询
                                通过sqoop导入到oracle中做进一步的通过web端访问。
                        Impala进行实时的查询业务
                                通过jdbc和web端进行交互
                        Hbase从MR处理完用户的访单数据之后,入库到HBase通过HBase做实时的详单查询
                                通过协处理器或thrift服务和web端进行交互
                        Spark为了解决单一数据源下40个指标需要加载到内存中去处理,TopN
                                通过sqoop导入到oracle中做进一步的通过web端访问。
                机器学习:在数据分析之后,需要寻找数据之间存在的关联或模式,而大数据的框架
                能够做到大数据量的存储和基本的统计计算,如果需要利用机器学习算法,预测现实
                世界的真实事件(分类、回归、聚类)
        2.机器学习架构(以推荐系统为例)
                web/App--设置一些埋点---用户的行为数据----存储在数据中心或数据库中
                离线计算:从数据库中拿出用户历史行为数据,使用协同过滤算法或ALS算法进行
                        基于用户的协同过滤推荐或基于商品的协同过滤推荐,得到的推荐结果存储到
                        在线存储介质中
                在线计算:拿到用户实时点击商品对应的特征,通过该特征和在线存储介质中的
                商品数据做相似性计算,拿到相似度在前面topn的个数。
                        过滤,补全,排序
                近线计算:将整个推荐系统的业务逻辑整合在一起
                推荐系统的API-->web端会发起请求request,通过api和近线计算进行交互,通过
                        -->推荐系统的API返回对应的推荐商品的值。(response)
        3.究竟大数据时代究竟改变了什么?
                数据资源----数据资产
                基于知识----基于数据
                统计学------数据科学
                目标决策----数据决策
                基于业务的数据化---基于数据的业务化
                基于战略---基于数据
                计算智能:复杂算法----简单算法(MapReduce模型)
        4.大数据的4v特征
                数据量大---TP-PB-ZB----HDFS
                数据处理速度快---MR---Hive--Impala---Spark---Flink
                数据源种类多----结构化数据--非结构化数据---半结构化数据
                价值密度低---->机器学习
        5.机器学习的应用:
                无人驾驶、图像识别、语音识别、自然语言处理、计算广告、推荐系统
        6.人工智能
                跳棋---专家系统
                国际象棋---IBM深蓝战胜人类高手   SVM支持向量机
                围棋---AlphaGo---深度学习、神经网络和大数据流派
        7.人工智能、深度学习、机器学习的关系
                机器学习是人工智能的一个分支,而深度学习是机器学习的一种方法。
        8.数据、数据分析、数据挖掘
                数据:测量值
                信息:对数据进行数据分析得到的结果
                数据挖掘:将信息进行价值化的提取
                机器学习是一种方法,数据挖掘是一件事情,使用这样一个方法解决数据挖掘这样一件事情
        9.什么是机器学习?
                如何通过计算(CPU和GPU)的手段,利用经验来改善计算机自身的性能,从而达到智能的目的。
                数据Data+机器学习算法=模型Model
                以西瓜数据集为例:
                数据集中样本、特征、训练集、测试集、模型准确性
                给你一个没有切开的西瓜,通过数据代入模型中得到一个是好or不好西瓜的结果
        10机器学习的各个概念:
                数据集DataSet
                样本sample
                特征features
                类标签label
                训练集training set
                测试集:test set
                训练:fit-learning
                模型:Model
                预测:prediction
                误差:error
                训练集上的误差:train error
                测试集上的误差:test error
                准备率:score,accuracy
        11.机器学习的分类
                是否有标签:
                        监督学习:分类(2分类和多分类)--垃圾邮件
                                                回归(是否输出值是连续值,是)---房价预测问题
                        非监督学习:聚类(KMeans)
                                                        组内的相似性极大的,组间的相异性极大的
                                                降维(PCA,LDA,SVD)
                                                        将数据中的特征从高纬度降低到低纬度中
                        半监督学习:一部分是有标签,一部分是没有标签的
                                                常用的方法:主动学习(依赖于外部环境)
                                                半监督学习:基于聚类假设
                                                        纯半监督学习
                                                        直推学习
                        强化学习:解决的连续值决策的问题
        12.手写体识别的案例
                手写体数据----->灰度化和二值化的处理--->矩阵--->行矩阵--->算法中--->模型---->预测
                python的sklearn(scikit-learn)演示流程
                        1.数据探索
                        2.数据集的切分
                        3.训练集训练模型
                        4.测试集测试模型的优劣
                        5.使用模型进行预测predict
                        6.考量模型的优劣(模型.score())
神经网络部分:
        人工智能的三次浪潮----神经网络出现三次浪潮
        从人脑结构的神经元如何转化抽象得到人工神经网络结构的。
        MP神经元模型--->缺点:没有学习的能力
        感知机模型--->缺点:XOR异或问题   ----神经网络第一次浪潮
        BP神经网络---->缺点:提取特征的能力有限  ----神经网络第二次浪潮
        CNN--卷积神经网络 DNN--深度神经网络      ----神经网络的第三次浪潮
机器学习三要素:
        机器学习:Data+Alg+策略(损失函数-目标函数)==>MODEL
                          模型:决策函数或条件概率分布
                          策略:损失函数0-1损失,绝对值损失,平方损失,交叉熵损失
                          算法:最优解的表达形式
        如何构建机器学习系统?
                数据和特征的处理+机器学习算法-->模型-->通过损失函数---->对模型进行校验
        如何在大量的模型中选择最合适的模型?
                以多项式为例:
                模型的泛化性能最佳的:
                        模型的过拟合和模型的欠拟合
                模型过拟合:
                        模型在训练集上的效果好,在测试上的效果比较差的
                模型的欠拟合:
                        模型在训练集和测试集上的效果都很差
                解决欠拟合:
                        增加特征项、增加模型复杂程度、减少正则罚项
                解决过拟合:
                        增加正则罚项、重新采样、增加训练数据
                        防火防盗防止过拟合
        如果两个模型的泛化误差都是相同的,模型如何选择?
                使用奥卡姆剃刀原则,在相同的泛化误差的情况下,选择较简单的模型中作为最终的模型。
为什么现在是进入机器学习领域的最佳时机?
        得益于我们成熟库的实现,方便了我们自己手写算法,实现业务需求,方便计算
        Spark的MLLIB WEKA 基于Python的sklearn
        tensorflow库---深度学习(CNN DNN RNN)
        Keras库--基于tensorflow封装的库、MXnet、Caffe等
基于Python的Sklearn学习:
        (1)安装python环境
                ---python的原生环境安装
                        两个版本:python的2.7和3.6两个版本
                        在python中3.6版本并没有兼容2.7版本
                        在python中使用pip命令安装package
                                轮子文件:whl--python组织包的方式
                                安装:pip install xxxx (离线安装(对应的whl文件)和在线安装(直接输入相应的包名字))
                                卸载:pip uninstall xxx
                                如何测试轮子文件是否安装成功?
                                        进入python的环境----import numpy as np
                                                import pandas as pd
                                                import matplotlib as mpl
                        在Python中有一个解析器interpreter用于语言解析(类似于java中的jvm)
                                这也是python为什么是一门解析性的语言之一的原因
                ---eclipse(IDE)
                        基于eclipse如何安装python环境呢?
                ---idea如何安装
                ---Anaconda(数据科学环境)+Pycharm(IDE)---数据科学首选的环境
                        不仅可以使用pip进行包管理,还可以使用conda管理---pip list或者conda list 查看当前版本中安装的包的名字
                        pip install xxxx /pip uninstall xxx
                        conda install xxx/conda uninstall xxx                       
        (2)基于Anaconda+Pycharm进行数据科学的学习
总结:
        神经网络:MP神经元模型---感知机模型---BP神经网络----CNN\RNN\DNN
        MP神经元模型---输入x1 x2 x3 b Y=sum(xiwi)+b----F(Y)=sign--0or1 存在问题:模型没有学习能力
        感知机模型-----误差反向传播解决权值更新问题
                                ---如何更新权值?
                                        1.建立损失函数
                                        2.梯度下降法求解损失函数的最优解
                                问题:XOR异或问题无法解决
        BP神经网络:具有两层神经元的神经网络结构,BP神经网络
        如何设计一个神经网络结构?
                1.确定神经元的层数
                        输入层1----输出层1-----隐藏层n
                2.确定每层神经元个数
                        输入层-输入样本个数------输出层--任务输出的个数-------隐藏层个数--准确率或交叉验证
        如何构建一个机器学习系统。
                1.数据 2.业务
                数据探索
                特征工程
                数据集切分为训练集和测试集
                训练集+算法-->MODEL
                通过测试集X灌入算法中得到一个预测值Y1
                形成误差|Y-Y1|
                模型训练过程使得模型的无法最小的
                评价指标
        机器学习三要素:
                数据+机器学习算法+策略==>Model模型
                模型的过拟合和欠拟合
        基于python的安装
                Anaconda+pycharm进行数据科学学习
传智播客·黑马程序员郑州校区地址
河南省郑州市 高新区长椿路11号大学科技园(西区)东门8号楼三层
联系电话 0371-56061160/61/62
来校路线  地铁一号线梧桐街站A口出

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马