DEIM Forum 2019 C3-5 tweet 163 8677 1 24 2 163 8677 1 24 2 163 8677 1 24 2 E-mail: c515029@ns.kogakuin.ac.jp, cm17051@ns.kogakuin.ac.jp, aki@cc.kogakuin.ac.jp Twitter tweet tweet tweet BoW Doc2vec SVM tweet 1. Twitter, SNS,, Twitter tweet 140 280 2018 6 24 1 5 [1] Twitter Twitter tweet tweet tweet tweet tweet tweet tweet tweet [2] tweet 2 3 4 5 6 2. [3 8] [3] [4] tweet Wikipedia tweet Harada [5] Apple.inc tweet tweet Latent Dirichlet Allocation(LDA) Twitter LDA 1tweet 1 tweet tweet [6] tweet [7]
tweet [8] χ 2 3. 100 1 2 tweet tweet [3 8] tweet API tweet tweet Bag of Words (3. 2 ) Support Vector Machine(SVM) (3. 4 ) Doc2Vec (3. 3 ) 3 tweet Bag of Words tweet tweet SVM tweet Doc2Vec 1tweet tweet 3. 1 Twitter Streaming API [9] tweet Streaming API tweet tweet 1% tweet tweet(bot ) 70 tweet 70 tweet tweet tweet tweet tweet tweet tweet tweet tweet T train c tweet n tweet (1) T train := {t c i i {n}} (1) tweet T train tweet tweet T test tweet k (2) T test := {t c n+i i {k}} (2) T train T test MeCab [10] mecab ipadic NEologd [11] T train T test Bag of Words(BoW) BoW m BoW {w 1,, w m} tweet t c i (3) [12] t c i = (v i1,, v ij,, v im) (3) v ij : t c i w j 1 < = i < = n, 1 < = j < = m t c i BoW t c i T train T test Yahoo! Yahoo! Twitter
tweet t 1,, t n 人手で分類 Wに関するtweet t 1,, t l W に関するtweet t l+1,, t n 形態素解析 テスト tweet t n+1,, t n+k コサイン類似度算出 cos(t, T test ) No S W > S W S W < S W W : 任意の単語 ( 名詞 ) W : W との同綴異義語 S W : W に関する tweet のコサイン類似度の合計 S W : W に関する tweet のコサイン類似度の合計 Yes Yes W に関するテスト tweet t n+1,, t n+k 3 W に関するテスト tweet t n+2,, t n+k 2 各テキストデータ ( 学習用 ) テスト tweet 集合 t n+1 t n+k 2 コサイン類似度算出 Doc2Vec による tweet のベクトル化 No No S W > S W S W < S W Yes Yes Doc2Vec Wに関するテストtweet t n+1,, t n+k 3 W に関するテストtweet t n+2,, t n+k 2 W,W 以外に関するテストtweet t n+3,, t n+k BoW ベクトル化 tweet 集合, テストtweet 集合 T{t 1,, t n },T test {t n+1,, t n+k } 1 No BoW W,W 以外に関するテスト tweet t n+3,, t n+k 1 学習フェーズ テキストデータ ラベル付けされたテキストデータ ラベル付けされた BoW ベクトル化テキストデータ 分類された BoW ベクトル化テスト tweet t m 0,0,, 0 〇,, t m+k 1 0,0,, 1 〇 SVM の分類モデル作成 Yahoo! 2 1 2 分類フェーズ テスト tweet t m,,t m+k BoW ベクトル化テスト tweet t m 0,1,, 0,, t m+k 1,1,, 1 作成された SVM による分類 分類された BoW ベクトル化テスト tweet t m+1 0,1,, 0,, t m+k 0,1,, 1 Yahoo! p A (4) 3 SVM A := {a i i {p}} (4) BoW 3. 2 Bag of Words 2 1 2 cos(x, y) (5) x i y i i cos(x, y) = x y m x y = i=1 xiyi m i=1 xi2 (5) m i=1 yi2 α(0 < α < 1) tweet W tweet W W tweet tweet T train tweet tweet t( T test) b(c) := {t c i T train cos(t, t c i ) > = α} (6) b(c) tweet t tweet t c i α tweet T test tweet t c(t i) := 1 b(c) arg max c t c i b(c) cos(t, t c i ) (7) α S W S W tweet t S W = S W tweet 3. 3 Doc2Vec Doc2Vec 2 gensim Doc2Vec [15] tweet T test tweet 3. 2 (5) tweet α 3. 2 (6) (7) tweet 3. 4 Support Vector Machine Support Vector Machine(SVM) [13] 3 tweet T test SVM 3. 2 tweet T train Yahoo! Beautiful- Soup [14] 3 3. 4. 1 tweet SVM tweet T train A A 3
各値におけるコサイン類似度の個数 各値におけるコサイン類似度の個数の割合 3. 4. 2 tweet SVM tweet BoW tweet T test tweet 4. 4. 1 tweet 4. 2 tweet T train T test T train T test tweet 1 tweet tweet tweet MeCab mecab ipadic NEolodg 2018 12 26 18 30 BoW SVM scikit learn LinearSVC [16] C = 1.0 Yahoo! 2018 11 19 100 67 64 Doc2Vec N = 300 () window=8 3 tweet 2 tweet T train T test BoW tweet BoW tweet tweet 1tweet 4. 3 T train tweet tweet tweet α 4 40000 100.00% 36026 90.00% 35000 80.00% 30000 29006 26546 70.00% 25000 60.00% 20000 50.00% 40.00% 15000 30.00% 10000 8678 8224 20.00% 5000 3447 2670 10.00% 1994 1218 455 506 66 404 6 112 0 132 16 0 32 10 0 8 2 0 8 16 0 0 16 0 202 200 0 0.00% 0~0.1 0.1~0.2 0.2~0.3 0.3~0.4 0.4~0.5 0.5~0.6 0.6~0.7 0.7~0.8 0.8~0.9 0.9~0.999 0.999~1.0 コサイン類似度羽生善治と羽生結弦羽生善治同士羽生結弦同士羽生善治と羽生結弦羽生善治同士羽生結弦同士 4 tweet tweet tweet tweet 0 0.1 tweet 0.1 0.2 tweet α 0.1 0.2 0.1 0.2 4. 4 4. 4. 1 BoW 5 tweet T test 0.01 tweet 6 tweet tweet T test 7 tweet tweet T test 4. 4. 2 Doc2Vec Doc2Vec 3 7 α=0.1 4. 4. 3 SVM SVM 8 12 T train A A T train tweet T test
1 T train T test T train T test 10 1 10 31 12 1 12 31 11 1 11 30 1 1 1 31 200 200 180 50 50 50 200 200 180 50 50 50 2 tweet tweet 500 500 460 BoW 3741 4893 3358 () 22.8 23.7 16.0 106.0 101.6 83.7 5 BoW () 7 BoW ( ) 6 BoW ( ) 3 T train Doc2Vec 50 0 46 4 0.54
4 A Doc2Vec 29 21 13 37 0.66 5 A Doc2Vec 48 2 49 1 0.49 10 A SVM 50 0 32 18 0.68 11 T train SVM 38 12 26 24 0.62 6 T train Doc2Vec 37 13 45 5 0.42 12 T train SVM ( ) () ( ) 50 0 () 46 4 054 7 T train Doc2Vec ( ) () ( ) 23 27 () 22 28 0.51 8 T train SVM 28 22 2 48 0.76 9 A SVM 50 0 44 6 0.56 SVM T test 5. 5. 1 BoW BoW 3 0.77 tweet tweet 9 tweet tweet tweet tweet 1 tweet tweet tweet 9 tweet 2018 12 7 SPECIAL tweet tweet
13 14 A 63 1 16 48 0.87 T train Doc2Vec 28 22 24 26 0.54 17 T train Doc2Vec 21 29 20 30 0.51 18 T train Doc2Vec ( ) () ( ) 23 27 () 26 24 0.47 15 A Doc2Vec 35 15 39 11 0.46 16 A Doc2Vec 45 5 47 3 0.48 5. 2 Doc2Vec Doc2Vec T train A 64 13 0.87 Doc2Vec Doc2Vec tweet 3 6 tweet 5 14 18 tweet 5 4 15 0.01 0.09 Doc2Vec 1tweet 1 Doc2Vec 5. 3 SVM tweet tweet T train A T train T train tweet 96% A tweet 100% tweet tweet tweet tweet tweet 100% tweet T train tweet 100% SVM 5. 4 70 tweet
分類精度 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Bow-cos SVM Doc2Vec 分類方法及び教師データ 8 BoW 8 tweet 4. 4 tweet tweet 2 BoW tweet SVM Doc2Vec NLC2015 46, pp. 13 17, 2016 [3] Skip gram, Vol. 24, No. 2, pp. 187 204, 2017 [4] DEIM Forum 2018 B3 2 [5] Tomohiko Harada, Kazuhiko Tsuda, Classifying homographs in Japanese social media texts using a user interest model, Procedia Computer Science, Vol. 35, pp. 929 936, 2014 [6] NLVol. 2003, No. 23, pp. 85 92, Mar. 23, 2003 [7] Vol. 36, No. 10, pp. 2362 2370, Oct. 1995 [8], Vol. 42, No. 3, pp. 495 506, Mar. 2001. [9] GET statuses/sample, https://developer.twitter.com/ en/docs/tweets/sample-realtime/api-reference/ get-statuses-sample Jan. 9,2019 [10] MeCab: Yet Another Part of Speech and Morphological Analyzer, http://taku910.github.io/mecab/, Jan. 9,2019 [11] mecab-ipadic-neologd : Neologism dictionary for MeCab, https://github.com/neologd/mecab-ipadic-neologd, Jan. 9,2019 [12], Vol. 36, No. 8, pp. 1819 1827, Aug., 1995 [13] Support Vector Machines, https://scikit-learn.org/ stable/modules/svm.html, Jan. 9,2019 [14] Beautiful Soup, https://www.crummy.com/software/ BeautifulSoup/, Jan. 9,2019 [15] models.doc2vec - Doc2vec paragraph embeddings, https: //radimrehurek.com/gensim/models/doc2vec.html, Jan. 9,2019 [16] sklearn.svm.linearsvc, https://scikit-learn.org/stable/ modules/generated/sklearn.svm.linearsvc.html, Jan. 9,2019 6. tweet tweet 70 tweet [1] OMNICORE, Twitter by the Numbers: Stats, Demographics & Fun Facts, https://www.omnicoreagency.com/ twitter-statistics/, Jan. 2,2019. [2]