より多くの “気づき” を届ける- 世界中のテキストの構造化に挑む Knowledge Unit の紹介 -

Tags
より多くの “気づき” を届ける- 世界中のテキストの構造化に挑む Knowledge Unit の紹介 -

Stockmark の Researcher の広田です。 Stockmark には自然言語処理の研究開発を行う Research チームがあり、 その中の1つの組織に知識グラフの自動構築をテーマとする Knowledge Unit があります。 この記事では Knowledge Unit の取り組みを紹介します。

なぜ知識グラフなのか?

ストックマークは企業向けの情報収集ツール Anews を提供しています。 私たちはよくお客様から、まだ自分たちが気づけていない情報があるのではないか不安だ、という声を耳にします。 市場動向や技術動向・競合他社情報などから気づきを得ることはビジネスにおいて非常に重要です。

一方で気づきを得るための情報収集はとても大変です。 インターネット上では日々膨大な量のテキストが公開されており、これらを人力で収集し尽くすことはとても難しくなっています。 また収集を行うにはその分野の専門的な知識も必要になるため、あまり詳しくない分野の情報を調べるのはとても難しい問題です。

私たちはこうした問題を解決する技術として知識グラフに着目しています。 私たちが日々 クロールしている ニュースや論文・特許・オントロジーなどのオープンデータ、 そしてお客様のビジネス情報を1つの知識グラフ上に構造化することで、 膨大なテキストデータから日々質の高い気づきをお届けするサービスを目指しています。

なお、 Knowledge Unit は東北大学自然言語処理研究グループとの共同研究を行っています。

今の Knowledge Unit の取り組みは?

私たちは現在製造業分野の知識の構造化を進めており、 製造業で特に重要となる知識を次の 4 つのカテゴリに分類しています。

構造化を進めている製造業の知識

これらの知識をテキストなどの非構造データから自動拡充することが私たち Knowledge Unit のテーマです。 ここで鍵になるのが relation extraction, entity linking という 2 つの技術です。

Relation extraction

Relation extraction はテキストで言及されている概念間の関係を推定するタスクです。 例えば以下のニュース文を考えてみます。

トヨタでは新たな生産方式によって部品点数の大幅な削減を図ることができ、生産工程や生産にかかる期間を短縮できるほか、生産コストの抑制にもつながるとしています。
(引用: https://www3.nhk.or.jp/tokai-news/20230724/3000030634.html)

このニュース文からは次のような関係 (triple) を得ることができます。これが relation extraction です。

Relation extraction のイメージ

私たちは Wikidata, Wikipedia, 独自アノテーションデータなどから教師データを作成し、精度の高い relation extraction モデルを開発しています。

Entity linking

Entity linking のイメージ

Entity linking は テキスト中の表現 (mention) を知識グラフのエンティティ (ノード) と対応づけるタスクです。 上記の relation extraction で出現した 新たな生産方式 というフレーズは、 実際にはギガキャストと呼ばれる技術に対応していることがわかります。 また文中の トヨタ はトヨタ自動車株式会社という企業のエンティティに対応しています。 こうした名寄せ・対応付けを行うのが entity linking です。 私たちは様々なオープンデータからエンティティの別名を自動抽出する技術を開発しており、精度の高い entity linking を実現しています。

LLM と知識グラフ

ChatGPT のような LLM (大規模言語モデル) 技術は情報収集に革命をもたらしています。 弊社の Research チームには LLM を専門に取り扱う LLM Unit があり、 先日も事前学習済み GPT モデルを公開し大きな反響をいただきました。

私たちは LLM と知識グラフをお互いの強力なパートナーと考えています。 知識グラフには 知識の編集・追加が容易である という利点があります。 私たちは日々急速に移り変わる情報をお客様に提供しており、 知識を常に最新状態に保つことは非常に重要です。 LLM の場合、新しい知識を教えるには追加学習が必要になります。 またそもそも LLM の知識を編集することは非常に難しい問題です。 そこで LLM が知識グラフの知識を参照することで、 LLM の言語生成能力と知識グラフの最新で正確な知識というお互いの長所を生かしたアプリケーションが開発できると考えています。

実際にいくつかの社内実験によって、知識グラフの知識で LLM の応答がより望ましい形になることが確認されています。 例えばあるニュースに対して、それが自分の業務とどう関係するかを LLM に説明させるタスクを考えてみます。 今回は LLM として ChatGPT (GPT-4) を使用します。 まずは愚直に次のように投げかけてみます:

このニュースはストックマーク株式会社の社員に関係がありますか?もしそうであれば、理由も教えてください。
news: "Salesforce Introduces New LLMs Trained on 8K Input Sequence Length"

すると以下のような返答が得られました。 そもそも ChatGPT はストックマークを認識しておらず、あいまいな答えが返ってきました。

ストックマークの情報を与えずにニュースとの関連性を説明させた例

次にストックマークの事業内容をテキストで与えてみると、説明の質がかなり上がりました。

ストックマークの事業内容をテキストで与えた上で、ニュースとの関連性を説明させた例

最後に、ストックマークや LLM, Salesforce に関連する知識グラフの triple を与えてみました。 するとより明確にストックマークとこのニュースとの関連を説明してくれました。 また本ニュースとは関係の無い triple が多数混じっていますが、ChatGPT はそれらから必要な情報のみを説明に利用していました。

知識グラフの triple を与えてニュースとの関連を説明させた例

このように知識グラフの情報は LLM をうまくガイドするポテンシャルがあることがわかります。

まだ残されている課題

Knowledge Unit にはまだまだ解決すべき課題が残されています。 以下はそのほんの一例です。

  • 論文・ニュースなど異なる媒体を考慮した entity linking
  • 新しい固有表現抽出モデルの開発
  • LLM と融合した、根拠付きの情報推薦
  • 技術・社会課題オントロジーの作成

私たちはこのような課題にともに取り組む仲間を募集しています。 気になった方はぜひ 採用ページ をご覧ください!