# SNS 上の攻撃的表現の検出と位置特定

牧元大悟 ${ }^{1}$ 徳永健伸 ${ }^{1}$
1 東京工業大学 情報理工学院
makimoto.d.aa@m.titech.ac.jp take@c.titech.ac.jp

## 概要

本研究では日本語における攻撃的表現の検出及び 位置特定のタスクのためのデータセット構築し，こ のデータセットを用いて，最先端の機械学習モデル を含む複数のモデルで実験を行いその結果を比較し た。英語を対象とした関連研究の学習モデルが本研究で作成したデータセットにおいても良い結果を達成することを確認した。また, 攻撃的表現の検出と 位置特定をまとめたタスクにおける評価手法につい て考察し，サブタスクに分割して取り組む方針の有効性について検証した。

## 1 序論

本研究の目的は SNS 上の日本語の投稿に対する 攻撃的表現の検出とその位置の特定である。具体的 には、SNS 上の投稿を入力とし，投稿が攻撃的表現 を含むかどうかを判定し，攻撃的表現を含むものに 対してその位置を出力するモデルを構築する。本研究で扱う攻撃的表現とは，第三者が投稿を見た際に 攻撃的な表現であると判断できるものである。攻撃的表現の検出と位置特定を同時に扱う先行研究はなく, 特に日本語の投稿を対象とした研究では 攻撃的表現の位置特定を扱った研究はない。本研究 では日本語のデータセットの作成し、攻撃的表現の 検出と位置特定を同時に行なう手法の提案と英語に おける先行研究を参考にした複数の機械学習モデル の実装と比較，評価手法の検討を行なった。また，攻撃的表現の検出と位置特定を包括的に行う上での 評価方法やタスクの取り組み方，データセットの利用方法を複数の設定で実験し，比較を行なった。本研究の貢献を以下にまとめる。

・攻撃的表現がアノテーションされた日本語デー タセットの作成方法の提示
- 最先端の機械学習を用いた攻撃的表現の検出と 位置特定タスクの実装と評価
・本タスクに対する評価手法の考察

## 2 関連研究

## 2.1 英語における攻撃的表現の検出

Zampieri らは, Offensive Language Identification を 含むタスク群を扱った共有タスクを提案してい る $[1,2]$ 。このタスクで用いられたデータセット OLID [3] は，キーワードを用いて Offensive Language を含みやすいツイートを収集し，アノテーションし たものである。Zampieri らの Offensive Language の 検出では, ALBERT[4] のアンサンブルモデルが最も 良い結果を達成した [1]。

## 2.2 英語における攻撃的表現の位置特定

Pavlopoulos らはは Toxic Span Detecion を扱った共有タスクを提案している [5]。データセットは，既存のデータセットから “Toxic” とラベルされたコメ ントを取り出し，それらに対しスパンのアノテー ションしている。BERT ベースの 3 つのモデルのア ンサンブルが最も良い結果を達成した。

## 2.3 日本語における関連研究

尼崎らは Twitter から人が嫌がる語を含む投稿を 収集し，人手により不適切な投稿であるかどうか のラベルを付与した [6]。作成したデータに対して Bag of Words(BoW) で特徵量を抽出し線形 SVM を用 いて不適切投稿の検知を行なっている。他の類似研究として，学校非公式サイトでの有害な書き込み検出 $[7,8]$ や掲示板の書き込みが児童買春を示唆して いるかの有害性評価 [9] や SNS 上で非難が殺到して しまう投稿を検知する炎上検出 $[10,11]$ などがある。

## 2.4 本研究の位置づけ

本研究は，Twitterにより収集したデータに対し，人手でアノテーションを行いデータセットを作成す

る。作成したデータセットに対して最先端の機械学習モデルを使用して攻撃的表現の検出及び位置特定 を行う。英語を対象とした研究で用いられているよ うな最先端の機械学習モデルが用いられた日本語に おける先行研究はなく, 攻撃的表現の位置特定につ いては先行研究が存在しない。また，検出と位置特定を同時に扱うような研究は英語においても行われ ていない。

## 3 データ

## 3.1 データ収集

本研究では，SNS 上の投稿としてツイートを扱 う。ツイートの収集には TwitterAPI ${ }^{1)}$ を利用する。 リプライ及び引用リッイート（以下，まとめてリプ ライと呼称）を収集対象とし、既定の攻撃的単語を 含むツイートを複数回しているアカウントからリ プライを収集した。既定の攻撃的単語には，畠山 ら [12] が用いた人手のアンケートで半数以上の人が 有害及び少し有害と判断した種単語群のうち卑猥語 を除いた以下の 17 単語を用いた。

死ね，消えろ, 蛆虫, カス, 殺す, きもい, うざい,

不細工, ビッチ, クズ, マスゴミ, 脱冀, 糞虫, ダ セー,ゴキヲタ, マジキモ, 死ね

上記で得られた最終的な収集データに対し，メン ションやハッシュタグ除去等の前処理を行い, 最終的に 306 のアカウントから合計 34,123 リプライが集 まった。また，そのうち既定の攻撃的単語を含むり プライ数は 1,292 で全体の $3.7 \%$ である。

## 3.2 アノテーション

3.1 で収集したリプライに対し人手で以下の $2 \supset$ のアノテーションを行なった。1 リプライにつき 3 人のアノテーターが担当した。

(1) 攻撃的表現を含むかどうかを，「0: 含まない」「1: 含む」「2: ツイートの内容が理解できない」 に分類する

(2)「1: 含む」の攻撃的表現を括弧で囲む（複数可）

## 3.3 データセット構築

攻撃的表現を含むかのラベルについては，2人以上が「2: ツイートの内容が理解できない」としたリ プライを除外し，それ以外のリプライについては 1

1) https://developer.twitter.com/en人以上が「1: 含む」としたリプライのラベルを「1:含む」とし，残りを「0: 含まない」とした。

そして「1: 含む」のラベルがついたリプライにつ いて以下の手順で攻撃的表現の位置を決定する。

(1) 括弧で囲まれた攻撃的表現を文字インデックス の集合に変換し，3 人の文字のインデックスの 集合を統合する

(2) リプライを MeCab[13]を用いてトークン単位に 分割し, (1)で作成した集合の要素のインデッ クスが含まれるトークンを攻撃的表現トークン とし，IOB タグに変換する

攻撃的表現の位置決定における手順 (1) の例を表 1 に示す。以上の操作で得られた BI タグで表される 攻撃的表現のトークン列を 1 つのスパンと呼ぶ。

作成したデータセット内のラベルの分布を表 2 に 示す。また, 攻撃的表現を「1: 含む」とされた 4,828 ツイートの約 $20 \%$ に収集に用いた既定の攻撃的単語 が含まれていた。得られたデータセットを 6:2:2で 訓練・開発・テストに分割した。

## 4 タスク設定と評価

## 4.1 タスク設定

本研究では，SNS 上の攻撃的表現の検出と位置特定という目的を 2 つのサブタスク，攻撃的表現の検出と攻撃的表現の位置特定に分けて考える。攻撃的表現の検出は入力されたリプライが攻撃的表現を 含むかどうかの二値分類を行う。出力は $\Gamma 0$ : 含まな い」「1: 含む」のタグとなる。攻撃的表現の位置特定は攻撃的表現が存在すればそのスパンを出力す る。出力はスパンを表現する BIO タグとなる。

それぞれのサブタスク単体の実験と 2 つのサブタ スクをまとめた実験を行う。サブタスクのまとめ方

として，2つのサブタスクをパイプライン式に行う 方法と両方のサブタスクを一括式に行う方法の 2 通 りで実験を行う。パイプライン式では攻撃的表現の 検出を行った後，検出結果が「1: 含む」の例につい てその位置特定を行う。一括式では攻撃的表現の位置特定を行い，出力にスパンが含まれないような例 を攻撃的表現を含まないとすることで攻撃的表現の 検出と位置特定の両方の結果を得る。

## 4.2 評価

攻撃的表現の検出の評価には，「1: 含む」を対象 とした Accuracy，Precision, Recall，F1 値を用いる。攻撃的表現の位置特定の評価には，Partial Match F1，Exact Match F1，Char-offsets F1 を用いる。Partial Match と Exact Match は固有名認識 (Named Entity Recognition)における評価であり，スパンをベースに 評価を行う。Partial Match は正解のスパンの一部に モデル出力のスパンが被っていればそのスパンにつ いては TruePositive としてカウントし, Exact Match は正解とモデル出力のスパンが完全に一致してる場合を TruePositive としてカウントする。

Char-offsets F1 は Pavlopoulos ら [5] が用いた評価尺度である。リプライ内のスパンを文字オフセッ トに変換し, 正解とモデル出力の文字オフセット リストから F1 を計算する。データセット中の各リ プライについて上記の $\mathrm{F} 1$ を計算し，平均したもの が Char-offsets F1 である。ただし, 正解とモデル出力の文字オフセットリストが共に空の場合は F1 を 1 , どちらか一方が空の場合は $\mathrm{F} 1=0$ として計算 する。後述の表中では Partial Match F1，Exact Match F1，Char-offsetsF1をそれぞれPMF1，EMF1，CoF1 と略記する。

## 5 学習モデル

## 5.1 攻撃的表現の検出

攻撃的表現の検出には BiLSTM モデルと ALBERT fine-tuning モデルを用いる。

BiLSTM モデルは 1 層の BiLSTM 層と二値分類器 から成るモデルを使用した。埋め込み表現の獲得に は ELMo[14]を用いた。

ALBERT Fine-tuning モデルは [1] の Offensive lanuage の検出で最も良い結果のモデルを参考にした。学習済みの ALBERT $^{2}$ を本研究のデータセットで

2) https://github.com/cl-tohoku/bert-japanese fine-tuning したモデルである。ALBERT の入力トー クン列の先頭に挿入される特殊トークン [CLS] の最終隠れ状態を二値分類器の入力とする。

## 5.2 攻撃的表現の位置特定

攻撃的表現の位置特定には BiLSTM-CRF モデル と BERT-CRF fine-tuning モデルを用いる。

BiLSTM-CRF モデルは 1 層の BiLSTM 層と CRF 層 から成るモデルを使用した。CRF[15] 層は，各トー クンに対する各タグのスコアを入力としてタグの依存関係を考慮した全体の最適なタグ列を出力する。埋め込み表現の獲得には ELMoを用いる。

BERT-CRF fine-tuning モデルは [5] の Toxi Span Detection において最も良い結果のモデルを参考に した。学習済みの BERT $^{3}$ )を本研究のデータセット で fine-tuning したモデルである。BERT-CRF は NER において最先端のモデルの 1 つである。各トークン に対する BERT の最終 Transformer 層の隠れ状態を CRF に入力する。

## 5.3 一括式のタスク設定

一括式のタスク設定では，5.2の BERT-CRF finetuning モデルと同様のものを用いる。ただし，5.2の モデルについては攻撃的表現を含む例のみで学習を 行うが，一括式のタスク設定におけるモデルでは全 ての例を用いて学習を行う。

## 6 評価実験

## 6.1 サブタスクの実験結果

表 3 に攻撃的表現の検出の結果，表 4 に攻撃的表現の位置特定の結果を示す。攻撃的表現の位置特定 については入力が必ず攻撃的表現を含むという前提 であり，単体のタスクとして考えた場合の結果であ る。これらの結果は異なるシード值における 5 回の 実験の結果の平均値である。

表 3 攻撃的表現の検出モデルの単タスク性能評価


表 4 攻撃的表現の位置特定モデルの単タスク性能評価

## 6.2 タスク全体の結果

6.1 でそれぞれのサブタスク単体としての結果を 示した。それらのサブタスクで最も結果が良かっ たモデルである ALBERT fine-tuning と BERT-CRF fine-tuning を接続したパイプライン式のモデルの結果と BERT-CRF fine-tuning を用いた一括式のモデル の結果を表 5 と表 6 に示す。

表 5 攻撃的表現の検出：パイプライン式・一括式

表 6 攻撃的表現の位置特定 : パイプライン式・一括式

## 6.3 パイプライン式と一括式の比較

パイプライン式と一括式の「1: 含む」の検出成功数を表 7 に示す。また，パイプライン式と一括式の Partial Match 基準のスパン特定成功数を表 8 に示す。 それぞれモデルは 6.2 と同様である。攻撃的表現の スパンについてはパイプライン式と一括式のそれぞ れで位置特定に成功しているスパンのうち 5 割以上 が各モデルでのみ特定に成功している。そのため,位置特定についてはアンサンブルすることで結果が 向上する可能性が高いといえる。

## 6.4 評価尺度について

攻撃的表現の位置特定の評価に用いた Char-offsets F1 は，攻撃的表現のスパンがない例がデータセッ ト中に多い場合にスパンがある例の影響が小さくな り，スパンを特定できているかどうかの差が值に出 にくくなってしまう。Char-offsets F1 を用いていた 先行研究 [5] では, 既存のデータセットで “Toxic” と 判定されたコメントのみを対象としてデータセット を作成しているため上記の問題は発生しない。本研究においては，攻撃的表現の位置特定のみの実験で は攻撃的表現を含む例のみを対象としているため上表 7 パイプライン式と一括式の「1: 含む」の検出成功数

記の問題は発生しないが，タスク全体での攻撃的表現の位置特定の評価ではデータセットの多くが攻撃的表現のスパンを含まない例のため評価指標に適し ていないと考えられる。

同じく攻撃的表現の位置特定の評価に用いた Partial Match F1 及び Exact Match F1 については，例 ごとにではなくスパンごとに評価しているため， Char-offsets F1 と同様の問題は発生しない。Partial Match F1 の問題点としてはモデル出力のスパンの長 さを評価において考慮しなため，スパンをより長く 出力するモデルにおいて評価が高くなってしまうと いうものがある。一方 Exact Match F1 では，過不足 なく正解スパンと一致させるのは難しいという問題がある。実際に 3 人のアノテーターが全員「1: 含 む」とした例について，そのスパンが完全一致して いるものは 1032 例中 283 例であり，人手において もスパンが完全一致する例は少ない。

## 7 結論

本研究では日本語における攻撃的表現の検出及 び位置特定のタスクを提案した。本タスク用のデー タセットの作成方法について述べ，作成したデータ セットを用いて実験を行った。実験には最先端の機械学習モデルを用い，従来モデルでの結果との比較 やいくつかの異なる条件での性能の比較を行なっ た。また，英語における既存の先行研究と関連研究 を参考に評価手法について考察した。

今後の取り組みとしては，攻撃的であると判断し たアノテーターの人数を利用した重み付きのロス関数の導入や本研究におけるパイプライン式のモデル と一括式のモデルのアンサンブルモデルを用いるこ とが挙げられる。また, fine-tuning に用いた機械学習モデルの事前学習に Twitter のデータを用いるこ とでも結果の改善が期待できる。

## 参考文献

[1] Marcos Zampieri, Preslav Nakov, Sara Rosenthal, Pepa Atanasova, Georgi Karadzhov, Hamdy Mubarak, Leon Derczynski, Zeses Pitenis, and Çağrı Çöltekin. SemEval2020 task 12: Multilingual offensive language identification in social media (OffensEval 2020). In Proceedings of the Fourteenth Workshop on Semantic Evaluation. International Committee for Computational Linguistics, 2020.

[2] Marcos Zampieri, Shervin Malmasi, Preslav Nakov, Sara Rosenthal, Noura Farra, and Ritesh Kumar. SemEval-2019 task 6: Identifying and categorizing offensive language in social media (OffensEval). In Proceedings of the 13th International Workshop on Semantic Evaluation. Association for Computational Linguistics, 2019.

[3] Marcos Zampieri, Shervin Malmasi, Preslav Nakov, Sara Rosenthal, Noura Farra, and Ritesh Kumar. Predicting the Type and Target of Offensive Posts in Social Media. In Proceedings of NAACL, 2019.

[4] Zhenzhong Lan, Mingda Chen, Sebastian Goodman, Kevin Gimpel, Piyush Sharma, and Radu Soricut. Albert: A lite bert for self-supervised learning of language representations. In International Conference on Learning Representations, 2020.

[5] John Pavlopoulos, Jeffrey Sorensen, Léo Laugier, and Ion Androutsopoulos. SemEval-2021 task 5: Toxic spans detection. In Proceedings of the 15th International Workshop on Semantic Evaluation (SemEval-2021). Association for Computational Linguistics, 2021.

[6] 尼崎航成, 向井宏明, 松井くにお. SNS における不適切投稿の検知. 第 82 回全国大会公演論文集, 2020.

[7] 松葉達明, 桝井文人, 井須尚紀. 学校非公式サイトに おける有害情報検出を目的とした極性判定モデルに 関する研究. 言語処理学会第 17 回年次大会発表論文集, 2011.

[8] 新田大征, 桝井文人, プタシンスキ・ミハウ, 木村泰知, ジェプカ・ラファウ, 荒木健治. カテゴリ別関連度最大化手法に基づく学校非公式サイトの有害書込 み検出. 第 27 回人工知能学会全国大会発表論文集, 2013.

[9] 安彦智史, 長谷川大, プタシンスキ・ミハウ, 中村健二, 佐久田博司. Id 交換掲示板における書きこみの 隠語表記摇れを考慮した有害性評価. 情報システム 学会誌, pp. 41-58, 2018.

[10] 三宅剛史, 松本和幸, 吉田稔, 北研二. 分散表現を用い た有害表現判別に基づく炎上予測. 人工知能学会第二種研究会資料, 2017.

[11] 大西真輝, 澤井裕一郎, 駒井雅之, 酒井一樹, 進藤裕之. ツイート炎上抑制のための包括的システムの構築. 人工知能学会全国大会論文集, 2015.

[12] 畠山鈴生, 栘井文人, プタシンスキ・ミハウ, 山本和英. 有害表現抽出に対する種単語の影響に関する一考察. 人工知能学会全国大会論文集, 2016.

[13] 工藤拓, 山本薫, 松本裕治. Conditional random fields を用いた日本語形態素解析. 情報処理学会研究報告. NL, 自然言語処理研究会報告, 2004.

[14] Wanxiang Che, Yijia Liu, Yuxuan Wang, Bo Zheng, and
Ting Liu. Towards better UD parsing: Deep contextualized word embeddings, ensemble, and treebank concatenation. In Proceedings of the CoNLL 2018 Shared Task: Multilingual Parsing from Raw Text to Universal Dependencies. Association for Computational Linguistics, 2018.

[15] John D. Lafferty, Andrew McCallum, and Fernando C. N. Pereira. Conditional random fields: Probabilistic models for segmenting and labeling sequence data. In Proceedings of the Eighteenth International Conference on Machine Learning. Morgan Kaufmann Publishers Inc., 2001.
 牧元大悟 ${ }^{1}$ 徳永健伸 ${ }^{1}$ 1 東京工業大学 情報理工学院 makimoto.d.aa@m.titech.ac.jp take@c.titech.ac.jp  