(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-26
(45)【発行日】2023-10-04
(54)【発明の名称】文書評価プログラム、文書評価方法および文書評価装置
(51)【国際特許分類】
G06Q 10/063 20230101AFI20230927BHJP
G06F 40/253 20200101ALI20230927BHJP
【FI】
G06Q10/063
G06F40/253
(21)【出願番号】P 2022504880
(86)(22)【出願日】2020-03-05
(86)【国際出願番号】 JP2020009412
(87)【国際公開番号】W WO2021176648
(87)【国際公開日】2021-09-10
【審査請求日】2022-07-20
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002918
【氏名又は名称】弁理士法人扶桑国際特許事務所
(72)【発明者】
【氏名】▲柳▼▲瀬▼ 隆史
(72)【発明者】
【氏名】浅井 達哉
【審査官】田付 徳雄
(56)【参考文献】
【文献】特開2019-219715(JP,A)
【文献】特開2011-141766(JP,A)
【文献】特開2006-268744(JP,A)
【文献】米国特許出願公開第2008/0306784(US,A1)
【文献】米国特許出願公開第2015/0347390(US,A1)
【文献】特開2015-184723(JP,A)
【文献】米国特許出願公開第2010/0082627(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 - 99/00
G06F 40/253
(57)【特許請求の範囲】
【請求項1】
コンピュータに、
文書の中の単語の出現状況を示す1以上の第1の特徴変数と文書に対応する業務の属性を示す1以上の第2の特徴変数とを含む複数の特徴変数のうちの、1以上の特徴変数の値の条件と、文書の評価結果と、をそれぞれ対応付けた複数の判定ルール
であって、少なくとも一部の判定ルールの前記条件が、前記1以上の第1の特徴変数のうちの少なくとも1つと前記1以上の第2の特徴変数のうちの少なくとも1つとを含む複数の判定ルールを取得し、
評価対象文書に対応する前記複数の特徴変数の値を算出し、前記複数の判定ルールのうち、前記条件が前記評価対象文書の前記算出した値に適合し、かつ、前記条件が少なくとも1つの第1の特徴変数を含む判定ルールを選択し、
前記選択した判定ルールに基づいて、前記評価対象文書の評価結果を生成する、
処理を実行させる文書評価プログラム。
【請求項2】
前記1以上の第1の特徴変数は、文書に含まれる所定の種類の単語の個数を示す特徴変数を含み、前記1以上の第2の特徴変数は、文書に対応する業務の予定金額を示す特徴変数および予定期間を示す特徴変数の少なくとも一方を含む、
請求項1記載の文書評価プログラム。
【請求項3】
前記評価対象文書に対応する前記複数の特徴変数の値の算出では、前記評価対象文書を解析することで、前記1以上の第1の特徴変数の値を算出し、前記評価対象文書の外部の業務情報を参照することで、前記1以上の第2の特徴変数の値を算出する、
請求項1記載の文書評価プログラム。
【請求項4】
前記選択した判定ルールの前記条件は、前記少なくとも1つの第1の特徴変数の値の条件と少なくとも1つの第2の特徴変数の値の条件との組み合わせを示す、
請求項1記載の文書評価プログラム。
【請求項5】
前記複数の判定ルールにはそれぞれ重要度が付与されており、
前記評価対象文書の評価結果の生成では、前記選択した判定ルールに付与された前記重要度を用いて評価値を算出し、前記評価値を前記評価対象文書の評価結果に含める、
請求項1記載の文書評価プログラム。
【請求項6】
前記評価対象文書の評価結果の生成では、前記選択した判定ルールの前記条件から、前記少なくとも1つの第1の特徴変数の閾値を抽出し、前記評価対象文書の前記少なくとも1つの第1の特徴変数の値と前記閾値とに基づいて、前記選択した判定ルールに付与された前記重要度を補正し、前記補正した重要度を用いて前記評価値を算出する、
請求項5記載の文書評価プログラム。
【請求項7】
前記評価対象文書の評価結果の生成では、前記少なくとも1つの第1の特徴変数に該当する単語を前記評価対象文書から検索し、前記検索した単語を強調表示させる、
請求項1記載の文書評価プログラム。
【請求項8】
前記コンピュータに更に、
複数のサンプル文書から、それぞれが前記複数の特徴変数の値と評価結果を示す教師ラベルとを含む複数のレコードを含む訓練データを生成し、
前記訓練データから、前記複数の特徴変数のサブセットと前記教師ラベルとの間の相関関係を分析して、前記複数の判定ルールを生成する、
処理を実行させる請求項1記載の文書評価プログラム。
【請求項9】
コンピュータが、
文書の中の単語の出現状況を示す1以上の第1の特徴変数と文書に対応する業務の属性を示す1以上の第2の特徴変数とを含む複数の特徴変数のうちの、1以上の特徴変数の値の条件と、文書の評価結果と、をそれぞれ対応付けた複数の判定ルール
であって、少なくとも一部の判定ルールの前記条件が、前記1以上の第1の特徴変数のうちの少なくとも1つと前記1以上の第2の特徴変数のうちの少なくとも1つとを含む複数の判定ルールを取得し、
評価対象文書に対応する前記複数の特徴変数の値を算出し、前記複数の判定ルールのうち、前記条件が前記評価対象文書の前記算出した値に適合し、かつ、前記条件が少なくとも1つの第1の特徴変数を含む判定ルールを選択し、
前記選択した判定ルールに基づいて、前記評価対象文書の評価結果を生成する、
文書評価方法。
【請求項10】
文書の中の単語の出現状況を示す1以上の第1の特徴変数と文書に対応する業務の属性を示す1以上の第2の特徴変数とを含む複数の特徴変数のうちの、1以上の特徴変数の値の条件と、文書の評価結果と、をそれぞれ対応付けた複数の判定ルール
であって、少なくとも一部の判定ルールの前記条件が、前記1以上の第1の特徴変数のうちの少なくとも1つと前記1以上の第2の特徴変数のうちの少なくとも1つとを含む複数の判定ルールを記憶すると共に、評価対象文書を記憶する記憶部と、
前記評価対象文書に対応する前記複数の特徴変数の値を算出し、前記複数の判定ルールのうち、前記条件が前記評価対象文書の前記算出した値に適合し、かつ、前記条件が少なくとも1つの第1の特徴変数を含む判定ルールを選択し、前記選択した判定ルールに基づいて、前記評価対象文書の評価結果を生成する処理部と、
を有する文書評価装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は文書評価プログラム、文書評価方法および文書評価装置に関する。
【背景技術】
【0002】
あるユーザが業務に関する文書を作成し、その文書を他者に読んでもらうことがある。このとき、その業務を円滑に遂行できるか否かは、読み手が文書から感じる印象の影響を受けることがあり、文書の良否に依存することがある。例えば、応募者を募る募集文書を作成する場合、文書の書き方が応募者の多寡に影響を与えることがある。また、例えば、業務計画を提案する提案書を作成する場合、文書の書き方が検討会議のメンバーの印象に影響を与え、提案書の採否に影響を与えることがある。
【0003】
そこで、ユーザが作成した文書を評価する情報処理システムを構築することがある。例えば、特定の種類の単語の出現状況から文書の評価値を求める判定ルールを予め用意しておき、その判定ルールを用いて情報処理システムが文書を評価することが考えられる。判定ルールは、人手で作成することがあり、機械学習によって生成することもある。
【0004】
なお、機械学習を用いた文書処理技術の例として、2つの文の類似度を算出するためのニューラルネットワークを、類似する文ペアを示す正例と類似しない文ペアを示す負例とを含む訓練データから生成する学習装置が提案されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、同じ文書であっても、その文書を解釈する上で前提となる業務の属性に応じて、文書の印象が変わる可能性がある。例えば、ある文書の書き方に対して、業務のカテゴリによって印象が変わる可能性がある。また、予算が少ない業務や納期が短い業務では印象が悪くなる一方、予算が多い業務や納期が長い業務では印象が良くなることもある。
【0007】
この点、業務の属性と無関係に共通の判定ルールを使用すると、文書評価の精度が低くなってしまう。一方、属性値毎に判定ルールを用意しようとすると、コストが大きくなるという問題がある。人手で判定ルールを作成する場合、ルール作成者の負担が大きくなる。機械学習によって判定ルールを生成する場合、属性値毎に十分な量のサンプル文書を用意することになり、データ準備の負担が大きくなる。
【0008】
1つの側面では、本発明は、文書の属性の多様性を考慮した文書評価を可能とする文書評価プログラム、文書評価方法および文書評価装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
1つの態様では、コンピュータに以下の処理を実行させる文書評価プログラムが提供される。文書の中の単語の出現状況を示す1以上の第1の特徴変数と文書に対応する業務の属性を示す1以上の第2の特徴変数とを含む複数の特徴変数のうちの、1以上の特徴変数の値の条件と、文書の評価結果と、をそれぞれ対応付けた複数の判定ルールを取得する。評価対象文書に対応する複数の特徴変数の値を算出し、複数の判定ルールのうち、条件が評価対象文書の算出した値に適合し、かつ、条件が少なくとも1つの第1の特徴変数を含む判定ルールを選択する。選択した判定ルールに基づいて、評価対象文書の評価結果を生成する。
【0010】
また、1つの態様では、コンピュータが実行する文書評価方法が提供される。また、1つの態様では、記憶部と処理部とを有する文書評価装置が提供される。
【発明の効果】
【0011】
1つの側面では、文書の属性の多様性を考慮した文書評価が可能となる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【0012】
【
図1】第1の実施の形態の文書評価装置の例を説明する図である。
【
図2】第2の実施の形態の文書評価装置のハードウェア例を示す図である。
【
図7】訓練データテーブルの第1の例を示す図である。
【
図9】訓練データテーブルの第2の例を示す図である。
【
図13】評価対象文書にマッチする仮説の選択例を示す図である。
【
図16】文書評価装置の機能例を示すブロック図である。
【
図17】モデル生成の手順例を示すフローチャートである。
【
図18】モデル生成の手順例を示すフローチャート(続き)である。
【
図19】文書評価の手順例を示すフローチャートである。
【
図20】文書評価の手順例を示すフローチャート(続き)である。
【発明を実施するための形態】
【0013】
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
【0014】
図1は、第1の実施の形態の文書評価装置の例を説明する図である。
第1の実施の形態の文書評価装置10は、業務の属性の違いを考慮して文書を評価する。文書評価装置10は、クライアント装置でもよいしサーバ装置でもよい。文書評価装置10を、コンピュータ、情報処理装置、機械学習装置などと言うこともできる。
【0015】
文書評価装置10は、記憶部11および処理部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性半導体メモリでもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性ストレージでもよい。処理部12は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などのプロセッサである。ただし、処理部12は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの特定用途の電子回路を含んでもよい。プロセッサは、RAMなどのメモリ(記憶部11でもよい)に記憶されたプログラムを実行する。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うこともある。
【0016】
記憶部11は、評価対象文書13を記憶する。評価対象文書13は、自然言語で記述された文章を含む。文章は、複数の単語を含む文字列である。また、記憶部11は、判定ルール14a,14b,14cを含む複数の判定ルールを記憶する。複数の判定ルールはそれぞれ、1以上の特徴変数についての条件と文書の評価結果とを対応付けている。特徴変数を説明変数と言うこともでき、評価結果を目的変数と言うこともできる。
【0017】
判定ルール14a,14b,14cは、例えば、予め機械学習によって生成される。判定ルール14a,14b,14cが示す条件は、複数の特徴変数のうちの1つの特徴変数または2以上の特徴変数の組み合わせに対して規定される値の条件である。複数の特徴変数の中には、文書の中の単語の出現状況を示す1以上の特徴変数(第1の特徴変数)と、文書に対応する業務の属性を示す1以上の特徴変数(第2の特徴変数)とが含まれる。前者を言語的特徴と言うこともでき、後者を非言語属性と言うこともできる。
【0018】
言語的特徴としては、例えば、総文字数や総単語数などの文章長、接続詞や副詞などの特定の品詞の単語数、依頼表現や禁止表現や数値表現などの特定の種類の表現数が挙げられる。非言語属性としては、例えば、業務のカテゴリ、発注価格や予算額などの予定価格、納期や準備期間などの予定期間が挙げられる。言語的特徴は、文書に含まれる文字列を分析することで抽出される。非言語属性は、文書の意味を解釈して文書そのものから抽出されることもあるし、文書の外部にある業務情報から抽出されることもある。文書に対応する業務は、例えば、文書が使用される業務や文書が提案する業務である。評価結果は、例えば、良い文書か悪い文書かを示すフラグである。評価結果は、例えば、応募者数やプロジェクト採否などの業務結果から判断される。応募者が多い募集文書は高評価と判断され、プロジェクトが採用された提案文書は高評価と判断される。
【0019】
処理部12は、評価対象文書13に対応する複数の特徴変数の値を算出する。一例として、処理部12は、特徴変数v1,v2,v3,v4の値を算出する。特徴変数v1,v2は言語的特徴であり、特徴変数v3,v4は非言語属性である。特徴変数v1は、特定の品詞の単語数を表す。特徴変数v2は、特定の種類の表現数を表す。特徴変数v3は、予定価格を表す。特徴変数v4は、予定期間を表す。ここでは、評価対象文書13に対して、v1=2,v2=6,v3=150,v4=3と算出されている。特徴変数v3,v4の値は、評価対象文書13の外部の業務情報から抽出されることもある。
【0020】
処理部12は、判定ルール14a,14b,14cを含む複数の判定ルールの中から、条件が評価対象文書13の値に適合する判定ルールを検索する。処理部12は、検索された判定ルールのうち、条件が少なくとも1つの言語的特徴を含む判定ルールを選択する。すなわち、条件の中に1つも言語的特徴を含まない判定ルールは除外される。
【0021】
一例として、判定ルール14aは、v2≧4かつv4≦3という条件を満たす文書の評価が低いことを表す。判定ルール14bは、v1≧4かつv3≧100という条件を満たす文書の評価が高いことを表す。判定ルール14cは、v3≧100かつv4≧3という条件を満たす文書の評価が高いことを表す。判定ルール14aが規定する特徴変数v2,v4の条件は、評価対象文書13に適合し、かつ、言語的特徴を含んでいる。よって、判定ルール14aは選択される。判定ルール14bが規定する特徴変数v1,v3の条件は、評価対象文書13に適合しない。よって、判定ルール14bは選択されない。判定ルール14cが規定する特徴変数v3,v4の条件は、評価対象文書13に適合するものの、言語的特徴を含まない。よって、判定ルール14cは選択されない。
【0022】
処理部12は、選択した判定ルールに基づいて、評価対象文書13の評価結果15を生成する。一例として、判定ルール14aのみが選択されたとする。この場合、判定ルール14aは低評価を示しているため、評価結果15が低評価となる。2以上の判定ルールが選択された場合、処理部12は、高評価の判定ルールの個数と低評価の判定ルールの個数の比率に基づいて、評価結果15を生成してもよい。また、各判定ルールに重要度が付与されている場合、処理部12は、高評価の判定ルールの重要度と低評価の判定ルールの重要度の比率に基づいて、評価結果15を生成してもよい。
【0023】
第1の実施の形態の文書評価装置10によれば、単語の出現状況を示す特徴変数と業務の属性を示す特徴変数とが混在した特徴変数の集合が定義され、この特徴変数の集合の中の一部または全部の特徴変数を用いて各判定ルールが作成される。そして、評価対象文書13に適合し、かつ、単語の出現状況を示す特徴変数を少なくとも1つ含む判定ルールが選択され、選択された判定ルールに基づいて評価結果15が生成される。
【0024】
これにより、評価対象文書13に対応する業務の属性を考慮して、評価結果15を生成することができる。よって、業務の属性を考慮せずに、単語の出現状況を示す特徴変数のみから評価結果15を生成する場合よりも、評価結果15の精度が向上する。また、単語の出現状況を示す特徴変数と業務の属性を示す特徴変数とが混在した特徴変数の集合を使用することで、属性値毎に異なる判定ルールを用意しなくてもよい。よって、判定ルール生成のコストを低減できる。判定ルールを機械学習によって生成する場合、機械学習のために準備するサンプル文書の量を削減することが可能となる。
【0025】
また、上記の特徴変数の集合を使用すると、判定ルールの中には、単語の出現状況を示す特徴変数を含まない判定ルールも存在し得る。このような判定ルールは、業務の属性のみから評価を決めるものであり、評価対象文書13の書き方に対する評価を提供しない。この点、単語の出現状況を示す特徴変数を含まない判定ルールを除外して評価結果15を生成することで、評価結果15の精度が向上する。
【0026】
[第2の実施の形態]
次に、第2の実施の形態を説明する。
第2の実施の形態の文書評価装置は、機械学習によって文書評価用のモデルを生成し、生成したモデルを用いて評価対象文書の評価値を算出する。この文書評価装置は、クライアント装置でもよいしサーバ装置でもよい。この文書評価装置を、コンピュータ、情報処理装置、機械学習装置などと言うこともできる。なお、第2の実施の形態では、モデル生成と文書評価を同一装置で行っているが、異なる装置で行うようにしてもよい。
【0027】
図2は、第2の実施の形態の文書評価装置のハードウェア例を示す図である。
第2の実施の形態の文書評価装置100は、CPU101、RAM102、HDD103、画像インタフェース104、入力インタフェース105、媒体リーダ106および通信インタフェース107を有する。文書評価装置100が有するこれらのユニットは、バスに接続されている。文書評価装置100は、第1の実施の形態の文書評価装置10に対応する。CPU101は、第1の実施の形態の処理部12に対応する。RAM102またはHDD103は、第1の実施の形態の記憶部11に対応する。
【0028】
CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。CPU101は複数のプロセッサコアを備えてもよく、文書評価装置100は複数のプロセッサを備えてもよい。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。
【0029】
RAM102は、CPU101が実行するプログラムやCPU101が演算に使用するデータを一時的に記憶する揮発性半導体メモリである。文書評価装置100は、RAM以外の種類のメモリを備えてもよく、複数のメモリを備えてもよい。
【0030】
HDD103は、OS(Operating System)やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性ストレージである。文書評価装置100は、フラッシュメモリやSSD(Solid State Drive)など他の種類のストレージを備えてもよく、複数のストレージを備えてもよい。
【0031】
画像インタフェース104は、CPU101からの命令に従って、文書評価装置100に接続された表示装置111に画像を出力する。表示装置111として、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(OEL:Organic Electro-Luminescence)ディスプレイ、プロジェクタなど、任意の種類の表示装置を使用することができる。文書評価装置100に、プリンタなど表示装置111以外の出力デバイスが接続されてもよい。
【0032】
入力インタフェース105は、文書評価装置100に接続された入力デバイス112から入力信号を受け付ける。入力デバイス112として、マウス、タッチパネル、タッチパッド、キーボードなど、任意の種類の入力デバイスを使用することができる。文書評価装置100に複数種類の入力デバイスが接続されてもよい。
【0033】
媒体リーダ106は、記録媒体113に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体113として、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、半導体メモリなど、任意の種類の記録媒体を使用することができる。媒体リーダ106は、例えば、記録媒体113から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体113は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体113やHDD103を、コンピュータ読み取り可能な記録媒体と言うことがある。
【0034】
通信インタフェース107は、ネットワーク114に接続され、ネットワーク114を介して他の情報処理装置と通信する。通信インタフェース107は、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースでもよいし、基地局やアクセスポイントなどの無線通信装置に接続される無線通信インタフェースでもよい。
【0035】
次に、文書の評価について説明する。
文書評価装置100は、クラウドソーシング発注書やプロジェクト提案書などの業務文書を評価する。クラウドソーシング発注書は、企業外部から仕事の受注者を広く募集するための発注書であり、企業外部の者によって読まれる。クラウドソーシング発注書の書き方の良否によって、応募者が多くなることもあるし少なくなることもある。プロジェクト提案書は、企業内部でプロジェクトを提案するための提案書であり、プロジェクト採否を検討する企業内部の者によって読まれる。プロジェクト提案書の書き方の良否によって、プロジェクトが採用されることもあるし不採用になることもある。
【0036】
文書評価装置100は、評価対象文書から自然言語解析によって言語的特徴を抽出し、言語的特徴を用いて評価値を算出する。言語的特徴は、主に、特定条件を満たす単語の出現状況を示している。言語的特徴には、総文字数や総単語数などの文書長が含まれ得る。長すぎる文書は、読み手にネガティブな印象を与える可能性がある。また、言語的特徴には、副詞数や接続詞数などの特定の品詞の出現数が含まれ得る。副詞や接続詞が多すぎる文書は、読みづらくなる可能性があり読み手にネガティブな印象を与える可能性がある。
【0037】
また、言語的特徴には、受動態数が含まれ得る。受動態が多すぎる文書は、曖昧さが増大してネガティブな印象を与える可能性がある。また、言語的特徴には、読み手への要求事項を示す依頼表現の数や読み手の禁止事項を示す禁止表現の数が含まれ得る。依頼表現や禁止表現が多すぎる文書は、業務上の負担が大きくなる可能性があり読み手にネガティブな印象を与える可能性がある。
【0038】
ただし、評価対象文書の評価は、言語的特徴のみから決まるとは限らず、非言語属性の影響を受けることがある。非言語属性は、評価対象文書に対応する業務の属性であって、単語の出現状況以外の特徴量である。非言語属性は、評価対象文書の使用状況や前提条件を表していると言うこともできる。非言語属性は、評価対象文書の中に記載されていることもあるし、外部の業務情報に記録されていることもある。
【0039】
非言語属性には、業務のカテゴリが含まれ得る。また、非言語属性には、発注価格や予算額などの予定金額が含まれ得る。依頼表現数や禁止表現数が同じ文書であっても、大規模業務では問題とならない一方、小規模業務ではネガティブな印象が強くなる可能性がある。また、非言語属性には、納期や準備期間などの予定期間が含まれ得る。依頼表現数や禁止表現数が同じ文書であっても、長納期業務では問題とならない一方、短納期業務ではネガティブな印象が強くなる可能性がある。このように、言語的特徴が同じ評価対象文書であっても、非言語属性が異なると評価が変わる可能性がある。
【0040】
図3は、文書の第1の例を示す図である。
文書131は、クラウドソーシング発注書の例である。文書131は、「してください」や「お願いします」といった依頼表現を8個含んでいる。また、文書131によって発注する仕事の納期は短く設定されている。
【0041】
図4は、文書の第2の例を示す図である。
文書132は、文書131と同様にクラウドソーシング発注書の例である。文書132は、「してください」や「ご覧ください」といった依頼表現を7個含んでいる。ただし、文書132によって発注する仕事の納期は長く設定されている。
【0042】
ここで、「依頼表現数が5以上の場合、受注が少なくなる」という判定ルールが設定されているとする。この判定ルールのもとでは、文書131も文書132も、受注が少なくなるため低評価と判定されることになる。この点、文書131では、納期が短いにもかかわらず依頼事項が多いと読み手が感じる可能性が高く、評価結果は妥当である。一方、文書132では、そもそも納期が長い大規模業務であるため、依頼事項が多くてもかえって指示が具体的でわかりやすいと読み手が感じる可能性があり、評価結果は妥当でない。
【0043】
このように、評価対象文書が前提とする業務の属性に応じて、読み手の印象が変わる可能性がある。文書評価装置100は、非言語属性も考慮して評価対象文書の評価値を算出できるようにすることが好ましい。そこで、文書評価装置100は、機械学習によりモデルを生成するにあたって、言語的特徴と非言語属性の両方を説明変数として使用する。
【0044】
次に、機械学習のための訓練データの準備について説明する。
図5は、文書の第3の例を示す図である。
文書133は、過去に作成されたクラウドソーシング発注書の例である。クラウドソーシング発注書を評価するためのモデルを生成するにあたっては、過去に作成された複数のクラウドソーシング発注書が使用される。クラウドソーシング発注書の評価では、後述するように、長さ、副詞数、接続詞数および禁止表現数を言語的特徴として使用する。文書133は、「簡単に」、「なるべく」という2個の副詞を含む。また、文書133は、「ただし」、「それでは」という2個の接続詞を含む。また、文書133は、「ご遠慮ください」、「厳禁です」、「おやめください」という3個の禁止表現を含む。
【0045】
文書評価装置100は、形態素解析などの自然言語処理技術を用いて、文書133からこれらの言語的特徴を抽出することができる。例えば、文書評価装置100は、文書133を単語に分割し、辞書を参照して各単語の品詞を判定する。そして、文書評価装置100は、副詞および接続詞の個数をカウントする。また、例えば、文書評価装置100は、禁止表現のパターンを列挙した辞書を参照して、禁止表現を検出してカウントする。
【0046】
図6は、発注管理テーブルの例を示す図である。
発注管理テーブル141は、クラウドソーシング業務を管理するために、文書133などのクラウドソーシング発注書の外部に保存されている。クラウドソーシング発注書を評価するためのモデルを生成するにあたっては、過去に作成された複数のクラウドソーシング発注書に対応する業務情報が使用される。発注管理テーブル141は、発注ID、カテゴリ、発注価格、納期および受注数の項目を含む。
【0047】
発注IDとして、クラウドソーシングを識別する識別子が登録される。カテゴリとして、クラウドソーシングによって依頼する仕事の種類が登録される。発注価格として、受注者に対して支払われる予定の対価の金額が登録される。納期として、仕事の発注から成果物の納品期限までの日数が登録される。受注数として、最終的な受注者の人数が登録される。発注ID、カテゴリ、発注価格および納期は、クラウドソーシング発注書を公開する前に予め決定される。受注数は、クラウドソーシング発注書の公開後に算出される。
【0048】
クラウドソーシング発注書の評価は、受注数に応じて決定される。受注数が閾値以上であることは、受注が多かったことを意味し、クラウドソーシング発注書が高評価であることを意味する。受注数が未満であることは、受注が少なかったことを意味し、クラウドソーシング発注書が低評価であることを意味する。閾値は、5件のように予め決めておく。
【0049】
図7は、訓練データテーブルの第1の例を示す図である。
訓練データテーブル142は、クラウドソーシング発注書を評価するためのモデルを生成するにあたって、文書133などの過去のクラウドソーシング発注書と発注管理テーブル141とから生成される訓練データである。訓練データテーブル142は、発注ID、非言語属性、言語的特徴および教師ラベルの項目を含む。非言語属性の項目として、カテゴリ、発注価格および納期の項目が含まれる。言語的特徴の項目として、長さ、副詞数、接続詞数および禁止表現数が含まれる。
【0050】
発注IDは、発注管理テーブル141の発注IDに対応する。カテゴリは、発注管理テーブル141のカテゴリに対応する。発注価格は、発注管理テーブル141の発注価格に対応する。納期は、発注管理テーブル141の納期に対応する。文書評価装置100は、発注管理テーブル141から、これらの非言語属性を抽出する。
【0051】
長さは、クラウドソーシング発注書に含まれる文字数または単語数である。副詞数は、クラウドソーシング発注書に含まれる副詞の個数である。接続詞数は、クラウドソーシング発注書に含まれる接続詞の個数である。禁止表現数は、クラウドソーシング発注書に含まれる禁止表現の個数である。文書評価装置100は、クラウドソーシング発注書それ自体から、これらの言語的特徴を抽出する。
【0052】
教師ラベルは、受注の多寡を示すフラグである。発注管理テーブル141の受注数が閾値以上(例えば、5件以上)である場合、受注が多いことを示す教師ラベルが登録される。発注管理テーブル141の受注数が閾値未満である場合、受注が少ないことを示す教師ラベルが登録される。教師ラベルは、例えば、0または1の数値である。受注が多いことを示す教師ラベルは、1である。受注が少ないことを示す教師ラベルは、0である。
【0053】
図8は、文書の第4の例を示す図である。
文書134は、過去に作成されたプロジェクト提案書の例である。プロジェクト提案書を評価するためのモデルを生成するにあたっては、過去に作成された複数のプロジェクト提案書が使用される。プロジェクト提案書は、提案種別、提案内容、背景、効果、導入時期、業務委託料といった見出し項目を含む所定のフォーマットに従って記述される。ここでは、提案内容、背景および効果の中に記載された文章を評価対象とするものとする。
【0054】
プロジェクト提案書の評価では、後述するように、長さ、副詞数、受動態数および数値表現数を言語的特徴として使用する。文書134は、「かなり」、「非常に」という2個の副詞を含む。また、文書134は、「考えられる」という1個の受動態を含む。また、文書134は、「50種類」という1個の数値表現を含む。文書評価装置100は、形態素解析などの自然言語処理技術を用いて、文書134からこれらの言語的特徴を抽出することができる。例えば、文書評価装置100は、文書134を単語に分割し、辞書を参照して副詞、受動態および数値を検出してカウントする。
【0055】
また、プロジェクト提案書の評価では、後述するように、カテゴリ、予算額および準備期間を非言語属性として使用する。これらの非言語属性は、文書134の中に記載されている。カテゴリは、提案種別の見出し項目に記載された業務委託である。予算額は、業務委託料の見出し項目に記載された2000万円である。準備期間は、導入時期の見出し項目に記載された3ヶ月である。文書評価装置100は、プロジェクト提案書のフォーマットにおいて、非言語属性が何れの見出し項目に記載されているかの情報を予めもっておくことで、文書134から自動的に非言語属性を抽出することができる。
【0056】
ただし、前述の発注管理テーブル141のように、文書134の外部に業務情報が保存されている場合、その業務情報から非言語属性を抽出するようにしてもよい。また、文書134の外部にある業務情報に、プロジェクトの採否結果が登録されている。プロジェクト提案書の評価は、そのプロジェクトの採否に応じて決定される。プロジェクトが採用されたことは、プロジェクト提案書が高評価であることを意味する。プロジェクトが採用されなかったことは、プロジェクト提案書が低評価であることを意味する。
【0057】
図9は、訓練データテーブルの第2の例を示す図である。
訓練データテーブル143は、プロジェクト提案書を評価するためのモデルを生成するにあたって、文書134などの過去のプロジェクト提案書とプロジェクトの採否結果とから生成される訓練データである。訓練データテーブル143は、提案ID、非言語属性、言語的特徴および教師ラベルの項目を含む。非言語属性の項目として、カテゴリ、予算額および準備期間の項目が含まれる。言語的特徴の項目として、長さ、副詞数、受動態数および数値表現数が含まれる。
【0058】
提案IDは、プロジェクト提案を識別する識別子である。カテゴリは、プロジェクト提案書に記載された提案種別に対応する。予算額は、プロジェクト提案書に記載された予定金額である。準備期間は、プロジェクト提案書に記載された予定期間である。長さは、プロジェクト提案書に含まれる評価対象部分の文字数または単語数である。副詞数は、プロジェクト提案書の評価対象部分に含まれる副詞の個数である。受動態数は、プロジェクト提案書の評価対象部分に含まれる受動態表現の個数である。数値表現数は、プロジェクト提案書の評価対象部分に含まれる数値表現の個数である。文書評価装置100は、プロジェクト提案書から、これらの非言語属性および言語的特徴を抽出する。教師ラベルは、プロジェクトの採否を示すフラグである。教師ラベルは、例えば、0または1の数値である。採用を示す教師ラベルは、1である。不採用を示す教師ラベルは、0である。
【0059】
次に、訓練データからモデルを生成する機械学習について説明する。以下では、クラウドソーシング発注書に関する訓練データテーブル142を前提として説明する。
図10は、仮説テーブルの例を示す図である。
【0060】
仮説テーブル144は、機械学習によって生成されたモデルを示す。仮説テーブル144には、複数の仮説を示す複数のレコードが登録されている。仮説をチャンクやルールと言うこともある。複数の仮説はそれぞれ、仮定部と結論部とを含む。
【0061】
仮定部は、言語的特徴および非言語属性を含む説明変数の集合のうち、1以上の説明変数が満たすべき条件を示す。仮説によって、仮定部が1つの説明変数のみ含むこともあるし、2以上の説明変数を含むこともある。また、仮説によって、仮定部が言語的特徴のみを含むこともあるし、非言語属性のみ含むこともあるし、言語的特徴と非言語属性の両方を含むこともある。多くの仮説では、仮定部が2以上の説明変数を含み、その中に言語的特徴と非言語属性の両方が混在している。
【0062】
結論部は、文書の評価結果を示す目的変数である。結論部は、仮定部に適合する文書に対する評価結果の推定を表している。評価結果は、文書の良否を示すフラグである。クラウドソーシング発注書の場合、評価結果は、受注が多いか受注が少ないかの二択である。仮説テーブル144では、複数の仮説それぞれに対して重要度が付与されている。重要度が大きいほど、仮説の有効性が高いことを示している。
【0063】
一例として、カテゴリがブログ記事作成で、接続詞が2個以下の場合、受注が多い(高評価)という仮説が登録されており、この重要度が0.85である。また、カテゴリがブログ記事作成で、納期が2日以下で、禁止表現が4個以上の場合、受注が少ない(低評価)という仮説が登録されており、この重要度が0.80である。また、カテゴリがデータ収集で、発注価格が100円以下で、長さが250以上の場合、受注が少ないという仮説が登録されており、この重要度が0.70である。また、カテゴリがデータ収集で、納期が2日以下で、接続詞が5個以上の場合、受注が多いという仮説が登録されており、この重要度が0.65である。また、カテゴリがブログ記事作成で、発注価格が100円以上の場合、受注が多いという仮説が登録されており、この重要度が0.50である。
【0064】
このような仮説テーブル144は、訓練データテーブル142から、機械学習アルゴリズムの1つであるWide Learning(登録商標)によって生成することができる。以下、Wide Learningによるモデル生成について説明する。
【0065】
Wide Learningでは、幾つかの説明変数の値の組み合わせと目的変数の値との間に成立する可能性がある仮説(チャンク)が網羅的に生成され、それら多数の仮説の中から、訓練データのもとで信頼性が高い仮説が採用される。採用された仮説の集合がモデルとなる。仮説は、説明変数の値から目的変数の値を導出する含意の論理命題である。
【0066】
訓練データに含まれるサンプルのうち、仮説の仮定部に規定された説明変数の値が合致し、かつ、仮説の結論部に規定された目的変数の値が合致するサンプルの数が、その仮説のヒット数である。ヒット数が多い仮説ほど信頼性が高いと言える。また、仮説の仮定部に規定された説明変数の値が合致するサンプルのうち、仮説の結論部に規定された目的変数の値が合致するサンプルの割合が、その仮説のヒット率である。ヒット率が高い仮説ほど信頼性が高いと言える。モデルの汎用性を高めて過学習を抑制するため、1つの仮説に含まれる説明変数の個数を閾値以下に制限することが好ましい。また、ヒット数が閾値以上でありかつヒット率が閾値以上である仮説を採用することが好ましい。
【0067】
Wide Learningでは、複数の説明変数それぞれの取り得る値および目的変数の取り得る値が列挙される。金額のような連続値をとる説明変数では、値域全体が複数の区間に分割され、区間が説明変数の候補値として使用される。区間は、100円幅のように固定幅で設定してもよい。また、訓練データに含まれるサンプルができる限り均等に複数の区間に振り分けられるように、説明変数の値の分布に基づいて動的に区間を設定してもよい。次に、複数の説明変数の中から閾値以下の個数の説明変数が選択される。例えば、1個以上3個以下の説明変数が選択される。そして、選択した説明変数それぞれから値を1つ選択し、目的変数から値を1つ選択することで、1つの仮説が生成される。説明変数の選択および値の選択を網羅的に行うことで、様々な仮説が網羅的に生成される。
【0068】
これら仮説の中から、例えば、ヒット数が閾値以上かつヒット率が閾値以上の仮説が有効な仮説として採用される。ただし、ヒット数が閾値以上の仮説を全て採用してもよいし、ヒット率が閾値以上の仮説を全て採用してもよい。また、ヒット数やヒット率の閾値を設けず、ヒット数やヒット率の高い順に所定数の仮説を採用してもよい。
【0069】
採用した仮説に対しては、それぞれ重要度が算出される。重要度として、以下に説明するロジスティック回帰分析によって算出される重みが使用される。ただし、ヒット数またはヒット率を重要度として使用することも可能である。
【0070】
訓練データに含まれるサンプルxに対して、数式(1)に示すように、シグモイド関数を用いて確率p(x)が算出される。確率p(x)は、0より大きく1より小さい実数である。確率p(x)は、サンプルxの目的変数の推定値に相当する。確率p(x)が1に近いほど、目的変数の値が1である(例えば、受注が多い)可能性が高いことを表し、確率p(x)が0に近いほど、目的変数の値が0である(例えば、受注が少ない)可能性が高いことを表す。αは定数項としての係数であり、βiはi番目の仮説の重みとしての係数であり、chunki(x)はサンプルxに対するi番目の仮説の出力である。
【0071】
【0072】
i番目の仮説の仮定部とサンプルxの説明変数の値とが適合しない場合、chunki(x)は0を出力する。この場合、i番目の仮説はサンプルxと無関係であり、確率p(x)に影響を与えない。i番目の仮説の仮定部とサンプルxの説明変数の値とが適合する場合、chunki(x)は1または-1を出力する。i番目の仮説の結論部が1(例えば、受注が多い)の場合、chunki(x)は1を出力する。i番目の仮説の結論部が0(例えば、受注が少ない)の場合、chunki(x)は-1を出力する。
【0073】
chunki(x)の線形和が大きいほど、サンプルxに関係する仮説の多くが目的変数の値を1と推定したことになる。chunki(x)の線形和が小さいほど、サンプルxに関係する仮説の多くが目的変数の値を0と推定したことになる。ただし、係数α,βiを変えることで確率p(x)が変化する。確率p(x)とサンプルxの目的変数の真値との間の差が誤差である。そこで、回帰分析により、訓練データに含まれる複数のサンプルについての誤差の合計が最小になるように、係数α,βiが決定される。このようにして決定された係数βiが、i番目の仮説の重要度となる。
【0074】
次に、モデルを用いた文書評価の方法について説明する。
図11は、文書の第5の例を示す図である。
文書135は、評価対象のクラウドソーシング発注書の例である。文書135は、「なるべく」、「必ず」、「あくまで」、「なおかつ」という4個の副詞を含む。また、文書135は、「また」、「なので」という2個の接続詞を含む。また、文書135は、「ご遠慮ください」、「NGです」、「厳禁」、「禁止」、「やめてください」、「おやめください」という6個の禁止表現を含む。また、文書135に対応する業務情報が発注管理テーブル141に登録されている。この業務情報によれば、カテゴリがブログ記事作成、発注価格が150円、納期が1日である。
【0075】
図12は、特徴データの例を示す図である。
文書評価装置100は、上記の文書135と発注管理テーブル141に登録された業務情報から、特徴データ145を生成する。特徴データ145は、発注ID、非言語属性および言語的特徴を含む。非言語属性は、カテゴリ、発注価格および納期を含む。言語的特徴は、長さ、副詞数、接続詞数および禁止表現数を含む。発注ID、カテゴリ、発注価格および納期は、発注管理テーブル141から抽出される。長さ、副詞数、接続詞数および禁止表現数は、自然言語処理技術によって文書135から抽出される。
【0076】
図13は、評価対象文書にマッチする仮説の選択例を示す図である。
文書評価装置100は、特徴データ145に適用可能な仮説を仮説テーブル144から検索する。ここでは、文書評価装置100は、仮説テーブル144に登録された仮説それぞれについて、仮定部に規定された条件を特徴データ145が満たすか判定し、適合する仮定部をもつ仮説を抽出する。ただし、文書評価装置100は、仮定部が非言語属性のみを含み言語的特徴を1つも含まない場合、その仮定部をもつ仮説を除外する。すなわち、文書評価装置100は、仮定部に規定された条件を特徴データ145が満たし、かつ、仮定部が言語的特徴を少なくとも1つ含むような仮説を選択する。
【0077】
一例として、仮説テーブル144の1番目の仮説は、仮定部が特徴データ145に適合し、かつ、言語的特徴である接続詞数を含むため選択される。2番目の仮説は、仮定部が特徴データ145に適合し、かつ、言語的特徴である禁止表現数を含むため選択される。3番目の仮説は、仮定部が特徴データ145に適合しないため選択されない。4番目の仮説は、仮定部が特徴データ145に適合しないため選択されない。5番目の仮説は、仮定部が特徴データ145に適合するものの、言語的特徴を含まないため選択されない。よって、仮説テーブル144の1番目の仮説と2番目の仮説が選択される。
【0078】
図14は、評価値の算出例を示す図である。
文書評価装置100は、仮説テーブル144から選択した仮説の重要度を用いて、評価対象文書である文書135の評価値を算出する。このとき、文書評価装置100は、特徴データ145の中の言語的特徴に基づいて、重要度を補正する。
【0079】
具体的には、文書評価装置100は、仮説の仮定部から言語的特徴の条件を検出し、言語的特徴の条件に閾値が使用されている場合にその閾値を抽出する。抽出する閾値は、言語的特徴の値が閾値以上である、言語的特徴の値が閾値を超える、言語的特徴の値が閾値以下である、言語的特徴の値が閾値未満である、といった条件における当該閾値である。文書評価装置100は、抽出した閾値に対する特徴データ145の言語的特徴の値の比率を補正係数とし、元の重要度に補正係数を乗じたものを補正重要度とする。
【0080】
ここでは、仮説テーブル144から選択した1番目の仮説を仮説144aとし、選択した2番目の仮説を仮説144bとする。仮説144aの仮定部は、接続詞数が2以下という言語的特徴の条件を含む。特徴データ145が示す接続詞数は2である。よって、補正係数は2/2=1となり、仮説144aの補正重要度は0.85×1=0.85となる。また、仮説144bの仮定部は、禁止表現数が4以上という言語的特徴の条件を含む。特徴データ145が示す禁止表現数は6である。よって、補正係数は6/4=1.5となり、仮説144bの補正重要度は0.80×1.5=1.20となる。
【0081】
なお、上記の重要度補正方法は、値が小さいほど好ましく、値が大きいほど好ましくない言語的特徴を前提としている。言語的特徴の値が閾値より大きいほど、その言語的特徴が評価結果に与える影響は大きいと推定される。このため、重要度が高くなるように補正される。ただし、上記の重要度補正方法は一例であり、他の補正方法を用いてもよい。例えば、値が大きいほど好ましく、値が小さいほど好ましくない言語的特徴に対して、上記の補正係数の分子と分母を入れ替えるようにすることも可能である。これにより、言語的特徴の値が閾値より小さいほど、重要度が高くなるように補正される。
【0082】
文書評価装置100は、選択した仮説の補正重要度に基づいて、評価対象文書である文書135の評価値146を算出する。具体的には、文書評価装置100は、選択した仮説を、結論部がポジティブ(例えば、受注が多い)である仮説と、結論部がネガティブ(例えば、受注が少ない)である仮説とに分類する。文書評価装置100は、ポジティブな仮説の補正重要度を合計した合計重要度Fposと、ネガティブな仮説の補正重要度を合計した合計重要度Fnegとを算出する。文書評価装置100は、全体の合計重要度に対するポジティブな仮説の合計重要度の比率、すなわち、Fpos/(Fpos+Fneg)を、評価値146として算出する。
【0083】
ここでは、仮説144aがポジティブな仮説であり、仮説144bがネガティブな仮説である。よって、Fpos=0.85かつFneg=1.20であり、評価値146は、0.85/(0.85+1.20)=41.4%と算出される。評価値146は、文書135によって多くの受注(例えば、5個以上の受注)を獲得できる確率を示している。なお、上記の評価値算出方法は一例であり、他の算出方法を用いてもよい。
【0084】
図15は、添削画面の例を示す図である。
文書評価装置100は、結論部がネガティブな仮説を選択し、ネガティブな仮説の仮定部に含まれる言語的特徴を抽出する。この言語的特徴は、文書135の評価値146を下げる原因になっている可能性が高い。そこで、文書評価装置100は、文書135から、抽出した言語的特徴に該当する単語を検索してハイライトする。言語的特徴が副詞数である場合、文書135に含まれる副詞がハイライトされる。言語的特徴が接続詞数である場合、文書135に含まれる接続詞がハイライトされる。言語的特徴が禁止表現数である場合、文書135に含まれる禁止表現がハイライトされる。また、文書評価装置100は、抽出した言語的特徴に対応する評価コメントを生成する。
【0085】
文書評価装置100は、添削画面136を生成して表示装置111に表示する。添削画面136は、評価値146と評価コメントと一部の単語をハイライトした文書135とを含む。一例として、ネガティブな仮説144bは、禁止表現数が4以上という言語的特徴の条件を含む。禁止表現が多いことが評価値146を下げる原因となっている可能性が高い。そこで、禁止表現の削減を推奨する評価コメントが生成される。また、文書135の中の6個の禁止表現がハイライトされて強調される。このように、文書評価装置100によって文書135が添削される。文書評価装置100のユーザは、添削画面136を受けて、受注が増えるように文書135を修正することが可能となる。
【0086】
次に、文書評価装置100の機能について説明する。
図16は、文書評価装置の機能例を示すブロック図である。
文書評価装置100は、文書記憶部121、業務情報記憶部122およびモデル記憶部123を有する。これらの記憶部は、例えば、RAM102またはHDD103の記憶領域を用いて実現される。また、文書評価装置100は、訓練データ生成部124、機械学習部125、特徴抽出部126、評価部127および添削部128を有する。これらの処理部は、例えば、CPU101が実行するプログラムを用いて実現される。
【0087】
文書記憶部121は、文書133などの過去の文書を記憶する。また、文書記憶部121は、文書135などの評価対象文書を記憶する。業務情報記憶部122は、発注管理テーブル141などの業務管理用テーブルを記憶する。業務管理用テーブルには、過去の文書に対応する業務情報と、評価対象文書に対応する業務情報とが登録されている。業務情報には、受注数などの業務結果が含まれ、非言語属性が含まれることがある。モデル記憶部123は、機械学習によって生成されたモデルとして、仮説テーブル144を記憶する。仮説テーブル144は、複数の仮説とそれら仮説の重要度とを含む。
【0088】
訓練データ生成部124は、訓練データテーブル142などの訓練データを生成する。このとき、訓練データ生成部124は、文書記憶部121に記憶された過去の文書から言語的特徴を抽出する。また、訓練データ生成部124は、当該文書またはそれに対応する業務情報記憶部122に記憶された業務情報から非言語属性を抽出する。また、訓練データ生成部124は、業務情報から業務の識別子および業務結果を抽出し、業務結果に基づいて文書の良否を示す教師ラベルを生成する。
【0089】
機械学習部125は、訓練データ生成部124が生成した訓練データから、機械学習によって仮説テーブル144を生成し、モデル記憶部123に保存する。機械学習として、例えば、Wide Learningが用いられる。機械学習部125は、言語的特徴および非言語属性を含む説明変数の集合から説明変数の組み合わせを選択し、それら説明変数の値と目的変数である教師ラベルの値とを対応付けた仮説を網羅的に生成する。機械学習部125は、ヒット数やヒット率に基づいて有効な仮説を絞り込む。また、機械学習部125は、絞り込んだ有効な仮説それぞれの重要度を算出する。
【0090】
特徴抽出部126は、文書記憶部121に記憶された評価対象文書から言語的特徴を抽出する。また、特徴抽出部126は、評価対象文書またはそれに対応する業務情報記憶部122に記憶された業務情報から非言語属性を抽出する。特徴抽出部126は、言語的特徴と非言語属性とを含む特徴データ145を生成する。
【0091】
評価部127は、特徴抽出部126が生成した特徴データ145と、モデル記憶部123に記憶された仮説テーブル144とを用いて、評価対象文書の評価値146を算出する。このとき、評価部127は、仮定部が特徴データ145に適合し、かつ、仮定部が言語的特徴を含む仮説を選択する。評価部127は、選択した仮説に含まれる言語的特徴の条件と特徴データ145とを比較して、選択した仮説の重要度を補正する。評価部127は、補正重要度から評価値146を算出する。
【0092】
添削部128は、評価部127が選択した仮説のうちネガティブな仮説に含まれる言語的特徴から、評価対象文書の修正方針を提案する評価コメントを生成する。また、添削部128は、評価対象文書の中でその言語的特徴に該当する単語をハイライトする。添削部128は、評価値146と評価コメントと評価対象文書とを含む添削画面136を生成して、表示装置111に表示する。なお、添削部128は、添削画面136に含まれる情報を、HDD103などの不揮発性ストレージに保存してもよいし、プリンタなどの他の出力デバイスに出力してもよいし、他の情報処理装置に送信してもよい。
【0093】
次に、文書評価装置100の処理手順について説明する。
図17は、モデル生成の手順例を示すフローチャートである。
(S10)訓練データ生成部124は、業務情報記憶部122に記憶された業務情報から業務識別子を1つ選択する。訓練データ生成部124は、文書記憶部121に記憶された文書のうち、選択した業務識別子に対応する1つの文書を学習用に選択する。
【0094】
(S11)訓練データ生成部124は、形態素解析などの自然言語処理技術を用いて、選択した文書に含まれる単語を解析し、副詞数、接続詞数、依頼表現数、禁止表現数、受動態数、数値表現数などの言語的特徴を抽出する。特定の品詞の検出や特定の表現の検出にあたり、訓練データ生成部124は、辞書を参照してもよい。
【0095】
(S12)訓練データ生成部124は、選択した文書自体または文書の外部にある業務情報から、業務カテゴリ、予定金額、予定期間などの非言語属性を抽出する。文書自体から非言語属性を抽出する場合、訓練データ生成部124は、フォーマット中の特定の見出し項目から特定の非言語属性を抽出することができる。
【0096】
(S13)訓練データ生成部124は、選択した文書に対応する業務情報を参照して、選択した文書の評価を示す教師ラベルを生成する。教師ラベルは、高評価(1)か低評価(0)かを示すフラグである。訓練データ生成部124は、受注数やプロジェクト採否などの業務結果の良否から、教師ラベルを生成することができる。
【0097】
(S14)訓練データ生成部124は、ステップS11で抽出した言語的特徴とステップS12で抽出した非言語属性をそれぞれ説明変数とし、ステップS13で生成した教師ラベルを目的変数とする。訓練データ生成部124は、複数の説明変数の値と目的変数の値とを対応付けたレコード(サンプル)を訓練データに追加する。
【0098】
(S15)訓練データ生成部124は、ステップS10において、全ての業務識別子を選択したか、すなわち、文書記憶部121に記憶された文書を全て選択したか判断する。全て選択した場合はステップS16に進み、それ以外の場合はステップS10に戻る。
【0099】
図18は、モデル生成の手順例を示すフローチャート(続き)である。
(S16)機械学習部125は、訓練データを参照して、複数の説明変数および目的変数それぞれの取り得る値を列挙する。このとき、機械学習部125は、取り得る値が少数の離散値ではない説明変数については、その説明変数の値域を複数の区間に分割し、各区間を以降の「説明変数の値」として使用する。対象となる説明変数には、連続値をとる説明変数と、離散値をとるものの取り得る値が多数存在する説明変数とが含まれる。
【0100】
(S17)機械学習部125は、複数の説明変数の中から、所定個以下の説明変数の組み合わせを1通り選択する。機械学習部125は、説明変数それぞれの値と目的変数の値との組み合わせを1つ選択して、仮説を1つ生成する。仮説の仮定部は説明変数の値の条件を示しており、仮説の結論部は目的変数の値を示している。
【0101】
(S18)機械学習部125は、訓練データの中から、ステップS17で生成した仮説の仮定部に規定された条件と合致する説明変数の値をもつサンプルを検索する。
(S19)機械学習部125は、ステップS18で検索されたサンプルそれぞれの目的変数の値が、ステップS17で生成した仮説の結論部と合致するか判断する。機械学習部125は、仮説の仮定部と結論部の両方に合致するサンプルの個数をヒット数として算出する。また、機械学習部125は、仮説の仮定部に合致するサンプルの個数に対する上記のヒット数の割合をヒット率として算出する。
【0102】
(S20)機械学習部125は、ヒット数が閾値以上かつヒット率が閾値以上であるか判断する。ヒット数の閾値は10個など予め決まっており、ヒット率の閾値は80%など予め決まっている。条件を満たす場合はステップS21に進み、条件を満たさない場合はステップS22に進む。なお、ヒット数とヒット率の何れか一方のみ判定してもよい。
【0103】
(S21)機械学習部125は、ステップS17で生成した仮説を有効な仮説として採用する。なお、ステップS20の判定がNOである場合、その仮説は採用されない。
(S22)機械学習部125は、ステップS17において、全ての説明変数の組み合わせおよび全ての値の組み合わせを網羅的に選択したか判断する。網羅的に選択した場合はステップS23に進み、それ以外の場合はステップS17に戻る。
【0104】
(S23)機械学習部125は、訓練データに含まれる複数のサンプルそれぞれについて、ステップS21で採用された仮説のうち、サンプルの説明変数の値が仮定部に規定する条件に合致するような仮説を特定する。
【0105】
(S24)機械学習部125は、数式(1)に示したロジスティック回帰分析により、ステップS23の情報に基づいて、各仮説に適用される重み係数を算出する。機械学習部125は、この重み係数を仮説の重要度として採用する。
【0106】
(S25)機械学習部125は、ステップS21で採用された仮説とステップS24で算出された重要度とを対応付けて、仮説テーブル144に登録する。機械学習部125は、仮説テーブル144に登録された仮説を重要度の降順にソートする。そして、機械学習部125は、生成した仮説テーブル144をモデル記憶部123に保存する。
【0107】
図19は、文書評価の手順例を示すフローチャートである。
(S30)特徴抽出部126は、文書記憶部121から評価対象文書を取得する。評価対象文書は、ユーザからの入力によって指示されてもよい。
【0108】
(S31)特徴抽出部126は、評価対象文書に含まれる単語を解析し、副詞数、接続詞数、依頼表現数、禁止表現数、受動態数、数値表現数などの言語的特徴を抽出する。
(S32)特徴抽出部126は、評価対象文書自体またはその外部にある業務情報から、業務カテゴリ、予定金額、予定期間などの非言語属性を抽出する。評価対象文書に対応する業務情報は、業務情報記憶部122から取得される。特徴抽出部126は、言語的特徴と非言語属性とを含む特徴データ145を生成する。
【0109】
(S33)評価部127は、モデル記憶部123に記憶された仮説テーブル144から、特徴データ145の説明変数の値が仮定部に規定する条件に合致する仮説を検索する。
(S34)評価部127は、ステップS33で検索された仮説のうち、仮定部に言語的特徴を含まない仮説(仮定部に非言語属性のみを含む仮説)を除外する。
【0110】
(S35)評価部127は、除外されずに残った仮説を1つ選択する。
(S36)評価部127は、選択した仮説の仮定部から言語的特徴の閾値を抽出する。
(S37)評価部127は、仮説テーブル144から、選択した仮説の重要度を読み出す。評価部127は、ステップS36で抽出した閾値と特徴データ145に含まれる言語的特徴の値とを比較して、補正係数を算出し、補正係数を重要度に乗じて補正重要度を算出する。補正係数は、例えば、閾値に対する特徴データ145の値の比率である。
【0111】
(S38)評価部127は、ステップS35において全ての仮説を選択したか判断する。全て選択した場合はステップS39に進み、それ以外の場合はステップS35に戻る。
図20は、文書評価の手順例を示すフローチャート(続き)である。
【0112】
(S39)評価部127は、残っている仮説を、結論部がポジティブ(1)な仮説と結論部がネガティブ(0)な仮説とに分類する。ポジティブな仮説は、受注が多いことやプロジェクトが採用されたことなど、評価が高いことを示す。ネガティブな仮説は、受注が少ないことやプロジェクトが不採用であることなど、評価が低いことを示す仮説である。
【0113】
(S40)評価部127は、ポジティブな仮説の補正重要度を合計した合計重要度Fposと、ネガティブな仮説の補正重要度を合計した合計重要度Fnegとを算出する。評価部127は、合計重要度Fposと合計重要度Fnegの比率から、評価値146を算出する。例えば、評価値146は、Fpos/(Fpos+Fneg)である。
【0114】
(S41)添削部128は、結論部がネガティブな仮説を1つ選択する。
(S42)添削部128は、選択した仮説の仮定部から言語的特徴の条件を抽出する。
(S43)添削部128は、ステップS42で抽出した条件に対応する評価コメントを生成する。例えば、ある言語的特徴の値が閾値以上であるという条件に対し、添削部128は、その言語的特徴の単語が多いと評価が下がる可能性があると指摘する。
【0115】
(S44)添削部128は、上記の条件に該当する単語を評価対象文書から検索する。例えば、言語的特徴が接続詞数である場合、添削部128は接続詞を検索する。
(S45)添削部128は、ステップS41において、結論部がネガティブな仮説を全て選択したか判断する。全て選択した場合はステップS46に進み、それ以外の場合はステップS41に戻る。
【0116】
(S46)添削部128は、ステップS40で算出した評価値146と、ステップS43で生成した評価コメントと、ステップS44で検索した単語をハイライトした評価対象文書とを含む添削画面136を生成し、表示装置111に表示させる。
【0117】
第2の実施の形態の文書評価装置100によれば、言語的特徴と非言語属性とが混在した説明変数の集合が定義され、業務に関連する過去の文書から、説明変数の値と評価の良否を示す目的変数の値とを対応付けた訓練データが生成される。この訓練データを用いて、機械学習により、幾つかの説明変数の値の組み合わせを仮定部としてもち評価の良否を結論部としてもつ複数の仮説を含むモデルが生成される。そして、生成された複数の仮説のうち、評価対象文書に適用可能であり、かつ、仮定部に少なくとも1つの言語的特徴を含む仮説が選択され、選択された仮説を用いて評価値が算出される。
【0118】
これにより、評価対象文書の非言語属性を考慮して評価値を算出することができ、非言語属性を説明変数に含まないモデルを使用する場合よりも、評価値の精度が向上する。また、言語的特徴と非言語属性とが混在した説明変数の集合を使用することで、非言語属性の値毎に別個のモデルを生成しなくてよい。このため、機械学習によるモデル生成のコストを低減できる。特に、準備する学習用文書の量を削減することができる。また、仮定部に言語的特徴を含まない仮説を除外して評価値が算出される。このため、文書の書き方によらずに業務の性質のみから評価が決まってしまうような評価対象文書の評価に適さない仮説を除外することができ、評価値の精度が向上する。
【0119】
また、非言語属性は、文書自体または文書に対応付けられた外部の業務情報から自動的に抽出される。また、教師ラベルは、文書に対応付けられた外部の業務情報に基づいて自動的に生成される。よって、訓練データを容易に生成することができる。また、評価対象文書の言語的特徴が、仮説の仮定部に規定される許容範囲からどの程度外れているかに応じて、モデルで定義された重要度が補正される。これにより、評価対象文書の好ましくない側面を強調することができ、評価値の精度が向上する。
【0120】
また、評価値として、高評価と低評価の二段階ではなく、0%以上100%以下の数値が算出される。これにより、ユーザは、評価対象文書の書き方が業務結果にどの程度の影響を与え得るかを理解しやすくなる。また、評価対象文書の中で、評価値を下げる原因となっている言語的特徴に該当する単語が強調表示される。これにより、ユーザは、評価値が高くなるように評価対象文書を修正することが容易となる。
【0121】
上記については単に本発明の原理を示すものである。更に、多数の変形や変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応する全ての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【0122】
10 文書評価装置
11 記憶部
12 処理部
13 評価対象文書
14a,14b,14c 判定ルール
15 評価結果