当NLP技术成熟程度怎么写到一定程度时,底层程序员会失业吗

web前端开发(89)
如果问大家什么是真正的演员,大家一定会说好好演戏,热爱演戏,认真演戏的那些就是,所以很难理解这个问题下为啥大部分人的答案都是从生活中的各种琐事来解释一个IT男是什么样子的。喜欢穿格子衫的就是IT男,爱背小书包的就是IT男,说话不走脑子的就是IT男,不解风情搞不懂女生喜欢自己的就是IT男,我个人感觉这种说法就和盲人摸象一样啊,不对,人家盲人摸象摸出来的还是大象的某些特征,而这些答案里连些特征都没有,我们一起来看看大家是如何说的吧男孩子不解风情的太多了,试问那个男人第一次进入,自己找到门了?我说的对吧。我想说的是就你一个妹子么在一群中?感觉你也蛮有趣的~相信这里有很多想要学习web前端的小伙伴,关注小编头条号,私信【学习】即可免费领取一整套系统的web前端学习教程!形容的很贴切,小伙,重点是每句话都用分号结尾;你说的都很有道理,可是为什么你会那么清楚……好了最后我也来总结几句:不要以为IT男自称是“屌丝”、“宅男”就当真了。要知道真正的IT男们,收入都不低,而且没什么大花销,所以绝不存在女神来了请不起客;要知道真正的IT男们,只要想,做个私活都是小CASE,有时候一两个人都能做,所以绝不存在养不起家的情况;要知道真正的IT男们,绝不浅薄,他们只是知道的太多太快,了解的太透彻,在网上什么人没见过,懒得和你争辩,把你当白痴;要知道真正的IT男们,智商和情商都不低,自学新东西极快,心里的算盘极精,你想骗他,还需要在修炼个十年八年的才有可能,前提是他停滞不前,不过,鉴于前言基本不可能;总之,真正的IT男们,高未必,富未必,帅未必,但是基本上都是远离矮穷丑,小康绝对不是问题,生活绝对不会单调。如果有对前端感兴趣前端,可以加入我们的web前端技术学习群的哦。免费送前端的零基础教程噢!写在最后:很多人都知道我是学全栈的程序猿,都天真的以为我有全套的前端、网页制作等视频学习资料。我想说你们是对的,我的确有前端的全套视频资料。BACKGROUND: I'm importing the Stanford CoreNLP library into my clojure project.
I was using version 3.5.1 but recently jumped directly into version 3.6.0, bypassing 3.5.2.
As part of this update, because I was getting coreference information using the dcoref annotator, I needed to make small modifications so that my program used the coref annotator instead.
In the past (v3.5.1), when I created a pipeline with the following annotators
"tokenize, ssplit, pos, lemma, ner, parse, depparse, dcoref, quote, entitymentions",
I could parse a sentence such as the following without error:
"I ate bread".
If I remember correctly, extracting the coreference chains from the resulting annotated document would just return an null value, or maybe an empty array.
But that's inconsequential, because at least the annotated document would be created without error.
Now, when I create a pipeline with the following annotators:
"tokenize, ssplit, pos, lemma, ner, parse, depparse, mention, coref, quote, entitymentions",
and then I try to parse that same sentence (or any other sentences with only 1 or 0 "mentions") I get an indexoutofboundsexception with the following trace:
actual: java.lang.RuntimeException: Error annotating document with coref
at edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate (StatisticalCorefSystem.java:79)
edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate (StatisticalCorefSystem.java:62)
edu.stanford.nlp.pipeline.CorefAnnotator.annotate (CorefAnnotator.java:100)
edu.stanford.nlp.pipeline.AnnotationPipeline.annotate (AnnotationPipeline.java:68)
edu.stanford.nlp.pipeline.StanfordCoreNLP.annotate (StanfordCoreNLP.java:491)
nlp.core$parse_text.invoke (core.clj:199)
nlp.focus_scorer.process$lexchain_features.invoke (process.clj:63)
nlp.focus_scorer.process_test/fn (process_test.clj:49)
clojure.test$test_var$fn__7670.invoke (test.clj:704)
clojure.test$test_var.invoke (test.clj:704)
clojure.test$test_vars$fn__7692$fn__7697.invoke (test.clj:722)
clojure.test$default_fixture.invoke (test.clj:674)
clojure.test$test_vars$fn__7692.invoke (test.clj:722)
clojure.test$default_fixture.invoke (test.clj:674)
clojure.test$test_vars.invoke (test.clj:718)
clojure.test$test_all_vars.invoke (test.clj:728)
clojure.test$test_ns.invoke (test.clj:747)
clojure.core$map$fn__4553.invoke (core.clj:2624)
clojure.lang.LazySeq.sval (LazySeq.java:40)
clojure.lang.LazySeq.seq (LazySeq.java:49)
clojure.lang.Cons.next (Cons.java:39)
clojure.lang.RT.boundedLength (RT.java:1735)
clojure.lang.RestFn.applyTo (RestFn.java:130)
clojure.core$apply.invoke (core.clj:632)
clojure.test$run_tests.doInvoke (test.clj:762)
clojure.lang.RestFn.invoke (RestFn.java:408)
user$eval13163.invoke (form-init2696705.clj:1)
clojure.lang.Compiler.eval (Compiler.java:6782)
clojure.lang.Compiler.eval (Compiler.java:6745)
clojure.core$eval.invoke (core.clj:3081)
clojure.main$repl$read_eval_print__7099$fn__7102.invoke (main.clj:240)
clojure.main$repl$read_eval_print__7099.invoke (main.clj:240)
clojure.main$repl$fn__7108.invoke (main.clj:258)
clojure.main$repl.doInvoke (main.clj:258)
clojure.lang.RestFn.invoke (RestFn.java:1523)
clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__909.invoke (interruptible_eval.clj:58)
clojure.lang.AFn.applyToHelper (AFn.java:152)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.core$apply.invoke (core.clj:630)
clojure.core$with_bindings_STAR_.doInvoke (core.clj:1868)
clojure.lang.RestFn.invoke (RestFn.java:425)
clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke (interruptible_eval.clj:56)
clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__951$fn__954.invoke (interruptible_eval.clj:191)
clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__946.invoke (interruptible_eval.clj:159)
clojure.lang.AFn.run (AFn.java:22)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:617)
java.lang.Thread.run (Thread.java:745)
Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList$SubList.rangeCheck (ArrayList.java:1217)
java.util.ArrayList$SubList.get (ArrayList.java:1034)
edu.stanford.nlp.scoref.Clusterer$State.setClusters (Clusterer.java:349)
edu.stanford.nlp.scoref.Clusterer$State.&init& (Clusterer.java:322)
edu.stanford.nlp.scoref.Clusterer.getClusterMerges (Clusterer.java:58)
edu.stanford.nlp.scoref.ClusteringCorefSystem.runCoref (ClusteringCorefSystem.java:63)
edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate (StatisticalCorefSystem.java:68)
edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate (StatisticalCorefSystem.java:62)
edu.stanford.nlp.pipeline.CorefAnnotator.annotate (CorefAnnotator.java:100)
edu.stanford.nlp.pipeline.AnnotationPipeline.annotate (AnnotationPipeline.java:68)
edu.stanford.nlp.pipeline.StanfordCoreNLP.annotate (StanfordCoreNLP.java:491)
nlp.core$parse_text.invoke (core.clj:199)
nlp.focus_scorer.process$lexchain_features.invoke (process.clj:63)
nlp.focus_scorer.process_test/fn (process_test.clj:49)
clojure.test$test_var$fn__7670.invoke (test.clj:704)
clojure.test$test_var.invoke (test.clj:704)
clojure.test$test_vars$fn__7692$fn__7697.invoke (test.clj:722)
clojure.test$default_fixture.invoke (test.clj:674)
clojure.test$test_vars$fn__7692.invoke (test.clj:722)
clojure.test$default_fixture.invoke (test.clj:674)
clojure.test$test_vars.invoke (test.clj:718)
clojure.test$test_all_vars.invoke (test.clj:728)
clojure.test$test_ns.invoke (test.clj:747)
clojure.core$map$fn__4553.invoke (core.clj:2624)
clojure.lang.LazySeq.sval (LazySeq.java:40)
clojure.lang.LazySeq.seq (LazySeq.java:49)
clojure.lang.Cons.next (Cons.java:39)
clojure.lang.RT.boundedLength (RT.java:1735)
clojure.lang.RestFn.applyTo (RestFn.java:130)
clojure.core$apply.invoke (core.clj:632)
clojure.test$run_tests.doInvoke (test.clj:762)
clojure.lang.RestFn.invoke (RestFn.java:408)
user$eval13163.invoke (form-init2696705.clj:1)
clojure.lang.Compiler.eval (Compiler.java:6782)
clojure.lang.Compiler.eval (Compiler.java:6745)
clojure.core$eval.invoke (core.clj:3081)
clojure.main$repl$read_eval_print__7099$fn__7102.invoke (main.clj:240)
clojure.main$repl$read_eval_print__7099.invoke (main.clj:240)
clojure.main$repl$fn__7108.invoke (main.clj:258)
clojure.main$repl.doInvoke (main.clj:258)
clojure.lang.RestFn.invoke (RestFn.java:1523)
clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__909.invoke (interruptible_eval.clj:58)
clojure.lang.AFn.applyToHelper (AFn.java:152)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.core$apply.invoke (core.clj:630)
clojure.core$with_bindings_STAR_.doInvoke (core.clj:1868)
clojure.lang.RestFn.invoke (RestFn.java:425)
clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke (interruptible_eval.clj:56)
clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__951$fn__954.invoke (interruptible_eval.clj:191)
clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__946.invoke (interruptible_eval.clj:159)
clojure.lang.AFn.run (AFn.java:22)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:617)
java.lang.Thread.run (Thread.java:745)
Am I possibly doing something wrong?
I realize that the fact that I'm using clojure instead of java might be causing some issue, but I've never had a problem with version 3.5.1.
It would seem that the error is being thrown from the annotation step in edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate, but I'm not sure what I can do about that (other than to have two pipeline objects, one with the coref annotator and one without, parse the sentence without coref, count the mentions, and then parse with coref only if I see more than one mention... which seems a little too much.)
解决方案 3.6.0 features major changes to coreference.
This issue is a bug in Stanford CoreNLP 3.6.0.
If you re-download the distribution this bug should be fixed in what's up on the site now.
It should also be fixed in the up-coming Maven release.
本文地址: &
背景:我在导入斯坦福CoreNLP库到我的Clojure项目。我使用的版本3.5.1,但最近直接跳进3.6.0版本,3.5.2绕过。作为此更新的一部分,因为我用的是dcoref注释越来越指代的信息,我需要让自己的程序中使用的COREF注释,而不是进行小的修改。 在过去(V3.5.1),当我创建了一个管道具有以下注解 “记号化,SSPLIT,POS,引理,NER,分析,depparse,dcoref,报价,entitymentions”,我可以解析的句子,如没有错误的情况如下:“我吃面包。”如果我没有记错,提取所产生的注释文档共指链将只返回一个空值,或者空数组。但是,这是无关紧要的,因为至少有注释的文件将不会出现错误被创建。现在,当我创建一个管道具有以下注解: “记号化,SSPLIT,POS,引理,NER,分析,depparse,提,COREF,报价,entitymentions”,然后我尝试解析同一个句子(或任何其他的句子,只有1或0“提及”)我得到以下跟踪抛出IndexOutOfBoundsException: 实际:了java.lang.RuntimeException:与COREF错误标注文档 在edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate(StatisticalCorefSystem.java:79)
edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate(StatisticalCorefSystem.java:62)
edu.stanford.nlp.pipeline.CorefAnnotator.annotate(CorefAnnotator.java:100)
edu.stanford.nlp.pipeline.AnnotationPipeline.annotate(AnnotationPipeline.java:68)
edu.stanford.nlp.pipeline.StanfordCoreNLP.annotate(StanfordCoreNLP.java:491)
nlp.core $ parse_text.invoke(core.clj:199)
nlp.focus_scorer.process $ lexchain_features.invoke(process.clj:63)
nlp.focus_scorer.process_test / FN(process_test.clj:49)
clojure.test $ test_var $ fn__7670.invoke(test.clj:704)
clojure.test $ test_var.invoke(test.clj:704)
clojure.test $ test_vars $ fn__7692 $ fn__7697.invoke(test.clj:722)
clojure.test $ default_fixture.invoke(test.clj:674)
clojure.test $ test_vars $ fn__7692.invoke(test.clj:722)
clojure.test $ default_fixture.invoke(test.clj:674)
clojure.test $ test_vars.invoke(test.clj:718)
clojure.test $ test_all_vars.invoke(test.clj:728)
clojure.test $ test_ns.invoke(test.clj:747)
clojure.core $ $图fn__4553.invoke(core.clj:2624)
clojure.lang.LazySeq.sval(LazySeq.java:40)
clojure.lang.LazySeq.seq(LazySeq.java:49)
clojure.lang.Cons.next(Cons.java:39)
clojure.lang.RT.boundedLength(RT.java:1735)
clojure.lang.RestFn.applyTo(RestFn.java:130)
clojure.core $ apply.invoke(core.clj:632)
clojure.test $ run_tests.doInvoke(test.clj:762)
clojure.lang.RestFn.invoke(RestFn.java:408)
用户$ eval13163.invoke(表单init2696705.clj:1)
clojure.lang.Compiler.eval(Compiler.java:6782)
clojure.lang.Compiler.eval(Compiler.java:6745)
clojure.core $ eval.invoke(core.clj:3081)
clojure.main $ REPL $ read_eval_print__7099 $ fn__7102.invoke(main.clj:240)
clojure.main $ REPL $ read_eval_print__7099.invoke(main.clj:240)
clojure.main $ REPL $ fn__7108.invoke(main.clj:258)
clojure.main $ repl.doInvoke(main.clj:258)
clojure.lang.RestFn.invoke(RestFn.java:1523)
clojure.tools.nrepl.middleware.interruptible_eval $ $评价fn__909.invoke(interruptible_eval.clj:58)
clojure.lang.AFn.applyToHelper(AFn.java:152)
clojure.lang.AFn.applyTo(AFn.java:144)
clojure.core $ apply.invoke(core.clj:630)
clojure.core $ with_bindings_STAR_.doInvoke(core.clj:1868)
clojure.lang.RestFn.invoke(RestFn.java:425)
clojure.tools.nrepl.middleware.interruptible_eval $ evaluate.invoke(interruptible_eval.clj:56)
clojure.tools.nrepl.middleware.interruptible_eval $ interruptible_eval $ fn__951 $ fn__954.invoke(interruptible_eval.clj:191)
clojure.tools.nrepl.middleware.interruptible_eval $ run_next $ fn__946.invoke(interruptible_eval.clj:159)
clojure.lang.AFn.run(AFn.java:22)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)
java.lang.Thread.run(Thread.java:745)java.lang.IndexOutOfBoundsException:引起指数:0,大小:0 在$的java.util.ArrayList SubList.rangeCheck(ArrayList.java:1217)
java.util.ArrayList中$ SubList.get(ArrayList.java:1034)
edu.stanford.nlp.scoref.Clusterer $ State.setClusters(Clusterer.java:349)
edu.stanford.nlp.scoref.Clusterer $州<&初始化GT; (Clusterer.java:322)
edu.stanford.nlp.scoref.Clusterer.getClusterMerges(Clusterer.java:58)
edu.stanford.nlp.scoref.ClusteringCorefSystem.runCoref(ClusteringCorefSystem.java:63)
edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate(StatisticalCorefSystem.java:68)
edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate(StatisticalCorefSystem.java:62)
edu.stanford.nlp.pipeline.CorefAnnotator.annotate(CorefAnnotator.java:100)
edu.stanford.nlp.pipeline.AnnotationPipeline.annotate(AnnotationPipeline.java:68)
edu.stanford.nlp.pipeline.StanfordCoreNLP.annotate(StanfordCoreNLP.java:491)
nlp.core $ parse_text.invoke(core.clj:199)
nlp.focus_scorer.process $ lexchain_features.invoke(process.clj:63)
nlp.focus_scorer.process_test / FN(process_test.clj:49)
clojure.test $ test_var $ fn__7670.invoke(test.clj:704)
clojure.test $ test_var.invoke(test.clj:704)
clojure.test $ test_vars $ fn__7692 $ fn__7697.invoke(test.clj:722)
clojure.test $ default_fixture.invoke(test.clj:674)
clojure.test $ test_vars $ fn__7692.invoke(test.clj:722)
clojure.test $ default_fixture.invoke(test.clj:674)
clojure.test $ test_vars.invoke(test.clj:718)
clojure.test $ test_all_vars.invoke(test.clj:728)
clojure.test $ test_ns.invoke(test.clj:747)clojure.core $ $图fn__4553.invoke(core.clj:2624)
clojure.lang.LazySeq.sval(LazySeq.java:40)
clojure.lang.LazySeq.seq(LazySeq.java:49)
clojure.lang.Cons.next(Cons.java:39)
clojure.lang.RT.boundedLength(RT.java:1735)
clojure.lang.RestFn.applyTo(RestFn.java:130)
clojure.core $ apply.invoke(core.clj:632)
clojure.test $ run_tests.doInvoke(test.clj:762)
clojure.lang.RestFn.invoke(RestFn.java:408)
用户$ eval13163.invoke(表单init2696705.clj:1)
clojure.lang.Compiler.eval(Compiler.java:6782)
clojure.lang.Compiler.eval(Compiler.java:6745)
clojure.core $ eval.invoke(core.clj:3081)
clojure.main $ REPL $ read_eval_print__7099 $ fn__7102.invoke(main.clj:240)
clojure.main $ REPL $ read_eval_print__7099.invoke(main.clj:240)
clojure.main $ REPL $ fn__7108.invoke(main.clj:258)
clojure.main $ repl.doInvoke(main.clj:258)
clojure.lang.RestFn.invoke(RestFn.java:1523)
clojure.tools.nrepl.middleware.interruptible_eval $ $评价fn__909.invoke(interruptible_eval.clj:58)
clojure.lang.AFn.applyToHelper(AFn.java:152)
clojure.lang.AFn.applyTo(AFn.java:144)
clojure.core $ apply.invoke(core.clj:630)
clojure.core $ with_bindings_STAR_.doInvoke(core.clj:1868)
clojure.lang.RestFn.invoke(RestFn.java:425)
clojure.tools.nrepl.middleware.interruptible_eval $ evaluate.invoke(interruptible_eval.clj:56)clojure.tools.nrepl.middleware.interruptible_eval $ interruptible_eval $ fn__951 $ fn__954.invoke(interruptible_eval.clj:191)
clojure.tools.nrepl.middleware.interruptible_eval $ run_next $ fn__946.invoke(interruptible_eval.clj:159)
clojure.lang.AFn.run(AFn.java:22)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)
java.lang.Thread.run(Thread.java:745) 难道我可能做错了什么?我意识到,我使用的Clojure而不是Java的事实,可能会导致一些问题,但我从来没有一个问题,3.5.1版本。这似乎是错误正在从edu.stanford.nlp.scoref.StatisticalCorefSystem.annotate注释一步抛出,但我不知道我能做些什么有关(除有两个管道对象,一个用COREF注释和一个没有,分析句子没有COREF,算上提到,然后用COREF解析只有当我看到一个以上的提...这似乎有点太多了。)解决方案
3.6.0功能主要以指代的变化。这个问题是在斯坦福CoreNLP 3.6.0的错误。如果您重新下载分发这个错误应该固定在现在的达在网站上。还应该固定在了崭露头角的Maven的版本。
本文地址: &
扫一扫关注官方微信百度王海峰:AI最终还是要回到“服务用户需求”的本质
发表于 10:22|
来源互联网|
作者互联网
摘要: 近年来,人工智能发展迅猛,很多以往只在实验室里才看得到的技术,现在也已经逐步走进我们的日常生活,发挥出更大的价值。
&近年来,人工智能发展迅猛,很多以往只在实验室里才看得到的技术,现在也已经逐步走进我们的日常生活,发挥出更大的价值。人工智能是一个学术话语权极强的领域,因此,AI企业都在积极延揽全球范围内的顶尖科学家,同时在各种学术刊物上发表论文以及参加各种类型的竞赛,以验证自身的研究实力。可以说,这些科学家们已经成为了把人工智能从实验室带到生活中的&摆渡人&。
而谈到人工智能领域的顶尖科学家,有些人可能会想到去年一袭红衣亮相的谷歌云人工智能和机器学习首席科学家李飞飞。但是在国内,对人工智能从研究到落地贡献最大的,百度副总裁、AI技术平台体系(AIG)总负责人王海峰绝对是重量级代表之一。
在人工智能最重要的两个领域NLP和CV,都聚集了大量华人科学家,王海峰是其中少有的横跨学界和产业界的顶尖人才。他在2016年当选了国际计算语言学会(The Association for Computational Linguistics)的会士,是大陆首位、也是最年轻的一位ACL院士,更是该学会50多年历史上唯一出任过主席(President)的华人。在国内,王海峰也是获奖无数,2017年荣获首届全国创新争先奖,是唯一来自互联网行业的获奖人, 2015年获得国家科技进步奖二等奖,2013、2014连续两年获得中国电子学会科学技术奖一等奖。
2010年入职百度之后,王海峰有了将实验室技术转化为产品和生产力的空间,借助搜索引擎产生出的大量语料数据和学界基础研究,接连布局了自然语言处理、互联网数据研发、图片搜索和语音技术等等多个部门,在多项技术上建立起了牢固的技术壁垒。2013年,他协助创立了百度深度学习研究院,此外陆续整合搜索、移动端、手机浏览器业务,打造搜索+Feed流双引擎,开发DuerOS前身度秘。
2017年3月,王海峰被任命为百度AIG总负责人。在他的规划下,AIG发展脉络清晰有序,因此不仅有了更快的技术落地速度,更是提升了从底层打造平台、开放生态的能力,接入了更多产品化和工程化端口。百度AI开放平台目前已经对外开放90余项AI核心能力,并提供先进的AI场景化能力和解决方案,开发者和日均调用量持续稳定增长,接入开发者近50万。
在最大限度发挥AI现有能力的基础上,百度AI不断推出大量与应用结合紧密的技术和行业解决方案,包括智慧视觉技术方案、数据智能平台、智慧机场行业方案等,合作伙伴覆盖交通出行、企业服务、安防、软件工具、游戏、阅读、教育、智能设备、视频、咨询分析、金融、生活服务、物流等多个领域,实现了更多场景下的技术落地。
如今,在王海峰的带领下,百度AI技术已经走过了比拼公开测试跑分成绩、论文发布数量、技术参数指标的初级阶段,快速实现技术与应用结合落地,并且已经与具体的应用场景结合得越来越紧密。正如王海峰所言,&AI的发展最终还是要回到&服务用户需求&的本质,这是我们每一位人工智能的从业者都需要铭记在心的。利用好人工智能来服务好我们的用户和客户,以及更好地打磨AI能力来推动各行各业的效率提升。&
相信随着百度AI产学研结合的深入,AI技术将会更加深入日常生活的每个角落,这也是未来人工智能全面发展,为宏观经济发展提供推动力的方向。
【免责声明:CSDN本栏目发布信息,目的在于传播更多信息,丰富网络文化,稿件仅代表作者个人观点,与CSDN无关。其原创性以及中文陈述文字和文字内容未经本网证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本网不做任何保证或者承诺,请读者仅作参考,并请自行核实相关内容。凡注明为其他媒体来源的信息,均为转载自其他媒体,转载并不代表本网赞同其观点,也不代表本网对其真实性负责。您若对该稿件由任何怀疑或质疑,请即与CSDN联系,我们将迅速给您回应并做处理。】
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章

我要回帖

更多关于 项目技术成熟程度 的文章

 

随机推荐