【语言处理和机器学习】概述篇(基础小白入门篇)

news2025/1/22 5:38:32

 前言

自学笔记,分享给语言学/语言教育学方向的,但对语言数据处理感兴趣但是尚未入门,却需要在论文中用到的小伙伴,欢迎大佬们补充或绕道。ps:本文不涉及公式讲解(文科生小白友好体质)~(部分讲解会参考知乎等平台)

本文重点:语言学数据处理框架下的,机器学习方法的整体概述。

1.机器学习是做什么的?

2.机器学习有哪些分类?

3.每种分类具体对应哪些方法?

一.机器学习是做什么的?

  机器学习使计算机可以从语言数据中学习人类语言的规律,在理解、生成、分析等方面逼近人类水平。机器学习的核心是让机器通过学习数据自动提取知识进行预测和决策

结合简单语言学处理实例介绍简单机器学习的主要处理逻辑:

实例:以【新闻文本体裁分类】为例,希望训练一个模型,能够自动将新闻文章分为体育娱乐财经科技等不同的类别。

基本步骤定义语言学数据实例
---------------------------------------------------基础步骤(必须有!)----------------------------------------------------------
1.数据准备收集和预处理用于训练和测试的数据。这一步至关重要,数据质量直接影响模型性能。
  • 收集大量不同体裁的新闻文章

  • 对文章进行分词等语言指标抽出,例如:平均句长,动词使用率等(自变量)

  • 标注每篇文章的体裁类别(响应变量)

2.划分数据集将数据分为训练集、验证集和测试集。训练集用于训练模型,验证集用于调参和选择模型,测试集用于评估模型的泛化能力。
  • 将标注好的新闻文章数据随机划分为训练集和测试集

  • 训练集用于训练分类模型,测试集用于评估模型效果

3.模型选择与训练根据任务和数据的特点,选择合适的机器学习算法(如决策树、神经网络等),并使用训练集对模型进行训练,让模型学习数据中的模式。
  • 选择合适的分类算法,如朴素贝叶斯、支持向量机等

  • 用训练集训练分类模型,让模型学习不同体裁的文本特征

4.性能评估使用验证集评估模型性能,通过交叉验证等方法选择最优模型和超参数。再用测试集评估模型的泛化性能。
  • 用测试集评估模型在各个体裁上的分类准确率

  • 选择整体分类效果最好的模型

--------------------------------------------------------附加步骤(有更好!)-------------------------------------------------------
5.模型优化分析模型错误,进行优化,如增加训练数据、调整模型结构、引入正则化等。性能评估和优化往复进行,不断提升模型。
  • 分析模型分错的文章,总结规律

  • 优化措施:如增加训练数据、调整模型参数、尝试其他算法等

  • 多次迭代,不断提升分类效果

6.模型应用将训练好的模型部署到实际的应用场景中,对新数据进行预测。
  • 将训练好的新闻体裁分类模型集成到新闻推荐系统中

  • 对新来的文章自动预测其体裁,再推荐给对应兴趣的用户

7.反馈优化收集实际应用中的新数据和反馈,优化模型,形成迭代闭环。
  • 收集用户反馈,分析体裁分类错误对推荐效果的影响

  • 持续迭代优化分类模型,提高整个系统的用户体验

二.机器学习有哪些分类?

1.有监督学习(教師あり学習)

  • 训练数据中包含了输入及其对应的预期正确输出(标签)
  • 目标是学习输入到输出的映射函数,用于预测新数据的输出
  • 广泛应用于分类回归任务,如文本分类、图像识别等

语言学处理实例:

  • 词性标注:以词性标注的语料库为训练集,学习词性分类模型,自动标注新文本
  • 语法纠错:以正确和错误的句子对为训练数据,学习语法纠错模型,自动检查和修正语法错误
  • 语音识别:以语音-文本对为训练数据,学习语音转录模型,实现语音到文本的自动转换
  • 阅读理解:以文本-问题-答案三元组为训练数据,学习阅读理解模型,自动回答文本内容的问题

2.无监督学习(教師なし学習)

  • 训练数据没有标签,只有输入本身
  • 目标是发现数据内在的结构和模式,如聚类、关联、降维
  • 常用于数据压缩、异常检测、推荐系统等

语言学处理实例:

  • 词聚类:无监督地将语料库中的词汇按语义聚成不同的类,发现词汇的语义关系
  • 话题发现:从大量文本语料中无监督地提取隐含的主题,理解语料的话题结构
  • 字词表示学习:从海量语料中自主学习词嵌入表示,刻画词汇的语义特征,用于各种下游NLP任务
  • 语言结构发现:从未标注的语料中自主学习短语结构、句法结构等,发现语言的结构规律

3.强化学习(強化学習)

  • 通过智能体(Agent)与环境的交互来学习最优策略
  • 没有直接的监督标签,而是根据行为获得的奖励或惩罚来优化
  • 适用于序贯决策问题,如游戏、机器人控制、自动化运营等

语言学处理实例:

  • 对话生成:通过强化学习训练对话系统,根据人类反馈优化对话策略,生成更自然、贴切的回复
  • 语言游戏:设计益智的语言交互游戏,通过强化学习训练游戏AI,提供智能的游戏陪练,供学习者练习
  • 写作评分:将自动作文评分系统建模为强化学习过程,通过学生反馈和专家打分等奖励信号,持续优化评分策略
  • 教育个性化:将个性化教学决策建模为强化学习问题,通过学生学习过程数据及反馈,自适应优化个性化教学策略

    总的来说,有监督学习需要人工标注数据,学习明确的目标;而无监督学习让算法自主探索数据的内在规律。而强化学习通过主动探索和试错来优化系统行为,以获得最大化的累积奖励。

    三.每种机器学习所对应的具体方法

    (了解!之后推文会详细介绍)

    分类常用方法
    有监督学习
    • - 线性回归 (Linear Regression)

    • -逻辑回归 (Logistic Regression)

    • - 决策树 (Decision Tree)

    • - 随机森林 (Random Forest)

    • 支持向量机 (Support Vector Machine, SVM)

    • - K近邻 (K-Nearest Neighbors, KNN)

    • - 朴素贝叶斯 (Naive Bayes)

    无监督学习
    • - K均值聚类 (K-Means Clustering)
    • - 层次聚类 (Hierarchical Clustering)
    • - 高斯混合模型 (Gaussian Mixture Model, GMM)
    • - 主成分分析 (Principal Component Analysis, PCA)
    • - 潜在语义分析 (Latent Semantic Analysis, LSA)
    强化学习
    • - Q学习 (Q-Learning)
    • - SARSA学习 (State-Action-Reward-State-Action)
    • - 蒙特卡洛方法 (Monte Carlo Methods)
    • - 时序差分学习 (Temporal Difference Learning)

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

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

    相关文章

    【ESP32】ESP32连接JY61P并通过WIFI发送给电脑

    前言 手头上有个ESP32&#xff0c;发现有wifi功能&#xff0c;希望连接JY61P并通过WIFI把姿态数据发送给电脑 1.采用Arduino IDE编译器&#xff1b;需要安装ESP32的开发板管理器&#xff1b; 2.电脑接受数据是基于python的&#xff1b; 1. ESP32 连接手机WIFI #include <…

    将 Docker 安装到 Windows 的 D 盘的方法

    1.官网下载Docker Desktop Installer.exe&#xff0c;官网网址&#xff1a;Get Started | Docker 2.以管理员身份打开 Windows 终端 3.切换到 你Docker Desktop Installer.exe下载到的地址 4.在运行代码前&#xff0c;需要提前手动创建好D:\Program Files\Docker和D:\Program F…

    DeepSeek-R1-GRPO理解

    一、GRPO GRPO&#xff08;Group Relative Policy Optimization&#xff09;是一种强化学习&#xff08;Reinforcement Learning, RL&#xff09;算法&#xff0c;专门用于训练大型语言模型&#xff08;LLMs&#xff09;在复杂任务&#xff08;如数学推理、代码生成等&#xf…

    Unreal Engine 5 C++ Advanced Action RPG 十章笔记

    第十章 Survival Game Mode 2-Game Mode Test Map 设置游戏规则进行游戏玩法 生成敌人玩家是否死亡敌人死亡是否需要刷出更多 肯定:难度增加否定:玩家胜利 流程 新的游戏模式类游戏状态新的数据表来指定总共有多少波敌人生成逻辑UI告诉当前玩家的敌人波数 3-Survival Game M…

    接口(1)

    大家好&#xff0c;今天我们来看看接口的概念&#xff0c;接口跟类的使用是有一些区别的&#xff0c;接口中都是抽象方法&#xff0c;简单介绍一下后&#xff0c;我们正式来学习。 2、接口 接口就是公共的行为规范标准,大家在实现时,只要符合规范标准,就可以通用. 在java中,…

    docker离线安装及部署各类中间件(x86系统架构)

    前言&#xff1a;此文主要针对需要在x86内网服务器搭建系统的情况 一、docker离线安装 1、下载docker镜像 https://download.docker.com/linux/static/stable/x86_64/ 版本&#xff1a;docker-23.0.6.tgz 2、将docker-23.0.6.tgz 文件上传到服务器上面&#xff0c;这里放在…

    debian中apt的配置与解析

    引言 在系统使用过程中&#xff0c;我们可能会遭遇 apt update 操作出现问题&#xff0c;或者 apt upgrade 速度迟缓的情况。这往往是由于所使用软件源本身存在诸如服务器性能不佳、维护不及时等质量问题&#xff0c;同时&#xff0c;软件源服务器与我们所处地理位置的距离较远…

    python创建一个httpServer网页上传文件到httpServer

    一、代码 1.server.py import os from http.server import SimpleHTTPRequestHandler, HTTPServer import cgi # 自定义请求处理类 class MyRequestHandler(SimpleHTTPRequestHandler):# 处理GET请求def do_GET(self):if self.path /:# 响应200状态码self.send_response(2…

    Git处理冲突详解

    文章目录 Git处理冲突详解一、引言二、冲突产生的原因三、解决冲突的步骤1. 手动解决冲突1.1 查看冲突文件1.2 编辑冲突文件1.3 提交解决冲突 2. 使用合并工具解决冲突 四、使用示例五、总结 Git处理冲突详解 一、引言 在团队协作开发中&#xff0c;Git冲突是不可避免的。当多…

    如何降低振荡器的相位噪音

    相位噪音&#xff08;Phase Noise&#xff09;是振荡器设计中一个重要的性能指标&#xff0c;尤其在高精度和高频应用中。相位噪音不仅影响信号的质量&#xff0c;还可能对后续系统的性能造成显著影响。因此&#xff0c;如何有效降低振荡器的相位噪音成为了科研与工业界关注的热…

    一文读懂 RocketMQ:从概念到架构与应用原理概述

    文章目录 概述架构说明核心组件核心概念 namesvrproducer默认实现producer启动消息发送 broker-mq核心基本模型集群模型内部模型存储机制高可用 consumerpush类型push流程pull类型 概述 随着分布式技术在业内的快速应用&#xff0c;mq&#xff08;消息队列&#xff09;做为不可…

    算法日记8:StarryCoding60(单调栈)

    一、题目 二、解题思路&#xff1a; 题意为让我们找到每个元素的左边第一个比它小的元素&#xff0c;若不存在则输出-1 2.1法一&#xff1a;暴力&#xff08;0n2&#xff09; 首先&#xff0c;我们可以想到最朴素的算法&#xff1a;直接暴力两层for达成目标核心代码如下&…

    map和set的使用(一)详解

    文章目录 序列式容器和关联式容器map和set的介绍set构造和迭代器遍历和insertfinderaseswapclearcountlower_bound和upper_boundmultiset和set的对比 set的二个题目题目解析算法原理代码介绍一个找差集的算法同步算法题目解析算法原理代码 map构造遍历initiaizer_list 序列式容…

    CSS布局与响应式

    学习链接 Grid网格布局 前端五大主流网页布局 flex布局看这一篇就够了 grid布局看这一篇就够了 用六个案例学会响应式布局 伸缩盒响应式页面布局实战 实现响应式布局的五种方式 - csdn 如何完成响应式布局&#xff0c;有几种方法&#xff1f;看这个就够了 响应式布局总…

    P6周:VGG-16算法-Pytorch实现人脸识别

    &#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 我的环境 语言环境&#xff1a;Python 3.8.12 编译器&#xff1a;jupyter notebook 深度学习环境&#xff1a;torch 1.12.0cu113 一、前期准备 1.设置GPU im…

    Git:问题解决办法 及 Tips 总结

    目录 查看历史记录及比较区别查看所有提交的历史记录查看提交的详细历史记录查看提交之间的差异点击文件操作历史&#xff0c;筛选出所有改动过此文件的提交任意两个提交之间的比较&#xff08;开发及查BUG常用&#xff09; 在需要版本回滚的情况下处理方法短时间内无法彻查BUG…

    【优选算法】----移动零

    好久没写博客的兄弟姐妹们~ 今天来写一篇算法过过水吧~ --------------------------------------begin---------------------------------------- 题目要求&#xff1a; 给的难度是简单哦 题目解析&#xff1a; 这道题的思路可以借助双指针的思想&#xff0c;定义dest和c…

    Solana 套利机器人原理

    引言 加密货币的交易世界中&#xff0c;套利是利用市场价格差异进行无风险获利的一种策略。随着 DeFi&#xff08;去中心化金融&#xff09;的快速发展&#xff0c;套利机会屡见不鲜&#xff0c;尤其是在高速、高效能的区块链上&#xff0c;如 Solana。这些区块链通过提供低交易…

    springboot自动配置原理(高低版本比较)spring.factories文件的作用

    SpringBootApplication public class SpringSecurityApplication {public static void main(String[] args) {SpringApplication.run(SpringSecurityApplication.class, args);}}注解SpringBootApplication Target({ElementType.TYPE}) Retention(RetentionPolicy.RUNTIME) Doc…

    总结4..

    #include <stdio.h> // 定义全局变量n&#xff0c;用于表示二维数组的大小 // 定义二维数组b&#xff0c;用于标记找到单词的位置&#xff0c;初始化为0 int n, b[200][200] {0}; // 定义二维数组d&#xff0c;存储8个方向的偏移量&#xff0c;用于在二维数组中搜索…