解决方案:Get写手 | 人工智能技术的发展
优采云 发布时间: 2022-11-29 00:22解决方案:Get写手 | 人工智能技术的发展
人们需要了解人工智能 (AI) 如何使用软件驱动系统和智能代理来做出接近人类认知功能的决策。未来,人工智能可能会像人类一样拥有真正的逻辑推理能力。当我们面对各个领域的复杂问题,难以做出决策时,人工智能可以帮助人类想出更多解决问题的方法。
随着AI智能技术的发展、创新和技术变革,人类将进入一个人工智能的未来社会。人工智能背后的技术以及它如何帮助人类做出更明智和公正的决定是我们应该关注的。
" />
例如,人类可能很容易识别一个视频场景,但计算机要达到同等水平的识别能力就非常困难。因此,本报告聚焦人工智能技术在商业智能决策中的应用,试图阐释人工智能在商业实施中的真实现状,突出人工智能技术在感知智能等现阶段应用的价值。智能语音和计算机视觉。
术语人工智能 (ai) 是指执行人类决策领域内考虑的任务的计算系统。人类和人工智能都是处理器,但各自具有完全不同的能力。这些软件驱动的系统和智能代理结合了高级数据分析和大数据应用程序。
现在市场上很多大型企业每天都要面对这样一个百万甚至千万、上万维度的数据。从“数据驱动”一词可以看出,数据作为一种力量的背后,是由人来管理和总结的。但要充分利用数据中收录
的价值,公司需要将人工智能 (ai) 引入其工作流程,有时甚至需要将人类排除在外。
" />
比如Get Smart Writing,文章的素材采集
和框架构建都是由AI完成的。在这个环节中,人类已经无法发挥作用。
人工智能在更广泛的社会中的应用,特别是在处理人类数据方面,受到“黑匣子问题”的阻碍。两者所反映的动作也有所不同,前者侧重于数据,后者侧重于处理能力。AI 系统使用此知识库做出决策并执行近似认知功能的操作,包括学习和解决问题。
未来,人工智能可能会像人类一样拥有真正的逻辑推理能力。当我们面对各个领域的复杂问题,难以做出决策时,人工智能可以帮助人类想出更多解决问题的方法。
解决方案:【群智能算法】Python主要智能优化算法库汇总
硕士期间主要用Matlab研究群体智能算法。为了方便科研,我把主要的智能算法库用Python编译了。现将各库的主要信息、相关优缺点简单整理如下,大家可以根据自己的需要和喜好进行选择。
1.DEAP
项目地址:GitHub - DEAP/deap: Distributed Evolutionary Algorithms in Python
安装:
pip install deap
优势:
起点高,发表于Journal of Machine Learning Research
使用灵活,所有模块均可定制
缺点:
上手比较麻烦
比如它这样设置参数,然后完成一个简单的函数最大优化:
import random
from deap import creator, base, tools, algorithms
creator.create("FitnessMax", base.Fitness, weights=(1.0,))
creator.create("Individual", list, fitness=creator.FitnessMax)
toolbox = base.Toolbox()
toolbox.register("attr_bool", random.randint, 0, 1)
toolbox.register("individual", tools.initRepeat, creator.Individual, toolbox.attr_bool, n=100)
toolbox.register("population", tools.initRepeat, list, toolbox.individual)
def evalOneMax(individual):
return sum(individual),
toolbox.register("evaluate", evalOneMax)
toolbox.register("mate", tools.cxTwoPoint)
toolbox.register("mutate", tools.mutFlipBit, indpb=0.05)
toolbox.register("select", tools.selTournament, tournsize=3)
population = toolbox.population(n=300)
NGEN=40
for gen in range(NGEN):
offspring = algorithms.varAnd(population, toolbox, cxpb=0.5, mutpb=0.1)
fits = toolbox.map(toolbox.evaluate, offspring)
for fit, ind in zip(fits, offspring):
ind.fitness.values = fit
population = toolbox.select(offspring, k=len(population))
top10 = tools.selBest(population, k=10)
速度慢(很多人反映这个问题)
集成的算法很少(当然也可以自定义修改,不过这和完全自写差别不大)
半年多没有更新(最新更新只是对安装的修改) 2.mealpy
项目地址:GitHub - thieu1995/mealpy: A 采集
of the state-of-the-art MEta-heuristic ALgorithms in PYthon (mealpy)
安装:
pip install meaply
优势:
算法丰富,整合现有62种算法,视觉检测要持续更新补充
上手容易,代码简单,比如优化标准函数库的函数:
from opfunu.type_based.uni_modal import Functions
from mealpy.evolutionary_based.GA import BaseGA
<p>
" />
t1 = Functions()
## Setting parameters
objective_func = t1._sum_squres__
problem_size = 30
domain_range = [-15, 15]
log = True
epoch = 100
pop_size = 50
pc = 0.95
pm = 0.025
md = BaseGA(objective_func, problem_size, domain_range, log, epoch, pop_size, pc, pm)
best_position, best_fit, list_loss = md._train__()
print(best_fit)
</p>
缺点:
整体设计似乎不规范,文档说明不够
语言好像有点小问题,英文申请不够规范(这可能是作者没发好期刊的原因之一)
集成了多种算法但是没有列出参考文献,不方便引用论文 3. scikit-opt(国内良心)
项目地址:/guofei9987/scikit-opt
官方文档地址:scikit-opt
安装:
pip install scikit-opt
优势:
使用方便,代码简单,尤其是很多用法和Matlab非常相似。比如官方文档提供了一些例子:Curve fitting using genetic algorithm
中文文档,文档很齐全。大佬的CSDN主页。(作者自称是京东的算法工程师,这个库确实感觉有些感觉,方便实用)
在易用性的基础上,还提供了很多接口供用户自行修改。特别是,运营商可以定制。
一些有趣的功能:GPU加速、断点运行等。
缺点:
似乎还没有集成足够的方法。总共有3个类别,7个算法。
算法本身的优化似乎还不够(未仔细测试) 4. Geatpy2(用心制作)
项目地址:/geatpy-dev/geatpy
官网地址:Geatpy
安装:
pip install geatpy
或强制版本
pip install geatpy==2.5.1
优势:
易于学习且易于实施
完整的文档和丰富的例子(中文文档)
功能齐全,除了算法之外,还封装了很多实用的功能,比如数据可视化等。
缺点:
代码风格怪异,比如英文不规范,变量命名比较随意。比如介绍文档中,目标函数翻译成“aimFunc”,变量名是XM?等待。
def aimFunc(self, pop): # 目标函数
Vars = pop.Phen # 得到决策变量矩阵
XM = Vars[:,(self.M-1):]
g = 100 * (self.Dim - self.M + 1 + np.sum(((XM - 0.5)**2 - np.cos(20 * np.pi * (XM - 0.5))), 1, keepdims = True))
ones_metrix = np.ones((Vars.shape[0], 1))
f = 0.5 * np.fliplr(np.cumprod(np.hstack([ones_metrix, Vars[:,:self.M-1]]), 1)) * np.hstack([ones_metrix, 1 - Vars[:, range(self.M - 2, -1, -1)]]) * np.tile(1 + g, (1, self.M))
pop.ObjV = f # 把求得的目标函数值赋值给种*敏*感*词*op的ObjV
文档的开发还比较不成熟。比如首页文档用插件显示,官网体验还是有点欠缺
注:本项目还有几句要补充,应该是硕士生写的目测。总体设计、DEMO 和文档远没有上述那些复杂(尤其是与 DEAP 相比)。然而,几个学生跨校合作,在短时间内完成如此完整的作品,实属不易。我也希望他们能继续进步。综合来说,个人认为这个项目属于国产良心。
5. pygmo2
项目地址:/esa/pygmo2
" />
安装:
pip install pygmo
注意:安装还依赖以下环境
pagmo C++ 库,2.13+;Boost 序列化库,1.60+;麻木;云泡菜。
其他可能使用的环境:
莳萝; 绘图库;网络X
优势:
功能丰富
支持并行和分布式计算(本身也很高效)
灵活使用
感官测试比较稳定(未仔细测试)
缺点:
上手比较麻烦
依赖较多,尤其是C++版本对应的软件环境
有限算法
注:这个图书馆也吐槽过网上交流很给力,但是除了看起来很专业,我真的看不出有什么了不起的。当然,平时用C++做底层的东西在大量问题上部署起来可能更容易一些,但是普通用户用不上。
6. 蜂群
项目地址:GitHub - ljvmiranda921/pyswarms: A research toolkit for particle swarm optimization in Python
安装:
pip 安装 pyswarms
优势:
简单,好用,基本上也属于几行代码的入门类型
可视化,尤其是动态可视化做得很好。(强调)
比如画一个图,基本上就是一行代码:
plot_contour(pos_history=optimizer.pos_history, mesher=m, designer=d, mark=(0,0))
pos_history_3d = m.compute_history_3d(optimizer.pos_history) # preprocessing
animation3d = plot_surface(pos_history=pos_history_3d,
mesher=m, designer=d,
mark=(0,0,0))
缺点:
算法较少。只有基于PSO的各种问题的算法(本质上只是一种算法)
不够灵活。
起点低。所发表的论文既不是CCF推荐的也不是SCI推荐的。同时,虽然号称用了很多research paper,但是仔细看水平不高(基本都属于三非类型) 7. SciPy(没想到)
项目地址:/scipy/scipy
官方网站: /
官方文档:/doc/
安装(当然安装Python的时候已经有了):
pip install scipy
特别说明:scipy作为一个比较严谨和‘传统’的数值计算库,常用的数值计算方法基本都涉及到scipy。当然,数值计算库通常不关注智能优化(启发式算法)。它集成了非常有限的优化算法:差分进化、模拟退火等。但它仍然有很多优点:
优势:
作为严谨的数值计算库,其正确性和稳定性值得信赖(超过800名贡献者,其中不乏名校教师、博士等)
易于使用和简单
scipy也可以自定义优化算法
缺点:
自然是算法太少
虽然可以定制,但是麻烦程度几乎等同于完全自己造轮子
概括
一番研究后,发现Python的包库中优质的智能算法库实在是有限(除了上面提到的库外,还有相当多的算法组成一个库,实在不敢恭维,随便玩玩线)。这里我个人认为可能有以下几个方面:
智能算法本身的实现难度并不大
在当前环境下,智能算法在*敏*感*词*问题上并没有明显的优势
专业算法通常还是基于Matlab(尤其是数学)
智能算法,尤其是进化算法,本质上差别不大
参考:Python主要智能优化算法库总结_半冯博士的博客-CSDN博客