goduni

日記&備忘録

ESとの格闘

インターン2社出して、2社とも落ちました。

理由は心当たりしかありません。笑

 

1社目は締切時刻3時間前から書き始めて〜みたいな。

今思うと舐め腐ってます。

最後は、ギリギリ提出間に合ったー!と思いきや、、、実はテーマ志望理由が残っていて時間オーバーでした。

 

2社目のESも前の日にさらーっと書いた程度で、添削とか文の推敲とかも一切せず。

加えて、プログラミング試験なるものがあったのですが、それもあまりよろしくなく、、、

まぁ、これも落ちて当然です。

 

そんな感じでかなり舐めたインターンのエントリーをしていたのですが、いよいよ焦ってきました。

 

「え、このままだと夏のインターンなし……?」

 

ちょっとまずいなーと思い、とりあえず友人に相談したり、いろいろと自分で調べてみたりしました。

なんとか良さげなインターンをいくつか見つけたのですが、締切日はやはり近いです。昨日から必死でESを書いています。(多分初めて真剣に書いています。)

 

 

初めて論文書いたときと同じような感覚で、ESの勝手が全く分かっていないので、とりあえずいろいろと例文を漁ってきて考えてますが難しいです。何回書き直ししたのか覚えていません。でもこれが本来あるべき姿なんでしょうね。

 

きっと誰もが通る道なんだ。。。

そう信じて今はやるしかないですね。

 

 

第一回・大ゼミ研究発表を終えて

大学院生になってからの大きな変化の一つは,「大ゼミ」が履修科目に追加されたことです.

 

大ゼミでは,いくつかの研究室が集まり,互いの研究内容を発表し,それに対する質疑応答をします.イメージは学会などでの研究発表とほとんど変わりませんが,その場の空気は学会とは異なり,かなり重いです...泣 実際,この重圧にやられている人を過去に何人か見ました.

 

そして,昨日はいよいよ自分の発表でした.本来の形態は,前に立っての発表ですが,コロナの影響で,前日までに音声付き発表動画を提出し,それに対しての質疑応答はWebシステム上で行うという形態に変わっています.

 

主な発表内容は,学部時代の研究について,大学院で予定している研究内容について,です.学部の研究は,以前作成したスライドを使い回すものだと思っていましたが,改めて見直してみると,分析動機が不明瞭であったり,前後の繋がりが悪いなど修正点が多く,結局,締切時刻ギリギリに提出することになりました.

 

発表に対する質疑を見ていると,研究の 動機・目的・貢献・分析手法の理由,この4つについてもっと深く考え,またこれらをしっかりと相手へ伝える能力を高める必要があると感じさせられました.

 

最近,学会発表などを行っていなかったので,今回のような機会がこのタイミングでやってきてくれたことはある意味良かったです.次回の発表では今回の反省点を解決できるように頑張ります.

昼夜逆転

コロナの影響でかれこれ2ヶ月くらい?は休みの状況です。

大学入構禁止のため、ずっと家で作業をする日々が続いていますが、そろそろ大学、いや研究室で作業がしたい……。

 

そんなことを思っているうちに、今日でGWが終わり、明日から授業が開始です。

たまたま僕は木曜日の授業はとっていなかったので、実際は金曜日からの開始ですが、かなり憂鬱です。

 

授業開始を目前にして、最近の悩みは 「とにかく眠れない」ということです。

 

長期休暇あるあるの昼夜逆転です。

結構まじでやばいです。。。

 

2時(自分の中では早いほう)とかに布団に入っても寝つけるのが朝の5時とか6時、、、

 

実際、今も寝れなくてブログを書き始めました。笑

 

そして追い打ちをかけるかの如く、先生から「5/10までに第一版出せる?」とのこと。

分析手法が大幅に変わってしまったため、論文執筆着手はおろか、分析の結果もまだ出ていない状況なのに、、、と思いながらも、とりあえずはYESと返事しました。

 

コロナに翻弄されているとは言え、スケジューリング不足です。

 

研究自体はガッツリ機械学習の技術を使い始めてきたので、また楽しくなってきているものの、締切が迫ってきている状況はなかなかキツイものですね。

 

兎にも角にも、最優先TODOは生活リズムを治すことか。。。

論文誌にむけて

大学院生になって初の投稿です.

卒論執筆を終えてからちょいと休んでいました.
人間って一度休むと本当に戻って来れなくなるな,と感じました.
卒論を書き終えたときは,次のステップに向けてやる気に満ち溢れていたのですが,コロナとかの関係でバイトが休みになったことをきっかけに2週間に渡り実家に帰ると途端にやる気がなくなり,,,
まぁ,たまにはこういうのもありかな!と開き直っていました.
その後,研究室に戻るとやる気も回復したので良かったです.


とりあえず今はタイトルにあるように論文誌に向けて取り組んでいます.
普通,卒論執筆後,同じ内容あるいは少し内容を変更して学会論文や論文誌を執筆するのがセオリーなようです.
先生との相談のもと,今回は論文誌にむけて頑張ろう!ということになりました.

ただ,内容は卒論での分析は全てボツになりました.笑
なかなか大変です.

それでも,今の方針の方が個人的には面白く,また背景からの流れも綺麗になったなと思っているので,結構わくわくしています.
コロナで自粛要請が出ている中,楽しみごとがあるのは良かったです.

あと卒論を通して,研究をただ進めるだけでなく,論文執筆する際に今の分析はこんな感じで書くことになるのかな?など,今まであまり意識が向かなかったところまで気にするようになったな〜と思います.
やっぱり経験は大事ですね.

とりあえず,大学が始まるまでは自宅で研究とあつもりをしながら過ごします.

卒業研究

卒論執筆&卒論発表をついに終えました!!

研究室に配属されてから1年半という期間でしたが,振り返るとあっという間な1年半でした.

 

1年半における主な研究活動はこんな感じでした.

  • 国内オーラル発表2本(査読なし)
  • 国際学会ポスター発表2本(うち,1つはベストポスター賞)
  • 査読論文執筆(不採択)

こうして並べてみると,1年半にしては結構頑張れた方かな?と思っています.もちろん,オーラルに関しては査読がないので胸を張って言えないですが,経験を積むと言う意味では大きかったと思います.強いて言うならば,学部中に査読論文を一本通すことができなかったことは悔いが残ります.

 

集大成となる卒論執筆&卒論発表は,自分の中ではかなり悔いが残る内容となりました.

卒論は執筆できたものの,改めて読み返してみると文章の繋がりが悪いな〜,分析に対する考察が浅いな〜,など課題となる点はいくつかありました.

発表は緊張して喋りが早くなってしまった,というのもあるのですが,自分の研究の推しとなるポイントが聴衆にあまり伝わっていなかったかな,と思いました.また,一番の反省点としては質疑応答がとにかくダメだったことです.相手の質問の本質を理解できず,関係のない内容を返答してしまうことが多々ありました.

卒論発表を終えてから,先生に呼び出され総評を伝えられたのですが,やはり上記の課題点については先生からも指摘されました笑

ただ,1年半よくがんばったとおもうよ!!と言われた時はここに至るまでを思い出し,少し泣きそうになりました(嘘)

 

そんな感じでとても後味の悪い終わり方となりましたが,それも含めとても濃い1年半でした.あと,やっぱり研究は楽しいです.自分は比較的初めの頃から楽しんで取り組んでいましたが,個人的には研究の楽しさには段階が存在すると感じました.

初期の頃の研究の楽しさは,おそらく研究を進めるにあたっての作業が楽しいのだと思います.つまり,結果を出すまでの作業は楽しいが,例えば,出力した結果をどう解釈すればいいのか分からず,結局一番肝心である考察は楽しめないということになります.ただ,ある程度,知識や経験を積むと今までできなかった考察ができるようになったりすることでまた新たな楽しみが生まれます.実際,自分は後半になるにつれて,結果の考察やまた分析結果から次に自分がどのようなアプローチを取るべきか?などを考えることがとても楽しくなり,結果を出すまでの作業は寧ろ面倒になっていました.笑

と,まぁだいぶ気持ち悪いことを言っていますが,楽しさのポイントをどこに置くかが研究に限らず,大事なのかな?と思いました.

 

最後に学部での研究生活を送るにあたり,自分は本当にいろんな人に支えられたなと思います.本当にありがとうございました.そしてこれからもまたよろしくお願いします.

 次の自分のステージは,大学院生活です.学部と違い,修士は研究で求められるレベルが異なるため,これまで以上に努力し,苦労することになると思いますが,気合を入れて頑張っていきたいと思います.

NetworkXを使用時に生じた"TypeError: function takes 3 positional arguments but 4 were given"の解決策

研究の一環でネットワーク図を出力する必要ができたので,以下のサイトを参考にPythonのNetworkXを使用した.

qiita.com


その際,以下のコードを実行時にエラーが生じた

--- 該当コード ---
for tags in tags_list:
    for node0,node1 in itertools.combinations(tags, 2):
        if not G.has_node(node0) or not G.has_node(node1):
            continue
        if G.has_edge(node0, node1):
            G.edge[node0][node1]["weight"] += 1
        else:
            G.add_edge(node0, node1, {"weight":1})


--- エラー内容 ---
--------------------------------------
TypeErrorTraceback (most recent call last)
<ipython-input-257-8dcf61b27f82> in <module>
      6             G.edge[node0][node1]["weight"] += 1
      7         else:
----> 8             G.add_edge(node0, node1, {"weight":1})

TypeError: add_edge() takes 3 positional arguments but 4 were given

add_edge関数の引数関係でエラーが生じている.


とりあえずググってみる

StackOverflowで似たような質問があった.
stackoverflow.com

解決策として挙げられていた以下のコードを実行したが,以前エラー内容は変わらず...

--- 解決策1 ---
cities.add_edge('Boston', 'Nashville', distance=0.4})

--- 解決策2 ---
cities.add_edge('Boston', 'Nashville', attr_dict = {'distance':0.4})

調べたところ,バージョンの問題でもなさそうなのでよく分からない.



公式ドキュメントを見てみる

networkx.github.io


公式ドキュメントのチュートリアルを読み進めていくと以下の記述を発見!

Edge Attributes

Add/change edge attributes using add_edge(), add_edges_from(), or subscript notation.

G.add_edge(1, 2, weight=4.7 )
G.add_edges_from([(3, 4), (4, 5)], color='red')
G.add_edges_from([(1, 2, {'color': 'blue'}), (2, 3, {'weight': 8})])
G[1][2]['weight'] = 4.7
G.edges[3, 4]['weight'] = 4.2

どうにも,add_edgeを用いる場合は辞書型{}のように記述するのではなく,weight=4.7のようにそのまま記述するっぽい?



該当箇所を修正して実行

--- 修正前 ---
for tags in tags_list:
    for node0,node1 in itertools.combinations(tags, 2):
        if not G.has_node(node0) or not G.has_node(node1):
            continue
        if G.has_edge(node0, node1):
            G.edge[node0][node1]["weight"] += 1
        else:
            G.add_edge(node0, node1, {"weight":1})

--- 修正後 ---
for tags in tags_list:
    for node0,node1 in itertools.combinations(tags, 2):
        if not G.has_node(node0) or not G.has_node(node1):
            continue
        if G.has_edge(node0, node1):
            G[node0][node1]["weight"] += 1 # <--- 修正箇所
        else:
            G.add_edge(node0, node1, weight=1) # <--- 修正箇所

実行したところ,エラーが出ることなく無事に処理が完了した!!


実際に,中身も確認したところ...

G['Python']['Django']
>>> {'weight': 8}

問題なくweightの値が更新されていた!





英語で書かれているので避けてるけど,公式ドキュメントを読むことって大事やな,って思った.
あと今回参考にしたQiitaの記事の最終更新日時は2016年08月31日だったので,もしかしたら当時と今では異なるだけなのかも

2020年スタート

新年あけましておめでとうございます.
今年もまたブログをぼちぼち更新していこうと思います.よろしくお願いします.


本当は年が変わる前に更新するつもりでしたが,いろいろあって年が変わってからの更新となりました笑

去年を振り返ると,本当に一瞬で終わった一年だったなと思います.
総じて何かと忙しい毎日を送っていたような気がします.(主に研究室)

学会発表が3回,大学の中間発表が2回,大学院入試などなど...
とはいえ授業がない分,助かっているんですけどね.

次は卒論か...って思いながら書いてます.

年末年始はずっと研究で使用するデータの収集を行っていて,まだ全く正月らしいことをしていません.泣
(明日は絶対に出かけよう)


と,まぁしんどい内容はここまでにしておいて,去年はいろんな人との出会いがあった一年だったように思えます.

まず研究室に後輩が入ってきたことが大きかったです.
他にもバイト先での出会いや他の研究室の人,結構いろんな人と話して仲良くなれた気がします.

あとはいろんな先輩方にお世話になりました.
まじでお世話になりました.ありがとうございました.

自分でも去年は社交的になろうと努力をしていたのですが,やっぱり人と話すことは大事だなーと思えました.


大凶で始まった2019年でしたが,振り返るとそこまで悪くなかった一年だったかな?
そういえば,おみくじに書かれていた「師の教えに従え」
これはほんとに当たっていました笑
これから先は,なにがあっても(とりあえず)師の教えには従っておこうと思います.




2020年はついに大学院生になる年です.
就職,あるいはまたまた進学!?,なにが起きるかは分かりませんがそれも全て大学院での生活によって決まるんじゃないかなと思ってます.
そういう意味では,人生のターニングポイントとも言える一年になりそうです.
これまで以上に努力して,さらにしっかりと結果を残していける年にします.


2020年も皆さんよろしくお願いします.