はじめに
ソフトウェア品質を把握するにはそれまでに蓄積したテスト結果や不具合内容の分析が欠かせません。
分析の手法は多々ありますが、ここではテキストマイニングの一種である共起ネットワークについてご紹介します。
共起ネットワークとは
共起ネットワークとは、テキストやコメントにおける単語やフレーズがどのように一緒に使われているかを視覚的にわかりやすく図式化する手法です。
分析元のデータの中で出現パターンの似通った単語同士で線が結ばれ(共起関係)、ネットワークが形成されます。
単語の出現数が多いほど大きな円で描画され、また強い共起関係ほど太い線で描画されるようになっています。
分析の切り口を様々に変えることも可能です。
図は車載機評価で検出された不具合を共起ネットワークで分析したものです。
不具合の再現頻度から分析をしたい場合、それぞれの再現頻度(図の四角い部分)にどういった要素(単語)がより結びついているかを視覚的に理解することができます。
こちらは同じデータで切り口を再現頻度から観点に変えたものです。
こちらも四角部分の観点ごとに結び付きの強い/弱い要素(単語)を視覚的に捉えることができますね。
共起ネットワークを用いることによるメリット
共起ネットワークを用いて分析結果を可視化することで、以下のようなメリットがあります。
1. 視覚的理解の促進:
共起ネットワークは、単語同士のつながりを視覚的に表現するため、文章の特徴や構造を直感的に理解しやすくなります。
2. 重要なキーワードの抽出:
大規模なデータセットの中から、重要なキーワードやその関連性を視覚的に抽出するのに役立ちます。
3. データの前処理の簡便化:
共起ネットワークを用いることで、データの前処理が簡便になり、分析の効率が向上します。
4. 深い洞察の獲得:
専門知識がなくても、共起ネットワークを用いることで、テキストデータから深い洞察を得やすくなります。
どうやって作るの?
共起ネットワークは以下のツールを使用することで作成することができます。
KH Coder:
無料で使えるテキストマイニングツールで、主にWindows端末向けです。
ExcelやCSVデータを読み込むことで簡単に共起ネットワークが作成できます。
不要な単語を指定して分析結果に含まれないようにしたり、文や段落などの共起関係を計算する単位を指定することもできます。
Python:
自然言語処理ライブラリを使用して共起ネットワークを作成することができます。
専用のソフトを入れることができない環境であっても共起ネットワークを作成できますが、Python自体の知識はもちろん、意図した通りの分析結果を得られるようにするには共起データのチューニングが必要になります。
さいごに
分析手法の一つとして視覚的に捉えることができる共起ネットワークをご紹介させていただきました。
ソフトウェア開発に限らずともテキストベースのデータが豊富にある場合は有用な手法の一つですので、参考になれば幸いです。