楼主: Maverick_3
跳转到指定楼层
上一主题 下一主题
收起左侧

[其他] 学习算法到意义是什么

🔗
北美农民 2013-11-22 05:26:28 | 只看该作者
全局:
本帖最后由 北美农民 于 2013-11-21 16:29 编辑
lyl 发表于 2013-11-21 16:10 .1point3acres
说得很好。google, microsoft这样的巨头因为自身的需要和强大的财力在system, architecture, network这方 ...
. 1point 3 acres
绝大多数的工程师可以随便换,走一批换一批就是了,可替代性太强。 但架构师设计师就很宝贵了, 从一个刚出学校的小毛头到成为优秀的架构师比CS入门到精通什么算法的难度要高太多。 软硬件设计都懂的人和只懂软件的人看同一个东西是两码事。 前者很可能完全不在意某个局部用的算法是n^2还是nlogn, 后者可能觉得这是天大的事。. 1point3acres

CS业界领先学术界并不是什么奇怪的事, 例子还少吗?最近10年都是如此。IP6,服务器集群也就是云服务, bigdata和数据挖掘,分布式系统,各个语言的JIT(比如python的parakeet加速),BI 以及这些领域内涵盖的一大堆小方向交叉方向。 可能有人说了, 那谁60年代70年代谁谁谁的papers不早就提出过这些构想吗? 那请问这中间空余的20,30年都干嘛去了? 怎么没人研究, 等谷歌,IBM,AMZ的服务器集群一出来研究这些领域就火了?

谁引领谁, 弄清楚并不是什么难事。
回复

使用道具 举报

🔗
lyl 2013-11-22 05:52:23 | 只看该作者
全局:
北美农民 发表于 2013-11-22 05:26 . 1point3acres.com
绝大多数的工程师可以随便换,走一批换一批就是了,可替代性太强。 但架构师设计师就很宝贵了, 从一个刚 ...
.
第一段话我完全赞同,但是我不明白你想表达什么?你局部小问题限制了n的规模,当然无所谓用什么算法了。
. 1point3acres.com
第二段你列的例子很多,但是我没有足够判断的实力。我必须承认在你提到的大部分领域我都很无知,所以也没办法反驳。要不你就只说JIT技术吧,JIT如何体现业界引领学术界了?在compiler领域我虽然懂得不多,但是应该还是可以尝试考证一下的。
回复

使用道具 举报

🔗
北美农民 2013-11-22 06:25:09 | 只看该作者
全局:
本帖最后由 北美农民 于 2013-11-21 17:28 编辑
lyl 发表于 2013-11-21 16:52
第一段话我完全赞同,但是我不明白你想表达什么?你局部小问题限制了n的规模,当然无所谓用什么算法了。
...

这些我也只知道个皮毛,但是了解这个现象不需要什么精通吧, 看timeline或者该领域前沿paper的abstract,intro就足够了, 这些论文到底是针对什么的,之前工业界有没有相应的东西。

JIT怎么工作的和原理我并不了解, 但我知道目前全世界python最好的JIT是这个,http://dl.acm.org/citation.cfm?id=2342802。  由于刚好了解一点内幕,这玩意完全是作者在某公司实习的时候针对性捣鼓出来的, 后来刚好要发paper毕业就混合了学校实验室的背景, 做出来之后无数公司联系要买这玩意不过他开源了。 还有我刚才说的piccolo 算法也是一个性质, 本来是一个叫做crunchbase start up的核心技术, 如果不是公司倒闭了CTO去学校读phd刚好发出来就以10倍的性能震惊业内, 谁知道这就是一个倒闭小公司几年前用的东西呢? 而且我个人猜测谷歌发的那些papers提出的东西不知道是用了多少年后没竞争力的玩意了, 他们真正弄到什么地步,真正当前有竞争力的核心技术肯定不会公开的啊。
回复

使用道具 举报

🔗
lyl 2013-11-22 06:49:30 | 只看该作者
全局:
北美农民 发表于 2013-11-22 06:25 . Χ
这些我也只知道个皮毛,但是了解这个现象不需要什么精通吧, 看timeline或者该领域前沿paper的abstract, ...

当然不需要精通,不过我连皮毛也不懂,这个不提。

有论文就方便了,等我晚上读完再回复,看看它如何领先学术界。介绍这个内幕的文章如果方便也请一并贴出,我也想看看。至于piccolo算法,我水平不够,没资格评价。
回复

使用道具 举报

🔗
北美农民 2013-11-22 07:02:58 | 只看该作者
全局:
lyl 发表于 2013-11-21 17:49
当然不需要精通,不过我连皮毛也不懂,这个不提。

有论文就方便了,等我晚上读完再回复,看看它如何领 ...

内幕就是我刚好认识作者,知道作者的一点信息.

此外我很不理解,有需要弄懂论文本身的必要吗?  这两个东西就是工业界的成果,先有技术服务后有paper,还是早几年, 然后作者要读phd了打着学术界的帽子修改一下发表成paper,性能的突破还不是百分之几十而是前所未有的百分之几百, 和GFS, HDFS这种先有产品再有papers的性质几乎一样. 这个不叫领先那什么叫? 非要paper上一大堆干涩难懂难以implement的理论用到了XYZ等新方法新概念才叫做领先吗?

或者你可以告诉我你认为领先的定义是什么?如果我们的分歧是在这上面我会很无语..
回复

使用道具 举报

🔗
lyl 2013-11-22 07:25:50 | 只看该作者
全局:
北美农民 发表于 2013-11-22 07:02
内幕就是我刚好认识作者,知道作者的一点信息.

此外我很不理解,有需要弄懂论文本身的必要吗?  这两个 ...

CS很多领域是面向应用的,所以业界的风向自然“引领”某些领域的研究热点。但是照我的理解,你一开始说的意思还包含工业界的技术“领先”学术界。我认为很荒谬。

这篇论文讲的是python的JIT,那么它是把一个之前已经提出的JIT技术针对python的特点进行优化修改,还是一个创新的JIT技术呢?性能突破的原因又是什么?另外,近几年来JIT方面的技术进步又有多少是在工业界的研究所产生,有多少是在学术界产生。这些基本的东西不搞清楚怎么说明这项在工业界产生的技术领先学术界?我还没读论文,上面的问题我也不知道。

把已有方法(e.g. JIT)加以修改用到新的问题(Python)当然算是创新,不过创新的程度肯定就没法和提出JIT的成果相比。最后,我之前已经说了,系统、网络等一些方向工业界巨头的研究部门确实处于技术一线水平。至于是不是领先我就不知道了。但是据此以点带面论证CS领域工业界领先学术界我只能说fully disagree.
回复

使用道具 举报

🔗
北美农民 2013-11-22 07:45:24 | 只看该作者
全局:
lyl 发表于 2013-11-21 18:25 .
CS很多领域是面向应用的,所以业界的风向自然“引领”某些领域的研究热点。但是照我的理解,你一开始说的 ...

也挺有道理, 你认为这些技术成果只要有和学术界某个提出的理论沾亲带故,那么就得算上对方一部分功劳对么?  但是你反过来想过吗?到底谁沾谁的光更多些,从别人已有产品和服务的吞吐量, 承载力提出理论和新概念新框架也是paper中常有的事吧?. 1point 3acres

我认为IT口能完全突破性的开拓者还是产品和服务的,从进入搜索引擎时代就开始了.

跑题太远了。 反正在cpu和disk/memory性能的鸿沟下, 算法的意义并不是那么大就是了。
回复

使用道具 举报

🔗
lyl 2013-11-22 14:08:36 | 只看该作者
全局:
北美农民 发表于 2013-11-22 07:45
也挺有道理, 你认为这些技术成果只要有和学术界某个提出的理论沾亲带故,那么就得算上对方一部分功劳对么 ...

沾亲带故?你是在搞笑么?几个小方面的创新到你嘴里就成了只是"沾亲带故",你倒是问问作者自己敢不敢这么说?我倒不是看不起小方面的创新,毕竟科研都是渐进的,有几个小方面的创新突破就非常不错了。CS的很多方面,学术界和工业界本来就是没法割离的。学术界在提出一个新技术以后通常没有时间精力去完整地实现它,只能建一个prototype,应用到几个相对简单的例子上来验证自己的想法。这项技术需要成熟应用还需要大量工业界的资源来完善它。我从来就没有否定工业界对于CS很多方面极大的推动作用。倒是你言之凿凿地断言工业界的技术领先学术界。. 1point3acres

我非常怀疑你本科的算法课没学好。估计算法时间复杂度的第一个假设就是要建立一个机器模型,其primitive operation的时间复杂度为O(1)。忽略硬件只不过是最简单的一种模型。从来没有谁说过算法就不能把硬盘/内存的数据交换和IO考虑进去。举个最简单的例子,假如某个算法的复杂度是用不同介质间数据交换的次数来估计的,你觉得它意义不大?就算是system和network的conference,里面多少paper的重要贡献都包括算法你知道么?退一步说,算法不仅有快慢之分,还变不可能为可能。就说machine learning,不仅要速度快还要准确度高,算法不重要?SMT solver里面多少theory都是NP-Complete甚至undecidable的,没有各种高级的decision procedure算法你能求解?

说算法意义不大的只有一种人,书读得太少。
回复

使用道具 举报

🔗
北美农民 2013-11-22 16:12:39 | 只看该作者
全局:
本帖最后由 北美农民 于 2013-11-22 03:19 编辑
lyl 发表于 2013-11-22 01:08
沾亲带故?你是在搞笑么?几个小方面的创新到你嘴里就成了只是"沾亲带故",你倒是问问作者自己敢不敢这么 ...

感觉之前都白说了。我的观点一直是在于硬件软件鸿沟现实下的对比, 而你单独拎出算法讲多么多么重要,这不和没说一样么。我还觉得2段话的内容还远远不够陈述算法的重要性呢。.1point3acres

计算机运行时,从存储媒介读取到mem然后instr被fetch到CPU burst, 中途环节要用到cache以及可能要用到share mem. 提高过程的瓶颈早就不是执行instr了, 算法也仅仅是提高指令集质量的方式之一而已。 一般为了避免CPU使用率太低, 从最原始的多线程一边读一边处理到现在业界用的cpu发异步请求给IO,自己去做别的,等IO好了再处理,即便如此CPU占用率还是非常低, 线程池全用完了还是很低,人们自然是找瓶颈和更有提高空间的方向,硬件和架构,以及JIT(也是另一种提高Instr质量的方式)就是这样的方向。当然, 你可以说同时提高他们都不冲突,但是你得考虑投入产出比啊。 况且大多数算法是有严格下界的,在木桶短板没上去之前, 提高最高的挡板(还有上线)有什么意义呢? 你的电脑是换SSD爽还是 换个CPU换一个OS scheduler换一个mem management爽?

你说的ML算法根本不能类比,首先, 对于这类涵盖NPH问题的solution业界本来采取的就是heuristic solution, 目的是给出同样time budget下得到较优解而非最优,而不少这类问题的解的准确度都没有绝对正确的量化指标, 比如手机照相的色彩还原算法, 有人觉得三星好有人觉得apple好,有的针对这类数据特征强有的针对别类数据特征好。这类最终结果不唯一时间复杂度也不同的算法根本不能说明算法比它者更重要。其次 准确度和时间复杂度并不一定是负相关吧, 两者之间不见得有某种一定的联系。 你若用这个支持算法的重要性, 没问题,但是我们所指的是runtime performance, 这个论据并不能支持算法比别的方向更有价值和提高空间。

小创新,是你说的太轻巧了。 如果是walmart, amz把apriori association rules用上能还叫做小创新小应用(事实上我也不知道也无法考证是真的先有这个应用还是学术界先有这个算法, 但是购物篮问题的提出本来就来自于业界), 那么IT口巨头们把承载如此庞大访问量的并且还能做到real time高度consistency高度可拓展可靠性的产品和服务还被叫做小创新,这就过分了。. Waral dи,

此外, 什么读书少没学好这些虚的就别说了,你有心情整这些虚的还不如找点干货。你不是读了那篇paper么, 评价谈谈自己懂的领域什么的都比什么都强多了, 我读书的确不多但也是讲道理。想让我服气也要来点干货啊,我也没说我一定就是对的, 你扯些没用的干嘛。
回复

使用道具 举报

🔗
北美农民 2013-11-22 16:39:00 | 只看该作者
全局:
挺有意思的,截去上下文说我说算法意义不大自然是另外一层意思了。  本来还以为能学到点什么呢, 罢了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表