<?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/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>こえむの編集後記 &#187; プログラミング</title>
	<atom:link href="http://www.koemu.com/blog/category/internet/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.koemu.com/blog</link>
	<description>いわゆるよくあるblogです</description>
	<lastBuildDate>Sun, 05 Feb 2012 18:06:51 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.koemu.com/blog/category/internet/programming/feed/" />
		<item>
		<title>プログラムはコミュニケーションツール</title>
		<link>http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/</link>
		<comments>http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 14:17:05 +0000</pubDate>
		<dc:creator>こえむ</dc:creator>
				<category><![CDATA[プログラミング]]></category>

		<guid isPermaLink="false">http://www.koemu.com/blog/?p=1460</guid>
		<description><![CDATA[■人と話すのは好きだ、だけど… 僕は小さな頃から、人と話すのは好きでした。特に、自分自身と興味関心が近い人と会話する事が非常に楽しく、時間を忘れて話し込んでしまう事もしばしです。 また、中学生の頃にアマチュア無線をやっていたせいか、10代の頃から年齢が何倍も上の人と話す機会も少なくなく、その時の年齢では得難い知見をたくさんいただきました。 しかし、この1年で気づいた事がありました。自分から話を振る事はあっても、人から話を引き出すのはあまりうまくない、と。 ■直接の会話ではどうも解決しない 人の話をなぜ引き出せないのか。振り返りますと、僕は話し出すと押しが強く、かつ矢継ぎ早に言葉が出てくるように、はたからは見えるようです。だから、それを上回るペースや、よほど念が体から発せられるような存在感の強い人でない限り、僕には「話は聞いてもらえないだろう」と思われるのです。 最近は、自分の話している事が通じないだろう、というどちらかというと消極的な理由で、あまり話さないようにしています。人の会話は、1割も伝わっていればいいということです。たくさん話したところで自分が想像する程伝わってはいないのです。 しかし、これは自分の話す量を制御するだけであって、相手から話してもらう量が変わる訳ではありません。相手の話を引き出すための手法としては失敗しています。 ■プログラム開発を通じて人から話を引き出せる プログラム開発、そして出来上がったソフトウェアを世に広める行為は、開発者の自己主張であるというのが一般的な見方であります。これは主にWebサービス開発やオープンソースソフトウェア開発に言える事でしょうが、受託開発であっても言われるがままという事はありません。 それと同時に、ソフトウェアを通じて利用者から「意見」「感想」そして「苦情」といったフィードバックが届きます。ソフトウェアはコンピュータやネットワーク上で動く道具ですから、使えばフィードバックが来るのは当然です。 これです、これなら自然と相手から話を引き出せます。これに気づいて以来、僕はプログラムと自分自身の関係を聞かれると「プログラムは世間とのコミュニケーションツール」と捉えるようになりました。 ■最近は会話が減った 最近、仕事をしていて会話が減りました。いわゆる上流工程のSEをしているので、要求定義を行う上でのステークホルダーとの会話やプログラマとの情報交換はありますが、それは必要最低限のこと。プログラムを書く仕事はもうありません。ですから、自分でプログラムを書く時間を作らなければなりません(※1)。直近では大学院の講義で出たレポートを仕上げる際や、新しい技術を確認するために書く程度です。 しかし、これでは不足している。4年前のシムエントリのように、自分自身でプログラムを書き、ソフトウェアを世に公開しなければならない。最近、そう考えるようになりました。プログラムを書けば、また広く世間の方々から意見をいただけるようになるのではと思うからです。 ■ソフトウェア開発は少人数でいい 多くのソフトウェアは、とりあえず書ける人を山ほど集めて取りかかるより、敏腕のプログラマが数人集まってささっと書いてしまうことがうまくいきます。そのような体験をされた方は少なからずいらっしゃるはずです。 僕もSEという仕事をしておきながらあれなのですが、正直な所、自分を含めて少人数でプログラムを書き、商品をリリースするほうが効率も良く、より世間の役に立てるのではないかと考えています。僕がやる事は、人をまとめたり指示する事ではなく、出来上がるソフトウェアの品質に責任を持つ事だと自覚しています。それなら、尚更コスト上の「オーバーヘッド」である管理だけの仕事というのは、無駄な気がしているのです。 これは、ソフトウェア開発のマネジメントを放棄しているのではありません。要求定義をはじめとしたソフトウェア開発として向かうべき方向を定め、必要な知識を獲得し、最終製品を作り上げる責任は、変わらずに負うのです。ソフトウェアを自分自身も書いていれば、そのソフトウェアに対してより深く理解するでしょうし、また多くの人とコミュニケーションが出来るのではという期待があります。プログラマによって関わる工程の幅が変わる、それだけの事です。 それが、僕の考える「普通の開発」です。<a href="http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/" class="searchmore">Read the Rest...</a><div class="clr"></div>]]></description>
			<content:encoded><![CDATA[<p><strong>■人と話すのは好きだ、だけど…</strong></p>
<p>僕は小さな頃から、人と話すのは好きでした。特に、自分自身と興味関心が近い人と会話する事が非常に楽しく、時間を忘れて話し込んでしまう事もしばしです。</p>
<p>また、中学生の頃にアマチュア無線をやっていたせいか、10代の頃から年齢が何倍も上の人と話す機会も少なくなく、その時の年齢では得難い知見をたくさんいただきました。</p>
<p>しかし、この1年で気づいた事がありました。自分から話を振る事はあっても、人から話を引き出すのはあまりうまくない、と。</p>
<p><strong>■直接の会話ではどうも解決しない</strong></p>
<p>人の話をなぜ引き出せないのか。振り返りますと、僕は話し出すと押しが強く、かつ矢継ぎ早に言葉が出てくるように、はたからは見えるようです。だから、それを上回るペースや、よほど念が体から発せられるような存在感の強い人でない限り、僕には「話は聞いてもらえないだろう」と思われるのです。</p>
<p>最近は、自分の話している事が通じないだろう、というどちらかというと消極的な理由で、あまり話さないようにしています。人の会話は、1割も伝わっていればいいということです。たくさん話したところで自分が想像する程伝わってはいないのです。</p>
<p>しかし、これは自分の話す量を制御するだけであって、相手から話してもらう量が変わる訳ではありません。相手の話を引き出すための手法としては失敗しています。</p>
<p><strong>■プログラム開発を通じて人から話を引き出せる</strong></p>
<p>プログラム開発、そして出来上がったソフトウェアを世に広める行為は、開発者の自己主張であるというのが一般的な見方であります。これは主にWebサービス開発やオープンソースソフトウェア開発に言える事でしょうが、受託開発であっても言われるがままという事はありません。</p>
<p>それと同時に、ソフトウェアを通じて利用者から「意見」「感想」そして「苦情」といったフィードバックが届きます。ソフトウェアはコンピュータやネットワーク上で動く道具ですから、使えばフィードバックが来るのは当然です。</p>
<p>これです、これなら自然と相手から話を引き出せます。これに気づいて以来、僕はプログラムと自分自身の関係を聞かれると「プログラムは世間とのコミュニケーションツール」と捉えるようになりました。</p>
<p><strong>■最近は会話が減った</strong></p>
<p>最近、仕事をしていて会話が減りました。いわゆる上流工程のSEをしているので、要求定義を行う上でのステークホルダーとの会話やプログラマとの情報交換はありますが、それは必要最低限のこと。プログラムを書く仕事はもうありません。ですから、自分でプログラムを書く時間を作らなければなりません(※1)。直近では大学院の講義で出たレポートを仕上げる際や、新しい技術を確認するために書く程度です。</p>
<p>しかし、これでは不足している。4年前の<a title="ブログを記事で結ぶブログパーツ『シムエントリ』をリリース" href="http://www.koemu.com/blog/2008/02/21/sim-entries/">シムエントリ</a>のように、自分自身でプログラムを書き、ソフトウェアを世に公開しなければならない。最近、そう考えるようになりました。プログラムを書けば、また広く世間の方々から意見をいただけるようになるのではと思うからです。</p>
<p><strong>■ソフトウェア開発は少人数でいい</strong></p>
<p>多くのソフトウェアは、とりあえず書ける人を山ほど集めて取りかかるより、敏腕のプログラマが数人集まってささっと書いてしまうことがうまくいきます。そのような体験をされた方は少なからずいらっしゃるはずです。</p>
<p>僕もSEという仕事をしておきながらあれなのですが、正直な所、自分を含めて少人数でプログラムを書き、商品をリリースするほうが効率も良く、より世間の役に立てるのではないかと考えています。僕がやる事は、人をまとめたり指示する事ではなく、出来上がるソフトウェアの品質に責任を持つ事だと自覚しています。それなら、尚更コスト上の「オーバーヘッド」である管理だけの仕事というのは、無駄な気がしているのです。</p>
<p>これは、ソフトウェア開発のマネジメントを放棄しているのではありません。要求定義をはじめとしたソフトウェア開発として向かうべき方向を定め、必要な知識を獲得し、最終製品を作り上げる責任は、変わらずに負うのです。ソフトウェアを自分自身も書いていれば、そのソフトウェアに対してより深く理解するでしょうし、また多くの人とコミュニケーションが出来るのではという期待があります。プログラマによって関わる工程の幅が変わる、それだけの事です。</p>
<p>それが、僕の考える「普通の開発」です。</p>
<p>※1 プログラムを書く行為は、筋トレと同じで続けていないと知識が腐っていきます。文法やライブラリは見れば思い出せますが、プログラムを書く時の「型」を忘れて行く事で書けなくなるのです。</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:100px;">
				<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.koemu.com%2Fblog%2F2011%2F12%2F04%2Fprogram-as-communication-tools%2F&amp;layout=button_count&amp;show_faces=false&amp;width=100&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:27px;" allowTransparency="true"></iframe>
				</div><div class="really_simple_share_google1" style="width:70px;">
					<g:plusone size="medium" href="http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/" ></g:plusone>
				</div><div class="really_simple_share_twitter" style="width:95px;">
					<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="プログラムはコミュニケーションツール" data-url="http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/" 
						data-via="" data-related="こえむ:The author of this post"></a> 
				</div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.koemu.com/blog/2011/12/04/program-as-communication-tools/" />
	</item>
		<item>
		<title>XBRL勉強会で『言語処理を用いた 相関関係取得の紹介』のプレゼンをしました</title>
		<link>http://www.koemu.com/blog/2010/01/15/xbrl_no8/</link>
		<comments>http://www.koemu.com/blog/2010/01/15/xbrl_no8/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 16:35:16 +0000</pubDate>
		<dc:creator>こえむ</dc:creator>
				<category><![CDATA[ビジネス]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[催し]]></category>
		<category><![CDATA[私の考え]]></category>

		<guid isPermaLink="false">http://www.koemu.com/blog/?p=860</guid>
		<description><![CDATA[1月14日に開催された『第8回 XBRL勉強会』において、上場企業間の『言語処理を用いた 相関関係取得の紹介』と言うプレゼンテーションを行いました。 言語処理を用いた 相関関係取得の紹介 View more documents from koemu. パワーポイントは概要のみで、多くをホワイトボードと質疑応答で話を進めましたので、こちらに補足を書きます。 ■概要 これまで、インデックスを使った投資を行うにあたっては、取引所などが定義した『業種分類』や、ファンドマネージャをはじめとしたプロフェッショナルの知識・経験・そして勘でインデックスが作成されていました。また、インデックスを作成したとしても、この動きが激しい世界では企業間の関係は刻々と変化します。 そこで、定性的でありつつも企業の特徴を垣間みることができる「有価証券報告書」や「決算短信」を用い、これらを自然言語処理の技術を用いて定量化することで、企業のつながりを分析できるか否かの実験を行いました。企業分析では、あまり例がない方法であります。 ■実験手順 実験は、次の手順で行いました。すべてコマンドラインベースで動作しています。プレゼン中は、技術者以外の方にもわかるようベクトルの「なす角」(cosの意味を理解するために必要)についてあわせて解説しています。 やのしんさん開発のAPIを通じ、東証1部上場企業の2009年度中間決算短信（以下、短信）PDFをダウンロード。 このAPIを使うことで、データの取得の自動化が可能になりました。 短信PDFをテキストファイルへ変換。 その後に本文を解析しやすくするための準備となります。<a href="http://www.koemu.com/blog/2010/01/15/xbrl_no8/" class="searchmore">Read the Rest...</a><div class="clr"></div>]]></description>
			<content:encoded><![CDATA[<p>1月14日に開催された『<a href="http://xbrl-study.pbworks.com/FrontPage" target="_blank">第8回 XBRL勉強会</a>』において、上場企業間の『言語処理を用いた 相関関係取得の紹介』と言うプレゼンテーションを行いました。</p>
<div id="__ss_2913254" style="width: 425px; text-align: left;"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" title="言語処理を用いた 相関関係取得の紹介" href="http://www.slideshare.net/koemu/ss-2913254">言語処理を用いた 相関関係取得の紹介</a><object style="margin:0px" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=8xbrl-100114081000-phpapp02&amp;stripped_title=ss-2913254" /><param name="allowfullscreen" value="true" /><embed style="margin:0px" type="application/x-shockwave-flash" width="425" height="355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=8xbrl-100114081000-phpapp02&amp;stripped_title=ss-2913254" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/koemu">koemu</a>.</div>
</div>
<p>パワーポイントは概要のみで、多くをホワイトボードと質疑応答で話を進めましたので、こちらに補足を書きます。</p>
<p><strong>■概要</strong></p>
<p>これまで、インデックスを使った投資を行うにあたっては、取引所などが定義した『業種分類』や、ファンドマネージャをはじめとしたプロフェッショナルの知識・経験・そして勘でインデックスが作成されていました。また、インデックスを作成したとしても、この動きが激しい世界では企業間の関係は刻々と変化します。</p>
<p>そこで、定性的でありつつも企業の特徴を垣間みることができる「有価証券報告書」や「決算短信」を用い、これらを自然言語処理の技術を用いて定量化することで、企業のつながりを分析できるか否かの実験を行いました。企業分析では、あまり例がない方法であります。</p>
<p><strong>■実験手順</strong></p>
<p>実験は、次の手順で行いました。すべてコマンドラインベースで動作しています。プレゼン中は、技術者以外の方にもわかるようベクトルの「なす角」(cosの意味を理解するために必要)についてあわせて解説しています。</p>
<ol>
<li><a href="http://xbrl-study.pbworks.com/2009%E5%B9%B411%E6%9C%885%E6%97%A5%E3%80%80%E7%AC%AC%E4%B8%83%E5%9B%9EXBRL%E5%8B%89%E5%BC%B7%E4%BC%9A%E3%83%BB%E3%83%AA%E3%83%99%E3%83%B3%E3%82%B8" target="_blank">やのしんさん開発のAPI</a>を通じ、東証1部上場企業の2009年度中間決算短信（以下、短信）PDFをダウンロード。<br />
このAPIを使うことで、データの取得の自動化が可能になりました。</li>
<li>短信PDFをテキストファイルへ変換。<br />
その後に本文を解析しやすくするための準備となります。</li>
<li>各企業の短信の本文を分かち書き。<br />
日本語は英語と違い単語の区切りがないため、専用のツールで単語ごとに「分かち書き」と言う処理が必要になります。</li>
<li>分かち書きした各企業の短信のTF、および全銘柄のIDF、RIDFを算出。<br />
TF/IDFについては、たつをさんのエントリ『<a href="http://chalow.net/2005-10-12-1.html" target="_blank">形態素解析と検索APIとTF-IDFでキーワード抽出</a>』が詳しいです。</li>
<li>各企業の短信をすべてつきあわせ、短信間の内容の類似度(cos)を算出。<br />
実際は7で指定する企業のみ演算すればいいのですが、今回は途中で全cos値を調べたいと思いわざわざすべて計算させました。</li>
<li>RIDFを用い、各短信の代表キーワードを算出。<br />
どんなキーワードがその短信の特徴的な単語で影響を及ぼしやすいものであるのか、わかりやすくするために抽出しました。RIDFについては、当ブログ『<a href="http://www.koemu.com/blog/2008/03/20/use_ridf/" target="_blank">【シムエントリ】 代表キーワードによる検索に変わります</a>』をご覧ください。</li>
<li>指定した企業において、cos値が0.5以上の短信を3階層までリンクしていく。</li>
<li>リンク結果を図に描画する。</li>
</ol>
<p><strong>■出力データ（画像へリンク）</strong></p>
<p>このような形で出力しています。紹介している企業はスライドでピックアップしているものです。</p>
<ul>
<li>9501: 東京電?<br />
<a title="9501:東京電力 by koemu, on Flickr" href="http://www.flickr.com/photos/koemu/4273595497/"><img src="http://farm5.static.flickr.com/4041/4273595497_31c42233f7.jpg" alt="9501:東京電力" width="500" height="184" /></a></li>
<li><a href="http://www.flickr.com/photos/koemu/4274339286/" target="_blank">7003: 三井造船</a></li>
<li><a href="http://www.flickr.com/photos/koemu/4274339490/" target="_blank">1868: 三井ホーム</a></li>
<li><a href="http://www.flickr.com/photos/koemu/4273596027/" target="_blank">7259: アイシン精機</a></li>
<li><a href="http://www.flickr.com/photos/koemu/4274339640/" target="_blank">4005: 住友化学</a></li>
<li><a href="http://www.flickr.com/photos/koemu/4274339558/" target="_blank">4689: ヤフー</a></li>
<li><a href="http://www.flickr.com/photos/koemu/4274340122/" target="_blank">1959: 九電?</a></li>
<li><a href="http://www.flickr.com/photos/koemu/4273596105/" target="_blank">8165: 千趣会</a></li>
</ul>
<p><strong>■プレゼン中いただいたお話</strong></p>
<p>プレゼン中の質疑応答時間、様々なお話を頂戴しました。</p>
<p>・大量保有報告書や第三者割り当てのレポートを活用できないか<br />
これらの報告をする人たちの中に、キープレーヤーがいます。そのキープレーヤーの動向をテキストマイニングで抽出できれば、より客観的に市場の動きを把握できるのでは、とのことでした。</p>
<p>・IFRSのメジャーカスタマー欄を参考にして取引関係をより緻密にとらえられるかもしれない<br />
テキストマイニングばかりではなく、IFRSをはじめとしたほかのデータソースを用いて相関をよりわかりやすく（どういったつながりなのか）していく方法もある、と教えていただきました。</p>
<p>・XBRLとの掛け合わせについて<br />
それぞれのタクソノミをベクトル化して類似度を測ってみたいと言う話をしたところ、リンクや米国での事例について紹介いただきました。</p>
<p>・一見関連性がないつながりは書いている人が一緒か同じ会社かとかがあるかもしれない</p>
<p>ほかにも、いろいろなご意見を頂戴しました。どうもありがとうございました。</p>
<p><strong>■活用したライブラリ・ツール</strong></p>
<p>多くのツールは、Ubuntuのリポジトリからダウンロードできますので、手軽にインストール可能です。</p>
<ul>
<li><a href="http://www.sun.com/software/products/opscenter/" target="_blank">Sun VirtualBox</a></li>
<li><a href="http://www.ubuntu.com/" target="_blank">Ubuntu Linux</a> 8.04.3 LTS Server</li>
<li>Perl 5.8</li>
<li><a href="http://mecab.sourceforge.net/" target="_blank">mecab</a> + ipadic<br />
形態素解析…分かち書きのためのツール</li>
<li><a href="http://www.graphviz.org/" target="_blank">graphviz</a><br />
相関図作成ツール</li>
<li><a href="http://www.foolabs.com/xpdf/" target="_blank">xpdf</a> (pdftotext)<br />
PDF関連ツール （今回はテキスト抽出のみ利用）</li>
</ul>
<p><strong>■参考図書</strong></p>
<ul>
<li><a href="http://www.amazon.co.jp/gp/product/0521865719?ie=UTF8&amp;tag=koemu-22&amp;linkCode=as2&amp;camp=247&amp;creative=7399&amp;creativeASIN=0521865719">Introduction to Information Retrieval</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.jp/e/ir?t=koemu-22&amp;l=as2&amp;o=9&amp;a=0521865719" border="0" alt="" width="1" height="1" /><br />
以前、勉強会でお世話になった教科書です。洋書ですが、情報検索に必要な知識が一通り学べます。</li>
<li><a href="http://www.amazon.co.jp/gp/product/4320120361?ie=UTF8&amp;tag=koemu-22&amp;linkCode=as2&amp;camp=247&amp;creative=7399&amp;creativeASIN=4320120361">情報検索アルゴリズム</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.jp/e/ir?t=koemu-22&amp;l=as2&amp;o=9&amp;a=4320120361" border="0" alt="" width="1" height="1" /><br />
特に検索部分について解説している教科書です。上記IIR本と一緒にどうぞ。</li>
<li><a href="http://www.amazon.co.jp/gp/product/4061546538?ie=UTF8&amp;tag=koemu-22&amp;linkCode=as2&amp;camp=247&amp;creative=7399&amp;creativeASIN=4061546538">ゼロから学ぶ線形代数</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.jp/e/ir?t=koemu-22&amp;l=as2&amp;o=9&amp;a=4061546538" border="0" alt="" width="1" height="1" /><br />
特にドキュメント間の類似度を演算する時に利用しています。数学からしばらく離れてしまっていた場合に役立ちます。</li>
</ul>
<p><strong>■個人的な目的</strong></p>
<p>自然言語処理と、企業分析。それぞれの分野に置いて、非常に長けた能力を持っている人や前線にたって活躍されている方がいらっしゃいます。しかし、両方を兼ね備えて活躍されている方は、あまり見受けません。正直、自分が今から一つの分野で勝負するには、かなりハードでやりきれる自信はありません。</p>
<p>そして、定量的分析が進んでいる企業分析に置いて、定性的データを分析しているというレポートを、私は今まであまり見たことがありませんでした（前回の勉強会で少し出た程度です）。</p>
<p>今回、発表する題材を決めるにあたり、自分が経験してきた自然言語処理と企業分析というあまり近くなかった分野を絡めて発表することで、何か印象を残すことができればと期待していました。それが、自分ならではのものだと思ったからです。誰かが言っていました。一つの専門の人は数多くいるけど、ある程度の能力でも二つ以上の能力を掛け合わせられる人はなかなかいない、と。</p>
<p><strong>■感想</strong></p>
<p>目的が達せられてよかったです。</p>
<p>掛け合わせると言えば聞こえはいいのですが、常識的ではないことでもありましたので勉強会内で受け入れてもらえるのか、発表まで心配でした。それも、XBRL勉強会と言うのにXBRLの話がほとんどないという…。しかし、企業分析と言うもう一つの部分について興味を持っていただくことができ、とても嬉しく思っています。また、企業の分類にテキストマイニングと言う手法があることも皆さんにお伝えできたのではと考えています。</p>
<p>（体調を崩していて新年会に行けなかったことだけが心残りです）</p>
<p>勉強会に参加されていた皆様、どうもありがとうございました！</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:100px;">
				<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.koemu.com%2Fblog%2F2010%2F01%2F15%2Fxbrl_no8%2F&amp;layout=button_count&amp;show_faces=false&amp;width=100&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:27px;" allowTransparency="true"></iframe>
				</div><div class="really_simple_share_google1" style="width:70px;">
					<g:plusone size="medium" href="http://www.koemu.com/blog/2010/01/15/xbrl_no8/" ></g:plusone>
				</div><div class="really_simple_share_twitter" style="width:95px;">
					<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="XBRL勉強会で『言語処理を用いた 相関関係取得の紹介』のプレゼンをしました" data-url="http://www.koemu.com/blog/2010/01/15/xbrl_no8/" 
						data-via="" data-related="こえむ:The author of this post"></a> 
				</div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.koemu.com/blog/2010/01/15/xbrl_no8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.koemu.com/blog/2010/01/15/xbrl_no8/" />
	</item>
		<item>
		<title>アルゴリズムを知るとプログラムが豊かに書ける</title>
		<link>http://www.koemu.com/blog/2008/03/06/algorithm/</link>
		<comments>http://www.koemu.com/blog/2008/03/06/algorithm/#comments</comments>
		<pubDate>Thu, 06 Mar 2008 12:31:45 +0000</pubDate>
		<dc:creator>こえむ</dc:creator>
				<category><![CDATA[インターネット]]></category>
		<category><![CDATA[ビジネス]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[私の考え]]></category>

		<guid isPermaLink="false">http://www.koemu.com/blog/2008/03/06/algorithm/</guid>
		<description><![CDATA[アルゴリズムを学ぶと、プログラムの幅が広がるよ！それも言語に囚われずに。というお話。 最近作った『シムエントリ』。 自然言語処理(テキストマイニング)の知識を学んだことで、初めて開発できたサービスです。 しかし、ほんの1ヶ月前まではこれらの知識なぞさっぱりありませんでした。たまたま、現在スポットで勤めている某研究所でプログラムの助手をしていたのがきっかけで、学ぶ機会に恵まれました。 さて、日々プログラムに触れられている皆様、アルゴリズムに純粋に触れる機会はどの程度でしょうか？ 現在よく使われている高級言語(Java, Perl, Python, etc&#8230;)には様々なライブラリが揃えられていて、そのライブラリが動くアルゴリズムを知らなくても、存在を覚えさえすればプログラムが書けてしまいます。例としては、配列のソートや、ハッシュテーブルなどでしょうか。 そして、巷でよく見かけるプログラム技術は、主にライブラリの使い方や、コーディングテクニックです。 これらは、確かに自分自身のプログラムスキルを上げるポイントにつながることは否定しません。過去、僕もこれらをたくさん学んだ時期があります。 おそらく、『上達した！』という優越感を持ちやすいからなのでしょう。 しかし、ライブラリとかコーディングテクの知識は、言語に依存していることが少なくありません。 言語の栄枯盛衰が早い(※1)現在、極端な言い方をすればこれらは使い捨ての知識に成り下がる危険性をはらんでいます。 これは、非常にもったいないな！と最近気づきました。 そんな中で出会った、自然言語処理のアルゴリズム。 出会うまでは『小難しいものだから』や『GoogleやYahoo!に勤める専門家が使うものでしょう』と、言い訳を考えて敬遠していました。 でも、やってみたら、そんなことないものも数多くあったのです(※2)。 テストプログラム程度ならすぐに結果が出ますし、何よりたいていの言語で実装可能(＝自分の好きな言語で実装OK)です。 ちなみに、シムエントリのベースは数日で出来上がってしまいました(※3)。公開の準備のほうが時間がかかったくらいです。<a href="http://www.koemu.com/blog/2008/03/06/algorithm/" class="searchmore">Read the Rest...</a><div class="clr"></div>]]></description>
			<content:encoded><![CDATA[<p>アルゴリズムを学ぶと、プログラムの幅が広がるよ！それも言語に囚われずに。というお話。</p>
<p>最近作った『<a href="http://se.koemu.com/" target="_blank">シムエントリ</a>』。<br />
自然言語処理(テキストマイニング)の知識を学んだことで、初めて開発できたサービスです。<br />
しかし、ほんの1ヶ月前まではこれらの知識なぞさっぱりありませんでした。たまたま、現在スポットで勤めている某研究所でプログラムの助手をしていたのがきっかけで、学ぶ機会に恵まれました。</p>
<p>さて、日々プログラムに触れられている皆様、アルゴリズムに純粋に触れる機会はどの程度でしょうか？<br />
現在よく使われている高級言語(Java, Perl, Python, etc&#8230;)には様々なライブラリが揃えられていて、そのライブラリが動くアルゴリズムを知らなくても、存在を覚えさえすればプログラムが書けてしまいます。例としては、配列のソートや、ハッシュテーブルなどでしょうか。<br />
そして、巷でよく見かけるプログラム技術は、主にライブラリの使い方や、コーディングテクニックです。<br />
これらは、確かに自分自身のプログラムスキルを上げるポイントにつながることは否定しません。過去、僕もこれらをたくさん学んだ時期があります。<br />
おそらく、『上達した！』という優越感を持ちやすいからなのでしょう。</p>
<p>しかし、ライブラリとかコーディングテクの知識は、<strong>言語に依存していることが少なくありません</strong>。<br />
言語の栄枯盛衰が早い(※1)現在、極端な言い方をすればこれらは<strong>使い捨ての知識に成り下がる</strong>危険性をはらんでいます。</p>
<p>これは、非常にもったいないな！と最近気づきました。</p>
<p>そんな中で出会った、自然言語処理のアルゴリズム。<br />
出会うまでは『小難しいものだから』や『GoogleやYahoo!に勤める専門家が使うものでしょう』と、言い訳を考えて敬遠していました。<br />
でも、やってみたら、そんなことないものも数多くあったのです(※2)。<br />
テストプログラム程度なら<strong>すぐに結果が出ます</strong>し、何より<strong>たいていの言語で実装可能</strong>(＝自分の好きな言語で実装OK)です。<br />
ちなみに、シムエントリのベースは数日で出来上がってしまいました(※3)。公開の準備のほうが時間がかかったくらいです。</p>
<p>アルゴリズムを知ることで、今まで「やりたくても<strong>やり方を知らなかった</strong>」ことができるようになったり、今やれていることでも「<strong>よりスマートに</strong>」できるようになるのです。<br />
少なくても、単語を探すときに線形検索(端から端まで順繰り探す)することがいかにに無駄で、2分探索など効率よく・すばやく探すアルゴリズムがどれだけ大切か、などに気づいていただけると思います(※4)。</p>
<p>僕が思うに、アルゴリズムは<strong>先人の知恵</strong>です。<br />
多くの賢い人が考え、苦心された末に一般化された知識を、使わない手はありません。<br />
また、多くのプログラムに応用することができるので、プログラミングもより楽しくなること間違いありません。</p>
<p>今、まさに自分自身が楽しんでいます。</p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?t=koemu-22&#038;o=9&#038;p=8&#038;l=as1&#038;asins=4894712369&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p>※1<br />
僕は、10年前にVisual Basic 4.0を皮切りに、C, C++ (&#038; MFC), Perlを、仕事をはじめてからさらにJava, JavaScript, PL/SQL, PHP, Python と様々な言語に関わってきました。<br />
この中で、10年前から継続して使っているのはC, C++, Perl の3つです。<br />
さらに、今まで扱ったフレームワークを含めると、栄枯盛衰の早さをより垣間見ることがあります。</p>
<p>※2<br />
解説しているWebサイトも数多くあることもわかりました。自然言語処理関係はたつをさんのブログにとてもお世話になっています。<br />
■<a href="http://chalow.net/" target="_blank">たつをのChangeLog</a><br />
オススメ＞＞『<a href="http://chalow.net/2005-10-12-1.html" target="_blank">[を] 形態素解析と検索APIとTF-IDFでキーワード抽出</a>』</p>
<p>※3<br />
自然言語処理のアルゴリズムをちょっと学ぶと、シムエントリがいかに単純なサービスなのかがご理解いただけると思います。</p>
<p>※4<br />
これは例としてあまりにレベルが低いのですが…。もうちょっといい例がないかな。</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:100px;">
				<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.koemu.com%2Fblog%2F2008%2F03%2F06%2Falgorithm%2F&amp;layout=button_count&amp;show_faces=false&amp;width=100&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:27px;" allowTransparency="true"></iframe>
				</div><div class="really_simple_share_google1" style="width:70px;">
					<g:plusone size="medium" href="http://www.koemu.com/blog/2008/03/06/algorithm/" ></g:plusone>
				</div><div class="really_simple_share_twitter" style="width:95px;">
					<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="アルゴリズムを知るとプログラムが豊かに書ける" data-url="http://www.koemu.com/blog/2008/03/06/algorithm/" 
						data-via="" data-related="こえむ:The author of this post"></a> 
				</div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://www.koemu.com/blog/2008/03/06/algorithm/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.koemu.com/blog/2008/03/06/algorithm/" />
	</item>
	</channel>
</rss>

