码迷,mamicode.com
首页 > 其他好文 > 详细

她用AI“反哺”芯片设计,超高效率赶超人类芯片设计师

时间:2020-10-07 20:56:17      阅读:19      评论:0      收藏:0      [点我收藏+]

标签:turn   金融   flush   作者   默认值   设计师   改善   print   开启   

技术图片
芯片设计发展的最新趋势,似乎已很难像摩尔定律所规定的那样:“集成电路上可容纳的晶体管数目大约每隔 18 个月便会增加一倍,性能也增加一倍。”
但伴随人工智能技术的进步,人们对于算力的要求越来越高,这种需求的变化是以周或天记的。相较之下,芯片设计需要的时间明显长得多,这就意味着新微处理器的设计速度已不能满足算法的迭代发展,这就产生了供需的不匹配。
“从现在的情况看,芯片设计需要数年的时间,所以我们现在要做的是,为未来 2 到 5 年后的机器学习模型优化芯片。” 来自谷歌的 Azalia Mirhoseini 及她的同事们如是说。
对此,这个来自谷歌的团队提出了一种新方式来加速芯片设计过程:利用人工智能加速芯片设计,以推动人工智能向更强大的方向发展。
“我们相信,通过人工智能缩短芯片设计周期的方式,可以在硬件和人工智能之间创建一种共生关系,并进一步推动彼此的进步,” Mirhoseini 和同事们表示。
芯片设计是一个复杂而漫长的过程,主要由两个主要元素组成:布局和布线,前者指的是使用设计软件绘制出不同元件的位置,后者则是用线将元件虚拟地连接起来。
以芯片布局为例,这项任务之所以复杂且耗时,是因为该过程涉及到逻辑和内存模块,或者集群设置要兼顾功耗、性能、面积等,与此同时还需要遵守布线密度、互连的原则。
图丨谷歌展示的 TPU 设计算法对比人类结果(来源:谷歌)
在这种情况下,将芯片布局建模为强化学习问题,强化学习系统的目标是降低功率、改善性能和减少面积。为了找到满足多个目标的最佳芯片布局,AI 算法将需要考虑许多变量,包括满足一定的芯片性能,同时还要避免不必要的复杂设计,否则可能会增加芯片的制造成本。这种平衡是一项耗费芯片开发者智力资源的工作。但现在,谷歌认为自己的 AI 已经做出了成绩。
2020 年 4 ?月,Mirhoseini?及其团队发表了利用强化学习(reinforced learning,RL)实现自动布局的研究。在设计电路布局时,RL 算法的优势体现在可以使用更少的电线、更有效地利用空间,或者功耗更低。在最初的实验中,相比人类设计师 6 至 8 周内找到的解决方案,算法 24 小时就能实现,而且算法的设计成功减少了芯片所需的总布线,从而提高了效率。?
这篇论文的作者、谷歌团队的高级研究科学家 Azalia Mirhoseini,因为她在将 AI 应用于设计芯片研究中的成果上,入选 2019 年《麻省理工科技评论》“35 岁以下科技创新 35 人”全球榜单。
2020 年 11 月 19 - 20 日,Azalia Mirhoseini 将以线上的方式参与 EmTech China 2020 全球新兴科技峰会,并向我们分享推动下一代芯片设计的前沿计算科技。

作为全球顶级科技商业杂志《麻省理工科技评论》的著名会议品牌,EmTech 是全球新兴科技领域最具影响力的大规模会议之一。EmTech 全称是 Emerging Technologies,原意为“新兴科技”,从 1999 年至今的超过 20 年间,EmTech 一直延续着引领全球技术向前的强大创新基因,从实验室到产业,在智慧碰撞的对话与演讲中梳理那些最可能改变世界的新兴科技。? ? ??

图 | EmTech China 全球新兴科技峰会往届现场(来源:《麻省理工科技评论》中国)
2020 年 11 月 19 - 20 日,第四届 EmTech China 全球新兴科技峰会将在苏州中惠铂尔曼酒店开启。面对现在这个充满不确定性的全球局势,我们希望通过 EmTech China 2020 为关心最前沿科技发展趋势的观众提供一个近距离接触全球“最强科技大脑”的绝佳机遇。
本届峰会上,我们将围绕“创新引领未来”、“技术驱动下的医疗生态”、“生物医药的无限可能”、“互联世界”、“人工智能‘新基建’”以及“未来基石” 6 大主题展开,紧扣科技发展脉搏,正面应对全球挑战,通过三十余位嘉宾的分享,继续为大家带来最前沿的解读。
目前,EmTech China 2020 的嘉宾邀请还在紧锣密鼓地进行中,我们也将会陆续放出后续的确认嘉宾。
此外,来自中国及全球有潜力改变世界的科研机构、政府、国际组织、企业、金融机构高层与科技工作者们也将共同参与到峰会的讨论当中。
道翰天琼CiGril机器人API
道翰天琼CiGril认知智能机器人API用户需要按步骤获取基本信息:
1.在平台注册账号
2.登录平台,进入后台管理页面,创建应用,然后查看应用,查看应用相关信息。
3.在应用信息页面,找到appid,appkey秘钥等信息,然后写接口代码接入机器人应用。
开始接入
请求地址:http://www.weilaitec.com/cigirlrobot.cgr
请求方式:post
请求参数:
参数 类型 默认值 描述
userid?? String?? 无 平台注册账号
appid?? String?? 无 平台创建的应用id
key?? String?? 无 平台应用生成的秘钥
msg?? String?? "" 用户端消息内容
ip?? String?? "" 客户端ip要求唯一性,无ip等可以用QQ账号,微信账号,手机MAC地址等代替。

接口连接示例:http://www.weilaitec.com/cigirlrobot.cgr?key=UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV&msg=你好&ip=119.25.36.48&userid=jackli&appid=52454214552

注意事项:参数名称都要小写,五个参数不能遗漏,参数名称都要写对,且各个参数的值不能为空字符串。否则无法请求成功。userid,appid,key三个参数要到平台注册登录创建应用之后,然后查看应用详情就可以看到。userid就是平台注册账号。
示例代码JAVA:

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class apitest {

?? ?/*
?? ?
Get请求,获得返回数据
?? ? @param urlStr
?? ?
@return
?? ? /
?? ?private static String opUrl(String urlStr)
?? ?{?? ??? ?
?? ??? ?URL url = null;
?? ??? ?HttpURLConnection conn = null;
?? ??? ?InputStream is = null;
?? ??? ?ByteArrayOutputStream baos = null;
?? ??? ?try
?? ??? ?{
?? ??? ??? ?url = new URL(urlStr);
?? ??? ??? ?conn = (HttpURLConnection) url.openConnection();
?? ??? ??? ?conn.setReadTimeout(5
10000);
?? ??? ??? ?conn.setConnectTimeout(5 * 10000);
?? ??? ??? ?conn.setRequestMethod("POST");
?? ??? ??? ?if (conn.getResponseCode() == 200)
?? ??? ??? ?{
?? ??? ??? ??? ?is = conn.getInputStream();
?? ??? ??? ??? ?baos = new ByteArrayOutputStream();
?? ??? ??? ??? ?int len = -1;
?? ??? ??? ??? ?byte[] buf = new byte[128];

?? ??? ??? ??? ?while ((len = is.read(buf)) != -1)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?baos.write(buf, 0, len);
?? ??? ??? ??? ?}
?? ??? ??? ??? ?baos.flush();
?? ??? ??? ??? ?String result = baos.toString();
?? ??? ??? ??? ?return result;
?? ??? ??? ?} else
?? ??? ??? ?{
?? ??? ??? ??? ?throw new Exception("服务器连接错误!");
?? ??? ??? ?}

?? ??? ?} catch (Exception e)
?? ??? ?{
?? ??? ??? ?e.printStackTrace();
?? ??? ?} finally
?? ??? ?{
?? ??? ??? ?try
?? ??? ??? ?{
?? ??? ??? ??? ?if (is != null)
?? ??? ??? ??? ??? ?is.close();
?? ??? ??? ?} catch (IOException e)
?? ??? ??? ?{
?? ??? ??? ??? ?e.printStackTrace();
?? ??? ??? ?}

?? ??? ??? ?try
?? ??? ??? ?{
?? ??? ??? ??? ?if (baos != null)
?? ??? ??? ??? ??? ?baos.close();
?? ??? ??? ?} catch (IOException e)
?? ??? ??? ?{
?? ??? ??? ??? ?e.printStackTrace();
?? ??? ??? ?}
?? ??? ??? ?conn.disconnect();
?? ??? ?}
?? ??? ?return "";
?? ?}
?? ?
?? ?
?? ?public static void main(String args []){?? ??? ?
?? ??? ???? //msg参数就是传输过去的对话内容。?? ??? ??? ?
?? ??? ???? System.out.println(opUrl("http://www.weilaitec.com/cigirlrobot.cgr?key=UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV&msg=你好&ip=119.25.36.48&userid=jackli&appid=52454214552"));
?? ??? ??? ?
?? ?}
}

她用AI“反哺”芯片设计,超高效率赶超人类芯片设计师

标签:turn   金融   flush   作者   默认值   设计师   改善   print   开启   

原文地址:https://blog.51cto.com/14864650/2540176

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!