<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>刘思喆 @ 贝吉塔行星</title>
	<atom:link href="http://www.bjt.name/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bjt.name</link>
	<description>R 语言，数据挖掘，数据可视化</description>
	<lastBuildDate>Wed, 30 Nov 2011 15:43:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>那只奔跑的马</title>
		<link>http://www.bjt.name/2011/11/running-horse-movie/</link>
		<comments>http://www.bjt.name/2011/11/running-horse-movie/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 15:43:30 +0000</pubDate>
		<dc:creator>刘思喆</dc:creator>
				<category><![CDATA[杂七杂八]]></category>
		<category><![CDATA[Edward Muybridge]]></category>
		<category><![CDATA[ImageMagick]]></category>
		<category><![CDATA[电影]]></category>

		<guid isPermaLink="false">http://www.bjt.name/?p=10720</guid>
		<description><![CDATA[一篇放在草稿箱里一年多的博文。 话说到，去年在上海财经大学讲《R与统计图形》时，提到了Edward Muybridge (1830-1904)的赛马动画。在准备材料的时候，我也比较八卦的翻了翻关于赛马动画的历史，结果发现：这幅图型不但是统计动画的鼻祖，同样是现代电影的先驱。 从 Edward Muybride 拍摄赛马动画后，美国的电影产业开始高速的发展，从此加利福尼亚州顺理成章地成为人类电影发展上的重镇，加州的好莱坞产生了大量的电影技术的创新，好莱坞电影也成为美国文化的主要代表之一。 电影、动画的原理，我就不八卦了，一般理科生大概都有些了解。关于这个赛马动画的产生，很有意思： 1872年，前美国加州州长 Leland Stanford（也是斯坦福大学的创立者）是一个狂热的赛马爱好者，为了证明马在奔跑的时候会有一刻所有的蹄子同时悬空，和人打赌，赌金非常高，达到了$25,000（估计折合到现在应该有几百万美元吧）。而在那个年代很难用肉眼确定马在奔跑时的状态（可以想象一下为什么“马踏飞燕”是那个样子？）于是Stanford找到并雇佣Muybridge这个摄影家帮他解决这个问题。 Muybridge 本来在 1872 年的时候已经接受了 Stanford 的邀请，为 Stanford 提供那旷世赌博的摄像证据。但这家伙怀疑自己老婆有个情人（Larkyns），并且冲动的枪杀了Larkyns（和张灵甫有的一拼）。一直到1877年，Muybridge 被判无罪（Stanford提供的辩护资助），才又继续他的奔马实验，于是有了这个： 后来Muybridge根据这些赛马的图片，创作了人类历史上的第一个小电影。那，下面这个动画就是用最上面的几张图合并而成的（因为偷懒用ImageMagick自动切割，所以这个小电影有点晃～～） 当然，还有一个效果更好的： 哈，这便是统计动画～～ 相关文章： R之不务正业-批处理漫画 全民盛宴《阿凡达》]]></description>
			<content:encoded><![CDATA[<p>一篇放在草稿箱里一年多的博文。</p>
<p>话说到，去年在上海财经大学讲<a href="http://cos.name/wp-content/uploads/2010/11/China-R-2010-R-and-Statistical-Graphics.pdf" target="_self">《R与统计图形》</a>时，提到了Edward Muybridge (1830-1904)的赛马动画。在准备材料的时候，我也比较八卦的翻了翻关于赛马动画的历史，结果发现：这幅图型不但是统计动画的鼻祖，同样是现代电影的先驱。</p>
<p>从 Edward Muybride 拍摄赛马动画后，美国的电影产业开始高速的发展，从此加利福尼亚州顺理成章地成为人类电影发展上的重镇，加州的好莱坞产生了大量的电影技术的创新，好莱坞电影也成为美国文化的主要代表之一。</p>
<p>电影、动画的原理，我就不八卦了，一般理科生大概都有些了解。关于这个赛马动画的产生，很有意思：</p>
<p>1872年，前美国加州州长 <a href="http://en.wikipedia.org/wiki/Leland_Stanford">Leland Stanford</a>（也是斯坦福大学的创立者）是一个狂热的赛马爱好者，为了证明马在奔跑的时候会有一刻所有的蹄子同时悬空，和人打赌，赌金非常高，达到了$25,000（估计折合到现在应该有几百万美元吧）。而在那个年代很难用肉眼确定马在奔跑时的状态（可以想象一下为什么“马踏飞燕”是那个样子？）于是Stanford找到并雇佣Muybridge这个摄影家帮他解决这个问题。</p>
<p>Muybridge 本来在 1872 年的时候已经接受了 Stanford 的邀请，为 Stanford 提供那旷世赌博的摄像证据。但这家伙怀疑自己老婆有个情人（Larkyns），并且冲动的枪杀了Larkyns（和张灵甫有的一拼）。一直到1877年，Muybridge 被判无罪（Stanford提供的辩护资助），才又继续他的奔马实验，于是有了这个：</p>
<p style="text-align: center;"><a href="http://www.bjt.name/wp-content/uploads/2010/12/horse.jpg"><img class="aligncenter" title=" Muybridge" src="http://www.bjt.name/wp-content/uploads/2010/12/horse.jpg" alt="" width="635" height="391" /></a></p>
<p>后来Muybridge根据这些赛马的图片，创作了人类历史上的第一个小电影。那，下面这个动画就是用最上面的几张图合并而成的（因为偷懒用<a href="http://www.imagemagick.technocozy.com/" target="_blank">ImageMagick</a>自动切割，所以这个小电影有点晃～～）</p>
<p><a href="http://www.bjt.name/wp-content/uploads/2010/12/horse_movie1.gif"><img class="aligncenter size-full wp-image-10723" title="horse_movie" src="http://www.bjt.name/wp-content/uploads/2010/12/horse_movie1.gif" alt="" width="157" height="100" /></a></p>
<p>当然，还有一个效果更好的：</p>
<p><a href="http://www.bjt.name/wp-content/uploads/2011/11/Muybridge_race_horse_animated.gif"><img class="aligncenter size-full wp-image-10889" title="Muybridge_race_horse_animated" src="http://www.bjt.name/wp-content/uploads/2011/11/Muybridge_race_horse_animated.gif" alt="" width="300" height="200" /></a></p>
<p>哈，这便是统计动画～～<br />
<h3 class='related_post_title'>相关文章：</h3>
<ul class='related_post'>
<li><a href='http://www.bjt.name/2010/10/r-cartoon-batch/' title='R之不务正业-批处理漫画'>R之不务正业-批处理漫画</a></li>
<li><a href='http://www.bjt.name/2010/01/avatar/' title='全民盛宴《阿凡达》'>全民盛宴《阿凡达》</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.bjt.name/2011/11/running-horse-movie/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>最近会议不断</title>
		<link>http://www.bjt.name/2011/11/conference-all-the-time/</link>
		<comments>http://www.bjt.name/2011/11/conference-all-the-time/#comments</comments>
		<pubDate>Tue, 29 Nov 2011 14:54:43 +0000</pubDate>
		<dc:creator>刘思喆</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[上海]]></category>
		<category><![CDATA[会议]]></category>
		<category><![CDATA[大数据]]></category>

		<guid isPermaLink="false">http://www.bjt.name/?p=10883</guid>
		<description><![CDATA[最近一个月所有的业余时间基本上都是在准备会议材料，开会中度过的。且不说上周去杭州，被客户折磨了3天，居然临走也没有时间去西湖逛一逛，稀里糊涂的又从杭州赶回北京，参加大数据技术大会。 工作会议就暂且不提了，说说最近参加的两场学术性质的会议。 第一场是在11月12日-13日，上海召开的中国R语言会议，本次会议各种重量级嘉宾：数据挖掘领域鼻祖级人物——谢邦昌，中国最年轻的教授——周涛，来自于奥克兰大学VGAM包的作者THomas W. Yee，等等guru。本着R语言会议一场不能落的原则，于是乎贡献了一篇 Data Mining With RWeka，主要讲了一下关于R语言和Weka之间的算法调用，以及附带讲了一下分类算法的评估。不过很可惜，本来要和舰哥仔细聊聊的，结果时间没排开，只好再找机会了。 第二场是在北京11月26日，由CSDN召集的大数据技术大会，和大家分享了一下R语言主题的《R You Ready？》，没想到结束之后又多位同行对R语言很感兴趣。这次会议有些主题非常有意思，比如淘宝数据团队负责人-赵昆的汇报《淘宝海量数据技术》，演示了一张淘宝卖家卖家交易客户的地域可视化图，等有时间也实现一下。 明天是年终工作总结会，又是一天的会议～～ 相关文章： 既然没有了，那就随便看看吧~~]]></description>
			<content:encoded><![CDATA[<p>最近一个月所有的业余时间基本上都是在准备会议材料，开会中度过的。且不说上周去杭州，被客户折磨了3天，居然临走也没有时间去西湖逛一逛，稀里糊涂的又从杭州赶回北京，参加大数据技术大会。</p>
<p>工作会议就暂且不提了，说说最近参加的两场学术性质的会议。</p>
<p>第一场是在11月12日-13日，上海召开的中国R语言会议，本次会议各种重量级嘉宾：数据挖掘领域鼻祖级人物——谢邦昌，中国最年轻的教授——周涛，来自于奥克兰大学VGAM包的作者THomas W. Yee，等等guru。本着R语言会议一场不能落的原则，于是乎贡献了一篇 <a href="http://cos.name/wp-content/uploads/2011/11/ChinaR2011_SH_Nov12_05_szl.pdf" target="_blank">Data Mining With RWeka</a>，主要讲了一下关于R语言和Weka之间的算法调用，以及附带讲了一下分类算法的评估。不过很可惜，本来要和舰哥仔细聊聊的，结果时间没排开，只好再找机会了。</p>
<p>第二场是在北京11月26日，由CSDN召集的<a href="http://special.csdn.net/bdc2011/index.html" target="_blank">大数据技术大会</a>，和大家分享了一下R语言主题的《R You Ready？》，没想到结束之后又多位同行对R语言很感兴趣。这次会议有些主题非常有意思，比如淘宝数据团队负责人-赵昆的汇报《淘宝海量数据技术》，演示了一张淘宝卖家卖家交易客户的地域可视化图，等有时间也实现一下。</p>
<p>明天是年终工作总结会，又是一天的会议～～<br />
<h3 class='related_post_title'>相关文章：</h3>
<ul class='related_post'>
<li>既然没有了，那就随便看看吧~~</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.bjt.name/2011/11/conference-all-the-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>数据挖掘之R与SQL</title>
		<link>http://www.bjt.name/2011/08/r-and-sql-datamining/</link>
		<comments>http://www.bjt.name/2011/08/r-and-sql-datamining/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 17:29:15 +0000</pubDate>
		<dc:creator>刘思喆</dc:creator>
				<category><![CDATA[R 语言]]></category>
		<category><![CDATA[数据挖掘]]></category>
		<category><![CDATA[datamining]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://www.bjt.name/?p=10874</guid>
		<description><![CDATA[今天看到老同学@JulieJulieJulieJulie 的浪漫求婚，真的很浪漫、很唯美、很感动。正如评论说的，我们又相信爱情了！于是，小兴奋，睡不着，爬起来补一篇文章。 ## 正文开始 最近在数据挖掘专业网站 KDnuggets 上刊出了2011年度关于数据挖掘/分析语言流行度的调查，不出意料R、SQL、Python果然排在了前三位。当然有看官说了，参与调查的样本数量太少，而且以登录KDnuggets网站的用户为主，样本的信息显然是有偏的。实话说，我也对KDnuggets网站的Poll持保留态度，但它的结果毕竟代表了某一类人群的使用偏好，尤其是在语言角度。 我们看排名前5位的语言： R：世界范围内的标准统计语言，以快速更新的算法，灵活的编程，广泛的扩展，绚丽的图形著称，遵循GPL协议的开源软件 SQL：大部分企业使用的，数据仓库、集市的通用查询语言，在大型数据应用上有极大的优势，同时也是数据分析/挖掘的基础 Python：传说中的Google的三大开发语言，适用于粘合一些复杂应用，我这里工作暂时没有涉及过 Java：太多的应用都基于Java的，不然Oracle也不会花上74亿美元收购SUN了 SAS：曾经的数据分析领域老大，当然现在市场份额依旧非常高。但SAS昂贵的使用费用迫使更多的分析工作者转到了开源领域，比如R 后四种语言同R语言还都有一些关系，闲扯起来还真是没完没了，这里就不再赘述，各位可以在搜索引擎上搜索R+XXX。如果我们将范围限制在数据挖掘这个主题，R同SQL的关系则变得非常非常紧密。 众所周知，R的强项在于灵活的算法，以及开发速度，但其所有的计算都是在内存中进行，一旦数据量达到了内存上限，基本上就是叫天天不灵，叫地地不应了。所以在使用R做数据挖掘时，就必须考虑使用其他的数据工具弥补R在这方面的劣势。尤其是在商业应用上，不能搭建R环境的条件下，SQL语言是提供挖掘结果的不二选择。 支持SQL的商用数据库比如Oracle、DB2性能优异，但对系统的占用非常厉害，假如本地装了Oracle，又开了点其他应用，2G的内存很快就会吃到1.5G甚至以上，再想用R做分析那只能用“捉襟见肘”这个词来形容了。当然如果在办公条件下有相应的服务器环境最好，在某些应用环境下，甚至可以通过本地多开R进程来达到并行计算的目的。 或者本地分析比较多，但数据量又时常上到百兆，虽然R也能够处理，但依然建议将数据移植到本地构建的轻量数据库环境，比如MySQL环境。从我的经验上看，虽然MySQL对比Oracle、DB2来说小巧很多，但在同R语言配合的本地应用上，性能更加有保证。 有了支持SQL的数据库环境，就要聊一聊R语言到底和SQL有什么关系： 各大数据库厂商已经开发了相关的支持R语言的数据挖掘套件，比如Oracle的RODM，Teradata的 teradataR等。 R本身就可以通过扩展包来对数据库执行SQL，这时你可以把R语言作为调度环境。R的计算过程结果可以直接作为参数传递到数据库中，并将相应的结果返回，供R环境使用。 通过sqldf包，在R内部使用标准SQL对数据进行预处理，包括group by，order by，join，where等操作。 当然R最重要的用途是将数据挖掘的结果转义为标准SQL语言，利用数据库来实现挖掘结果。当然有人说了，不是有pmml可以将模型嵌入到数据库么？！扯！到现在我也没见pmml成为应用标准，老老实实的将模型结果转义到SQL才是王道。比如用于概率预测的Logistic回归或者分类模型的Tree-based Models，这些模型的转义工作都不难，这样最终的工程实施都脱离了R环境，更具通用性，且利用了数据库的高速性能。 说句题外话：不知道哪位看官见过70万字符长度的庞大SQL语句——是的，你没看错，70w，R转义的，可以执行，对于数据库而言不过是半分钟的事情。 相关文章： Oracle数据库开始支持R语言 KDnuggets 关于数据挖掘软件的调查 2006年至今国内货币供应量的Motion Chart]]></description>
			<content:encoded><![CDATA[<p>今天看到老同学<a href="http://weibo.com/n/JulieJulieJulieJulie" target="_blank">@JulieJulieJulieJulie</a> 的<a href="http://www.tudou.com/programs/view/g52FYAg63Kg/" target="_blank">浪漫求婚</a>，真的很浪漫、很唯美、很感动。正如评论说的，我们又相信爱情了！于是，小兴奋，睡不着，爬起来补一篇文章。</p>
<p>## 正文开始</p>
<p>最近在数据挖掘专业网站 KDnuggets 上刊出了2011年度关于数据挖掘/分析语言流行度的<a href="http://www.kdnuggets.com/2011/08/poll-languages-for-data-mining-analytics.html" target="_blank">调查</a>，不出意料R、SQL、Python果然排在了前三位。当然有看官说了，参与调查的样本数量太少，而且以登录KDnuggets网站的用户为主，样本的信息显然是有偏的。实话说，我也对KDnuggets网站的Poll持保留态度，但它的结果毕竟代表了某一类人群的使用偏好，尤其是在语言角度。</p>
<p><a href="http://www.bjt.name/wp-content/uploads/2011/08/182924.png"><img class="aligncenter" title="data mining survey" src="http://www.bjt.name/wp-content/uploads/2011/08/182924.png" alt="" width="492" height="305" /></a></p>
<p>我们看排名前5位的语言：</p>
<ol>
<li>R：世界范围内的标准统计语言，以快速更新的算法，灵活的编程，广泛的扩展，绚丽的图形著称，遵循GPL协议的开源软件</li>
<li>SQL：大部分企业使用的，数据仓库、集市的通用查询语言，在大型数据应用上有极大的优势，同时也是数据分析/挖掘的基础</li>
<li>Python：传说中的Google的三大开发语言，适用于粘合一些复杂应用，我这里工作暂时没有涉及过</li>
<li>Java：太多的应用都基于Java的，不然Oracle也不会花上74亿美元收购SUN了</li>
<li>SAS：曾经的数据分析领域老大，当然现在市场份额依旧非常高。但SAS昂贵的使用费用迫使更多的分析工作者转到了开源领域，比如R</li>
</ol>
<p>后四种语言同R语言还都有一些关系，闲扯起来还真是没完没了，这里就不再赘述，各位可以在搜索引擎上搜索R+XXX。如果我们将范围限制在数据挖掘这个主题，R同SQL的关系则变得非常非常紧密。</p>
<p>众所周知，R的强项在于灵活的算法，以及开发速度，但其所有的计算都是在内存中进行，一旦数据量达到了内存上限，基本上就是叫天天不灵，叫地地不应了。所以在使用R做数据挖掘时，就必须考虑使用其他的数据工具弥补R在这方面的劣势。尤其是在商业应用上，不能搭建R环境的条件下，SQL语言是提供挖掘结果的不二选择。</p>
<p>支持SQL的商用数据库比如Oracle、DB2性能优异，但对系统的占用非常厉害，假如本地装了Oracle，又开了点其他应用，2G的内存很快就会吃到1.5G甚至以上，再想用R做分析那只能用“捉襟见肘”这个词来形容了。当然如果在办公条件下有相应的服务器环境最好，在某些应用环境下，甚至可以通过本地多开R进程来达到并行计算的目的。</p>
<p>或者本地分析比较多，但数据量又时常上到百兆，虽然R也能够处理，但依然建议将数据移植到本地构建的轻量数据库环境，比如MySQL环境。从我的经验上看，虽然MySQL对比Oracle、DB2来说小巧很多，但在同R语言配合的本地应用上，性能更加有保证。</p>
<p>有了支持SQL的数据库环境，就要聊一聊R语言到底和SQL有什么关系：</p>
<ul>
<li>各大数据库厂商已经开发了相关的支持R语言的数据挖掘套件，比如Oracle的<a href="http://ftp.ctex.org/mirrors/CRAN/web/packages/RODM/index.html">RODM</a>，Teradata的 <a id="download-6865-7769-0" href="https://downloads.teradata.com/download/applications/teradata-r/1.0">teradataR</a>等。</li>
<li>R本身就可以通过扩展包来对数据库执行SQL，这时你可以把R语言作为调度环境。R的计算过程结果可以直接作为参数传递到数据库中，并将相应的结果返回，供R环境使用。</li>
<li>通过sqldf包，在R内部使用标准SQL对数据进行预处理，包括group by，order by，join，where等操作。</li>
<li>当然R最重要的用途是将数据挖掘的结果转义为标准SQL语言，利用数据库来实现挖掘结果。当然有人说了，不是有pmml可以将模型嵌入到数据库么？！扯！到现在我也没见pmml成为应用标准，老老实实的将模型结果转义到SQL才是王道。比如用于概率预测的Logistic回归或者分类模型的Tree-based Models，这些模型的转义工作都不难，这样最终的工程实施都脱离了R环境，更具通用性，且利用了数据库的高速性能。</li>
</ul>
<p>说句题外话：不知道哪位看官见过70万字符长度的庞大SQL语句——是的，你没看错，70w，R转义的，可以执行，对于数据库而言不过是半分钟的事情。<br />
<h3 class='related_post_title'>相关文章：</h3>
<ul class='related_post'>
<li><a href='http://www.bjt.name/2010/06/oracle-data-mining-r/' title='Oracle数据库开始支持R语言'>Oracle数据库开始支持R语言</a></li>
<li><a href='http://www.bjt.name/2009/05/kdnuggets-datamining-survey/' title='KDnuggets 关于数据挖掘软件的调查'>KDnuggets 关于数据挖掘软件的调查</a></li>
<li><a href='http://www.bjt.name/2011/07/money-supply-motion-char/' title='2006年至今国内货币供应量的Motion Chart'>2006年至今国内货币供应量的Motion Chart</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.bjt.name/2011/08/r-and-sql-datamining/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
	</channel>
</rss>

