热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

推荐系统机器学习理论基础详解01

推荐系统-机器学习理论基础详解

1.大数据时代究竟改变了什么?(了解)

  • 改变的是思维方式
  • 1.数据重要性:
    • 数据资源--------数据资产(增值)
  • 2.方法论:
    • 基于知识的理论完美主义-------基于数据的历史经验主义
    • 翻译:你好吗?
      • 基于知识翻译:----借助语言学家
        • 你 you your
        • 好 good best等
        • 吗 do does等
        • Are you good?
        • Are you well?
        • How are you?(选择)
      • 基于数据的翻译:
        • Are you good?
        • Are you well?
        • How are you?(选择)
  • 3.数据分析:
    • 统计学(抽样)--------------数据科学(大数据)
      • 数据科学家(大数据+算法+更加丰富的业务知识)
  • 4.计算智能:
    • 复杂算法---------------简单算法(MapReduce)
  • 5.决策方面:
    • 基于目标决策---------基于数据决策
  • 6.业务方面:
    • 基于业务的数据化---------基于数据的业务化
  • 7.产业竞合:
    • 以战略为中心---------------以数据为中心

2.大数据的4V特征(理解)

  • 1.数据量大
    • TB-PB-ZB
    • HDFS分布式文件系统解决大数据的存储问题
  • 2.数据种类多
    • 结构化数据
      • Mysql为主的存储和处理
    • 非结构化数据
      • 图像、音频等
      • HDFS、MR、Hive等可以解决和处理
    • 半结构化数据
      • XML形式、HTML形式
      • HDFS、MR、Hive、Spark等可以解决和处理
  • 3.速度快
    • 数据的增长速度快
      • TB-PB-ZB
      • HDFS解决大数据的存储问题
    • 数据的处理的速度快
      • MR-HIVE-PIG-Impala(离线)
      • Spark-Flink(实时)
  • 4.价值密度低
    • 价值密度=有价值的数据/ALL
    • 价值高
    • 机器学习算法解决的问题

3.大数据项目架构-以电信日志分析为例(理解)

  • 以电信日志分析为例
  • 项目名称:电信日志分析系统
  • 项目描述:电信日志分析系统是以电信用户上网所产生的数据进行分析和统计计算,数据主要来源于用户的上网产生的访问日志和安全日志,通过Hadoop大数据平台完成日志的入库、处理、查询、实时分析、上报等功能,达到异常IP的检测、关键词过滤、违规违法用户的处理等,整个项目数据量在1T-20T左右,集群数量在10台到100台。
  • 项目架构分析:
    • 数据采集层:ftp、socket方式进行数据传输
    • 数据存储层:HDFS
    • 数据分析层:MR\HIVE\IMPALA(离线)\SPARK(实时)
    • 机器学习层:在大数据处理后的应用
    • 数据展示层:oracle+SSM
  • 项目职责:
    • 重点负责:实时or离线
    • 处理分析了那些字段,通过何种手段进行分析
    • 项目有没有优化?
  • 项目优化:
    • HDFS+Spark(一站式的分析平台)
  • 大数据架构图

推荐系统-机器学习理论基础详解01

4.机器学习-人工智能发展(了解)

  • 人工智能的三次浪潮
    • 跳棋-----专家系统-----IBM公司
    • 象棋-----统计模型-----IBM公司深蓝
    • 围棋-----深度学习----DeepMind
  • 人工智能场景应用:
    • 图像识别
    • 无人驾驶
    • 智能翻译
    • 语音识别
    • 医疗智能诊断
    • 数据挖掘 ---- 啤酒和尿布

5.机器学习-人工智能概念区别和联系(掌握)

  • 机器学习是人工智能的一个分支
  • 人工智能的分支
    • 机器学习
    • 数据挖掘
    • 模式识别
  • 深度学习:
    • 深度学习是机器学习的一种方法,是为了解决机器学习领域中如图像识别等问题提出。
  • 人工智能如何落地?
    • 依靠机器学习
  • 图示

推荐系统-机器学习理论基础详解01

6.机器学习-数据、数据分析、数据挖掘区别和联系(掌握)

  • 数据:观测值或测量值
  • 信息:可信的数据
  • 数据分析:数据—信息(整理 , 筛选和加工等过程)
  • 数据挖掘:信息—有价值的信息提取
    • 数据库给数据挖掘提供了数据管理技术
    • 统计学 , 模式识别提供了数据分析技术
  • 模式识别:图像识别
  • 深度学习方法---->机器学习方法------>数据挖掘事情(模式识别)
  • 流程 : 数据------数据分析----信息------数据挖掘------有价值信息

7.什么是机器学习(掌握)

  • 机器学习 == 机器 + 学习
  • 人类学习 == 大脑 + 经验
  • 机器学习 == CPU + GPU(图形图像处理器) + 数据 + 算法(智能)
  • 概念:机器学习致力于研究如何通过计算(CPU+GPU计算)的手段,在给定算法结合数据构建模型,通过模型达到预测的功能。
  • 如何判断问题是否为机器学习问题?
    • 特定问题:— 不需要使用机器学习
      • 确定性问题
      • 基础统计问题
    • 看是否具有预测的过程
      • 机器学习

8.基于规则的学习和基于模型的学习(掌握)

  • 基于规则的学习是硬编码的方式进行学习
  • 基于模型的学习是通过数据构建机器学习模型,通过模型进行预测。
  • X(自变量、定义域-----特征)------f(函数、映射----->模型)----->Y(因变量、值域-----结果)
  • 最终目的求解y=kx+b中的k和b
  • 机器学习学习的是什么?
    • 学习的是模型
    • 学习的是模型中的k和b------参数------参数是需要学习的

9.机器学习关于数据集的概念(掌握)

  • 什么样的数据集
  • 数据集的行—样本/实例
  • 数据集的列—特征/属性
  • 特征张成的空间----特征或属性空间
  • 组成属性空间中的样本点----特征或属性向量
  • 组成特征向量中的值----特征或属性值
  • 将数据集切分成训练集(X:[特征]+Y:[类别标签])测试集(X:[测试数据]+Y:[预测结果] , 可以与原来的Y进行比较)
  • 使用训练集+算法构成模型解决实际问题
  • 误差(y-y_pred):进行校验结果情况
  • 如果对于非数值的特征,需要进行特征转换
    • labelencoder标签编码
    • onehotencoder编码(独热编码)
      • 需要将维度扩大

推荐系统-机器学习理论基础详解01

  • 如何对二分类问题进行评价?
    • 绝对值误差函数(|y-y_pred|)
    • 平方误差函数(y-y_pred)**2
    • 训练误差 : 训练集
    • 测试误差 : 测试集
    • 泛化误差 : 新数据预测
    • 性能矩阵(混淆矩阵)
      • Accuracy准确率/正确率 == (TP+TN)/ALL
      • Precsition 精确率 == TP / (TP+FP)
      • Recall=TPR 真正率或召回率 == TP/(TP+FN)
      • FPR假正率 == FP/(FP+TN)
      • F1-Score(F1值) 精确率和召回率的调和平均 == 2/({1/pre+1/recall})==2*pre*recall/(pre+recall)
      • ROC(受试者工作曲线)曲线的AUC(Area under Cruve[0,1])指标
    • 图示

推荐系统-机器学习理论基础详解01

9-4 概念学习

  • 概念学习:关于布尔函数(是或否)的学习方式
  • 关系式:X-----F----->Y
  • 引出了机器学习分类:
    • 根据是否是连续值的预测,分为
    • 分类问题----离散值预测,如小明学习水上运动 —目标标记为类别数据
    • 回归问题----连续值预测,如房价预测 —目标标记为连续性数值
  • 机器学习处理问题框架:
    • 1.将数据集切分为训练集和测试集
    • 2.通过训练集的特征向量来训练算法
    • 3.通过测试集测试模型,给出评价指标

10.机器学习分类详解(理解)

  • 监督学习和无监督学习区别:是否有类别标签
    • 监督学习----有类别标签
      • 是否具备连续值的预测
        • 分类
          • 决策树算法
          • KNN
          • SVM
          • Perception&&NeuralNetwork
          • Bayes(贝叶斯)
          • LogisterRegression(逻辑斯特回归)
        • 回归
          • 简单线性回归
          • 多元线性回归
          • Lasso回归
          • Ridge回归
          • ElasticNet

推荐系统-机器学习理论基础详解01
推荐系统-机器学习理论基础详解01

  • 无监督学习(非监督学习)----没有类别标签
    • 聚类
      • 通过特征之间的相似性
    • 推荐系统-机器学习理论基础详解01
    • 降维:将某几个合并为一维的
      • 通过机器学习算法达到降维目的,区别于特征选择
      • 特征降维 : 根据算法将高维特征降低到了低维特征 , 低维的特征不具备可解析性
      • 区别于特征选择 : 仅是在全部特征中选择部分特征
    • 推荐系统-机器学习理论基础详解01

推荐系统-机器学习理论基础详解01

  • 半监督学习:一部分有类别标签 , 一部分没有类别标签(了解)
    • 主动学习
    • 纯半监督学习(未将未标记数据作为待测数据)/直推学习(将未标记数据作为待测数据)

推荐系统-机器学习理论基础详解01

  • 强化学习:(了解)

    • 解决连续决策问题 — 围棋
      推荐系统-机器学习理论基础详解01
  • 迁移学习:(了解)

    • 解决小数据集和个性化问题

推荐系统-机器学习理论基础详解01

  • 深度(特征)+强化(连续决策)+迁移(模型适应性问题)
  • 总结图解

推荐系统-机器学习理论基础详解01

监督学习具有明确目标 , 无监督学习没有任何目标 , 强化学习介于两者之间

11.机器学习经典案例举例-手写体识别(了解)

  • 手写体识别案例
    • 明确:机器学习监督学习中的分类问题
    • 10分类问题
    • 32*32矩阵—转化为1*1024列的矩阵----通过SVM算法-----识别结果
  • 车牌识别、图像识别
    • 按照同样流程操作

推荐系统-机器学习理论基础详解01

12.机器学习三要素详解及概念强化(熟悉)

  • 机器学习模型=数据+算法+策略

    • 数据:参考上面图示(鸢尾花数据)
    • 算法:提供求解参数的方法
      • 解析解------平常方法
      • 最优解------梯度下降法(最优解)、牛顿法
    • 策略:损失函数/误差函数/目标函数
  • 模型学习模型=模型+算法+策略

    • 模型:
      • 决策函数—输出0或1
      • 条件概率函数----按照概率进行输出
  • 常见的损失函数

    • 0-1损失函数 : 适用于分类问题

推荐系统-机器学习理论基础详解01

  • 平方损失函数 : 不适合分类问题 , 适用于连续值回归问题

推荐系统-机器学习理论基础详解01

  • 绝对损失函数 : 分类回归都可以

推荐系统-机器学习理论基础详解01

  • 对数损失函数/对数似然损失函数

推荐系统-机器学习理论基础详解01

13.如何设计机器学习系统(了解)

  • 首先明确:
    • 该问题是否为机器学习问题?—是
    • 该问题是机器学习哪方面的问题?----监督学习、无监督学习
  • 当拿到数据之后从下面两个角度思考问题:
    • 从数据角度思考:
      • 根据具备的数据看能够做监督学习or无监督学习or半监督学习
    • 从业务的角度思考
      • 根据业务部门制定的业务方向,整理数据,从而建模
  • 特征工程
    • 对特征处理
    • 对数据的处理
  • 数据+选择的算法==>模型
  • 通过测试集测试模型,给定最终模型
  • 如果有新数据,通过模型给出预测结果

推荐系统-机器学习理论基础详解01

14.模型选择-泛化性能体现(掌握)

  • 对于多个模型如何选择?

推荐系统-机器学习理论基础详解01

  • 模型的泛化能力:
    • 1.欠拟合(underfitting)
      • 模型在训练集和测试集的效果都很差
      • A:60% B:58%
      • 欠拟合出现原因:模型过于简单
      • 欠拟合出现的场景:模型训练初期
      • 欠拟合解决办法:
        • 增加模型的多项式的项
        • 增加模型多项式的项的次数
        • 减少正则罚项
    • 2.过拟合(overfitting)
      • 模型在训练集上的效果很好,但是测试效果很差
      • A:100% B:80% — 轻微过拟合
      • A:100% B:40%
      • 过拟合的出现原因:模型过于复杂、数据不纯、训练数据量太少
      • 过拟合的出现场景:出现在模型训练的中后期
      • 过拟合解决办法:
        • 针对模型过于复杂的特性,增加正则罚项
        • 重新清洗数据
        • 增加训练数据量
        • 对样本抽样或特征进行抽样
        • dropout—随机丢弃一些点(深度学习)
      • 注 : 增加正则罚项使得数据变得稀疏
    • 防火防盗防过拟合
    • 奥卡姆剃刀原则:如果具有相同泛化误差的模型,选择较为简单的模型(防止过拟合)

15.机器学习三要素数学理论补充(理解)

  • 数据
  • 算法
  • 策略
    • 损失函数、目标函数、误差函数
    • 损失函数越小越好
    • 损失函数的期望越小越好p(x,y)不容易求解
    • 经验损失-----------平均损失-----------经验风险最小化
    • 结构风险-----------在经验风险基础上增加了正则罚项-----结构风险最小化
    • 参考图示:
      • 随着模型的复杂度的增加,模型在训练集上的误差越小的,但是模型在测试集上的误差先减少然后增加,这里需要找到一个合适的点,该点需要模型具备很好的泛化误差能力,因此得到了结构风险最小化的点对应的就是求解的最佳的点,该点对应的参数即为所求解参数。
  • 图示

推荐系统-机器学习理论基础详解01

16.正则化(了解)

  • 正则项
    • 目的:为了降低模型的复杂度
    • 有以下几个正则项:
      • L1正则+lambda*|w|
        推荐系统-机器学习理论基础详解01

      • L2正则+lambda*|w|**2

推荐系统-机器学习理论基础详解01

17.交叉验证(了解)

  • 简单交叉验证:
    • 将数据集切分为:训练集和测试集=7:3 6:4 8:2
  • K则交叉验证:
    • 将数据集平均随机切分为K等分,将其中一份数据作为测试集,其余数据作为训练集,训练K个模型,得到平均准确率

推荐系统-机器学习理论基础详解01

  • 留一验证:只使用样本中的一项当做训练集
    • 特殊的K则交叉验证

18.为什么现在是进入机器学习最佳时机(了解)

  • 因为现在有了很多的成熟的机器学习库
  • 需要能够在深入原理的基础上,结合已有的机器学习框架,解决实际问题
  • 那些库?
    • 基于Python的sklearn(scikit-learn库)
    • 基于spark的mllib库
    • 基于spark的sparkR库
    • 基于Java的Weka库
    • 深度学习库:
      • 基于java的dl4j
      • 基于python的tensorflow
      • 基于tensorflow之上的pytorch、keras等
  • 重点以Python为主展开

19.总结推荐系统-机器学习理论基础详解01


推荐阅读
  • 【转】强大的矩阵奇异值分解(SVD)及其应用
    在工程实践中,经常要对大矩阵进行计算,除了使用分布式处理方法以外,就是通过理论方法,对矩阵降维。一下文章,我在 ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
  • 深入解析:存储技术的演变与发展
    本文探讨了从单机文件系统到分布式文件系统的存储技术发展过程,详细解释了各种存储模型及其特点。 ... [详细]
  • 本文探讨了一种统一的语义数据模型,旨在支持物联网、建筑及企业环境下的数据转换。该模型强调简洁性和可扩展性,以促进不同行业间的插件化和互操作性。对于智能硬件开发者而言,这一模型提供了重要的参考价值。 ... [详细]
  • 一家位于长沙的知名网络安全企业,现面向全国诚聘高级后端开发工程师,特别欢迎具有一线城市经验的技术精英回归故乡,共创辉煌。 ... [详细]
  • 本文探讨了如何在 Spring MVC 框架下,通过自定义注解和拦截器机制来实现细粒度的权限管理功能。 ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • Redis:缓存与内存数据库详解
    本文介绍了数据库的基本分类,重点探讨了关系型与非关系型数据库的区别,并详细解析了Redis作为非关系型数据库的特点、工作模式、优点及持久化机制。 ... [详细]
  • 本文详细记录了 MIT 6.824 课程中 MapReduce 实验的开发过程,包括环境搭建、实验步骤和具体实现方法。 ... [详细]
  • 本文总结了近年来在实际项目中使用消息中间件的经验和常见问题,旨在为Java初学者和中级开发者提供实用的参考。文章详细介绍了消息中间件在分布式系统中的作用,以及如何通过消息中间件实现高可用性和可扩展性。 ... [详细]
  • 对象存储与块存储、文件存储等对比
    看到一篇文档,讲对象存储,好奇,搜索文章,摘抄,学习记录!背景:传统存储在面对海量非结构化数据时,在存储、分享与容灾上面临很大的挑战,主要表现在以下几个方面:传统存储并非为非结 ... [详细]
  • 8个IDC大数据基础定义解析丨IDC
    本文针对IDC数据行业相关名词术语进行解析,分为4组相关概念,希望大家读完 ... [详细]
author-avatar
572370080_8f9421
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有