﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-chenglong7997-文章分类-算法</title><link>http://www.cppblog.com/chenglong7997/category/18932.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 04 Apr 2012 22:21:27 GMT</lastBuildDate><pubDate>Wed, 04 Apr 2012 22:21:27 GMT</pubDate><ttl>60</ttl><item><title>信息爆炸时代与海量数据科技（转）</title><link>http://www.cppblog.com/chenglong7997/articles/169818.html</link><dc:creator>Snape</dc:creator><author>Snape</author><pubDate>Sun, 01 Apr 2012 18:44:00 GMT</pubDate><guid>http://www.cppblog.com/chenglong7997/articles/169818.html</guid><wfw:comment>http://www.cppblog.com/chenglong7997/comments/169818.html</wfw:comment><comments>http://www.cppblog.com/chenglong7997/articles/169818.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/chenglong7997/comments/commentRss/169818.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/chenglong7997/services/trackbacks/169818.html</trackback:ping><description><![CDATA[<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 5px; padding-right: 2px; padding-bottom: 5px; padding-left: 5px; line-height: 1.6; font-family: verdana, 'ms song', 宋体, Arial, 微软雅黑, Helvetica, sans-serif; text-align: left; "><div id="cnblogs_post_body" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><p style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">我们生活在信息爆炸的时代。海量的数据改变了商业和科学研究的方方面面。在基础设施层面，业界的面貌不断地变化，众多的信息科技公司，诸如谷歌、微软、IBM、亚马逊近年来也抗起了&#8220;云&#8221;的旗帜。在科技前沿，海量数据改变了<span style="color: red; ">统计、机器学习、自然语言处理</span>等领域的方法。特别的，在过去的20年，数据的丰富是<span style="color: red; ">知识数据库和人工智能领域</span>有的更进一步的发展。</p><p style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">首先我们确实已经生活在了海量数据的时代。按照并不是最新的数据，Facebook使用超过1PB的空间来存储4000亿张照片，谷歌每天处理超过20PB的数据。而人类在过去的世代里所有的文字作品也只有大约50PB的信息。而根据摩尔定律，大概每18个月这些数据的大小还要翻倍。</p><p style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">数据在建模中的作用越来越大。Banko和Brill在2001年所做的研究表明，即使是很粗糙的算法，如果能用更大量的数据来训练模型，往往最终的结果可以超过最初设计时的模型。近年来IT公司之间的并购和合作案中，对方优质数据成为更吸引决策者的因素。谁有了更好的数据，谁就有可能做出更好的服务。举个例子，基于数据的翻译系统会不断的调整自己，最终超过使用严密规则建立起的翻译系统。再如，我们有时被软件要求输入验证码，有的网站的做法是第一个单词它有答案，而第二个单词图片是没有答案的，使用大量用户备选答案来确定。</p><p style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">面对如此明显与快速的革新，我们的准备并不充分。我们的硬件需要提升，需要更快的计算机，更大容量的存储设备。人才方面，计算机专业课程亟待改革，适应日新月异的信息时代，将视野扩大到一个更大的世界。当代计算机专业学生更加有必要学<span style="color: red; ">好&#8220;统计&#8221;</span>，来处理好大规模数据，而事实上现在计算机专业学生中有坚实统计科学基础的还不足百分之五。</p><p style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">现在很多系统的智能性还很差。人们一度坚信，只要考虑的完善，使用数理逻辑的谓词推导，就能用逻辑把智能实现到极致。而很多时候，人类本身的智慧活动并不是很严谨地遵循逻辑的。我们离不开&#8220;常识&#8221;，而机器往往是没有常识的。人类作推理经常是使用常识的，可能当事人自己都没有意识到，而正是这些没有明白说出来的常识帮助做出了正确的判断。<span style="color: red; ">为了建立有人类普遍具有的基本常识的机器系统</span>，2000年到2005年有一个Mindpixel的工程吸引人们对许多真假命题做判断，来充实&#8220;常识&#8221;数据库。Open Mind Common Sense(<a href="http://openmind.media.mit.edu/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: black; ">http://openmind.media.mit.edu/</a>) 是这一领域另一个先驱，它主要使用让人们填空的形式来充实常识数据库。让机器具有了常识，就有了更好的基础做出更加智能的事情。</p></div></div><img src ="http://www.cppblog.com/chenglong7997/aggbug/169818.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/chenglong7997/" target="_blank">Snape</a> 2012-04-02 02:44 <a href="http://www.cppblog.com/chenglong7997/articles/169818.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>串的模式匹配【转自Orisun】</title><link>http://www.cppblog.com/chenglong7997/articles/169220.html</link><dc:creator>Snape</dc:creator><author>Snape</author><pubDate>Tue, 27 Mar 2012 18:26:00 GMT</pubDate><guid>http://www.cppblog.com/chenglong7997/articles/169220.html</guid><wfw:comment>http://www.cppblog.com/chenglong7997/comments/169220.html</wfw:comment><comments>http://www.cppblog.com/chenglong7997/articles/169220.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/chenglong7997/comments/commentRss/169220.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/chenglong7997/services/trackbacks/169220.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 串的模式匹配就是从一个主串中找到子串出现的位置,如主串是"asd234",子串是"d2",那么算法返回的结果就应该是2.一种最朴素的想法就是BF算法,我就不讲了,"&nbsp;最朴素"嘛,就是你脑子里现在想的那种算法.比较优一点的是KMP算法.更优的是BM算法.BM的改进算法是Sunday Algorithm.现在我给出BF和Sunday两种算法的代码,然后再和STL中string在find函数进...&nbsp;&nbsp;<a href='http://www.cppblog.com/chenglong7997/articles/169220.html'>阅读全文</a><img src ="http://www.cppblog.com/chenglong7997/aggbug/169220.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/chenglong7997/" target="_blank">Snape</a> 2012-03-28 02:26 <a href="http://www.cppblog.com/chenglong7997/articles/169220.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>