7.4.分支限界法&概率算法&近似算法&数据挖掘算法&智能优化算法

了解,没有考过,基本上不会考

分支限界法

分支限界法:与回溯法类似,同样是在问题的解空间树上搜索问题解的一种算法,它常以广度优先或以最小耗费(最大效益)优先的方式搜索问题的解空间树。回溯法是深度优先

举个例子,假设你要去旅行,需要选择一些物品装进行李箱。你希望选择的物品总价值最大,但行李箱的容量有限。你可以使用分支限定法来解决这个问题。

首先,你需要确定每个物品的价值和重量。然后,你可以创建一个分支限界法的搜索树,每个节点代表种可能的物品选择方案。在搜索树中,每个节点都有两种可能的分支:选择或不选择该物品。

接下来,你可以计算每个节点的价值和重量,并选择价值最大的分支进行扩展。这个过程会一直持续,直到找到一个可行的物品选择方案,或者搜索树中的所有分支都被扩展完毕。

在这个例子中,分支限界法通过优先考虑价值最大的物品来快速找到最优的物品选择方案。这种方法可以避免盲目搜索解空间树,从而提高算法的效率。

回溯法和分支界限法的区别

1、回溯法

  • 求解目标:回溯法的求解目标是找出解空间中满足约束条件的一个解或所有解。
  • 搜索方式深度优先:回溯法会搜索整个解空间,当不满条件时,丢弃,继续搜索下一个儿子结点,如果所有儿子结点都不满足,向上回溯到它的父节点。
    2、分支限界法
  • 求解目标:分支限界法的目标一般是在满足约束条件的解中找出在某种意义下的最优解,也有找出满足约束条件的一个解。
  • 搜索方式:分支限界法以广度优先或以最小损耗优先的方式搜索解空间。
    3、常见的两种分支界限法
  • 队列式(FIFO)分支界限法(广度优先):按照队列先进先出原则选取下一个结点为扩展结点
  • 优先队列式分支限界法(最小损耗优先):按照优先队列规定的优先级选取优先级最高的结点成为当前扩展结点

概率算法

概率算法:常见类型算法例如分治法、贪心算法、动态规划、回法和分支限界算法基本都属天确定性算法。即每一计算步骤都是确定的,而且在最后一定会返回一个确定的解。概率算法允许算法在每一步的执行过程中都可以随机的选择下一个计算步骤,所以在最后不一定能得到解。概率算法的一个重要特征就是,对所求解的同一实例使用同一算法求解多次,其结果可能是不同的,而且求解的时间也可能会有较大的差异。

为什么使用概率算法:在较短的时间得到误差能被接受的解。现实生活中,有些问题的解并不一定要求是十分精确的,只要所求解和精确解的差直控制在一定范围之内,也是可以接受的。此时,用较短的时间得到解就十分必要。虽然确定性算法能够得到很好的解,但是存在某些确定性算法的时间复杂度很高。在许多情况下,算法在执行过程中面临一个选择时,随机选择通常比最优选择省时。因此,概率算法可以在很大程度上降低算法复杂度。

四类概率算法:

  • 数值概率算法(数值问题的求解)
  • 蒙特卡洛算法(求问题的精确解)
  • 拉斯维加斯算法(不会得到不正确的解)
  • 舍伍德算法(总能求得问题的一个正确解)。

近似算法

近似算法:是一种通过牺牲精确性来换取计算效率的算法。其目标是在合理的时间内找到一个接近最优解的可行解。与精确算法不同,近似算法通常无法找到问题的精确最优解。它以可接受的近似度作为衡量标准,即在满足一定条件下,给出一个与最优解相差不大的近似解。

虽然它可能找不到一个最优解,但它总会给待求解的问题提供一个解。

为了具有实用性,近似算法必须能够给出算法所产生的解与最优解之间的差别或者比例的一个界限,它保证任意一个实例的近似最优解与最优解之间的相差程度。显然,这个差别越小,近似算法越具有实用性。

衡量近似算法性能两个标准:

  • 算法的时间复杂度。近似算法的时间复杂度必须是多项式阶的,这是近似算法的基本目标。
  • 解的近似程度。近似最优解的近似程度也是设计近似算法的重要目标。近似程度与近似算法本身、问题规模,乃至不同的输入实例有关。

数据挖掘算法

概念解释

  • 数据挖掘(Data Mining):就是从大量的数据中,提取隐藏在其中的,事先不知道的、但潜在有用的信息的过程。数据挖掘的目标是建立一个决策摸型,根据过去的行动数据来预测未来的行为
    比如分析一家公司的不同用户对公司产品的购买情况,进而分析出哪一类客户会对公司的产品有兴趣。在讲究实时、竞争激烈的网络时代,若能事先破解消费者的行为模式,将是公司获利的关键因素之一。数据挖掘是一门交叉学科,它涉及了数据库,人工智能,统计学,可视化等不同的学科和领域。

  • 机器学习:是一类算法的总称,这些算法企图从大量历史数据中挖掘出其中隐含的规律,并用于预测或者分类。它可以看作是寻找一个函数,输入是样本数据,输出是期望的结果,只是这个函数过于复杂,以至于不太方便形式化表达。
    举个例子,假设要构建一个识别猫的程序。传统上如果我们想让计算机进行识别,需要输入一串指令,例如猫长着毛茸茸的毛、顶着一对三角形的的耳朵等,然后计算机根据这些指令执行下去。但是如果我们对程序展示一只老虎的照片,程序应该如何反应呢?更何况通过传统方式要制定全部所需的规则,而且在此过程中必然会涉及到一些困难的概念,比如对毛茸茸的定义。因此,更好的方式是让机器自学。
    我们可以为计算机提供大量的猫的照片,系统将以自己特有的方式查看这些照片。随着实验的反复进行,系统会不断学习更新,最终能够准确地判断出哪些是猫,哪些不是猫。

算法分类

  1. 有监督学习:监督学习是从有标记的训练数据中推导出预测函数。有标记的训练数据是指每个训川练实例都包括输入和期望的输出。一句话定义:给定数据,预测标签。
    举例:学认字根据生字表学习每一个字,然后对一篇新文章读出里边的字。
  2. 无监督学习:无监督学习是从无标记的训练数据中推断结论。一句话定义:给定数据,寻找隐藏的结构
    举例:自动聚类对人群按照某种相似性进行归类,每类中可能是相同的肤色、发色等。
  3. 强化学习:又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。一句话定义:给定数据,学习如何选择一系列行动,以最大化长期收益。
    举例:机器人学下象棋机器人通过多次训练,不断积累经验以便赢得比赛。

数据建模过程

  1. 定义挖掘目标:确定挖掘目标,比如需求背景是什么?客户的痛点是什么?是要实现什么功能?例如在银行客户流失案例中:
    • 背景:客户是发展银行业务重点,客户流失问题就成为整个行业迫切需要解决的问题。
    • 痛点:传统的方式是靠人工经验判断客户是否会流失,存在主观性的滞后性,解决问题的关键是提高客户流失的预见性。
    • 挖掘功能:通过历史客户数据,建立预测模型,针对流失概率超过一定阈值的客户发出预警信息,提前采取挽留措施。
  2. 数据获取
    在这里插入图片描述
  3. 数据预处理:将不规整的业务数据整理为相对规整的建模数据,数据的质量决定了模型输出的结果,数据处理主要包含以下几个方面:
    • 数据清洗:去掉噪声和无关数据。
    • 数据转换:将原始数据转换成合适数据挖掘的形式。
    • 数据集成:将多个数据源中的数据结合起来存放在一个一致的数据存储中。
    • 数据规约:数据压缩、数据离散化、数据规范化等等。
  4. 挖掘建模
    • 分类:根据样本数据形成的类知识,将其它数据对像归结到某个已知的类别中。例如:预测明天天气是阴、晴还是雨。
    • 回归:用于预测输入变量与输出变量之间的关系,特别是当输入变量的值发生变化时,输出变量的值随之发生的变化。回归问题的输出是连续型变量,是一种定量输出,预测的是数量。例如:预测明天的温度是多少度。
    • 聚类:是在预先没有训川练和不知道划分类别的情况下,根据信息相似度原则把样本划分为若干类。
    • 关联规则:在数据中发现变量之间的关系(强规则)。例如,在购物篮分析中,发现规则{面包,牛}→{酸奶},表明如果顾客同时购买了面包和牛奶,很有可能也会买酸奶,利用这些规则可以进行营销
    • 文本分析:主要是针对文本类型的数据进行分析处理。常见的文本分析工作包括:分词、情感分析、文章关键词提取、文章摘要提取、文章聚类分类、知识图谱等。
  5. 模型评估:评估所构建的模型是否符合既定的业务目标,它有助于发现表达数据的最佳模型和所选模式将来工作的性能如何。
  6. 数据展现:模型结果可视化。将评估过程和结果可视化的展现,帮助我们决策。

智能优化算法

优化技术是一种以数学为基础,用于求解各种工程问题优化解的应用技术。通过模拟生物进化、群体行为或其他自然现象的过程,搜索和优化问题的最佳解或接近最佳解。这些算法被称为“智能”,因为它们具有自学习和自适应的能力,能够在搜索空间中找到较好的解决方案。

打个比方,你想要找到从家里到学校的最短路线。智能优化算法就像是一个有经验的探险家,它会考虑各种因素,比如道路的长度、交通情况、地形等等,然后给出你一个最佳的路线选择。在实际应用中,智能优化算法可以用来解决各种各样的问题,比如如何最大化收益、如何最小化成本、如何提高效率等等。它通过不断地尝试和改进,找到最佳的解决方案。

总之,智能优化算法是一种模拟自然现象或人类智能的优化方法,可以帮助我们优化解决各种实际问题。它们可以在复杂的搜索空间中找到最佳解或接近最佳解,为我们提供更好的决策和解决方案。

常见的智能优化算法有如下几个:

  • 人工神经网络(ANN)
  • 遗传算法
  • 模拟退火算法(SA)
  • 禁息搜索算法(TS)
  • 蚁群算法
  • 粒子群优化算法(PSO)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yoyo勰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值