机器学习-语言分析
机器学习
1.1人工智能概述
1.2.1 机器学习与人工智能,深度学习
深度学习->机器学习->人工智能;
人工智能:1950,实现自动下棋,人机对弈,达特茅斯会议->人工智能的起点,1956年8月。克劳德-香农(信息论的创始人)内容:用机器来模仿人类的学习能力。持续了两个多月。1956被称为人工智能元年。
机器学习:最开始的垃圾邮件的处理过滤,人工神经网络,深度神经网络。
深度学习:2010年开始,在图像识别领域中表现突出。
1.1.2 机器学习,深度学习有什么作用:
1. 传统预测
店铺销量预测,量化投资,广告推荐
2. 图像处理
交通标志检测,人脸识别
3.自然语言处理
翻译,文本分类,情感分析,自动聊天,文本检测,智能写文章,智能客服
1.2什么是机器学习
1.2.1 定义:
从数据中学习,模型,解决问题。
1.2.2 数据集的构成
特征值 + 目标值 = 经验规律
样本:所有数据,有的数据可以没有目标值。
1.3 机器学习算法分类
1.3.1
监督学习
目标值:类别 = 分类问题
目标值:连续性的数据 = 回归问题
无监督学习
目标值:无 = 无监督学习
1.3.2 机器学习算法分类
1 监督学习: 有目标值的算法
分类:k-近邻算法,贝叶斯分类与随机分类,逻辑回归,回归,线性回归,岭回归。
2 无监督学习: 无目标值的算法
聚类 k-means
1.4 机器学习开发流程
1. 原始数据
2. 数据处理
3. 数据特征工程(训练数据和测试数据)
(算法进行学习)
4. 机器学习算法训练 – 模型
5. 模型评估
6. 应用
1.5 学习框架和资料介绍
1. 算法是核心,数据与计算是基础
2. 找准定位
算法工程师做算法
+ 分析很多数据
+ 分析具体业务
+ 应用常见算法
+ 特征工程、调参数、优化
3. 怎么做?
1.入门
2.书籍资料
3.《机器学习》 – 周志华 – 西瓜书
《统计学习方法》 – 李航
《深度学习》 – 花书
1.5.1 机器学习库与框架
Pytorch
Caffe2
2.1 数据集
2.1.1 可用数据集
不可用数据集
公司内部 百度
数据接口 花钱
数据集 政府机构、
可用数据集
Sklearn
Kaggle(大数据竞赛平台)
Uci
{
www.kaggle.com/datasets
UCI Machine Learning Repository
scikit-learn: machine learning in Python — scikit-learn 0.16.1 documentation
}
1 Scikit-learn 工具介绍
安装:
pip install Scikit-learn==0.19.0
2 sklearn的使用

4 sklearn数据集的使用
鸢尾花数据集的
特征值:花瓣,花萼的长度,宽度
目标值:setosa,verctolor,virginica
数据集的返回值:
Load与fetch的返回的数据类型为datasets.base.Bunch(字典格式):


- data:特征数据数组,二维数组[a,b]


- target:标签数组


- DESCR:数据描述


- Feature_names:特征名(手写数据,新闻数据,回归集数据没有)

- Target_names:标签名

2.1.3 数据集的划分(一部分用作训练,一部分用于验证模型的准确度)
测试集占20%~30%
如何实现:

2.2 特征工程介绍
算法:特征工程
2.2.1 为什么需要特征工程
数据和特征决定了算法上限,而算法是无限逼近上限。
2.2.2 什么是特征工程
会直接影响机器学习的效果
Sklearn 特征工程
Pandas 数据清洗,数据处理
特征工程包含的内容
(1)特征提取/特征抽取
机器学习算法 – 统计方法 – 数学公式(文本类型的数据转化为二进制文件)
类型 -> 数值
- 将任意数据转化为可用于机器学习的数字特征
- 字典特征提取(特征离散化)
- 文本特征提取
- 图像特征提取(深度学习)
- 特征提取API
- Sklearn.feature_extraction
(2) 字典特征提取
作用:对字典数据进行特值化
方法:


Sparse默认为True因此需要更改sparse的值


元组为非0值的位置:稀疏矩阵(将非0值按位置表示出来)避免0的存储空间溢出,提高加载效率

特征提取:
应用场景:
1)数据集中有很多类别特征
将数据集的特征转化为字典类型
DictVectorizer转化
2)本身的数据为字典类型
2.3.3 文本特征提取
单词作为特征
句子,短语,字母(用单词合理,用句子作为特征不合理,特征明确)
特征:特征词(数值作为什么)
方法1:
English

Chinese:

将短语作为特征

Ps:不支持单个中文字

中文分词器


方法2:
TF-IDF ->重要程度
两个词 “经济“, ”非常“
1000篇文章作为语料库
100-非常
10-经济
文章A (100词) :10次“经济“TF-IDF = 0.2
Tf:10 / 100 = 0.1
Idf:lg 1000 / 10 = 100 = 2
文章B (100词) :10次“非常“TF-IDF = 0.1
Tf:10 / 100 = 0.1
Idf: log 10 1000 / 100 = 1
方法:


2.4.1 特征预处理
特征预处理:通过转换函数将特殊数据转化为可执行算法的模型,归一化,标准化。
为什么要归一化,标准化?
无量纲化,防止不同规格的数据转化为同一规格,使得算法学习不到想要的特征
方法:

归一化中出现异常值:最大值,最小值(健壮性较差)
由此引入标准化数据(均值为0,标准差为1)
很好的排除异常值的影响
标准差:集中程度,由于具有一定的数据量,少量的异常点对整体的结果影响不大
方法:

适用于当前嘈杂的大数据环境
2.5.1 特征降维
降维:降低维度
Ndarray
数据嵌套的层数
0维:标量
1维:向量
2维:矩阵
N维:
不降低嵌套层数
对二维数组进行处理:降低特征的个数(列数)
降维:在特定情况下降低特征的个数,得到一组“不相关的”的数据
不相关:特征与特征之间不相关;
可以减少很多冗余的数据(特征学习)
2.5.2降维的两种方法
特征选择
Filter过滤式
方差选择法:降低方差特征过滤
相关系数法:特征与特征之间的相关程度
Embeded嵌入式
决策树
正则化
深度学习
方法:
设置临界值,低于临界值的删除

皮尔逊相关系数:
0.9942 取值 -1, 1)
正值:正相关
负值:负相关
方法:

特征与特征的相关性很高
选取其中一个
加权求和,作为一个新的特征
主成分分析
2.6.1 主成分分析
数据的压缩降低数据的维数 ,损失少量信息
降维的同时不能损失信息(损失少量信息)
方法:
小数:减少%多少的信息
整数:减少到多少特征

2.6.2 探究用户对物品喜好的细分降维
用户与物品类别的关系
用户 物品类别
- 合并不同的表:将用户与物品类别放入同一张表中
具体找到变量之间的关系
- 找到关系,交叉表和透视表
- 特征冗余过多,PCA降维
3.1sklearn转换器和估计器
转换器
实例化,调用fit_transform(合成的算法)
fit()做计算:每一列的平均值
transform()做转换
估计器:
所有的算法分类至估计器之中
- 实例化estimator
- estimator.fit(x_train, y_train)计算-模型生成
- 模型评估:
- 直接比对真实值和预测值
- Y_predict = estimator.predict(x_test)
- 计算准确率
- 将测试集的目标值赋予
- 直接比对真实值和预测值
3.2 k_近邻算法:
KNN算法:
基本原理:
根据邻居来推断自己的类别
样本在空间中的k个最近相似的值则判定样本的位置
K = 1 (容易受到异常值的影响)
如何确定谁是邻居?
计算距离:
距离公式:欧式距离(平方),曼哈顿距离(绝对值),明可夫斯基距离(距离公式的集合)
电影类型的分类:
与成分距离最近的点的距离,K的取值任意去取,找未知电影的位置就可以解决,但是K的取值,可以取的很多,取得一半的结果,无法确定,训练集中再加入
K值过大会,容易分错,样本不均衡的时候
K值取的过小,容易受到异常值的影响
无量纲化处理:标准化的处理
3.2.2 K_邻近算法API
方法:
- 获取数据
- 数据集划分
- 特征工程
- 标准化
- 降维(不需要)
- KNN数据预估流程
- 模型评估
优点:简单易于理解
缺点:
- 选择好K值分类,计算量很大,数据量小的时候可以使用


模型选择与调优
K值的取值是不一定的
如何选择合适的K值 (交叉验证的)
什么是交叉验证?
将训练数据,再分为训练和验证集,分成四份,每一次更换不同的验证集(四折交叉验证)
超参数网格搜索:
K的取值
{1,3,5,7,9,11}
遍历每一个位置:自动去写,省去遍历的过程
K值调优
方法:
相关文章:
机器学习-语言分析
机器学习 1.1人工智能概述 1.2.1 机器学习与人工智能,深度学习 深度学习->机器学习->人工智能; 人工智能:1950,实现自动下棋,人机对弈,达特茅斯会议->人工智能的起点,1956年8月。克劳…...
Oracle 常见索引扫描方式概述,哪种索引扫描最快!
一.常见的索引扫描方式 INDEX RANGE SCANINDEX FAST FULL SCANINDEX FULL SCAN(MIN/MAX)INDEX FULL SCAN 二.分别模拟使用这些索引的场景 1.INDEX RANGE SCAN create table t1 as select rownum as id, rownum/2 as id2 from dual connect by level<500000; create inde…...
字符串(3)_二进制求和_高精度加法
个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 字符串(3)_二进制求和_高精度加法 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记,欢迎大家在评论区交流讨论💌 目…...
《神经网络:智能时代的核心技术》
《神经网络:智能时代的核心技术》 一、神经网络的诞生与发展二、神经网络的结构与工作原理(一)神经元模型(二)神经网络训练过程 三、神经网络的应用领域(一)信息领域(二)…...
pdf内容三张以上转图片,使用spire.pdf.free
一、依赖 <spire.pdf.free.version>9.13.0</spire.pdf.free.version><itextpdf.version>5.5.13</itextpdf.version><dependency><groupId>e-iceblue</groupId><artifactId>spire.pdf.free</artifactId><version>$…...
游戏、软件、开源项目和资讯
游戏 标题链接【白嫖正版游戏】IT之家喜加一website 软件 标题链接【白嫖正版软件】反斗限免website 开源项目 标题链接【Luxirty Search】基于Google搜索结果,屏蔽内容农场Github【Video2X】图片/视频超分工具Github 新闻资讯 标题链接分享10个 Claude 3.5 …...
Acrel-1000变电站综合自动化系统及微机在化工企业中的应用方案
文:安科瑞郑桐 摘要:大型化工企业供配电具有的集约型特点,化工企业内35kV变电站和10kV变电所数量大、分布广,对于老的大多大型及中型化工企业而言,其变电站或变电所内高压电气设备为旧式继电保护装置,可靠…...
[Linux] CentOS7替换yum源为阿里云并安装gcc详细过程(附下载链接)
前言 CentOS7替换yum源为阿里云 yum是CentOS中的一种软件管理器,通过yum安装软件,可以自动解决包依赖的问题,免去手工安装依赖包的麻烦。 yum使用了一个中心仓库来记录和管理软件的依赖关系,默认为mirrorlist.centos.org…...
在Java中创建多线程的三种方式
多线程的创建和启动方式 在Java中,创建多线程主要有以下三种方式: 继承Thread类实现Runnable接口使用Callable接口与Future 下面是这三种方式的简单示例,以及如何在主类中启动它们。 1. 继承Thread类 class MyThread extends Thread {Ov…...
洛谷 AT_abc374_c [ABC374C] Separated Lunch 题解
题目大意 KEYENCE 总部有 N N N 个部门,第 i i i 个部门有 K i K_i Ki 个人。 现在要把所有部门分为 AB 两组,求这两组中人数多的那一组的人数最少为多少。 题目分析 设这些部门共有 x x x 个人,则较多的组的人数肯定大于等于 ⌈ …...
力扣2528.最大化城市的最小电量
力扣2528.最大化城市的最小电量 题目解析及思路 题目要求找到所有城市电量最小值的最大 电量为给城市供电的发电站数量 因此每座城市的电量可以用一段区间和表示,即前缀和 二分最低电量时 如果当前城市电量不够,贪心的想发电站建立的位置,应该是在mi…...
【zookeeper】集群配置
zookeeper 数据结构 zookeeper数据模型结构,就和Linux的文件系统类型,看起来是一颗树,每个节点称为一个znode.每一个Znode默认的存储1MB的数据,每个Znode都有唯一标识,可以通过命令显示节点的信息每当节点有数据变化…...
YOLO11 目标检测 | 导出ONNX模型 | ONNX模型推理
本文分享YOLO11中,从xxx.pt权重文件转为.onnx文件,然后使用.onnx文件,进行目标检测任务的模型推理。 用ONNX模型推理,便于算法到开发板或芯片的部署。 备注:本文是使用Python,编写ONNX模型推理代码的 目…...
PostgreSQL DBA月度检查列表
为了确保数据库系统能够稳定高效运行,DBA 需要定期对数据库进行检查和维护,这是一项非常具有挑战性的工作。 本文给大家推荐一个 PostgreSQL DBA 月度性能检查列表,遵循以下指导原则可以帮助我们实现一个高可用、高性能、低成本、可扩展的数…...
驱动开发系列12 - Linux 编译内核模块的Makefile解释
一:内核模块Makefile #这一行定义了要编译的内核模块目标文件。obj-m表示目标模块对象文件(.o文件), #并指定了两个模块源文件:helloworld-params.c 和 helloworld.c。最终会生成这 #这两个.c文件的.o对象文件。 obj-m := helloworld-params.o helloworld.o#这行定义了内核…...
用js+css实现圆环型的进度条——js+css基础积累
如果用jscss实现圆环型的进度条: 直接上代码: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><met…...
TDengine 与北微传感达成合作,解决传统数据库性能瓶颈
在当今物联网(IoT)快速发展的背景下,传感器技术已成为各个行业数字化转型的关键组成部分。随着设备数量的激增和数据生成速度的加快,如何高效地管理和分析这些数据,成为企业实现智能化运营的重要挑战。尤其是在惯性传感…...
通过Python爬虫获取商品销量数据,轻松掌握市场动态
为什么选择Python爬虫? 简洁易用:Python语言具有简洁的语法和丰富的库,使得编写爬虫变得简单高效。强大的库支持:Python拥有强大的爬虫框架(如Scrapy、BeautifulSoup、Requests等),可以快速实现…...
学习虚幻C++开发日志——TSet
TSet 官方文档:虚幻引擎中的Set容器 | 虚幻引擎 5.5 文档 | Epic Developer Community (epicgames.com) TSet 是通过对元素求值的可覆盖函数,使用数据值本身作为键,而不是将数据值与独立的键相关联。 默认情况下,TSet 不支持重…...
面向对象进阶(下)(JAVA笔记第二十二期)
p.s.这是萌新自己自学总结的笔记,如果想学习得更透彻的话还是请去看大佬的讲解 目录 抽象方法和抽象类抽象方法定义格式抽象类定义格式抽象方法和抽象类注意事项 接口接口的定义接口中成员变量的特点接口中没有构造方法接口中成员方法的特点在接口中定义具有方法体…...
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
