机器学习理论介绍

news2024/11/24 8:27:44

前言

图灵奖获得者、著名数据库专家James Gray 博士观察并总结人类自古以来,在科学研究上,先后历经了实验、理论、计算和数据四种范式。

在这里插入图片描述

科学研究第一种范式:实验

在古代,人们的认知水平较低,对事物的认识很大程度上是主观的。比如,地心论,限于人们的认知水平和科技水平,人民对事物的认知是主观定义的,并没有任何实践可以证明。直到,1590年,伽利略在比萨斜塔做两个铁球同时落地实验,实验见证了重量不同的两个铁球同时落地,推翻了亚里士多德物体下落速度与物体重量成正比的结论,实验纠正了持续了接近2000年的错误结论。

科学研究第二种范式:理论

实验科学的研究会受到当时条件的限制,比较难以完成对自然现象更精准的理解,比如:我们想知道地球的质量,基于我们目前的设备,是无法通过实验来称量地球的质量

所以随着科学的进度,我们开始采用数学,几何,物理等来构建问题的模型和解决的方案;很多理论的证明和运用对人类的生活和思想产生了很大的影响,并且在很大程度上推动了人类进步和发展

科学研究第三种范式:计算

1946年人类历史上第一台计算机ENIAC的诞生,人类社会步入了计算机的时代,人类的科学研究进入了以计算为中心的全新的时期,在实际应用中,计算科学主要用于对各个科学问题进行计算机的模拟和其他形式的计算,通过设计算法,并通过编写相应的程序,然后输入计算机去运行,我们就可以借助于计算机的高速的运算能力去帮我们解决各种各样的问题,而且计算机存储容量大,计算速度快,精度高,可重复执行这些特点,所以是科学研究的利器,极大推动了人类社会的发展。

科学研究第三种范式:大数据

大数据时代,以数据为中心

随着数据日已累计,其宝贵的价值日益得到体现,物联网和云计算的出现更是促成了事物从量变到质变的转变。从此人类社会开启了全新的大数据时代。这时计算机不仅仅是做一次模拟仿真,而且还能进行分析总结,并且帮助我们得到结论。在大数据环境下,一切都是以数据为中心,从数据中发现问题,解决问题,从而真正体现数据的价值,而且大数据也称为我们科学工作的保障,从数据中挖掘未知的模式和有价值的信息,从而更好的服务于生产和生活,来推动科技的进步和社会的创新

虽然第三和第四范式都是利用计算机来进行计算,但是他们是有本质区别的

在第三种范式中,一般是先提出可能的理论,在搜集数据,然后通过计算来验证
第四种范式,现有大量已知的数据,然后通过计算机得出之前未知的理论,比如我们比较熟悉的啤酒尿布的案例

基本概念

背景

1952年一位IBM的工程师Arthur Samuel研发了一个西洋跳棋程序,然后一些知名的棋手都输给了这个程序,有点像阿法狗。后来1956年,这位工程师受邀,在达沃斯会议上介绍自己的这项研究,第一次提出了“Machine Learning”这个词汇, Arthur Samuel也因为被称为“机器学习之父”。

定义

Arthur Samuel将“Machine Learning”定义为`“不需要确定性编程就可以赋予机器某项技能的研究领域“,让机器像人一样学习起来。
进过不断的发展和总结,最终机器学习的定义为:

机器学习,是一门研究如何让计算机从历史数据中去更好地学习,从而产生一个优秀模型可以提升系统某项性能的学科。但实际应用远远不是研究算法这么简单。

相关内容

在这里插入图片描述
人工智能包括弱人工智能和强人工智能;

弱人工智能(Artificial Narrow Intelligence)是无意识的计算智能或者擅长某一方面的人工智能。目前人们所能接触到的人工智能产品都属于弱人工智能产品,如苹果公司的Siri、谷歌的AlphaGo等。因为是Siri只具备语音识别功能和自然语言回答的能力,AlphaGo也只是围棋领域的世界冠军。
强人工智能(Artificial General Intelligence)即机器对任何问题都具有智能处理的能力。强人工智能也是人工智能的主要研究目标,希望机器能够像人类一样进行思考、计划、解决问题、理解复杂理念,能够快速学习并从经验中学习和总结等。也正因如此,创造强人工智能要比创造弱人工智能难得多。

而机器学习是实现人工智能的方式。强化学习和深度学习都属于机器学的范畴,都是机器学习的技术。

概念区分

在我们学习中经常会遇到几个相近的概念:机器学习、数据挖掘和数据分析。他们之间有什么区别和联系呢?

机器学习:从数据中学习和提取有用的信息,不断提升机器的性能。
数据挖掘:从大量数据中,通过多种方法挖掘信息的过程。
数据分析:根据目的处理分析数据,提取有价值的信息,形成有效结论的过程。

在这里插入图片描述
数据分析重在根据目的形成结论
数据挖掘是一种应用,使用挖掘技术来挖掘信息
机器学习可以认为是数据挖掘的理论知识或者前提。

基本分类

机器学习按照学习方式分类可分为监督学习、无监督学习、半监督学习、强化学习
学习中最常见的是监督学习和无监督学习
在这里插入图片描述
监督学习:

  • 有标记的训练数据是指每个训练实例都包括输入和期望的输出。一句话:给定数据,预测标签。
  • 常见算法:朴素贝叶斯(Naive Bayes)、决策树(Decision Tree)、Logistic回归(Logistic Regression)、K近邻(K-Nearest Neighbours)、支持向量机(Support Vector Machine)

无监督学习:

  • 最典型的无监督学习就是聚类分析,它可以在探索性数据分析阶段用于发现隐藏的模式或者对数据进行分组。一句话:给定数据,寻找隐藏的结构。
  • 常见算法:K均值聚类、Mean-Shift、DBSCAN、主成分分析(Principal Component Analysis ,PCA)、奇异值分解(Singular Value Decomposition ,SVD)、潜在狄里克雷特分配( Latent Dirichlet allocation, LDA)

在这里插入图片描述

基本流程

在这里插入图片描述
机器学习是一个很大的概念,作为一个机器学习工程师,需要从数据集成、数据预处理、数据探索分析、特征工程、模型训练、验证优化、线上任务部署和最终结果的应用都要了解。

数据集成:是指将数据从不同的业务系统或者存储方式中集中整合成需要的数据。
数据预处理:主要是对数据的清洗,包括缺失值、重复值、数据格式等尽心处理。
EDA:数据探索分析,主要是分析数据、认识数据,看看数据的质量以及数据内容,对于接下来的特征工程提供帮助。
特征工程:是将原始数据转化成更好的表达问题本质的特征的过程,使得将这些特征运用到预测模型中能提高对不可见数据的模型预测精度。这里面包含的内容较多,在下一节专门讲。
模型训练:主要选取相应的机器学习算法进行训练。不同的场景需要用不同的算法。
验证优化:包括A/B test验证、模型评估等。
任务:训练完成的模型,需要发布到线上进行调用,一般是集成到用户页面或者API调用,实现实时预测。
结果:最红预测的结果需要返回到业务进行使用才能发挥价值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/100347.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

React redux使用

1.redux是什么 redux是一个专门用于状态管理的JS库(不是react插件库) 它可以用在react,angular,vue等项目中,但基本与react配合使用 作用:集中式管理react应用中多个组件共享的状态 2.为什么要使用redux 某个组件的状态&#…

Windows命令行到底有多强大?

程序员宝藏库:https://gitee.com/sharetech_lee/CS-Books-Store DevWeekly收集整理每周优质开发者内容,包括开源项目、资源工具、技术文章等方面。 每周五定期发布,同步更新到 知乎:Jackpop。 欢迎大家投稿,提交issu…

高可用系列文章之三 - NGINX 高可用实施方案

前文链接 高可用系列文章之一 - 概述 - 东风微鸣技术博客 (ewhisper.cn)高可用系列文章之二 - 传统分层架构技术方案 - 东风微鸣技术博客 (ewhisper.cn) 四 NGINX 高可用实施方案 高可用的实施, 主要步骤概述如下: NGINX 的安装及基础配置负载均衡层高可用: NGINX Keepali…

在BSV上运行深度神经网络

我们已经实现了一个用于手写数字分类的深度神经网络。已经训练好的模型完全在链上运行。它使用手写数字的 MNIST 数据集进行离线训练。该模型采用 28x28 灰度像素的图像并输出 0 到 9 的数字。 深度神经网络简介 人工神经网络是受生物神经网络启发而构建的。网络通过接触大量带…

[附源码]计算机毕业设计Python的小说阅读系统(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

智云通CRM:如何正确的提出报价?(一)

智云通CRM认为完成销售包括三个步骤:提出报价,解决最后问题,讨论下一步方案。 第一步是提出报价,首先我们讨论如何将提出报价。 在与客户讨论费用问题时,我们应当向客户提出两个不同报价,一个销售方案对应…

前缀和与差分算法

目录 一 前缀和 算法定义 算法分类 算法作用 一维前缀和 问题引入 暴力法: 前缀和法: 算法原理 问题解答 算法实践 江山白日梦 题目描述 题目解答 二维前缀和 问题引入 算法原理 问题解答 二 差分 算法定义 算法分类 算法作用 一…

torch.chunk与nn.Conv2d groups

torch.chunk 切分 假如特征x大小为:32x64x224x224 (BxCxHxW) q torch.chunk(x, 8, dim1) x是要切分的特征,8是要切分成几块,dim是指定切分的维度,这里等于1,就是按通道切分 就会将其按照通道,切分为8块&a…

【服务器数据恢复】服务器双循环riad5数据恢复案例

服务器数据恢复环境: 一台使用NTFS文件系统的服务器; 7块硬盘组成了一组raid5磁盘阵列。 服务器故障&初检: raid5磁盘阵列磁盘故障离线导致服务器瘫痪。用户在处理掉线磁盘时只添加新的硬盘rebuild,并没有将掉线的3块硬盘从阵…

CARLA在Windows上的安装与运行

0.写在前面 其实官方文档写的很详细,所有细节都有涉及,不过暂时没有中文版。本文写作目的,一个是作为自己的操作笔记,二个是帮助一些更习惯看中文版本的一些朋友 https://carla.readthedocs.io/en/latest/start_quickstart/ 这是…

Sentinel-1产品定义与产品格式(CSDN_0001_20220904)

(文章编号:CSDN_0001_20220904) 目录 1. 概述 1.1 地球物理测量 1.2 极化 1.3 干涉 2. 产品级别和产品类型 2.1 Level-0 2.2 Level-1 2.1.1 SLC 2.1.2 GRD 2.2 Level-2 3. 产品文件 3.1 组织结构 3.1.1 Annotation measuremen…

MySQL(十二):阿里巴巴 MySQL binlog 增量订阅消费Canal组件

https://github.com/alibaba/canal 使用 Binlog 实时更新Redis缓存 Mysql 服务器准备Canal 服务器准备Canal Client测试 基于 Binlog实现跨系统实时数据同步 更换数据库实现比对和补偿程序 安全地实现数据备份和恢复 使用 Binlog 实时更新Redis缓存 Mysql 服务器准备 查看当…

毫米波电路的PCB设计和加工(第一部分)

毫米波应用要点——相位精度受许多变量影响 从自动驾驶车辆上使用的防碰雷达系统到第五代(5G)高数据速率新无线(NR)网络技术,毫米波(mmWave)电路的应用领域正在快速增长。许多应用正在促进工作…

锐浪报表 Grid++Report 导出其它格式文件

锐浪报表 GridReport 导出其它格式文件 GridReport控件设计的报表,不仅可以打印,还可以导出8种格式的报表文件。 在GridReport的打印浏览中,有指定导出文件的对话框: 但是,软件的设计中,往往需要设计出&am…

黑*头条_第5章_延迟任务精准发布文章(新版)

黑*头条_第5章_延迟任务精准发布文章(新版) 文章目录黑*头条_第5章_延迟任务精准发布文章(新版)1)文章定时发布2)延迟任务概述2.1)什么是延迟任务2.2)技术对比2.2.1)DelayQueue2.2.2)RabbitMQ实现延迟任务2.2.3)redis实现3)redis实现延迟任务4)延迟任务服务实现4.1)搭建heima-l…

༺ཌ༈学编程到底学那种语言呢?༈ད༻

说到底,编程语言只是工具,就像螺丝刀一样。在需要使用圆头螺丝刀的时候,你就不能一意孤行使用一字螺丝刀。你需要根据实际的情况做决定。没有任何一种编程语言能够取代一切,成为终极编程语言。你需要根据当前岗位的要求&#xff0…

分布式数据库中间件Mycat介绍

从Cobar到Mycat,从闭源到开源,作为一个开源的分布式数据库中间件,Mycat已经被众多开源项目使用。本文简要介绍下Mycat的特性、基本架构以及分库分表和读写分离的配置。 1、Mycat基本介绍 Mycat是一个开源的分布式数据库中间件,前…

nodejs+vue044高校学生信息管理系统

大学生信息综合管理系统分三个身份登录,一个学生,一个管理员。学生只能修改密码,而管理员可以修改任何信息。老师可以查看自己的课表和校园活动. 管理员模块主要有老师管理,添加老师,班级管理,班级添加&…

[附源码]Python计算机毕业设计Django文具商城购物系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

Educational Codeforces Round 140

C. Count Binary Strings 大意: 要求满足条件的01串的个数 要求如下 给定一个上三角矩阵,对于矩阵的元素i,j,a[i][j]有一下三个取值: 1:i-j之间只能有一种元素 2:i-j之间只能有两种元素 0: i-j之间无所谓 思路…