意味悲鳴

PythonとかUnityとか.技術ブログでしたが,研究ブログにシフトしました.

研究が1歩進んだと思ったら実は進んでいなかった

はい.タイトルのとおりです.面談したお陰で相談できる人が増えたのはいいんですけど,自分の研究のタスク決定が振り出しに戻りました.うへぇ.

 

自分自身ではある程度方向性が決まったと思っていたんですが,先日の進捗報告会で色々言われてしまいました.おそらく,うちのボス的にはあのタスクに意味があると思えなかったのだと思います.個人的にも強烈にこだわりがあるわけではなかったので,別に取り組んでいたタスクが(もちろんオブラートに包んだ上でですが)否定されても痛くも痒くもないのですが,どちらかと言うとまた色々やり直しになる方が苦しいですね.

 

基本的に取り組みたい題材自体は決まっているのですが,問題はそこから先のお話で,その題材をどうやって役に立つ形の研究するかに苦しんでおります.先行研究見りゃなんとでもできる気もしますが,研究室の研究自体にもある程度の貢献をするとハードルが格段に上がる気が.まぁ,素直に与えられたタスクこなすのでもいい気はするんですけど.とりあえずメンターさんと議論しつつ頑張ります.

 

あと,個人的に就活に向けて作品制作とかしていなかったのが今になって大変後悔しております.夏休み中になんかやってればよかったなぁと今更思っております.まぁ,でも今更なので.何とかして時間つくってUnity触りましょうか.

研究の相対速度とは

こんばんは.内田真礼さんのラジオ聴きながら書いてます.内田真礼さんってなんでこんなに素晴らしいんでしょう…….丹下桜さんもいいですけどこっちも別種の良さがありますねぇ…….

 

そういえばこんなの買ったんですけど.

 

 

最高すぎてまだ全部読めていない…….キュンキュンするぅ…….かわいすぎだろほんと…….

 

さて,今週の週報のようななにかですが.

修士に入ってサーベイも一段落したところで,ようやく自分の研究が始まりそうな感じになっているんですが,先月は本当にものすごい勢いで研究が進んだ,というか,進まさせられたというか,とにかくスピード感がすごかった.

いつだったかメンターさんに「いきなり高速道路乗るようなもんだけど,加速さえできれば大丈夫だよ^^」みたいなことを言われたんですけど,本当にハイスピード.早い.本当に早い.スピード感すげぇ.アクセルベタ踏みだよほんと.

ただ,思った以上に苦しいという感じはしていなくて,むしろ自分がちゃんと修士している気がしてきたのでホッとしているぐらいです.とは言え,やはりやるべきことは相当に存在しているので,頑張らねばと思います.

もうちょっと具体的な内容については,明日にでもちゃんとまとめて書く予定.

 

どうでもいい話ですが,数週間すると研究室見学の時期だそうで.いろいろやっている関係でうちの研究室の評判なんかもチラチラ聞こえてくるのですが,それによると弊研究室は「ブラックじゃないけど単純に大変」と言われているそうです.この表現,言い得て妙な感じがする.単純に大変なんですぅ!ゼミに出るだけでも必死ですぅ!

ホワイトな研究室とは

週報のような何かです.

 

やはり自分が思うに最強の研究室に入ったのは,正解だったような正解じゃないような気がしてきました.いや,少なくとも研究室のレベルという意味でははっきり言って最強です.そりゃもう,私は多分あの研究室の底辺なんだけど,みんなこう,底辺扱いしないというか,人格者が多すぎて頭良すぎて自分の悲惨さが逆に目立ってくるみたいな,そんな感じの研究室なんです.

 

ただ,その上で驚いたことがあって.というのも,研究室のメンターさんがごく当たり前のように「週って40時間しか無いのに,授業にゼミにいっぱい出たり課題こなしてるんだからよく頑張るよねぇ」なんて言うんですよ.

 

ホワイト,というレベルではないでしょう.研究を週40時間しかしないというのはどうなんですかねそれ.研究室の学生として正しいんでしょうか?わたしが麻痺しているだけ?

というか,もっともっと単純な話として,その作業時間じゃ私研究室のペースに着いてけないっすよそれ…….進捗出せないですよ…….私が今週末(木曜日→日曜日)までに20時間ぐらいは作業しますって言ったら,「おお頑張るねぇ.ムリしないでね」ってそうなるのか.そう言っちゃうのか.言えちゃうのか.進捗出てないのに.

 

それで気づいたんですけど,これ単純にメンターさんが最強に優秀過ぎるせいでホワイトな状態を維持できてるだけなんじゃないでしょうか?要するに,大学院でホワイトに生きるためにはそれ相応の能力が必要だってことではないでしょうか.そして私は,む~りぃ~.

 

まぁ,学生ですし.がんばりますよ.頑張ります.以上.

面談1時間でリカバリした

prpr.hatenablog.jp

こんな記事書いてて,今日研究に関する面談をけっこう遅い時間にやっていただいた.開口一番に「こういうのやるのは全然良いし,自分から声あげてくれたのは大変いいことだと思う」と,ポジティブな方に持っていっていただいて大変ありがたかった.まぁ,いろいろわかった上で言ってそうな感じだけど.

面談するにあたって,前に某所でエンジニアの方に教えていただいた,事前に何話したいかを箇条書きにメールするという方法を試したんだけど,これがやっぱり良かったみたい.話聴く側も,何を言ってあげればいいかをわかった上で話に入れるようで,かなりすんなり話が進んでいった.

面談の内容についてなんだけど,これまでこう,半年ぐらい悶々としていた内容が,1時間程度話した結果驚くほど進んだ.多分こういう方向やりたいんじゃない?というのが大抵的確なことばかりで,ひれ伏すレベル.いろいろ決まって,来週までにやることもある程度指示された.頑張ります.

で,その後研究室の先輩にも言われたんだけど,やっぱり自分からはやめにヘルプをするのは大変良いらしいし偉いからどんどん声上げろと言われた.結局何も言わずに抱えたままでいられる方が指導する側にとっても面倒なんだと思う.そういう意味で,私が今回面談を申込んだのはひょっとしたら教授の目の上のたんこぶが引っ込んだ形だったのかもしれない.教授自身も,学生が数十人もいる研究室だから,全員に等しく目配りすることなんて出来ないんだろうし.

とりあえず,来週まで支持された内容をがんばって調べます.デレ4th参加するしそれなりに時間がないのだけど,せっかく道を作っていただいたので頑張って辿ろうと思います.以上.

荒んでいる

うぅん,苦しい.苦しいなぁ.

anond.hatelabo.jp

なんかこれを読んでから,本当に自分は今こんな感じなんじゃないかと思っていて大変苦しい. ので,研究室の教授に面談のメール送った.もともと別に期待されていないだろうから,いっそ期待値0から1になるぐらいになっておきたい.

それと,研究課題について,うちの研究室は基本的に興味が有ることを自分で見つけて頑張ろうねスタイルで,私もそれが良いと思っていたんだけど,現状ちょっと,ねぇ,無理くさいですなぁ.ゼミ着いてくのも死にそうなのに,無理ですなぁ. みたいな話も今度の面談でしてきます.兎角,現在抱えていることを口に出して,あーだこーだ叱られたいと思います.それぐらいになっておかないと,ちょっとマズいかなぁ,と. とりあえず留年だけはしたくない,というか出来ないので,それを回避することを最優先で考えて生きていきます.以上.久々の研究云々メールでした.

あと,やっぱり書ける内容の方の日報をここに書くことにします.書かないより書いたほうが良いと思う.そんな感じです.よろしくお願いします.

Ubuntuで環境構築メモ(zsh+Anaconda3)

サーバのUbuntuの自身のホームディレクトリ上にAnaconda引っ張ってきて,インストールして,ログインシェルをzshにして,zsh立ち上げたらAnacondaになるようにします.みたいなやーつです.超絶基本的ですが,大切.ぶっちゃけ,virtualenv使うの面倒くさいだけです.

まずはファイルをダウンロード.

wget https://repo.continuum.io/archive/Anaconda3-4.2.0-Linux-x86_64.sh

そんでもってインストール.

bash Anaconda3-4.2.0-Linux-x86_64.sh 

色々聞かれるので,淡々と答えると終了.環境変数は変えるようにしておくとよろし.

で,ここでpythonを実行すれば,Anacondaの方が実行されるはず.

$ python
Python 3.5.2 |Anaconda 4.2.0 (64-bit)| (default, Jul  2 2016, 17:53:06)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

できたぁ.とならない人もいる可能性.そんな人は.bashrcを編集すれば良い.とは言え,この後zshを使うように設定し直すので,本当に編集すべきは.zshrcです.こっちにAnacondaのインストール先を以下のように記述すれば良い.

# デフォルトだったらこんな感じになるはず.ユーザ名部分は各自編集してください.
export PATH=/home/[ここにユーザ名]/anaconda3/bin:$PATH

これでサーバのUbuntuでAnacondaに関するコマンドが実行できるようになります.やったー.

Python3で配列の要素についてランキングを作って云々する

http://pythonhosted.org/ranking/ これ使う,以上. でも良かった気がするんですけど,だいぶ前のものでメンテもされていないっぽいので,今回はscipyのrankdataを使って,配列のランキングを拾ってきて,n位の要素を取得するみたいなことをしてみたいと思います.素人だからあんまりまともに取り合わないこと.

In[2]: from scipy.stats import rankdata
In[3]: import numpy as np
In[4]: array = np.array([8,6,9,4,5]) # これ使う

早速rankdataを使ってみる.

In[5]: rank = rankdata(array)
In[6]: rank
Out[6]: 
array([ 4.,  3.,  5.,  1.,  2.])

ここでお気づきの方もいるかもしれませんが,順位が照準になっています.しかもこれ,オプションとかで指定できません.ぐぬぬって感じです.

もうこれだったら普通にsorted使ってソートしてインデックス指定すればそれで終わりで良くないっすか?という気分になると思うんです.配列の要素がtupleのときとか対応できないっぽいし.私も今そう思っています.

が,一応これを使うメリットがまったくないわけでもなくて,リスト内に同じ要素が存在していた時,それをうまい具合に順位付けしてくれます.

ドキュメントから引用してくると,

>>> from scipy.stats import rankdata
>>> rankdata([0, 2, 3, 2])
array([ 1. ,  2.5,  4. ,  2.5])
>>> rankdata([0, 2, 3, 2], method='min')
array([ 1.,  2.,  4.,  2.])
>>> rankdata([0, 2, 3, 2], method='max')
array([ 1.,  3.,  4.,  3.])
>>> rankdata([0, 2, 3, 2], method='dense')
array([ 1.,  2.,  3.,  2.])
>>> rankdata([0, 2, 3, 2], method='ordinal')
array([ 1.,  2.,  4.,  3.])

こんな感じで,同じ値があったら上の順位をつけるか下の順位をつけるか,それとも同じ値をつけずに順位付けするかを指定できます.これを自前で実装するのはそれなりに面倒だし,そういう意味では良いのかも?今回は使っていませんが.

で,実際使用する用途としては多分こんな感じ.

In[9]: np.where(rank == 5)
Out[9]: 
(array([2], dtype=int64),)
In[10]: array[np.where(rank == 5)]
Out[10]: 
array([9])

こんな感じでした.ちなみにPythonの普通のlistにnp.where()をぶっこむとTupleだからインデックスちゃんと指定しろって怒られるのでご注意ください.

中々使う場面無いと思うんだけど(上位n位全部欲しいとかばっかりだろうし),任意でどこが見たい!という時は便利なのでは.