ヌッ

適当

理系の研究

最近自分の研究はこんなんでいいのかと思いました。

高専の頃は画像処理に関するものでした。
こういうプログラムを作りたいと考えて、それに向かってコードを書いていました。
結局は目標のものまでは出来なかったけれど。

今の研究はデータマイニング、レコメンドシステムに関するものです。
実際には映画のレビューサイトのレビューを自然言語処理を用いて解析してみて
元々のレビューと比較したりしてます。

何が問題かというと結局レビューそのものを見て予想を立てたり考察するのは理系というよりは文系っぽいなということです。
この時点で自分の中で文系を見下してるような考えがあるのもよくないと思うけれど。
一応コードを適宜修正しつつはあるけど自然言語処理といえるものはライブラリ任せで、自分でやってるのは出力となる文字列の表示方法ぐらいなものです。
途中まで読み進めた「UNIXという考え方」にはデキるプログラマーは独自技術症候群に陥らずにコピーが得意とありました。
だが勉強するとなれば車輪の再開発もすべきじゃないでしょうか。
とはいえ今更同様の機能を作る気力もないけれど。
とにかく研究にしてはやってることがショボくないかと思うのです。
研究対象が娯楽ですし。

っつーことを先輩に相談したところ、
研究対象を解析して考察するのは立派な研究だと。
それに好きなものを研究出来るのにこしたことはない。
さらにそこから新たなシステムを作ることが出来るかもしれないと。

僕は感動しました。先ほどパンツが破れてしまったほどです。
これからもぼちぼち研究を頑張ろうと思います。

ちなみにその先輩にマッドマックスに誘われたので月曜にラボメンと見に行きます。

以上です。

音楽の趣味の遷移

音楽サークルでコピバンを組んで新歓でライブをすることになった。
去年は先輩とは仲良くなれたけど同学年の人とはあまり関わりが無かった。
しかし今年になってからようやく同学年の面々ともようやく打ち解けつつあると思う。

それはともかくとして音楽の話も良くするんだが聞いたことのないアーティストばかり出てくる。
知らない曲でも演奏練習するうちに好きになることもあるからどんどん教えて欲しいけれど、
あんまり多いと覚えられない。なんて言ったっけと聞く相手も覚えてないという。
ちなみに薦められるのは基本的に落ち着いた感じの邦ロックである。


小学校の頃、ピアノ教室とかドラム教室とか行かされて
音楽があんまり好きじゃなかった頃があった。
中学入ってラウンドワンで聞いた曲とか父親が車で流してた曲、動画サイトで見た曲とかを
PSPに入れて聞くようになった。
当時は倉橋ヨエコとか筋少とかを聞いていた。
あとはニコ動のMADとかも。

高専入ってロキノンとかメタルとかを布教された。
ロキノンだと時雨とか事変あたりか。
メタルはメタリカ、チルボド、コーン、マンソン、アングラ……と多すぎて書ききれない。
当時けいおんが流行ってバンドやろうという話があがって
久しぶりにドラムやろうと思ってこの頃再開した。
ただ寮祭直前ぐらいしか真面目に練習しないので腕前はお察しのままであった。
バンドでやった曲はアニソンとかアジカンで、
そこらへんも好きだったけど基本的には激しい曲が好きだった。
バラードみたいなのは本当にたまに聞いた。
一方でポップやボカロは毛嫌いしていて、これに関しては完全に偏見である。
良くないとは思うけれど聞こうとしてもどうしても抵抗がある。

大学編入してからはメタル趣味は落ち着いてエレクトロニカとかチップチューンとかを聞くようになった。
具体的にはgroup_inouとか電気グルーヴがある。
加えてロキノンも聞く機会が増えた。
tricotとか八十八とかハチゲキとか。

こう振り返ってみると前にも言われたけど随分雑食だなぁと思う。
とはいえ落ち着いた曲になりつつある気がする。
環境の変化か、またしても影響を強く受けていると思う。
そして憂鬱になったり苛立つことが減ってきて精神が安定してきたのかもしれない。

いや、最近でも憂鬱になったり苛立つことはあるな。
心情の変化と音楽の趣味に相関があるんだか無いんだか分からなくなってきた。


それはそれとして色々聞いてみて色々音楽の話を友達としたい。
恩師に「東京いるならハコとか行けばいいのに」と言われたし友達と行こう。
あとメタル趣味は落ち着いたとはいえラウパは今年も行く。

以上です。

チーム開発実践入門を読みました

インターン先では開発フローについてミーティングをやったりするのですが、
結局どのツールがいいのかなぁとかいつから実施しようかとかでなかなか決まらないという状態が続いてます。
大体調査してくるときはググってツール比較して資料にまとめたりするけれど
よく考えたらそもそもCIとかCDとかがなんなのかがよく分かりません。
断片的な知識を検索して調べるよりは体系的に学ぶべきだなーと思い
図書館を歩いてたらこの本を見つけたので借りて読みました。

チーム開発実践入門 ~共同作業を円滑に行うツール・メソッド (WEB+DB PRESS plus)

チーム開発実践入門 ~共同作業を円滑に行うツール・メソッド (WEB+DB PRESS plus)

現状

すでにgitは使っていてgit-flowみたいな感じでやってるのでソースコードのバージョン管理については大丈夫そう。

一番問題かなと思ってるのがDBのバージョン管理。つまりマイグレーションです。
現在はslackで追加カラム、テーブルを伝える感じなので不安とダルさがあります。
マイグレーションに抵抗あったのはクエリを直接書かないといけないというところ。
Sequel ProがGUIだから操作が楽で分かりやすいから、こっちで操作したくなっちゃうのよね。
とはいえいくつか変更があったりすると面倒ですね……。

読んでみて

初めのケーススタディの環境が地獄すぎる。
フィクションだから笑えるけれど本当にあったとしたら現場から逃げ出したくなりますね。

それはいいとしてようやくCI,CDの意味を知りました。
今のところデグレートのような問題は起こってないけど
テストコードを書いてCIでテストの自動化、CDでデプロイの自動化もすべきだなぁと思いました。
それから環境設定の流れはマニュアルとして資料にまとめたけれど、
これはChefでやるべきだよなぁとも。
Chefに関してはこの本で初めて知りました……。

マイグレーションのためにクエリを書くのはもう慣れしかなさそうですね。
というか使うのなんてCREATE文、ALTER文、DROP文くらいしかないし、
そこまで大変でも無いかも。

話してみて

読んだ本について先輩と話したところ本については割りと高評価でし
た。
なお話したツールについては全部知ってた模様。

しかし正直今激アツなところなので導入は一段落してからになりそう。

これからどうするか

激アツというのは仕様の決定とかの問題で
先輩は大分忙しいようだが僕はそこまで忙しいわけでない。
週2で行ってる程度だし、あまり仕事が割り振られないのでむしろ暇がある。

この暇な時間を使って家いるときにChefとかマイグレーション用のクエリとか
余力があればテストコードも試しに書いてみようかと思う。
流石に「こうするといいらしいんでやって下さい」というのは難しそうなので
試しにやってみて少しづつ導入する感じならなんとかなりそう。

こうやって使えるツールを増やして就活のときに使えるといいなぁ。(希望的観測)

以上です。

柔術再開して一ヶ月くらい経ちました

twilog確認したら2015/4/13に体験入会してたのでもうすぐで一ヶ月経ちそうなとこでした。

現在研究室ででなくちゃいけないミーティングが水曜、金曜だけなので
火曜、木曜にインターンをしています。月曜は一日休んでます。
こうすると時間に余裕がありすぎて逆に辛いんですよね。
ダラッとした休みがずっと続く感じでメリハリがないというか。
GWもほとんどありがたみなかったし。
インターンと研究にしてもそれぞれやりがいはあるんだけど基本ずっと座っての作業であまり動かない。
家でゴロゴロしているとどうでも良いことばかり考えて憂鬱になってくる。
これはいかんということで前からやりたいと思ってた柔術を再開することにしたのです。

MMAコースに体験入会

元々柔術を小学生の頃少しやっていたのですが
打撃もやりたいなという気持ちがあったので行ってみました。
館長曰く柔術コースは比較的初心者向けで和気あいあい、
MMAコースは試合とか勝つの目指すガチコースだから良くないかもと言われました。
そうはいっても打撃があるのはMMAだけだし体当たりで行くしかねえ!と突撃しました。

組み技でボコボコにされました。
結局打撃はしないで見てるだけだったけどね。
はたから見てて打撃をするにはまだ早いと思いました。

結局柔術コースに

柔術コースのネックがインターンと同じ日にあって、
インターンが終わってから行くのは辛すぎるのでは?と思っていました。
しかし柔術コースじゃないと技とか教える事があまり無いしここに行くしか無い!
と思いインターンを一時間早めてもらって火曜、木曜、土曜と行くことにしました。
ちなみに大体の格闘ジムはサラリーマンとかも多いので午後七時、八時始まりとか比較的遅い時間帯でやってます。
また仕事で間に合わない人もいるので遅れて来る人も結構多いです。
それと週三で行くことにしたのはある程度の頻度で練習しないと全然上達しないだろうと思ったからです。
小学時代の柔術クラブは週一、中学時代の水泳部は週二でしか行ってなくて元々の能力もあるけど上達が遅かったなぁと後悔していました。

練習の流れ

まずは技の打ち込み。
二人一組になってお互いに指示された技の練習をします。
これは毎回違う奴で館長が色々教えくれます。
お互い五回くらい一連の動きをしたら別のパターンとか、難しい技なら細かい説明をしつつ再び打ち込みをします。

次にマット運動。
これは毎回同じ奴で受け身とか側転とかをします。

これらが終わってからスパーリングという実践形式の練習をします。
手の空いてる人に声をかけて組んで五分間スパーリングをする、というのをずっと繰り返します。
ここでボコボコにされます。
ぶっちゃけ見た目が怖い人が多いけど皆優しいです。
気力があるときは積極的に声をかけています。
これを一時間やって礼とか掃除して練習は終わり。

筋トレとかは一切やってないけど翌日は筋肉痛になります。
最近は首周りが痛い。
これについては間違った方法で上体起こしてるからかもというが前の練習の時に気付いたんですけど。
大分筋肉痛は少なくなってるのでもう少し負荷をかけてもいいかもしれない。

ずっと負けてるのに楽しいの?

負けてもスパーリングは楽しい。
それになんとしても勝ちたいという気持ちがあるので続けるしかない。
スパーリングしてると見たこと無い技掛けられたりして、それはそれで面白いし。
負けるのは本当に悔しいけど、とりあえずスパーリングをやってみて何が悪かったのか毎回考察してはいます。
あとスパーリング一回やるだけでもそこそこ疲れるのでやるだけでも体力つくかなぁと思う。
スパーリングした後に相手の人がアドバイスしてくれることもあるし。

それと紫帯の女性の方とスパーリングしたんですけど、
腕掴んだ時に僕と同じかむしろ細いぐらいだったのに気付きました。
けどコロコロ転がされて極められて、体力じゃなくて技術の問題だなと思いました。
技術に関しては実戦でやって体で覚えるしかないのでスパーリングやるしかない。
というか来月の分まですでに月会費払ってるし。

ちなみに館長には今の調子で二、三ヶ月練習したら試合出れるって言われたのでそれを目指します。
未だにスパーリングで勝ったのは一回だけだけで、それもお情けで勝たせてもらった奴だけども。

以上です。

python gensimを使い始めました

研究でpython gensim使おうとボスからの指示があったのでいれました

 

python gensimはテキストからのトピック抽出ライブラリ

具体的にはブログの記事とかを見て、これは「音楽」に関するものだなとか「映画」に関するものだなってのが分かるという処理を簡単にするライブラリ(のはず)

自然言語処理ですね

 

そもそもpythonを使ったこと無いのだけどhomebrew使えばすぐインストール出来ました

ライブラリのインストールに関しては基本的には公式サイトを参考に進めました

 

ライブラリのインストールはpython用のパッケージ管理ツールのeasy_installを使いました

公式サイトには「easy_install hogehoge」で大体インストール出来るようなこと書いてあったけどnumpyとscipyはsudoを付けてやりました

このnumpy,scipyというライブラリをインストールした上でgensimをインストールすれば準備オッケーみたい

 

インストール終えたら次のコマンドで確認

python

>>>import numpy

>>>import scipy

>>>import gensim

これで何も出なかったらインストール完了

 

なのだけど僕の場合始めのimportの段階で

sh: sysctl: command not found

と出てきた

調べてもsysctlは普通元から入ってるものであってインストール方法とかは見当たらなかった

これはPATHが通ってないことが問題のようで以下のリンクを参考にsysctlのあるPATHを追加

sysctl Issues (Page 1) / Help & Support (Crunchbang 11 "Waldorf") / CrunchBang Linux Forums

 

こうしたら特に問題無さそうだったので公式サイトのチュートリアルをしました

radimrehurek.com

 

実行してみたところこんなエラーがでた

Could not import Theano, will use standard float for default ShardedCorpus dtype.

 ということでとりあえずTheanoをeasy_installでインストール

 

でもう一回実行

% python test.py                                    

[['human', 'interface', 'computer'],

['survey', 'user', 'computer', 'system', 'response', 'time'],

['eps', 'user', 'interface', 'system'],

['system', 'human', 'system', 'eps'],

['user', 'response', 'time'],

['trees'],

['graph', 'trees'],

['graph', 'minors', 'trees'],

['graph', 'minors', 'survey']]

やったぜ!

 

とりあえずチュートリアルのだけ回したけど何がどうなってるのかは全く分からないのでこれからやっていきます

pythonそのものはドットインストールちょいと進めて初歩的な部分がわかってきたところ

 

CとかJavaとかPHPやってきたのでpython自体の学習コストはそんな高く無さそう

あと今回のgensimのインストールは他のサイトも色々見て回ったけれど

他のところはyumとかwgetとか使ってたのでeasy_installの方が楽だし

公式サイトが一番参考になったような気がする

 

あと今更気付いたけどこれだけだと日本語対応してないのでMeCabか何かを入れなくてはいけない

easy_installしても見つからないしこれからMeCab周り調べます

 

以上です

デスクワークしてる人向け腰爆発予防策

2月の終わり頃に腰を痛めたので整骨院に行ったら一ヶ月程通う羽目になりました

 

痛いのは腰だけだったんだけどスタッフによると「全身が硬すぎてヤバイ」とのことであった

もともと体が硬いのは承知の上でちょくちょくストレッチはしてたのだけど

デスクワークで長時間座ったり、電車で長時間立ったりと

同じ姿勢でずっといることが多いのが原因らしい

それと背中や脚が硬いと体の中心になる腰の方にも影響が出るんだと

 

今までにも腰痛めたことがあって、そんときは鍼治療してもらってたんだけど

今回は姿勢直すだとか日頃の生活を正さなくては再発待った無しだなと思ったので

スタッフに気になることを質問しまくりました

 

っつーことで予防策をまとめると以下のとおり

 

ずっと座っていないでちょくちょく立ったりする

最近インターン中にゴミを捨てたり便所に行くついでに給湯室で隠れて前屈したりしてサボ……休憩してる

別にバレてもいいんだけどストレッチしてるのを見られるのは恥ずかしい

 

一日一回程度のストレッチでは足りないのでもっと頻繁に行う

今までは家で暇なときにやる程度だったけど足りないとのこと

現在は風呂の後、起きた後はじっくりストレッチして

デスクワーク中も腰をひねったり肩回したりしてる

 

デスクワークは前かがみになりがちなので背が真っ直ぐになるよう心がける

頭が前に出ると腰への負担がヤバイらしい

ストレッチしてても前かがみが続くとマイナス効果なので癖を治すしかない

 

電車内では足がT字になるようにかかとをくっつけて立つ

理論はよくわかんないけど股関節とか脚とかにいいらしい

腰とかではなくてガニ股に良いという話だった気がする

 

母指球に力を入れて歩く

これもガニ股治すのに効果的とのこと

 

ゆっくりストレッチする

体硬い人は無理な動きすると体痛めるので静的なストレッチをするべきとのこと

あとこれは完全に我流なんだけど筋肉伸ばした状態で2,3分音楽とか聞いて

ずっと伸ばした状態にしてると効いてる感じがする

股関節は大分柔らかくなったみたい

 

 

ぶっちゃけ一ヶ月も通う必要はないと思うけど専門のとこ行って相談すること自体は良かった

現在はほとんど痛みが無いけど気を抜くとまた再発しそうだし

せめて前屈して足に手が届くようにしたいし

体硬いと怪我しやすいから今後もストレッチは続けようと思う

あと腰良くなったし今後の予定に余裕出来たので

いい加減柔術再開しようと思う

 

ちなみにこんな本が……! 

健康に気を使うことでコードを書く時間を増やそう!

今は英語版しかないけど日本語版も年末に出るとか出ないとか

 

以上です