乌鸦与鹦鹉

朱松纯老师之前写过一篇文章,介绍了两种人工智能的模式。

一种称之为“鹦鹉范式”,鹦鹉可以与人类对话,但是不理解你在说什么。比如你说林黛玉,它也说林黛玉,但是它并不知道林黛玉是什么。

还有一种是“乌鸦范式”。乌鸦找到核桃之后,会把核桃扔在路上,让车去压,压碎了再吃。但是因为路上车太多乌鸦吃不到核桃,于是乌鸦把核桃扔到斑马线上,因为这里有红绿灯,绿灯亮时车都停住了,它就可以去吃。

这个例子是非常惊人的,因为乌鸦既没有大数据,也没有监督学习,却完全可以自主地研究其中的因果关系,然后利用资源完成任务,而且功耗非常小,小于 1瓦,这给了他的研究团队很大的启发。

实际上,还有一种范式“乌鸦+鹦鹉”混合的人之范式,既可以Top—Down,也可以Bottom—Up。

例如移动通信通常要实现双向工作,所谓双向工作,就是把数据同时进行传输。要实现双向工作,有两种方式,一种FDD,基于两个频率进行输入、输出(收发)处理,一种就是TDD,基于一个频率,但分时段收发处理。

人机融合智能中深度态势感知就是人、机与任务环境之间的多向工作机制,既有数据,也有信息和知识,更有智能、智慧(包含了伦理的智能)的传输、传递。要实现有效的多向工作,应该如何呢?

数据是怎样变成信息的?信息是怎样变成知识的?知识是怎样变成智能的?智能是怎样变成智慧的?智慧是怎样变成伦理的?

是非之心(,智也)最难,因为有大量的似是而非和似非而是存在着,更有是非混合、融合搅拌着,一刻不停……如旋转的阴阳八卦图:有无、虚实、动静。

有限的键盘可以弹出无限的乐曲,然而无限的键盘却可能无法弹出有限的乐曲…



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的乌鸦搜索算法的Python代码实现: ```python import math def crow_search(fitness_func, lower_bound, upper_bound, num_iterations, num_crows, alpha, beta, delta): # 初始化乌鸦们 crows = [] for i in range(num_crows): crow = { "position": [0.0] * len(lower_bound), "fitness": math.inf } for j in range(len(lower_bound)): crow["position"][j] = lower_bound[j] + (upper_bound[j] - lower_bound[j]) * random.random() crow["fitness"] = fitness_func(crow["position"]) crows.append(crow) # 迭代寻找最优解 for t in range(num_iterations): # 计算每个乌鸦的适应度值 for i in range(num_crows): crows[i]["fitness"] = fitness_func(crows[i]["position"]) # 对乌鸦按适应度值排序 crows.sort(key=lambda x: x["fitness"]) # 更新最优解 best_crow = crows[0] # 移动乌鸦 for i in range(num_crows): for j in range(len(lower_bound)): # 计算乌鸦的新位置 r1 = random.random() r2 = random.random() r3 = random.random() crows[i]["position"][j] = best_crow["position"][j] + alpha * (math.exp(-beta * r1) - math.exp(-beta)) * (best_crow["position"][j] - delta * crows[i]["position"][j]) + alpha * (math.exp(-beta * r2) - math.exp(-beta)) * (crows[i]["position"][j] - delta * crows[i]["position"][j]) + alpha * (math.exp(-beta * r3) - math.exp(-beta)) * (upper_bound[j] - lower_bound[j]) * random.random() # 确保新位置在可行域内 crows[i]["position"][j] = max(lower_bound[j], min(upper_bound[j], crows[i]["position"][j])) # 更新适应度值 crows[i]["fitness"] = fitness_func(crows[i]["position"]) # 返回最优解 crows.sort(key=lambda x: x["fitness"]) return crows[0]["position"] ``` 其中,`fitness_func` 是一个用于计算适应度值的函数,`lower_bound` 和 `upper_bound` 分别是每个变量的下界和上界,`num_iterations` 是迭代次数,`num_crows` 是乌鸦数量,`alpha`、`beta` 和 `delta` 是算法的超参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值