# 議題への明示的な賛否表現を含まない議員発言を対象とした 議会議事録のスタンス分類

猫本隆哲
豊橋技術科学大学
nekomoto.takanori.pf@tut.jp
}

秋葉友良
豊橋技術科学大学
akiba@cs.tut.jp
}

増山繁
東京理科大学
masuyama@rs.tus.ac.jp

## 1 はじめに

NTCIR-15 の QA Lab-PoliInfo-2 タスク1)では, 地方議会議事録から議員の意見やその理由・条件を要約 して表示するといった複雑な実世界の質問応答技術 を目指している [1]. 近年,フェイクニュースが多大 な悪影響を及ぼしていることから, ファクトチェッ クの重要性を再認識されている. 情報獲得のために 幅広く利用されている一般的な Web 検索エンジン では, Eli Pariser が提唱した “filter bubble” [2] と呼ば れる概念によって, ユーザーが自分の視点に合わな い情報から遠ざかることから, ファクトチェックが 困難となっている. ファクトチェックのためには, 議事録などの一次情報源をしっかりと把握しておく必要がある.

QA Lab-PoliInfo-2 Stance Classification タスクでは,東京都議会における政治家の発言から, 政治家の立場 (スタンス) を推定することを目的としている2). より具体的には, 議会議事録から, 議会中に議論され る各議題について, 各会派の賛否を分類する問題に 取り組んだ. 日本の議会議事録の記述は, 議員ごとの 発言の書き起こしであり, ほとんどの議員は討論の 冒頭で複数の議案に対して簡単な賛否を述べること から,ここから一定数の議案に対してのスタンスが 判明する. よって, Stance Classification の評価結果で は,この冒頭部分のみを用いることで $90 \%$ 以上の正解率で賛否分類できることが示されている [3]. しか し,一部には冒頭部分で賛否表明を行わない, また は冒頭のみでは賛否表明されない議案が存在する といった場合があり, そのような場合に対応するに は, 冒頭以外の討論部分から賛否分類を行う必要が ある.

本研究では, ある議案に対して明示的な賛否の表現のない討論の発言から賛否分類を行う問題に焦点

1) https://poliinfo2.net/

2) https://poliinfo2.net/stance-classification-task/
を当てた. 賛成や反対といったターゲット単語のみ に着目する単純なルールベース分類ではなく,これ を除いた議員の発言全体から学習データを作成し， より多くの分野やタスクへの応用を可能とするため に BERT [4] ベースのスタンス分類器を構築した.

## 2 スタンス分類

本節では, QA Lab-PoliInfo-2 Stance Classification タ スクにおけるデータ構造, 分類対象とする議事録の 構造, 本研究の問題設定について詳細を述べる.

## 2.1 デー夕構造

分類器には, 会議録データと表 1 から構成される 出題ファイルを入力として与え, 空欄となる会派の 賛否を埋めた出題ファイルを出力とする.

 \\

議員らの発言は, 出題ファイルの MeetingDate を参照し, 期日が一致する会議録から抽出する. また,こ の他に収録されているフィールドは分類器への付加情報および, 議員の発言をより詳細に検索するため に用いる。

## 2.2 会議録データ

入力として利用可能な会議録データには, 定例会 や臨時会の他に委員会等の速記録があるが, 後者は 賛否が伴う議決を行うものではないため, スタンス 分類に直結するのは前者での議員の発言である. 定例会における議員の実際の発言を図 1 に示す.

"Speaker": "百四番 (村松みえ子君)",

"Utterance": "私は、日本共産党都議団を代表して、第二百二十八号議案、東京都養育院条例を廃止する 条例外六議案に反対の立場から討論を行います。

東京都養育院は、福祉と医療、研究が連携した総合的なサービス提供を最大の特徴としており、世界的にも高い評価を受けております。ところが今回の 提案は、これから迎える本格的な高齢社会に向け、養育院の、この福祉と医療と研究の一体的な運営を 一層強化する必要があるときに、逆にそれを後退さ せるものであり、反対です。...

図 1 討論例

議員は必ず議長から発言権が与えられた上で, 始 めにいくつか議案への簡単な賛否表明を行った上 で,それぞれの議案についての詳細な討論を行う.こ こでは, 前者の発言を賛否表明文, 後者を討論文と定義する. 賛否表明文を図 2 に示す.

"Utterance": "私は、日本共産党都議団を代表して、第二百二十八号議案、東京都養育院条例を廃止する 条例外六議案に反対の立場から討論を行います。

図 2 賛否表明文例

賛否表明文は, 議長から発言権が与えられた議員 が始めに述べる形式的な賛否表明である. 多くの場合, ここから特定議案 (議案番号) の賛否表明が得ら れ, Stance Classification タスクの評価結果では, 賛否表明文のみを参照することで $90 \%$ 以上の正解率が実現されることが分かっている [3].

次に討論文を図 3 に示す.

東京都養育院は、福祉と医療、研究が連携した総合的なサービス提供を最大の特徴としており、世界的にも高い評価を受けております。ところが今回の 提案は、これから迎える本格的な高齢社会に向け、養育院の、この福祉と医療と研究の一体的な運営を 一層強化する必要があるときに、逆にそれを後退さ せるものであり、反対です。...

図 3 討論文例討論文では, 賛否表明を行なった議案への詳細な 言及がなされる. 賛否表明文と比較すると, 同一議案 への言及でありながらも，それについての根拠が明確に述べられている. しかし, 討論文では賛成や反対 といった単語は必ずしも出現しない. また, 実際の発言は非常に長いものとなっている.

## 2.3 問題設定

賛否表明文を用いることで高い精度で賛否分類を 行うことが可能であるが, 陽に言及されない議題に は対応できない. そこで本研究では, 図 3 に示した討論文から, 議案に対する賛否を分類する問題に焦点 を当てる. そのために, 議事録の各議員の各議案に 対する討論文と，その議題への賛否を対応付けたぺ アデータを人手で構築した.このペアデータを学習 データとテストデータに分割し, 二值分類器の構築,評価を行なった。

## 3 手法

本節では, スタンス分類を行うための分類器の構築方法, 学習データへの前処理, および分類器の精度 を検証するための実験方法について述べる。

## 3.1 会派の特定

東京都議会におけるスタンス分類を行うための準備として, 討論を行う議員の所属会派を事前に特定 する必要がある. 表 1 に示したように, 会派と発言者 の対応は SpeakerList から分かるが, 代表質問者以外 の議員は自身で所属政党を名乗らなければ会派との 対応が取れない問題点がある. そこで, 都議会 HP の 検索エンジン3) と BeuatifulSoup4 [5] を用いて定例会等に出席したすべての議員の所属政党を収録した辞書を別途で作成した. また, 議員によっては政党移動 または政党名変更等があるため, それを考慮した都議会議員 322 名のネスト型辞書を構築した。一例を 図 4 に示す.

## 3.2 BERTを用いた分類

2.3 節で定義した討論文を対象に議員のスタンス を 2 值 (賛成 or 反対) に判定する分類器を構築し た. この分類器は, BERT の MRPC タスクに基づき 作成したものであり, 入力を単一の討論文としてい る. モデルには, 公開されている日本語事前学習済み モデルの BASE 通常版を用いた [6]. このモデルは,


図 4 議員/所属会派辞書

JUMAN [7] による単語分割に基づいて学習されてい るため, 同じ形態素解析器を使用している. 学習デー タの作成には, Poliinfo2 から提供されているデータ を参照し, 発言権が与えられた議員の討論文から議案名もしくは議案番号に完全に一致する発言のみを 抽出し, 使用した。

しかし, 東京都議会における討論文には議題に上 がった議案とは直接関連の無い内容が多く含まれて おり, BERT に入力できる単語数の最大値が 512 語で あるため, 何らかの前処理を適用する必要がある. 今回は簡単な前処理として, 討論文に特定の接続詞が 含まれていた場合, それ以降の文は議題案とは無関係であると判断し, 接続詞の後の文を全て削除して いる. 特定の接続詞には, 以下のパターンを想定して いる.

## 特定の接続詞

(次に、*㳊次いで、*|続いて、.*最後に、*、*て、.*) なお, 上記のパターンは, 討論の途中に出現する ものにはマッチせず, 句読点があるもののみを考慮 している. 作成された学習データの総数は 442 件で あり, データの各行には賛否ラベル ( “0”: 反対 or “1”: 賛成) と討論文が収録されている.

## 3.3 編集距離を用いたデータ拡張

3.2 節で述べたように, 学習データとして利用可能 な議員の討論文は, 議案名または議案番号との完全一致で取れるものに限定しているため, 抽出が不十分であると考えられる. そこで, 暫定的なデータ拡張 として編集距離を用いて, 議題に上がった議案名に 関連性のある単語を討論文から抽出し, 学習データ
を 442 件から 485 件へ増強した。

## 3.4 DPを用いたテキストセグメンテー ション

学習データとしての討論文は, 特定議案への言及文のみを収録し, その他の関連の無い議案への言及文は取り除くことが理想となる. 3.2 節では, 特定の 接続詞以降の文を削除しているが,これもまたテキ スト分割としては不十分であると考えられる. そこ で, 議員の発言から議題に関係のない発言を削除す る手法として、Dynamic Programming(DP) を用いて 討論文のセグメンテーションを行った. 前提として， セグメントを考える際の最小単位は文であり, シー ケンスデータでの 1 つのデータポイントは, 今回の 場合は 1 つの文となる [8]. 実装したテキストセグメ ンテーションの手順は以下の通りである.

Step 1. テキストデータクラスを定義し. セグメント 内のスコアを計算する $h(t 1, t 2)$, テキストの長さを返 す GetLength() を定義する.

Step 2. $T$ をテキストの文のリスト, $L$ をテキストの単語リスト (Mecab [9]を使用)とし, 文間の類似語を表 す $L \times T$ スケールの matrix $F$ を定義する.

Step 3. 行列 $F$ は疎行列であり, 各文から単語を抽出 し, $L$ に含まれる単語が $T$ にある場合, リスト $L$ から その単語のインデックスを取り, $F$ のインデックス の行に 1 を代入する.

Step 4. 文章 $i$ と $j$ の類似度を表す matrix $f$ とその転置行列の積を matrix $d$ と定義する. 同一文の類似度 は $0\left(d_{i i}=0\right)$ とし,この matrix $d$ を用いてセグメント 内のスコアを計算する.

Step 5. セグメントに含まれるすべての文の類似度を 足し合わせ, セグメントの長さで割ってスコアを得 る. 評価関数 $J$ は, セグメントの開始点を $t_{1}$, 終了点 を $t_{2}$ と定義する。

$
J=\frac{\sum_{i=t 1}^{t 2-1} \sum_{j=t 1}^{t 2-1} D_{i j}}{(t 2-t 1)}
$

Step 6. DP の再帰関数に討論文と任意の数のセグメ ント数をオブジェクトとして与え, $J$ が最大となる セグメントの分割点をインデックスとして返す.

なお, セグメントの数は DP へ任意に与えなければ ならないため,ここでは討論文の長さに応じて任意 の值でセグメンテーションを行っている.

## 3.5 分類器への付加情報

政治的なイデオロギーは都議会もまた例外ではな く, 保守派やリベラル派といったものがあり, このよ うな政党間では, 議案の種類や提案政党などによっ て賛否に大きなバイアスが生じている. 例として, 保守派とリベラル派は双方の提案に反対することが多 く, また知事が提案する議案には賛成することが多 い.このような政党間や議案の提出元で変化する賛否のバイアスの解消を見込み, 賛否ラベルと討論文 の意味的な等価性を評価する分類器への付加情報 として, 表 1 に示したフィールド名に基づき, 政党名 (party) と議案の提出元 (proponent) を与える実験 を行った. なお, 提出元は知事提出もしくは議員提出 の 2 值である.

## 4 結果$\cdot$考察

分類器の評価実験は, 出題データ全てを賛成と分類する majority ベースラインと, BERT を用いたもの の 2 種類に分けられる. 加えて, BERT については分類器を変えずにいくつかの学習データの構築方法を 提案し, 精度の比較を行った. ハイパーパラメータの 設定は, 入力の最大系列長を 128 , ミニバッチサイズ を 32, 学習係数を $2 \mathrm{e}-5$, エポック数を 5 とし, モデル の評価には $\mathrm{k}$ 交差検証を用いた. 各手法での分類結果を 3 に示す. DA は 4.2 節のデータ拡張手法であり, DP は 4.3 節のものである. 提出元での majority は, 知事提出議案を賛成, 議員提出議案を反対で統一とし,政党ごとの majority は統一化が困難であるため, 無 しとしている.

表 3 評価結果, $\mathrm{k}=5$ 交差検証 avg, train:442, $\operatorname{train}(\mathrm{DA}): 485$

 &  &  \\

BERT & $\mathbf{0 . 8 5 0 7}$ & 0.8509 & 0.8370 \\
BERT+DA & 0.8439 & 0.8419 & $\mathbf{0 . 8 6 8 8}$ \\
BERT+DP & 0.8484 & $\mathbf{0 . 8 6 6 6}$ & 0.8685 \\
BERT+DA+DP & 0.8212 & 0.8637 & 0.8460 \\

結果から, 討論文のみの入力ではデータ拡張等を施さない状態が最も精度が高く, 討論文+提出元では DP 手法, 討論文+政党名ではデータ拡張手法が最も 高い精度となった.これらの提案手法は全てにおい て, majority ベースラインを上回っているが, 付与情報による大幅な精度向上は見込めなかった.

フィールド名である政党名と提出元の付加によ り, 一定の精度向上が見られた要因としては, 3.5 節 で述べた政党間, 提案者によって生じる賛否のバイ アスの解消によるものと考えられる. しかしながら，正解ラベルに分類された討論文が, フィールド情報 を与えたことで誤分類されることがあるため, 精度向上へ寄与する手法としては一長一短であるといえ る. また, 実験データとしては非常にサンプル数が少 なく, BERT での日本語構文解析においてはより大規模なコーパスと,より高い pre-training 時の epoch 数によって, さらなる精度向上が実現することが示唆されていることから [10], さらなる大規模なデー タセットの構築が必要である.

## 5 おわりに

本研究では, 東京都議会における議員のスタンス 分類タスクにおいて, BERT を用いた議員の発言を スタンス分類するための学習データの作成方法, お よび所属政党や提出元などのフィールド情報を付加 し, モデルの評価を行なった. 評価結果から, 提案手法は単純な majority ベースラインを上回る性能が発揮され, また政治的なフィールド情報を付与するこ とで一定の精度向上に寄与することが分かった.

今回は東京都議会に限定して学習を行ったが, データ数が非常に少ないため, 今後は地方議会等に 範囲を広げ,より大規模なデータセットを構築し, 提案手法の有効性を検証する。

## 謝辞

本研究は JSPS 科研費 $19 K 11980$ の助成を受けた.

## 参考文献

[1]Yasutomo Kimura, Hideyuki Shibuki, Hokuto Ototake, Yuzu Uchida, Keiichi Takamaru, Madoka Ishioroshi, Teruko Mitamura, Masaharu Yoshioka, Tomoyoshi Akiba, Yasuhiro Ogawa, Minoru Sasaki, Kenichi Yokote, Tatsunori Mori, Kenji Araki, Satoshi Sekine, and Noriko Kando. Overview of the ntcir-15 qa lab-poliinfo-2 task. Proceedings of The 15th NTCIR Conference, 122020.

[2]Eli Pariser. The filter bubble: What the internet is hiding from you. 2011.

[3]Takanori Nekomoto, Ryoto Ohsugi, Tomoyosi Akiba, Shigeru Masuyama, and Daiki Shirato. akbl at the ntcir15 qa lab-poliinfo-2 tasks. The 15th NTCIR Conference, p. $155,2020$.

[4]Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018.

[5]Gábor László Hajba. Website Scraping with Python: Using BeautifulSoup and Scrapy. Apress, 2018.

[6]Tomohide Shibata, Daisuke Kawahara, and Sadao Kurohashi. Improving the accuracy of japanese parsing with bert. The Association for Natural Language Processing 25th Annual General Meeting, pp. 205-208, 2019.

[7]Daisuke Kawahara. Japanese morphological analysis system juman version 3.61. http://pine.kuee.kyoto-u.ac.jp/nlresource/juman.html, 1999.

[8]V. Petridis A. Kehagias, P. Fragkou. Linear text segmentation using a dynamic programming algorithm. In Proceedings of the EACL, pp. 171-178, 2003.

[9]工藤拓, 山本薫, 松本裕治. Conditional random fields を 用いた日本語形態素解析. 情報処理学会研究報告. NLP,自然言語処理研究会報告, Vol. 161, pp. 89-96, 52004.

[10]柴田知秀, 河原大輔, 黒橋禎夫. Bert による日本語構文解析の精度向上. 言語処理学会第 25 回年次大会, pp. 205-208, 2019.
 猫本隆哲 豊橋技術科学大学 nekomoto.takanori.pf@tut.jp }  秋葉友良 豊橋技術科学大学 akiba@cs.tut.jp }  増山繁 東京理科大学 masuyama@rs.tus.ac.jp  