カテゴリ '私の考え' の記事一覧

5 月26日

最近取り組んでいること‐文武両道?!

未知の世界は面白い

生きていれば生きているほど、自分の『無知』を痛感するものです。
でもそんな中でアンテナを張っていると、自分の興味の有無にかかわらず様々な学習の機会を見つけることができます。それは、人からの又聞きであったり、自分から調べて得られるものもあれば、ラッキーなことにお誘いを受けたりできるものであったりもします。
その機会を生かすことができれば、今までできなかったことがクリアできるばかりではなく、これまでとは違った視点で物事を考えて実行できたりして、より面白いことができること請け合いだったりします。

社会人になってから得られた「体系的に学ぶ機会」

社会人になりますと、体系的に学ぶ機会がめっきり減ります。大企業ですと、社内研修をはじめとしたカリキュラムや大学院への入学という機会を得られる人もいますが、私のように中小企業に勤めていると会社から用意してもらえることはなかなかありません。
まして、私は大学へ行ったことがなく(大学中退でもありません)、専門的なことを体系的に学ぶなんて夢のまた夢であるようにも思っていました。

そんな中、たつをさんが主催されている「IIR輪講」に、途中からではありますが参加する機会を得ることができました。
F1000013

参加できたことによるメリットが3つあります。
1. 体系的に言語処理に関する専門的な事柄を学べる
2. 『輪講』というスタイルに慣れる事ができる
3. 英語を読む勉強にもなる (教科書として利用している「Introduction to Information Retrieval」は英語です)

実は、今年の冬にいた研究所で言語処理をかじった際に「自然言語処理を体系的(※1)に学べたら…でも大学行きなおすには時間がもったいない。」と考えていたタイミングでもありました。ですので、僕にとっては本当にまたとないすばらしい機会にめぐり合えた、とてもうれしい気分で毎回楽しみにしながら通っています。
また、実務や研究で実際に取り組まれている方とも一緒にできることから、より実践的な部分で学ぶ部分も数多くあります。アルゴリズムの話は、理屈だけで実装するとパフォーマンスなどの問題で実用にならないことがあり、そこを実務を通して得た経験、特にプログラムの実装の事柄をあわせて学んだりすることができるのです。
ただ、輪講ですからそのうち順番が回ってきます。さて、自分で担当する1章まるまる解説できるほど理解が深められるか…。仕事とはまた違った「厳しい」側面も持つ、輪講でもあります。
このような機会を設けていただいたたつをさん、どうもありがとうございます。

意識して体を作る

学校に行っている時分は、授業に「体育」があったり部活があったりして、体を動かす機会が必ずありました。
しかし、社会人になりますと、ガデン系の仕事は別として体を動かす機会がめっきり減ります。特に、僕のようなコンピュータのエンジニアをしていると、ほぼ1日中座っていて体を作ることなんてまったくありません。そうすると、体のあちこちが変調を訴えたりしやすくなり、あまりよろしくありません。
そんな中、今勤めている会社は『自転車通勤』が認められていて、かつ2人ほど実際に取り組んでいる人がいることがわかりました。

そんなこともあり、今月の後半から自転車通勤をはじめました。
目的はひとつ。体を作ること。
都内の通勤ですと、実は自転車通勤も電車の通勤も時間がそんなに変わらないことがあります。実際、15Kmの距離をママチャリで通うと、片道にして約1時間で通うことができます。電車だと平均して45分(40~50分の間)ですから、思ったほどロスがありません。それに、朝の通勤ラッシュの中を通うことを考えたら、実は楽だったりするのです。
あと、季節を感じたり、途中でコーヒーを飲むなどの寄り道ができたりして、意外に面白かったりもします。
そして、持病の腰痛もよくなって、体力がつけばなと期待しています。

今日の朝からは、クロスバイクでいよいよ本格的に自転車通勤に挑戦します。クロスバイクというのは、マウンテンバイク(MTB)とロードレーサー(競技用自転車)を足して2で割ったような自転車でして、公道をそれなりの速度できびきび走りやすいように作られた自転車を指します。
これで、ひょっとしたら電車で通うのと変わらない時間で通勤できるようになるかもしれません。終電も気にしなくてよくなるし。
細かい話は、別エントリで。

まとめ

ということで、今日は「いろいろチャレンジするとなんか面白いことが起きるよ」というお話でした。

※1: 仕事の中で、ad-hoc的にいろいろなことを覚えることは可能です。しかし、体系的に学ぶことと決定的に違うのは、知識の『関連』を知りやすいか、そうでないかという問題があるのです。本当に賢い人は知識同士をつなぐ力があるのかもしれませんが、普通なかなかそうは行きません。だから、学校をはじめとした教育の場が必要なのです。


3 月31日

大企業に(一時的に)勤めるのもいいかもしれない

大企業には『教え』『教わる』環境があり、新たな力をつけるのにはいい環境だよ、と言うお話。

前の会社を辞めたのが今年のはじめ。そして、明日から新しい会社に行くことになります。
その間、遊んでいるのはもったいない(そして生活しないといけない(^^;)ので、短期であることを了解いただいた上で働いていました
で、その場所が某巨大法人の『研究所』でした。

僕は今までベンチャー企業という『行動力』を試される環境で、試行錯誤しつつ結果を追求する毎日を送っていました。これはとてもアグレッシブですし、何よりも「自分がやった!」という充実感を得やすい環境です。
でも、体系的に学ばなくてはならないこと、たとえば『理屈』を覚えるには、ベンチャー企業でできないことはないけど大変なのは、経験された方には理解いただけるかと思います。

さて、僕が経験できたのは大きく2つ。

■自然言語処理の基礎的な知識を獲得できた
これが一番大きな収穫です。
インターネットサービスに取り組むにあたり、自然言語は切っても切れない存在です。皆様の一番身近な存在が、そう、検索エンジン。
これが理解できると、Web上に散在している様々な情報が自分にあった形に整理整頓でき、利用される人たちに新たな価値を提供することができるのです。これを給料をもらいながら学べると言うのは非常にありがたいことです。学校ではこうは行きません。
そして、覚えられるペースがとっても速い。自然言語処理を十分に理解をしている人=研究員の人から直々に学べるので、端的に教わることができ、かつわからないこともすぐに質問して解決することができます。通常ですと、本を読むか大学で学ぶことになりますから、こんなに速くは覚えられなかったと思います。

■どのように人と接すればよいか
ベンチャー企業にいると、少ない人数で積極的に仕事をするため、多くの場合はフランクな人間関係になります。限りなく対等な関係を築いている会社もあるかと思います。
しかし、大企業はいい意味でも・悪い意味でも、上下が存在するカタい人間関係が構築されています。そのせいでしょうか、できる限り人を傷つけない・当たり障りがない話し方が普及しているようです。言い換えれば、温和な話し方なのです。
研究員の皆さんと毎日昼飯に出かけたときに(※1)、このことがよくわかりました。

逆に、自分から提供できたものが2つあります。

■プログラミング
今回の僕のタスクは、研究課題をプログラムに起こすこと。
これは、ベンチャーで今まで取り組んでいた『いかにすばやく形作るか』というノウハウがとても活きました。
必要とされた仕事で満足いただけたのが、何よりよかったです。

■開発に際する周辺知識の提供
たとえば、LinuxでSambaサーバを立ち上げたりするノウハウ。
Linuxの設定や最適化をやれる人はやれるそうなのですが、多くの人は研究に集中していてなかなか手に付かなかったり、知る機会が無かったりするそうです。そこを、知っている人間=僕がチョコチョコ設定方法をご案内することで、よりスムーズな研究ができるような環境をお手伝いすることができます。
また、これは自然言語処理の知識を教えていただいた御礼、という側面もあります。

ちょうど、対称になっているんです。

人には本来過ごしやすい環境というのがあります。例えば、僕ならベンチャー企業で仕事をすることなのかもしれません。
そんな中、短期間であれ、あえて違う環境に身を置く事で、お互いの足りなかった知識・知恵・そして人材が交流でき、いわゆるWIN-WINの関係を築くきっかけを作ることができる。これがわかったのは非常に大きいと感じています。

研究員の皆さん、どうもありがとうございました。

※補足1
大企業、特に創業から数十年経過している大企業と言うのは『人を大切にする』土壌が整っていることが多いように感じます。
その反面、中小企業は年がら年中「人が足りない」と言って求人広告を出し続けます。この費用を、少しでも人を大切にする、たとえば人材教育にまわすことができたなら、人を増やさずも社内に「会社の価値を高める人」が増えていくのに。と思いました。

※補足2
プログラムができる人を探されているようです。
会社として体をなしていること(派遣会社経由や、1人の”会社”でもいいらしい)と、C/C++などの『プログラムの基礎を理解する言語』の経験者であることが条件だそうです。興味があれば門を叩かれてもいいかもしれません。

※1
今までは積極的に人と昼飯を食べに行くことはありませんでした。自分の時間がほしい、と思っていたのがとても強いです。
結果として人と接する時間を減らしてしまっていたのかもしれません。


3 月17日

『体感』が自らを円滑に回す鍵となる

先週の土曜日(8日)、またまたスキーへ行ってきました。
10年ぶりにスキーを再開して(『ガーラ湯沢へ行く‐”ひとりもん”にやさしいゲレンデ』も参照)はや1ヶ月。やればやるほど楽しくなってしまい、月曜日にびゅうプラザに通うようになってしまいました。
この前は、三山共通リフト券で石打丸山スキー場まで足を運んでいました。


さらさらの新雪に飛び込め! @ガーラ湯沢スキー場 メロディ
[ 1/60sec / F18 / 28mm / ISO 100 / EF 28mm F2.8 ]

なんでスキーにのめりこみ始めたのだろう?
たぶん、僕は『体感』、いうなればリアルな感覚を求めていたのだろう、と思ったんです。

普段、僕は仕事でも自宅でもコンピュータに触れています。
コンピュータを使えば、インターネットを通じて世界とリアルタイムにつながっているし、それによって情報を発信したりコミュニケーションをとることが容易にできます。
これはすばらしいことで、インターネットがなかったころに比べてより多くの経験を積み重ねることができます。

しかし、『体感』する機会がずいぶんと減ってしまいました。
それを忘れかけていたときに、またスキーに出会ったことは僕にとって大きなことだと感じずにはいられません。


この眺めも刻々と変化していきます @石打丸山スキー場 山頂
[ 1/400sec / F18 / 28mm / ISO 100 / EF 28mm F2.8 ]

スキーをしていると、様々な『感触』が体のすべてに伝わってきます。
まず、体全体の感触。じっとしていれば寒いけど、動くと実はそうでもないどころか暑い。
続いて、最も多いのが足から伝わる感触。板や路面から直接伝わる、まるで大地と対話するような感覚。
そして、自然から伝わる同じものがひとつとしてない環境。新雪のさらさら感や、そして気温が上がることで重くなる雪が『感触』を絶え間なく変化させていきます。

スキーに限らず、スポーツ全般において体でリアルな『感触』を感じられます。
これって、コンピューターを使っていては絶対に感じることができないものばかりです。


飯だ! @石打丸山スキー場
[ 1/500sec / F11 / 28mm / ISO 100 /
EF 28mm F2.8 ]

ごはんがとってもうまい! @ニュー丸山
[ 1/60sec / F4.0 / 28mm / ISO 100 /
EF 28mm F2.8 ]

もちろん、動けば腹も減り、疲れ、そして眠くなります。
コンピュータを使っていてもそうなるだろう!?もちろんなります。だけど、なんかおかしな疲れ方だな、と最近感じるようになったのです。おなかが減っているのに思ったほど食べられなかったり、眠いのに深く眠りづらかったり。
それが、スキーをした後はたらふく食べて気持ちいいし、何よりぐっすり眠れて翌朝とても気持ちいいのです。心も体も軽い(※1)。
一言、爽快なんです。


石打丸山 大丸山ゲレンデ リフトも空いていて練習にもってこい
[ 1/1250sec / F11 / 28mm / ISO 100 / EF 28mm F2.8 ]

データを取っていないので断定はできないのですが、10年前に比べて周囲でスポーツをする人が減ったように思います。
その際たるものがスキー場。減り方が顕著です。ブームが過ぎ去った、だけで片付かないほど減っている。
おそらく、情報やエンターテイメントという『経験』を得る行為が、インターネットをはじめとした部屋の中でできる方法で完結しやすくなったことによるものなのでしょう。そして、『経験』を得ると満足します。

僕は公私共にコンピュータを使っているのでこれらの存在を否定しません。それどころか、『経験』を得る手段としてもっと活用されていいと日々考えています。

しかし、その反面で体への直接の刺激、いうなれば『体感』の量が絶対的に不足しはじめています。
『体感』は人間が人間になる前から影響を受けている、『経験』よりも原始的なものです。だから、体感が不足することで人間が生きるための原始的な力である衣・食・住のバランスが崩れるのです。そして、体ばかりでなく心が病んでしまう人が増えているのかなと考えずにはいられません。

体感を得るために動くことで、体のサイクルが生まれる。
だけど、部屋の中だとじっとしているので、その体のサイクルが壊れる。
それに気づきました(※2)。


僕が中学生のころ … 必ず誰かと行ってた 道具も全部揃えて (右が僕です)
ダイナランドスキー場 スカイラインA

ちょっと難しい話になってしまいましたけど、結論はひとつ。
『スポーツをすると心身ともにすっきりできる。』

一人ではじめるのもよし。友達と始めるのもよし。もしやるなら、一人より仲間がいたほうがいいかも(※3)。
そして、僕も次の冬に向けて体を鍛えていこう!
と、帰りの新幹線でJanet Jackson(※4)を聞きながら物思いにふけるのでありました。

※1
筋肉痛にはなりました(笑)。それも次の日にはよくなりました。

※2
僕の周りですばらしい功績を残している人は、少なからず何かのスポーツをされていました。フィットネスクラブがその際たる例。なるほど、つながりました。

※3
スキーはやっぱり仲間とやるほうがもっと楽しい。
滑っているときは純粋にスポーツとして楽しめます。けど、移動時間、休憩、そして食事の時間をとても楽しく過ごせるのは仲間がいるから。僕は、社会人になってから『仲間』にあまり目を向けなさ過ぎた気がする。
この写真を掘り出して、もうひとつ忘れていたものを思い出しました。

※4
Michael Jacksonの妹。80~90年代に最も勢いがあったアーティストです。今はもうちょっとがんばってほしいな。


3 月6日

アルゴリズムを知るとプログラムが豊かに書ける

アルゴリズムを学ぶと、プログラムの幅が広がるよ!それも言語に囚われずに。というお話。

最近作った『シムエントリ』。
自然言語処理(テキストマイニング)の知識を学んだことで、初めて開発できたサービスです。
しかし、ほんの1ヶ月前まではこれらの知識なぞさっぱりありませんでした。たまたま、現在スポットで勤めている某研究所でプログラムの助手をしていたのがきっかけで、学ぶ機会に恵まれました。

さて、日々プログラムに触れられている皆様、アルゴリズムに純粋に触れる機会はどの程度でしょうか?
現在よく使われている高級言語(Java, Perl, Python, etc…)には様々なライブラリが揃えられていて、そのライブラリが動くアルゴリズムを知らなくても、存在を覚えさえすればプログラムが書けてしまいます。例としては、配列のソートや、ハッシュテーブルなどでしょうか。
そして、巷でよく見かけるプログラム技術は、主にライブラリの使い方や、コーディングテクニックです。
これらは、確かに自分自身のプログラムスキルを上げるポイントにつながることは否定しません。過去、僕もこれらをたくさん学んだ時期があります。
おそらく、『上達した!』という優越感を持ちやすいからなのでしょう。

しかし、ライブラリとかコーディングテクの知識は、言語に依存していることが少なくありません
言語の栄枯盛衰が早い(※1)現在、極端な言い方をすればこれらは使い捨ての知識に成り下がる危険性をはらんでいます。

これは、非常にもったいないな!と最近気づきました。

そんな中で出会った、自然言語処理のアルゴリズム。
出会うまでは『小難しいものだから』や『GoogleやYahoo!に勤める専門家が使うものでしょう』と、言い訳を考えて敬遠していました。
でも、やってみたら、そんなことないものも数多くあったのです(※2)。
テストプログラム程度ならすぐに結果が出ますし、何よりたいていの言語で実装可能(=自分の好きな言語で実装OK)です。
ちなみに、シムエントリのベースは数日で出来上がってしまいました(※3)。公開の準備のほうが時間がかかったくらいです。

アルゴリズムを知ることで、今まで「やりたくてもやり方を知らなかった」ことができるようになったり、今やれていることでも「よりスマートに」できるようになるのです。
少なくても、単語を探すときに線形検索(端から端まで順繰り探す)することがいかにに無駄で、2分探索など効率よく・すばやく探すアルゴリズムがどれだけ大切か、などに気づいていただけると思います(※4)。

僕が思うに、アルゴリズムは先人の知恵です。
多くの賢い人が考え、苦心された末に一般化された知識を、使わない手はありません。
また、多くのプログラムに応用することができるので、プログラミングもより楽しくなること間違いありません。

今、まさに自分自身が楽しんでいます。

※1
僕は、10年前にVisual Basic 4.0を皮切りに、C, C++ (& MFC), Perlを、仕事をはじめてからさらにJava, JavaScript, PL/SQL, PHP, Python と様々な言語に関わってきました。
この中で、10年前から継続して使っているのはC, C++, Perl の3つです。
さらに、今まで扱ったフレームワークを含めると、栄枯盛衰の早さをより垣間見ることがあります。

※2
解説しているWebサイトも数多くあることもわかりました。自然言語処理関係はたつをさんのブログにとてもお世話になっています。
たつをのChangeLog
オススメ>>『[を] 形態素解析と検索APIとTF-IDFでキーワード抽出

※3
自然言語処理のアルゴリズムをちょっと学ぶと、シムエントリがいかに単純なサービスなのかがご理解いただけると思います。

※4
これは例としてあまりにレベルが低いのですが…。もうちょっといい例がないかな。


2 月27日

ひとつ言い忘れたことがありました‐AMNブロガー勉強会の話

この前書いた『AMNブロガー勉強会』の話で、大事なことを言い忘れました。

様々な努力、ノウハウ、そして想い以上に大切なこと。
それは『スキマ』をちゃんと埋めていることでしょうか。

みんながやっていなかったことをやる。
または、みんながやっているけど、足りていない部分にすっとフォローを入れる。

2007年の『アルファブロガー』にノミネートされているサイトの一覧、これがよい例を教えてくれていると思います。


記事一覧

2008 年 12 月
« 11 月    
 123456
78910111213
14151617181920
21222324252627
28293031