back to the source - 原点回帰😎

自然言語処理 初心者

GWを経て

先週の火曜日から昨日の日曜日まではゴールデンウィークだった.
気づいたら何も会得できずただただ終わっていた.


研究計画書が白紙である.
休日を過ごして見て思ったことがいくつかある.
やはり私は博士課程後期には行けないなと.
常に興味が離散化してしまう.
そして個をもっていない.
自分はどこに向かうのかよくわからない.
もうだめだ.
カウンセリングを受けたい.
相談に乗って欲しい.
もうつらい.

このすばを1期,2期見た. 脳死で見てて馬鹿笑いしてた.
ハーレムラノベと思っていたが全然違ったし, めぐみんが可愛い
作者が「通勤がつらいから作家になった」っていう動機も最高に良いし共感しかない.
大抵のなろう作家は出版されたらなろうの方はデータ消すけど,このすばの著者は消さないのでなろうでも読むことができるのが良さしかない.
おかげでめぐみんの外伝は買おうと思った.

GWが終わった現在,何もやる気起きないのでとりあえず, なろう!の小説のデータセット使って何かしたいと思う.
進捗報告と研究計画書の提出が今週水曜日なので結構やばいけどまぁ生きてます(´・ω・`)

めも

paper


site

を参考.

他

code

生きるのしんどい

しんどい… あ, 今日から複雑ネットワークの本を休日で読み終えつつ平行してGraph Convolution Networkの論文読むことになりました.. おわり

【やってみた】トピックモデルを用いてMastodonのデータを解析してみた

トピックモデルとは
データの背後にある隠れた「トピック」を推定する技術の総称.
自然言語処理(以下NLP)では潜在意味解析という文脈で発展. トピックモデルは文書や画像, 音楽など実応用も多い.

トピックモデルについての書籍を読みたいですが, あいにく手持ちにトピックモデルとはこれ!という以下の二冊(トピックモデルによる統計的潜在意味解析 (自然言語処理シリーズ), トピックモデル (機械学習プロフェッショナルシリーズ))を両方とも所有していないため, ネット上で解説してくれたスライドやブログ, コードを参照, 参考しながら「やってみた」

いわゆる「やってみた」記事です


やりたいこと

集計したMastodonのトゥートを元にそのトゥートのカテゴリを考えよう みたいな感じです. 今回集計したインスタンスはfriends.nicoのローカルタイムラインなので多岐にわたってジャンルがあるのではないかなー?と思ったりしたからです.
すいません… 今思いついただけです(´・ω・`)

検証期間は4/25 昼12時から4/26の昼12までの24時間
データはfriends.nicoのローカルタイムライン

取得方法などは公式とこの人の記事読めばわかります. ありがとうございます.

ローカルタイムラインのトゥートをjson形式で保存しました.

トゥート数:37190 ユーザ数:1744人


流れ

  1. Mastodonのトゥートのみを取得する
  2. トゥート内の"名詞"のみを抽出した.
  3. コーパスを作る.
  4. LDA(Latent Dirichlet Allocation)してみる.

前処理にこれを使ってみました.
mecab-neologd 前処理用 Python モジュール neologdn 公開しました - Debug me
こんな便利なものがあるだと…
他には出現頻度が3未満の単語は除去したりしました.
ちなみにMeCabで形態素解析したのですが".“や”!“が検出されたりして???って感じでした.

(´・ω・`) < トピック数を30とした.

(0, '0.437*"?" + 0.023*"時代" + 0.020*"Amaroq" + 0.019*"U" + 0.018*"ぴ" + 0.016*"FF" + 0.016*"@" + 0.013*"位" + 0.013*"さっき" + 0.012*"ねこ"')
(1, '0.258*"ニコ" + 0.106*"俺" + 0.100*"これ" + 0.029*"会社" + 0.024*"番" + 0.024*"回" + 0.022*"力" + 0.021*"確保" + 0.016*"スマホ" + 0.014*"動"')
(2, '0.105*"&" + 0.103*";" + 0.088*"W" + 0.048*"apos" + 0.041*"quot" + 0.039*"あと" + 0.038*"TL" + 0.030*"いずみ" + 0.025*"流れ" + 0.023*"昔"')
(3, '0.637*"!" + 0.023*"ぇ" + 0.012*"BAN" + 0.012*"ぁ" + 0.010*"週間" + 0.009*"派" + 0.009*"ッ" + 0.009*"母" + 0.007*"IT" + 0.007*"牛"')
(4, '0.401*"の" + 0.041*"分" + 0.025*"駅" + 0.024*"どこ" + 0.021*"ゲム" + 0.018*"方面" + 0.016*"野菜" + 0.015*"未来" + 0.015*"くん" + 0.015*"男"')
(5, '0.232*"p" + 0.112*"><" + 0.112*">" + 0.085*"<" + 0.059*"会議" + 0.028*"情報" + 0.027*"時分" + 0.019*"自由" + 0.017*"線" + 0.012*"個人"')
(6, '0.135*"そう" + 0.068*"草" + 0.061*"ガッ" + 0.048*"やつ" + 0.046*"@" + 0.043*"間" + 0.036*"どん" + 0.023*"言葉" + 0.020*"百" + 0.019*"RT"')
(7, '0.080*"もの" + 0.075*"好き" + 0.044*"ブス" + 0.034*"こ" + 0.030*"実況" + 0.029*"世界" + 0.024*"大学" + 0.021*"わけ" + 0.020*"最高" + 0.018*"管理"')
(8, '0.093*"出社" + 0.077*"日" + 0.061*"的" + 0.051*"みんな" + 0.041*"め" + 0.041*"なん" + 0.035*"ドワンゴ" + 0.033*"ため" + 0.030*"百科" + 0.024*"今日"')
(9, '0.156*":" + 0.087*"形式" + 0.085*"nicoru" + 0.076*"垢" + 0.048*"::" + 0.042*"█" + 0.038*"公式" + 0.036*"コメント" + 0.033*"発言" + 0.023*"全員"')
(10, '0.145*"何" + 0.060*"ネイティオ" + 0.058*"ゾ" + 0.041*"度" + 0.040*"やす" + 0.039*"兄貴" + 0.026*"明日" + 0.020*"絶対" + 0.019*"社会" + 0.017*"コンピュタ"')
(11, '0.214*"人" + 0.147*"こと" + 0.061*"さ" + 0.035*"Twitter" + 0.032*"感じ" + 0.022*"声" + 0.020*"系" + 0.020*"フレンズ" + 0.016*"大丈夫" + 0.014*"おっさん"')
(12, '0.262*"(" + 0.230*")" + 0.055*"フォロ" + 0.030*"氏" + 0.024*"鹿" + 0.019*"普通" + 0.013*"ぅ" + 0.012*"体" + 0.012*"あれ" + 0.009*"素"')
(13, '0.178*"さん" + 0.049*"ww" + 0.044*"アプリ" + 0.038*"新規" + 0.033*"遅延" + 0.032*"遅れ" + 0.027*"旦" + 0.025*"表示" + 0.021*"ダメ" + 0.018*"マルチ"')
(14, '0.232*"マストドン" + 0.099*"o" + 0.086*"w" + 0.059*"!!" + 0.049*"者" + 0.043*"気" + 0.041*"兄さん" + 0.024*"配信" + 0.023*"神" + 0.018*"ょ"')
(15, '0.086*"\\" + 0.056*"," + 0.046*"年月日" + 0.040*"シ" + 0.035*"^" + 0.035*"-" + 0.024*"friendsnico" + 0.021*"コンテンツ" + 0.020*"d" + 0.019*"記事"')
(16, '0.084*"-" + 0.070*"仕事" + 0.056*"span" + 0.052*"LTL" + 0.051*"ら" + 0.039*"目" + 0.033*"h" + 0.030*"ちゃん" + 0.029*"<" + 0.029*"class"')
(17, '0.364*"ん" + 0.065*"ひょう" + 0.023*"問題" + 0.022*"列車" + 0.021*"JK" + 0.016*"トゥトゥ" + 0.016*"出勤" + 0.015*"円" + 0.015*""" + 0.015*"ごと"')
(18, '0.156*"にいさん" + 0.113*"神崎" + 0.052*"水" + 0.042*"スク" + 0.035*"!?" + 0.033*"年" + 0.032*"部" + 0.026*"雨" + 0.024*"更新" + 0.021*"肉"')
(19, '0.056*"誰" + 0.054*"前" + 0.052*"アカウント" + 0.044*"手" + 0.042*"画像" + 0.028*"pawoo" + 0.027*"機能" + 0.026*"名前" + 0.024*"ブロック" + 0.022*"の"')
(20, '0.089*"それ" + 0.084*"(´" + 0.071*"江添" + 0.059*"`)" + 0.035*"トゥ" + 0.032*"君" + 0.032*"ほう" + 0.024*"トト" + 0.020*"価値" + 0.015*"カフェイン"')
(21, '0.113*"時間" + 0.087*"トゥト" + 0.065*"自分" + 0.035*"ン" + 0.034*"ドン" + 0.032*"性" + 0.025*"事" + 0.022*"なに" + 0.022*"歳" + 0.018*"はず"')
(22, '0.140*"最強" + 0.128*"加藤" + 0.037*"化" + 0.036*"www" + 0.033*"生" + 0.028*"文字" + 0.023*"gt" + 0.021*"後" + 0.019*"定期" + 0.018*"授業"')
(23, '0.066*"方" + 0.066*"動画" + 0.049*"朝" + 0.037*"話" + 0.033*"連合" + 0.029*"タイム" + 0.026*"太郎" + 0.025*"ライン" + 0.024*"宣伝" + 0.024*"僕"')
(24, '0.164*"インスタンス" + 0.049*"放送" + 0.044*"お前" + 0.030*"`)" + 0.030*"奴" + 0.026*"ぼく" + 0.022*"ノシ" + 0.021*"ツイト" + 0.021*"確認" + 0.020*"名"')
(25, '0.100*"純" + 0.049*"ここ" + 0.035*"ところ" + 0.028*"投稿" + 0.027*"ID" + 0.027*"現在" + 0.023*"ツイッタ" + 0.019*"!!!" + 0.019*"jp" + 0.014*"ラメン"')
(26, '0.084*"今日" + 0.077*"中" + 0.067*"みたい" + 0.034*"感" + 0.027*"ネタ" + 0.025*"最近" + 0.025*"心" + 0.023*"上" + 0.018*"以外" + 0.017*"顔"')
(27, '0.208*"ぁぁ" + 0.051*"数" + 0.025*"ゆ" + 0.024*"ぉ" + 0.021*"飯" + 0.020*"とこ" + 0.020*"ぃ" + 0.019*"⌒)" + 0.018*"せい" + 0.016*"仕様"')
(28, '0.147*"時" + 0.110*"ニキ" + 0.053*"私" + 0.040*"ユザ" + 0.038*"程度" + 0.031*"音" + 0.028*"✋" + 0.028*"意味" + 0.026*"会" + 0.022*"家"')
(29, '0.107*"今" + 0.089*"よう" + 0.069*"鯖" + 0.054*"|" + 0.035*"うち" + 0.031*"丼" + 0.030*"K" + 0.020*"町" + 0.019*"箪笥" + 0.017*"作業"')

クラス[8]は江添さんの出社, ドワンゴ, 大百科/クラス[20]に江添さんのトピック, [18]に神崎にいさんのトピック, わkぁるようでわからない(´・ω・`) 上手くいかない…

from gensim import corpora,models,similarities

document=[[1,2,3],[1,4,10],[1,4,2],......] #こんな感じ
dictionary = corpora.Dictionary(document)
dictionary.filter_extremes(3) #出現頻度3以下削除
corpus = [dictionary.doc2bow(text) for text in document]

lda = gensim.models.ldamodel.LdaModel(corpus=corpus, num_topics=200, id2word=dictionary)
for topic in lda.show_topics(-1):
    print(topic)

やってみた が終わったら最後にちゃんと理論を勉強しましょう👊 出直してきます…

読んだ

friends.nico

続きを読む

12時を回ってラボにいる

月曜日は一番授業数が多いが所以に何もできていない
明日はサクラダリセットを全巻買って来ようと思う.


やっぱりGPU早いわ.. だけど並列処理してないしGPU使用率見たら15%で全部使ってなかったしどうすれば全部(100%)使うようになるんだろう… コードの書き方の問題なのかな.. まずはとりあえず動いて正常に学習してるか確認して, それからかな.

import numpy as np
import cupy as cp
import chainer

DEVICE = -1
if DEVICE >=0:
  chainer.cuda.get_device(DEVICE).use()
  model.to_gpu(DEVICE)
  np = cp

進捗出てないけどもうそろそろ, 修論研究の大まかな題材を決めなければならない.
そしてインターン先をどうするかも決めないといけない.

自分の思っていた以上に大学院生活はあっという間に過ぎ去っていくと感じる.
思えばもう4月も終わりですね.

アニメ サクラダリセットを3話まで見た

原作は知らない. ネタバレ含みます. 雑に見てるのと名前覚えるのが苦手なので適当に

続きを読む

数学カフェ行ってきた.

今日はこちらに参加してきました. 会場はYahoo Japan のコアワーキングスペース
13時から19時までの長丁場でしたけど理論面から深層学習を知れたことは良かった.
また, 統計のおさらいから入門的な参考書では軽く説明してる中心極限定理などを数式を用いて分かりやすく説明していて大変ためになった.
connpass.com

friends.nico

www.slideshare.net

私にとってTwitterで就活した測度論の印象が強い MAHETAKEさんもみれたので満足です