python与机器学习1,机器学习的一些基础知识概述(完善ing)

目录

1 AI ,ML,DL,NN 等等概念分类

1.1 人工智能、机器学习、深度学习、神经网络之间的关系:

1.2 人工智能的发展

2 ML机器学习的分类:SL, USL,RL

2.1 机器学习的分类

2.2  具体的应用举例

2.3 数据分类

3 关于阈值θ和偏移量b的由来

4 不同的激活函数

5 关于回归

6 关于分类

7 关于误差和梯度下降

8 最小二乘法修改θ

9  和矩阵计算,矩阵内积点乘的关系

10 深度学习

11 参考书籍


1 AI ,ML,DL,NN 等等概念分类

1.1 人工智能、机器学习、深度学习、神经网络之间的关系:

  • 人工智能(Artificial Intelligence)是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科。
  • 机器学习(Machine Learning)是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能。
  • 深度学习(Deep Learning)是机器学习领域中一个新的研究方向,它被引入机器学习使其更接近最初的目标——人工智能。
  • 神经网络(Neural Network)是一种模拟人脑的神经网络以期望能够实现类人的人工智能机器学习技术,它是深度学习的基础。

下面这个图,是来自吴恩达的图

1.2 人工智能的发展

  • 老的AI,逻辑
  • 中间AI,
  • 现在AI,数据

2 ML机器学习的分类:SL, USL,RL

2.1 机器学习的分类

  • 监督学习(Supervised Learning): 教计算机如何去完成任务。它的训练数据是有标签的,训练目标是能够给新数据(测试数据)以正确的标签。
  • 无监督学习(Unsupervised Learning):让计算机自己进行学习。它的训练数据是无标签的,训练目标是能对观察值进行分类或者区分等。
  • 强化学习(Reinforcement Learning):智能体以“试错”的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏

2.2  具体的应用举例

  • 监督学习算法:线性回归、Logistic回归、神经网络、支持向量机等。
  1. 回归,regression,用来预测连续值的输出,用来处理连续数据,如事件序列数据,比如按天记录的数据
  2. 分类,classification,是预测离散值输出
  • 无监督学习算法:聚类、降维、异常检测算法等。
  1. 聚类,clustering,是无监督学习,训练数据无标签
  • 特殊算法:推荐算法等。

下面这个图,是来自吴恩达的图

2.3 数据分类

  • 数据分为2部分
  • 一部分训练数据
  • 一部分,验证数据

3 关于阈值θ和偏移量b的由来


比如很多信息传入可以表达为

  • WX=w1x1+w2x2+....+wnxn 
  • 其中w表示权重,x表示信息/输入信息,n表示输入信息个数
  • 也有的写成 θX=θ1x1+θ2x2+....这个是输入值,都是一个意思

从神经网络的模型来说

如果w1x1+w2x2+....>θ     就会激活
如果w1x1+w2x2+....<=θ  就不激活

那么 w1x1+w2x2+....=θ就是判断公式
可以变形为
w1x1+w2x2+....=θ
w1x1+w2x2+....-θ=0
而尽量都取正数,就是
w1x1+w2x2+....+(-θ)=0
用系数b代替-θ
w1x1+w2x2+....+b=0

所以这个b就可以认为是偏移量,
如果把b看成一个虚拟的输入信息,那么b的权重就是1
w1x1+w2x2+....+1*b=0

w1x1+w2x2+....+w0*b=0

w0*b+w1x1+w2x2+....wnxn=0

转成矩阵形式

WT*X=0

转成点乘形式,W*X的内积点乘结果

W*X=w0*b+w1x1+w2x2+....wnxn

4 不同的激活函数

设置函数的结果在0-1之间,天生的符合概率的[0,1] 设计
一个最简单的函数,分段函数图形是直的,但是上下限也是[0,1]

  • f(x)=0, if x<=0
  • f(x)=1, if x>0

一个比较连续的, sigmod,分段函数图形是曲线,但是上下限也是[0,1]
 sigmod,比较经典

  • f(x)=1/(1-e^(-x))
  • 其中 (e^(-x))' = -e^(-x) ,可以通过复合函数求导推出

为了不同情况下计算方便

还有的函数,分段函数图形是直的,但是上下限也是[-1,1]

  • f(x)=1, if x>0
  • f(x)=-1, if x<=0

类似的例子比如

1/2Σi=1~n(Yi-f(x)i)^2 ,加上1/2 就是为了微分结果导数更简单

5 关于回归

回归

线性回归,就是一次回归,表现为一条直线,包括1元,多元等1次回归

非线性回归,比如2次回归函数

  • 有1次回归函数,其中包含1元的,2元等等,如果是多元的需要求偏导数
  • 一般来说,一次回归函数都是线性函数
  • 有2次回归函数,其中包含1元的,2元等等,如果是多元的需要求偏导数
  • 一般来说,二次回归函数都是曲线

选择什么样的函数有差别,并不是 元的次数越高越好

  • 如果函数次数太低,拟合不够,可以用精确度变化曲线,精确度和回归度比较
  • 如果函数次数太高,可能是过拟合,可能训练数据拟合好,但是验证数据拟合不好,

6 关于分类

分类算法

  • Logistic回归,是分类方法
  • 线性可分
  • 线性不可分(比如是曲线等)


假设W*X=w1x1+w2x2
如果W*X=w1x1+w2x2=0
假设w1 w2=1
x1+x2=0

W*X=|W||X|cosθ 
其中cosθ 决定点乘内积符号 90-270,cos为负数,使得内积为负的向量
使得内积为正的向量

内积为正,两者相似
内积为负数,两者不相似
内积为0,两者垂直,完全不相关

分类是把 f(x) 做成了一个概率函数

可以看作是

  • f θ(x)>0.5 时   y=1
  • f θ(x)<=0.5 时   y=0

 其实就是

  • θTX>0 时   y=1
  • θTX<=0 时   y=0

7 关于误差和梯度下降


误差函数,感觉很类似于方差函数
(y-f(x))^2


最梯度下降
采用最小二乘法? 可能会陷入局部最优


随机梯度下降
随机选择一些?一定能达到全局最优


随机梯度下降

最速下降,因为事先选取点的差别,可能陷入局部最优
而随机梯度下降,因为全局随机,理论上不会陷入局部最优,一定会找到全局最优
想象不规则的sinx这种函数曲线

1个随机数量
小批量随机梯度下降

8 最小二乘法修改θ

y=ax+b
y=θ0+θ1*x

根据一些原始数据,
大概200 → 500
但是随便假设θ0=1,θ1=2
fθ(x)=f(x)=y=1+2x
当时200 → 201
可见参数θ0=1,θ2=2 假设的不好


最小二乘法修改θ
E(θ)=1/2*∑(y-f(x))^2
E(θ)=1/2*∑(yi-f(x)i)^2

跟方差一样
还要去掉误差的正负影响,而是考虑误差与均值的差距的绝对值。
所以用平方

用平方,比abs更容易求导数
1/2也是为了求二次方的导数故意设计的,1/2或者2 只会改变函数形状的扁平还是高起,一般来说y=f(x) 值越大越高,值越小越扁平

所以最速下降法,就是求导数,也就是微分
导数函数求出来后,导数=0时的x 对应就是f(x)的极值

方法1 加上考虑函数的性质
比如 f(x)=x^2+2x+1这种往下凸出的,就是对应的最小值

方法2 比如 f(x)=x^2+2x+1 导数 f(x)'=2x+2
因此,最小值是x=-1对应
而且,
x>-1,f(x)'=2x+2>0  为正,f(x)递增
x<=-1,f(x)'=2x+2<0  为负,f(x)递减
所以
沿着与导数的符号相反的方向移动x,f(x) 就会朝着最小值前进

最速下降,梯度下降法
x=x-la*df(x)/dx
x=x-学习率*导数
学习率的选择要尽量小点,否则就会不容易收敛,或无法收敛

其实这就是更新的θ
如果f(x)=fθ(x1,x2,x3)=θ0+θ1*x+θ2*x^2 =θ*X
θ0=θ0-la*Σ(f(x)-y)
θ1=θ1-la*Σ(f(x)-y)x
θ2=θ2-la*Σ(f(x)-y)x^2
多变量,偏导数

如果f(x)=fθ(x1,x2,x3)=θ0*x0+θ1*x+θ2*x^2 =θ*X
变成2个向量点乘


9  和矩阵计算,矩阵内积点乘的关系

 w1x1+w2x2+.....+wnxn
天生适合用矩阵计算
 w1x1+w2x2+.....+wnxn=W*X

考虑到 偏移量(其实是和阈值有关系)


 1*b+w1x1+w2x2+.....+wnxn=W*X
可变成
列向量 (1,w1,w2...wn) ,转行向量 (1,w1,w2...wn) T
列向量 (b,x1,x2...xn) 

10 深度学习

输入层,中间层,输出层

中间层的宽度
中间层的层数,深度学习?

加宽度相对容易
加深度就会很难?

11 参考书籍

《机器学习的数学》
《深度学习的数学》
《程序员的AI书》

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

VMware虚机重启后静态IP不生效

配置好一套虚机之后&#xff0c;因为重启电脑&#xff0c;导致虚机的静态ip配置不生效&#xff0c;xshell连接不上虚机。以下是自查和解决方案&#xff1a; 1.使用su -进入root用户 2.查看打开虚机的teminal窗口查看配置的ip文件&#xff1a;vim /etc/sysconfig/network-script…

使用Accelerate库在多GPU上进行LLM推理

大型语言模型(llm)已经彻底改变了自然语言处理领域。随着这些模型在规模和复杂性上的增长&#xff0c;推理的计算需求也显著增加。为了应对这一挑战利用多个gpu变得至关重要。 所以本文将在多个gpu上并行执行推理&#xff0c;主要包括&#xff1a;Accelerate库介绍&#xff0c;…

【APUE】进程间通信

目录 一、管道 1.1 匿名管道 1.2 命名管道 二、XSI IPC 2.1 概述 2.2 消息队列 2.2.1 msgget 2.2.2 msgsnd 2.2.3 msgrcv 2.2.4 msgctl 2.2.5 代码示例 2.3 信号量数组 2.3.1 semget 2.3.2 semop 2.3.3 semctl 2.3.4 代码示例 2.3 共享内存 2.3.1 shmget…

PVE中CT容器安装openwrt X86的极简方法

下载推荐&#xff1a;https://openwrt.ai/ 使用环境PVE8.0&#xff0c;openwrt是以上网址的最新版&#xff0c;内涵及其丰富组件。 问题来源&#xff1a; 在PVE虚拟机可以很方便的使用img文件&#xff0c;转换qm 成一个硬盘文件&#xff0c;加入到虚拟机也就完成了&#xff0c…

《git小白笔记·一》记住这些Git使用就够了

到底选gitlab还是选github&#xff1f;&#xff1a; 只要掌握这些git命令完全够用&#xff1a; &#xff08;1&#xff09;首先我们先下载一个git&#xff0c;下载完成后属于右键会看到git GUI here和git Bash here&#xff0c;我们常用git Bash here&#xff0c;打开Git我们看…

台灯哪种灯光对眼睛好?精选高品质的护眼台灯

近几年越来越多家长开始重视孩子的视力健康问题&#xff0c;要知道如今我国儿童青少年的近视率已经达到了52.7%&#xff0c;也就是说平均每十个儿童青少年中就有五个是存在视力问题的&#xff0c;而且近视的人群是越往高年级的学生占比越多。不过目前也发现了不少低年级的孩子出…

嵌入式总线技术详解

1. 总线概述 1.1 总线定义 总线&#xff08;Bus&#xff09;是计算机各种功能部件之间传送信息的公共通信干线它是由导线组成的传输线束&#xff0c;按照计算机所传输的信息种类&#xff0c;计算机的总线可以划分为数据总线、地址总线和控制总线&#xff0c;分别用来传输数据…

Python开发——工具篇 Pycharm的相关配置,Python相关操作 持续更新

前言 本篇博客是python开发的工具篇相关&#xff0c;介绍pycharm的使用和相关配置&#xff0c;收录python的相关操作&#xff0c;比如如何启动jupyter。 目录 前言引出Pycharmpycharm如何不同等级日志显示不同颜色设置不同pycharm的python环境 Python操作如何启动Jupyter 总结…

电脑资料删除后如何恢复?3个简单方法轻松恢复文件!

“我平常喜欢在电脑上保存很多学习资料&#xff0c;但由于资料太多&#xff0c;在清理电脑时我可能会误删一些比较有用的资料。想问问大家电脑资料删除后还有机会恢复吗&#xff1f;应该怎么操作呢&#xff1f;” 在数字化时代&#xff0c;很多用户都会选择将重要的文件直接保存…

如何在安卓Termux中使用SFTP文件传输并结合内网穿透工具实现远程传输

文章目录 1. 安装openSSH2. 安装cpolar3. 远程SFTP连接配置4. 远程SFTP访问4. 配置固定远程连接地址 SFTP&#xff08;SSH File Transfer Protocol&#xff09;是一种基于SSH&#xff08;Secure Shell&#xff09;安全协议的文件传输协议。与FTP协议相比&#xff0c;SFTP使用了…

Java(九)(多线程,线程安全,实现线程的方法,线程同步,线程池,并发和并行,线程的六种状态)

目录 多线程 线程 实现线程的方法 方法一:继承Thread父类 方法二:实现Runnable接口 方法三:Callable接口和FutureTask类来实现 Thread方法 线程安全 线程同步 同步代码块 同步方法 Lock锁 线程池 线程池对象的创建方式一: 线程池处理Runnable任务 线程池处理Cal…

Linux概述

Linux概述 1、操作系统 ​ 定义&#xff1a;操作系统(Operating System&#xff0c;简称OS)是管理计算机硬件与软件资源的计算机程序 ​ 作用&#xff1a;是把计算机系统中对硬件设备的操作封装起来&#xff0c;供应用软件调用&#xff0c;也是提供一个让用户与系统交互的操…

数据安全建设的六大关键步骤

随着数字化时代的到来&#xff0c;数据安全已经成为企业和社会组织必须面对的重要问题。数据泄露、网络攻击等安全事件频发&#xff0c;给个人隐私、企业利益和国家安全带来了严重威胁。因此&#xff0c;加强数据安全建设已成为刻不容缓的任务。以下是数据安全建设的六大关键步…

“SRP模型+”多技术融合在生态环境脆弱性评价模型构建、时空格局演变分析与RSEI 指数的生态质量评价及拓展

近年来&#xff0c;国内外学者在生态系统的敏感性、适应能力和潜在影响等方面开展了大量的生态脆弱性研究&#xff0c;他们普遍将生态脆弱性概念与农牧交错带、喀斯特地区、黄土高原区、流域、城市等相结合&#xff0c;评价不同类型研究区的生态脆弱特征&#xff0c;其研究内容…

Vue2 若依框架头像上传 全部代码

<template><div><div class"user-info-head" click"editCropper()"><img v-bind:src"options.img" title"点击上传头像"class"img-circle img-lg" /></div><el-dialog :title"title&…

没AI背景的高级产品经理,可能快做不下去了

‍ 一、现状 1个多月前&#xff0c;我在给某高P团员“1v1咨询”时提到&#xff0c;虽然目前各家AI 2.0公司里&#xff0c;高级坑位都被占了&#xff0c;但春节前后可能会空出来一些。 底层原因在于&#xff0c;今年有一些AI背景较少的高级产品经理&#xff0c;趁热跳到AI公司&a…

高防CDN可以起到什么作用?

高防CDN相对于普通的CDN加速&#xff0c;除了具备基础的加速功效外&#xff0c;高防CDN在每一节点上均有相应配置的防御功效&#xff0c;不仅具备了隐藏源站不被攻击的优势&#xff0c;也具备了访问加速&#xff0c;多节点防御的功效。随着互联网的不断发展&#xff0c;网络上的…

error “you should set MAGICKCORE_HDRI_ENABLE

最近做一个项目需要配置ImageMagick库&#xff0c;本项目配置环境如下&#xff1a; ImageMagick version 7 Operating system, version and so on ubuntu 20.04 Description error "you should set MAGICKCORE_HDRI_ENABLE 查阅网上的资料&#xff1a; 默认的是DMAGICKC…

“华为不造车 只帮车企造好车“ 那么华为到底造不造车

大家好&#xff0c;我是极智视界&#xff0c;欢迎关注我的公众号&#xff0c;获取我的更多前沿科技分享 邀您加入我的知识星球「极智视界」&#xff0c;星球内有超多好玩的项目实战源码和资源下载&#xff0c;链接&#xff1a;https://t.zsxq.com/0aiNxERDq "华为不造车&a…