(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022175531
(43)【公開日】2022-11-25
(54)【発明の名称】演算装置、演算方法、及び、コンピュータプログラム
(51)【国際特許分類】
G06F 16/28 20190101AFI20221117BHJP
G06Q 50/20 20120101ALI20221117BHJP
G06F 40/216 20200101ALI20221117BHJP
【FI】
G06F16/28
G06Q50/20 300
G06F40/216
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021082003
(22)【出願日】2021-05-13
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 公開の事実1:令和3(2021)年2月21日の関西大学総合情報学部 2020年度 松下研究室卒論発表会(Zoomによるオンライン開催)にて発表 公開の事実2:令和3(2021)年3月19日に関西大学総合情報学部 2020年度 松下研究室卒論発表会 概要集に掲載 公開の事実3:令和3(2021)年4月13日に人工知能学会全国大会(第35回)アブストラクト(https://confit.atlas.jp/guide/event/jsai2021/subject/1I2-GS-4a-01/tables?cryptoId=)に掲載
(71)【出願人】
【識別番号】399030060
【氏名又は名称】学校法人 関西大学
(74)【代理人】
【識別番号】100111567
【弁理士】
【氏名又は名称】坂本 寛
(72)【発明者】
【氏名】山西 良典
(72)【発明者】
【氏名】松下 光範
(72)【発明者】
【氏名】山本 京佳
【テーマコード(参考)】
5B091
5B175
5L049
【Fターム(参考)】
5B091AA15
5B091CA01
5B091EA01
5B175FB04
5B175HB03
5L049CC34
(57)【要約】
【課題】異なる2つのカテゴリの間の関連性を指標値という客観的な値で示す演算装置を提供する。
【解決手段】演算装置10は、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算装置であって、複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ように構成されている。
【選択図】
図3
【特許請求の範囲】
【請求項1】
第1のカテゴリに含まれる複数の第1の要素と、前記第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算装置であって、
前記複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、前記複数の第1の要素それぞれについて特定次元で表される第1の特徴量を生成し、
前記複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、前記複数の第2の要素それぞれについて前記特定次元で表される第2の特徴量を生成し、
前記第1の特徴量及び前記第2の特徴量を用いて前記指標値を生成する、ように構成された演算部を備える
演算装置。
【請求項2】
前記指標値を生成することは、行列からなる前記第1の特徴量及び前記第2の特徴量のいずれか一方の特徴量を行列因子分解のためのテンプレートとし、前記テンプレートではない他方の特徴量を前記一方の特徴量で分解することを含む
請求項1に記載の演算装置。
【請求項3】
前記分解することは、前記一方の特徴量を教師データとして前記他方の特徴量に対して半教師ありNMF(Non-negative Matrix Factorization:非負値行列因子分解)を適用することを含む
請求項2に記載の演算装置。
【請求項4】
前記第1のカテゴリ及び前記第2のカテゴリの少なくとも一方は、人を構成要素として含む組織である
請求項1~3のいずれか一項に記載の演算装置。
【請求項5】
前記第1のカテゴリ及び前記第2のカテゴリの少なくとも一方は、前記人に提供され得るサービスである
請求項4に記載の演算装置。
【請求項6】
前記指標値と、前記第1のカテゴリ及び前記第2のカテゴリのうちの一方のカテゴリに含まれる複数の要素と第3の要素との関連性を示す他の指標値とを対比することによって、前記第1のカテゴリ及び前記第2のカテゴリのうちの他方のカテゴリに含まれる複数の要素と前記第3の要素との適合性を判定する、ように構成されている
請求項1~5のいずれか一項に記載の演算装置。
【請求項7】
前記演算部は、前記指標値を前記他の指標値と対比することによって、前記他方のカテゴリの複数の要素の中から前記第3の要素に適合した要素を判定する、ように構成されている
請求項6に記載の演算装置。
【請求項8】
演算装置で実行される、第1のカテゴリに含まれる複数の第1の要素と、前記第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値の演算方法であって、
前記複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、前記第1の要素について特定次元で表される第1の特徴量を生成し、
前記複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、前記第2の要素について前記特定次元で表される第2の特徴量を生成し、
前記第1の特徴量及び前記第2の特徴量を用いて前記指標値を生成する、ことを含む
演算方法。
【請求項9】
第1のカテゴリに含まれる複数の第1の要素と、前記第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算をコンピュータに実行させるプログラムであって、
前記プログラムは、前記コンピュータに、
前記複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、前記第1の要素について特定次元で表される第1の特徴量を生成し、
前記複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、前記第2の要素について前記特定次元で表される第2の特徴量を生成し、
前記第1の特徴量及び前記第2の特徴量を用いて前記指標値を生成する、ことを実行させる
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、演算装置、演算方法、及び、コンピュータプログラムに関する。
【背景技術】
【0002】
大学における講義及び研究室など、異なるカテゴリ間の関連性を知りたいという要望がある。例えば、特開2005-332037号公報(以下、特許文献1)は、職業職種情報と履修科目ごとの講義内容を示すシラバス情報とを、予め関連付けて記憶しているサーバを用いることによって、職業職種に対する学生の適性を配慮して履修科目の選定を行う履修科目選択支援システムを開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【0004】
しかしながら、特許文献1に開示されたシステムでは、職業職種情報とシラバス情報との関連付けは担当教員が行っており、客観的な関連性ではないおそれがある。そのため、客観的な関連性を知りたいという要望が満たされない場合がある。そこで、本開示は、異なる2つのカテゴリの間の関連性を指標値という客観的な値で示す演算装置、演算方法、及び、コンピュータプログラムを提供することを目的の1つとする。
【0005】
ここで、演算装置は、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算装置であって、複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ように構成された演算部を備える。
【0006】
また、演算方法は、演算装置で実行される、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値の演算方法であって、複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ことを含む。
【0007】
また、コンピュータプログラムは、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算をコンピュータに実行させるプログラムであって、プログラムは、コンピュータに、複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ことを実行させる。
【0008】
更なる詳細は、後述の実施形態として説明される。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施の形態に係る演算装置での、指標値の算出について概念的に示した図である。
【
図2】
図2は、実施の形態に係る演算方法の具体例を表したフローチャートである。
【
図4】
図4は、言語情報を有するデータから特徴量を生成する処理の一例を説明するための図である。
【
図5】
図5は、言語情報を有するデータから特徴量を生成する処理の一例を説明するための図である。
【
図6】
図6は、特徴量から指標値を生成する処理の一例を説明するための図である。
【
図7】
図7は、指標値のグラフ化の一例を示した図である。
【
図8】
図8は、指標値のグラフ化の一例を示した図である。
【
図9】
図9は、講義ごとの興味の度合の入力を受け付ける画面例を表した図である。
【
図10】
図10は、適合性の判定の具体例を説明するための図である。
【
図11】
図11は、演算装置での分類処理の流れの一例を表したフローチャートである。
【発明を実施するための形態】
【0010】
<1.演算装置、演算方法、及び、コンピュータプログラムの概要>
【0011】
(1)ある実施の形態に従う演算装置は、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算装置であって、複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ように構成された演算部を備える。
【0012】
第1のカテゴリ及び第2のカテゴリは、それぞれ、複数の第1の要素及び第2の要素を有する。言語情報を有するデータは、言語化されたデータ、つまり、言語表現されたデータを指す。言語化されたデータは、例えば、言語化可能な情報を含むデータが言語化されることによって得ることもできる。言語化可能な情報を含むデータは、一例として、テキストデータ、音声データ、文字画像を含む画像データ、それらの組み合わせ、などである。
【0013】
第1のカテゴリがN個の第1の要素を有し、第2のカテゴリがP個の第2の要素を有し、特定次元をX次元とすると、第1の特徴量及び第2の特徴量は、それぞれ、一例としてX×Nの行列、X×Pの行列であってよい。この場合、指標値は、一例として、P×Nの行列であってよい。なお、Nは、1以上の整数であり、好ましくは、2以上の整数である。Pは、1以上の整数であり、好ましくは2以上の整数である。
【0014】
指標値が生成されることによって、第1のカテゴリに含まれる複数の第1の要素と第2のカテゴリに含まれる複数の第2の要素との間の関連性を指標値という客観的な値で示すことができる。そのため、これら2つのカテゴリそれぞれの要素の間の客観的な関連性を知りたいという要望に応じることができる。
【0015】
(2)好ましくは、指標値を生成することは、行列からなる第1の特徴量及び第2の特徴量のいずれか一方の特徴量を行列因子分解のためのテンプレートとし、テンプレートではない他方の特徴量を一方の特徴量で分解することを含む。これにより、第1の特徴量及び第2の特徴量を用いて、第1のカテゴリと第2のカテゴリとの関連性を示す指標値が得られる。
【0016】
(3)好ましくは、分解することは、一方の特徴量を教師データとして他方の特徴量に対して半教師ありNMF(Non-negative Matrix Factorization:非負値行列因子分解)を適用することを含む。半教師ありNMFを適用することにより、指標値が容易に生成される。
【0017】
分解することは、半教師ありNMFを適用することの他、教師ありNMFを適用することを含んでもよいし、教師あり独立成分分析を行うことを含んでもよいし、半教師あり独立成分分析を行うことを含んでもよい。これら方法でも、指標値が容易に生成される。
【0018】
(4)好ましくは、第1のカテゴリ及び第2のカテゴリの少なくとも一方は、人を構成要素として含む組織である。人を構成要素として含む組織は、例えば、企業、プロジェクトチーム、大学、学部、学科、研究室、などである。これにより、このような組織と、他のカテゴリとの関連性を示す客観的な指標値を生成することができる。
【0019】
(5)好ましくは、第1のカテゴリ及び第2のカテゴリの少なくとも一方は、人に提供され得るサービスである。サービスは、例えば、製品などの有形の商品、講義(授業)やコンテンツの再生などの無形のサービス、知的財産などの権利、を含む。これにより、人を構成要素として含む組織と、人に提供され得るサービスとの関連性を示す客観的な指標値を生成することができる。
【0020】
(6)好ましくは、指標値と、第1のカテゴリ及び第2のカテゴリのうちの一方のカテゴリに含まれる複数の要素と第3の要素との関連性を示す他の指標値とを対比することによって、第1のカテゴリ及び第2のカテゴリのうちの他方のカテゴリに含まれる複数の要素と第3の要素との適合性を判定する、ように構成されている。
【0021】
指標値の対比は、一例として、一方のカテゴリと他方のカテゴリとの各要素についての指標値の分布(第1の分布)と、一方のカテゴリと第3の要素についての指標値の分布(第2の分布)と、の対比が挙げられる。この場合、適合性の判定は、一例として、第1の分布と第2の分布との類似性を利用することが挙げられる。類似性の算出には、一例として、第1の分布及び第2の分布それぞれを形成する2つのベクトルの、コサイン類似度やユークリッド距離を用いることが挙げられる。この場合、適合性の判定は、例えば、得られた類似性が閾値以上である場合に適合性あり、閾値未満の場合に適合性なし、と判定することが挙げられる。これにより、他方のカテゴリに含まれる複数の要素と第3要素との適合性を客観的に示すことができる。
【0022】
(7)好ましくは、演算部は、指標値を他の指標値と対比することによって、他方のカテゴリの複数の要素の中から第3の要素に適合した要素を判定する、ように構成されている。適合した要素は、一例として、複数の要素のうちの、適合性がある要素、上記の類似性が高いものから順に所定数までの要素、などであってよい。これにより、他方のカテゴリの複数の要素の中から第3の要素に適合した要素を客観的に示すことができる。
【0023】
(8)ある実施の形態に従う演算方法は、演算装置で実行される、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値の演算方法であって、複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ことを含む。これにより、第1のカテゴリに含まれる複数の第1の要素と第2のカテゴリに含まれる複数の第2の要素との間の関連性を指標値という客観的な値で示すことができる。
【0024】
(9)ある実施の形態に従うコンピュータプログラムは、第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算をコンピュータに実行させるプログラムであって、プログラムは、コンピュータに複数の第1の要素それぞれに対応付けられた第1言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、複数の第2の要素それぞれに対応付けられた第2言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成し、第1の特徴量及び第2の特徴量を用いて指標値を生成する、ことを実行させる。これにより、コンピュータを第1のカテゴリに含まれる複数の第1の要素と、第1のカテゴリとは異なる第2のカテゴリに含まれる複数の第2の要素との関連性を示す指標値を算出する演算装置として機能させ、指標値を算出させることができる。
【0025】
<2.演算装置、演算方法、及び、コンピュータプログラムの例>
【0026】
図1を参照して、本実施の形態に係る演算装置10は、異なる2つカテゴリ(第1のカテゴリ、第2のカテゴリ)の関連性を示す指標値を算出する。2つのカテゴリの少なくとも一方は、人を構成要素として含む組織である。人を構成要素として含む組織は、例えば、企業、プロジェクトチーム、大学、学部、学科、研究室、政府、非営利組織、又はその他の団体などである。人を構成要素として含む組織は、先に例示した組織における内部組織であってもよい。また、2つのカテゴリの少なくとも一方は、人に提供され得るサービスである。サービスは、人に提供され得るものであれば有形であっても無形であってもよく、例えば、製品などの有形の商品、講義(授業)やコンテンツの再生などの無形のサービス、知的財産などの権利、を含む。好ましくは、第1のカテゴリと第2のカテゴリとは、共通する単語から得られる値を用いて、それぞれ、第1の特徴量と第2の特徴量とが生成される関係にある。
【0027】
以降の説明では、演算装置10は、
図1に示されたように、大学の教養課程や専門課程で提供される講義と、その大学の研究室との関連性を示す指標値を算出するものとする。すなわち、第1のカテゴリが講義、第2のカテゴリが研究室であるものとする。
【0028】
第1のカテゴリは、複数の第1の要素を有する。第1のカテゴリが講義の場合、第1の要素は、「ハードウェアアーキテクチャ」「コンピュータ言語」「情報デザイン」「政治過程論」「政治学」などの個々の講義に相当する。この例では、第1のカテゴリは、講義1~NのN個の要素を有する。
【0029】
第2のカテゴリは、複数の第2の要素を有する。第2のカテゴリが研究室の場合、第2の要素は、A研究室、B研究室などの個々の研究室に相当する。この例では、第2のカテゴリは、研究室1~PのP個の要素を有する。
【0030】
第1のカテゴリと第2のカテゴリとは、各要素の関連性を考慮する必要がある関係にある。この例では、
図1に示されたように、学生Tが、受講する講義と所属する研究室との関係を用いることが想定される。例えば、教養課程や専門課程で講義を受けた学生Tが、受けた講義との関連性を考慮して、所属する研究室を選択することが想定される。他の例として、学生Tが、所属を希望する研究室との関連性を考慮して、教養課程や専門課程で受講する講義を選択することが想定される。このような場面において、演算装置10で算出される指標値は学生Tに提供され、用いられることが想定される。すなわち、演算装置10の利用者の一例として学生Tが想定される。
【0031】
演算装置10には、第1の要素及び第2の要素それぞれに対応付けられた入力データである第1データ21,第2データ22が入力される。演算装置10は、第1データ21,第2データ22を用いて指標値を算出する。第1の要素及び第2の要素それぞれに対応付けられた入力データは、言語化情報を含むデータを指し、一例として、テキストデータ、音声データ、文字画像を含む画像データ、それらの組み合わせ、などを含む。
【0032】
第1のカテゴリが講義である場合、第1データ21は、例えば、講義ごとに用意されているシラバスが該当する。第2のカテゴリが研究室である場合、第2データ22は、研究室ごとの、その研究室の卒業研究概要集や、その研究室から発表された論文、その研究室のWebサイトなどが該当する。
【0033】
演算装置10は、第1データ21,第2データ22から、それぞれ言語化された第1言語情報及び第2言語情報を生成し、第1言語情報及び第2言語情報を用いて第1のカテゴリ及び第2のカテゴリ間の関連性を示す指標値を算出する。第1言語情報及び第2言語情報は、それぞれ、第1データ21及び第2データ22を言語化した情報を指し、テキストデータである。
【0034】
本実施の形態に係る演算方法を、
図2を用いて説明する。この演算方法は、異なる2つカテゴリである第1のカテゴリ及び第2のカテゴリ間の関連性を示す指標値を算出する方法である。以降の説明では、第1のカテゴリを講義、第2のカテゴリを研究室として、講義1~Nと研究室1~Pとの関連性を示す指標値を生成するものとする。
【0035】
詳しくは、
図2を参照して、初めに、演算装置10は、第1データ21及び第2データ22の入力を受け付ける(ステップS1)。この例では、ステップS1で、演算装置10は、講義1~Nそれぞれと対応付けられた第1データ21の入力を受け付け、研究室1~Pそれぞれと対応付けられた第2データ22の入力を受け付ける。第1データ21及び第2データ22の入力は、例えば、演算装置10の管理者(大学のスタッフ)によってなされる。
【0036】
次に、演算装置10は、第1データ21から得られた第1言語情報に基づいて、複数の第1の要素それぞれについて特定次元で表される第1の特徴量を生成し、第2データ22から得られた第2言語情報に基づいて、複数の第2の要素それぞれについて特定次元で表される第2の特徴量を生成する(ステップS3)。ここでは、特定次元は、X次元とする。したがって、この例では、演算装置10は、講義1~NそれぞれX次元で表される第1の特徴量F1、及び、研究室1~PそれぞれX次元で表される第2の特徴量F2を生成する。
【0037】
次に、演算装置10は、第1の特徴量及び第2の特徴量を用いて指標値を生成する(ステップS5)。ステップS5の具体的な方法については後述する。演算装置10は、生成した指標値を出力する(ステップS7)。出力は、演算装置10の利用者に対して行われ、この例では、大学生Tに対して行われる。出力は、一例として画面表示で行われる。これにより、例えば学生Tが受講する講義を選択する際や所属する研究室を選択する際に、指標値を用いることができる。
【0038】
好ましくは、演算装置10は、ステップS5で得られた指標値と、第1のカテゴリと第2のカテゴリとのうちの一方のカテゴリと第3のカテゴリとの関連性を示す他の指標値とを対比し、第1のカテゴリと第2のカテゴリとのうちの他方のカテゴリと第3のカテゴリとの適合性を判定する(ステップS9)。判定については後述する。
【0039】
図2の演算方法にて演算処理を実行する演算装置10は、ネットワーク上のサーバで、ユーザ端末からアクセスされるものである。演算装置10は、例えば、
図3を参照して、プロセッサ11とメモリ12とを有するコンピュータで構成される。プロセッサ11は、例えば、CPUである。メモリ12は、フラッシュメモリ、EEPROM、ROM、RAMなどを含む。または、メモリ12は、一次記憶装置であってもよいし、二次記憶装置であってもよい。
【0040】
メモリ12は、プロセッサ11で実行されるコンピュータプログラム121を記憶している。プロセッサ11は、コンピュータプログラム121を実行することによって演算処理を実行する。演算処理は、第1のカテゴリと第2のカテゴリとの関連性を示す指標値を生成するための処理を含む。この例では、講義1~Nと研究室1~Pとの関連性を示す指標値を生成する処理を含む。
【0041】
演算装置10は、入力装置17を有する。入力装置17は、言語情報を有するデータを第1のカテゴリの第1の要素と対応付けて入力し、言語情報を有するデータを第2のカテゴリの第2の要素と対応付けて入力するために用いられる入力部として機能する。この例では、入力装置17は、講義1~Nそれぞれと対応付けられた第1データ21を入力する。また、入力装置17は、研究室1~Pそれぞれと対応付けられた第2データ22を入力する。
【0042】
入力装置17は、例えば、キーボードなどの文字情報を入力する装置、記録媒体の読み出し装置、データが格納された他の装置と通信してデータを入力する通信装置、スキャンデータを入力するスキャナ、音声データを入力するマイク、それらの組み合わせ、などである。
【0043】
メモリ12は、さらに、データ記憶部122を有する。データ記憶部122は、入力装置17が入力したデータを記憶する記憶領域である。この例では、データ記憶部122に、第1データ21及び第2データ22が記憶されている。
【0044】
プロセッサ11は、コンピュータプログラム121を実行することで演算処理を実行する。演算処理は、特徴量生成処理111を含む。特徴量生成処理111は、言語情報に基づいて、第1の要素について特定次元で表される第1の特徴量を生成し、言語情報に基づいて、第2の要素について特定次元で表される第2の特徴量を生成することを含む。
【0045】
この例では、特徴量生成処理111は、講義1~NそれぞれX次元で表される第1の特徴量F1、及び、研究室1~PそれぞれX次元で表される第2の特徴量F2を生成することを含む。一例として、第1の特徴量F1はN×Xの講義行列で表され、第2の特徴量F2はP×Xの研究室行列で表される。
【0046】
この場合、特徴量生成処理111は、各データを行列情報化することを含む。行列情報化する方法は特定の方法に限定されない。一例として、プロセッサ11は、第1データ21及び第2データ22それぞれをBOW(Bag of Words)で表現し、BOWで表現された非負値行列それぞれに対してNMF(Non-negative Matrix Factorization)を適用する。BOWは、文書中に出現する単語をカウントし、出現順序に関わらず出現数を特徴値とする手法である。
【0047】
行列情報化する方法について、具体的に
図4、
図5を用いて説明する。プロセッサ11は、第1のカテゴリについて、講義1~Nそれぞれに対応付けられた第1データ21から得られた第1言語情報より、J種類(J個)の単語の出現数をカウントし、BOWで表現した第1の行列V11を生成する。ここで、Jは、2以上の整数であり、カウントされる単語の種類に応じて決定される。第1の行列V11の生成においては、例えば、講義1に対応付けられた第1言語情報(例えば、講義1のシラバス)から、BOWによってベクトル化されて、講義1のための第1ベクトル(1×Jの行列)が生成される。また、講義2に対応付けられた第1言語情報(例えば、講義2のシラバス)から、BOWによってベクトル化されて、講義2のための第1ベクトル(1×Jの行列)が生成される。
図4において、N個の第1のベクトルは、講義1~Nを各行とし、J種類の単語を各列としたN×Jの行列V11によって表される。
【0048】
また、プロセッサ11は、第2のカテゴリについて、研究室1~Pそれぞれに対応付けられた第2データ22から得られた第2言語情報より、講義1~Nと同じJ種類の単語の出現数をカウントし、BOWで表現した第2の行列V12を生成する。第2の行列V12の生成においては、例えば、研究室1に対応付けられた第2言語情報(例えば、研究室1の論文)から、BOWによってベクトル化されて、研究室1のための第2ベクトル(1×Jの行列)が生成される。また、研究室2に対応付けられた第2言語情報(例えば、研究室2の論文)から、BOWによってベクトル化されて、研究室2のための第2ベクトル(1×Jの行列)が生成される。
図4において、P個の第2のベクトルは、研究室1~Pを各行とし、J種類の単語を各列としたP×Jの行列で表される。
【0049】
プロセッサ11は、非負値行列である、第1の行列V11及び第2の行列V12を結合したBoF(Bag of Features)行列で表現した行列V1に対して、基底数をXとして、教師なしNMF(Non-negative Matrix Factorization:非負値行列因子分解)を適用する。行列V1は、(N+P)×Jの行列である。
【0050】
これにより、プロセッサ11は、分散表現された特徴量V2、つまり、X次元に畳み込まれた行列である特徴量V2を生成する。特徴量V2は、(N+P)×Xの行列で表される。ここで、基底数Xは、2以上の整数であり、予め適宜設定される。好ましくは、Xは、Jよりも小さい。特徴量V2は、講義1~Nについて第1成分~第N成分のX次元で表される第1の特徴量V21と、研究室1~Pについて、共通する第1成分~第N成分のX次元で表される第2の特徴量V22とからなる。
【0051】
特徴量V21,V22は、第1データ及び第2データから得られた言語情報のBOW表現から生成される必要はなく、単語分散表現から生成されてもよい。すなわち、特徴量V21,V22を得るために行列情報化する方法の他の例として、単語分散表現モデルを用いた方法であってもよい。この場合、メモリ12は、予め学習されるなどして、単語ごとの単語ベクトルである単語分散表現を有している。この例の場合、メモリ12は、講義のシラバス等及び研究室の論文等の言語情報に含まれる単語ごとに、X次元のベクトルを予め記憶している。
【0052】
プロセッサ11は、講義ごとの文章分散表現を生成する。一例として、プロセッサ11は、講義のシラバス等(第1言語情報)に含まれる複数の単語それぞれの単語ベクトル(単語分散表現)の平均ベクトルを、その講義の文章分散表現(X次元ベクトル)とする。N個の講義の文章分散表現からなる行列は、特徴量V21として用いられる。なお、このとき、プロセッサ11は、後述する指標値生成処理112で適用するNMFのために、必要であれば、得られた講義の文章分散表現(X次元ベクトルを構成する元(X個の要素)それぞれ)を、さらに、正の数に正規化して、非負行列にする。同様に、プロセッサ11は、研究室の論文等(第2言語情報)に含まれる複数の単語それぞれの単語ベクトル(単語分散表現)の平均ベクトルを、その研究室の文章分散表現(X次元ベクトル)とする。P個の講義の文章分散表現からなる行列は、特徴量V22として用いられる。なお、このとき、プロセッサ11は、後述する指標値生成処理112で適用するNMFのために、必要であれば、得られた研究室の文章分散表現(X次元ベクトルを構成する元(X個の要素)それぞれ)を、さらに、正の数に正規化して、非負値行列にする。
【0053】
演算処理は、指標値生成処理112を含む。指標値生成処理112は、第1の特徴量V21及び第2の特徴量V22を用いて指標値を生成することを含む。指標値は、第1のカテゴリに含まれる複数の第1の要素それぞれと、第2のカテゴリに含まれる第2の要素それぞれとの関係を示す。
【0054】
指標値生成処理112は、一例として、第1の特徴量V21及び第2の特徴量V22のいずれか一方の特徴量V22(又は特徴量V21)を行列因子分解のためのテンプレートとし、テンプレートではない他方の特徴量V21(又は特徴量V22)を、テンプレートとした特徴量V22(又は特徴量V21)で分解することを含む。これにより、第1の特徴量V21及び第2の特徴量V22を用いて、第1のカテゴリと第2のカテゴリとの関連性を示す指標値が得られる。
【0055】
行列因子分解とは、ある行列を、複数の行列(因子)に分解することをいう。行列因子分解のためのテンプレートとは、分解される因子の一つとして、予め用意された行列である。分解される因子がテンプレートとして固定されていることで、他の因子である行列を容易に求めることができる。
【0056】
好ましくは、第1の特徴量及び第2の特徴量のうち、要素数(行数)の少ない方の特徴量をテンプレートとする。これにより、その逆よりも分解のための演算が容易になる。
【0057】
分解することは、一例として、一方の特徴量を教師データとし、他方の特徴量に対して半教師ありNMFを適用することを含む。指標値V3を生成する方法の具体例について、
図6を用いて説明する。
図6に示された方法は、
図4、
図5によって生成された第1の特徴量V21及び第2の特徴量V22を用いて指標値V3を生成する方法の具体例である。
【0058】
プロセッサ11は、一例として、第1の特徴量V21と第2の特徴量V22とのうち、第2の特徴量V22を転置した行列V32をテンプレートとし、第1の特徴量V21を転置した行列V31を、行列V32で分解する。その際、プロセッサ11は、行列V32を教師データとして行列V31に対して半教師ありNMFを適用する。
【0059】
具体的には、
図6に示されたように、半教師ありNMFによって、行列V31が、複数の因子である行列V32、指標値V3、及びノイズ項V4に分解される。ただし、行列V32は、行列因子分解のためのテンプレートである。半教師ありNMFにより、行列V32と指標値V3との積にノイズ項V4を加えたもので行列V31に近い値が得られるような指標値V3を算出する。ノイズ項V4は、V31-(V32×V3)を示す。このように、半教師ありNMFを適用することにより、プロセッサ11は、第1カテゴリの第1要素である講義1~Nと、第2カテゴリの第2要素である研究室1~Pとの関連を示す指標値V3を容易に生成できる。
【0060】
行列V31を行列V32で分解して得られる指標値V3は、一例として、講義1~Nを各列とし、研究室1~Pを各行とし、各講義と各研究室との関連を表す値を要素としたP×Nの行列である。これにより、各講義と各研究室との関連が、指標値として得られ、客観的に各講義と各研究室との関連を把握できる。
【0061】
なお、2つの行列のうち一方をテンプレートとして他方を因子分解する方法は、上記の半教師ありNMFを適用する方法に限定されない、他の方法として、教師ありNMFを適用する方法でもよいし、教師あり独立成分分析を行う方法でもよいし、半教師あり独立成分分析を行う方法でもよい。
【0062】
演算処理は、出力処理113を含む。出力処理113は、指標値から出力用情報を生成し、出力する処理を含む。出力用情報は、一例として、得られた指標値を可視化表現するための情報を含み、可視化表現は、一例としてグラフ化することを含む。
【0063】
グラフ化の一例として、
図7に示されたように、得られた指標値V3のうちのある研究室についての各講義との関連性を示す指標値をグラフ化してもよい。この場合、出力処理113は、得られた指標値V3のうちの指定された研究室についての各講義の指標値からグラフを表示させるための表示データを生成することを含む。
図7の例では、研究室Aについて講義1~191(N=191)それぞれの関連性を表す指標値のグラフG1、及び、研究室Bについて講義1~191(N=191)それぞれの関連性を表す指標値のグラフG2が示されている。
【0064】
視覚化表現して出力されることで、生成された指標値を視覚的に理解することができる。例えば、グラフG1,G2が出力されることによって、研究室A,Bについて、それぞれの講義1~191の関連性の指標値の分布が視覚的に示される。具体的に、
図7のグラフからは、研究室Aにおいては、講義B1,B2,B3の関連性が高いことがわかる。また、研究室Bにおいては、講義B5,B6,B7の関連性が高いことがわかる。また、これらを比較することによって、研究室A,Bについて講義1~191の関連性の指標値の分布を比較することができる。
【0065】
グラフ化の他の例として、
図8に示されたように、指標値V3全体をグラフ化してもよい。この場合、出力処理113は、得られた指標値V3からグラフを表示させるための表示データを生成することを含む。
図8の例では、講義1~191(N=191)、研究室1~42(P=42)について得られた指標値V3の各要素を、数値を表す濃淡の色で、横軸を講義、縦軸を研究室とした配置したグラフG3が示されている。
【0066】
グラフG3が出力されることによって、各講義と各研究室との関連の高低を視覚にて確認することができる。また、グラフG3が出力されることによって、講義間で研究室との関連性の傾向を視覚にて比較することができる。また、グラフG3が出力されることによって、研究室間で講義との関連性の傾向を視覚にて比較することができる。
【0067】
演算処理は、判定処理114を含む。判定処理114は、得られた指標値と、第1のカテゴリと第2のカテゴリとのうちの一方のカテゴリと第3のカテゴリとの関連性を示す他の指標値とを対比し、第1のカテゴリと第2のカテゴリとのうちの他方のカテゴリと第3のカテゴリとの適合性を判定することを含む。
【0068】
対比は、一例として、指標値を可視化することで得られた一方のカテゴリと他方のカテゴリとの各要素についての指標値の分布(第1の分布)と、一方のカテゴリと第3のカテゴリとの各要素についての指標値の分布(第2の分布)と、の対比であってよい。
【0069】
この場合、適合性の判定は、一例として、第1の分布と第2の分布との類似性を利用することができる。第1の分布と第2の分布との類似性を算出する手法として様々な手法を採用することが可能であり、例えば、第1の分布及び第2の分布それぞれを形成する2つのベクトルの、コサイン類似度やユークリッド距離を用いることができる。コサイン類似度は2つのベクトルの成す角度の近さを0から1の間の数で表すものであって、1に近いほど類似し、0に近いほど類似していないことを示す。2つのベクトルのユークリッド距離は、小さいほど類似し、大きいほど類似していないことを示す。この手法を用いることで、第1の分布と第2の分布との類似性がコサイン類似度やユークリッド距離として得られる。適合性の判定は、例えば、得られた類似性が閾値以上である場合に適合性あり、閾値未満の場合に適合性なし、と判定することであってよい。
【0070】
好ましくは、判定処理114は、指標値V3と他の指標値と対比することによって、他方のカテゴリの複数の要素の中から第3のカテゴリに対応した要素を判定する。対応した要素は、一例として、複数の要素のうちの、適合性がある要素、上記の類似性が高いものから順に所定数までの要素、などであってよい。
【0071】
具体的には、指標値V3と他の指標値との対比は、例えば、講義と研究室との関連性の指標値V3と、学生Tの各講義についての興味度合や満足度合を示す指標値との対比であってよい。この場合、プロセッサ11は、例えば
図9の画面41をディスプレイ14に表示させて、学生Tの各講義についての興味の度合の入力を受け付ける。
【0072】
画面41は、講義ごとの興味の度合の選択肢42を含む。プロセッサ11は、入力装置17での選択結果、つまり、学生Tの講義についての言語情報を有するデータの入力を受け付ける。
【0073】
プロセッサ11は、画面41で入力された、学生Tの講義についての言語情報を有するデータを用いて、各講義についての興味度合の分布(第2の分布)を生成し、各研究室の講義ごとの関連性を示す指標値の分布(第1の分布)と対比する。プロセッサ11は、第1の分布と第2の分布との類似性に基づいて、学生Tに対する各研究室の適合性を判定することができる。また、プロセッサ11は、類似性の最も高い研究室や、最も高い研究室から所定数の研究室を、学生Tに対応する研究室と判定してもよい。
【0074】
例えば、第2の分布として、学生Tの講義1~Nについて入力された情報に基づいて
図10のグラフG4に表されるような分布が得られた場合、プロセッサ11は、第1の分布である、指標値V3から得られた研究室AについてのグラフG1及び研究室BについてのグラフG2と比較する。グラフG4は、グラフG1よりグラフG2の方の類似性が高い。この場合、プロセッサ11は、研究室Aより研究室Bを学生Tに対応する研究室と判定する。
【0075】
演算装置10は、
図2の演算方法に加えて、又は、ステップS7又はステップS9に替えて、指標値を用いた分類を行ってもよい。その場合、演算処理は
図3に示されたように、分類処理115を含む。分類処理115は、得られた指標値に応じて、複数の第3のカテゴリを分類することを含む。上の例の場合、研究室ごとの講義の関連性に応じて研究室を分類することが挙げられる。
【0076】
分類する方法として、一般的なクラスタリング技術を用いることができる。クラスタリングとは、機械学習における教師なし学習の1つであって、データ間の類似度に基づいてデータをグループ分けする手法である。一般的なクラスタリング技術は、例えば、k-meansが挙げられる。k-meansとは、非階層型クラスタリングのアルゴリズムであって、クラスタの平均を用い、与えられたクラスタ数K個に分類する技法である。非階層クラスタリングとは、異なる性質のものが混ざり合った集団から、互いに似た性質を持つものを集め、クラスタを作る方法の1つである。
【0077】
プロセッサ11における分類処理115の流れを、
図11を用いて説明する。この例では、分類手法としてk-meansを用い、研究室1~Pを、講義1~Nそれぞれとの関連を表す指標値V3を用いて、3つのグループ(K=3)に分類するものとしている。
【0078】
図11を参照して、初めに、プロセッサ11は、すべての研究室1~Pの初期グループ分けを行う(ステップS101)。初期グループ分けは、すべての研究室1~Pにランダムに第1グループ~第3グループを割り振ることを指す。
【0079】
次に、プロセッサ11は、各グループに割り振られた研究室1~Pの講義1~Nそれぞれに対する関連性を示す指標値を用いて、各グループの重心を算出する(ステップS103)。重心は、一例として、各グループに割り振られた研究室1~Pの指標値の平均ベクトルで得られる。
【0080】
次に、プロセッサ11は、研究室1~Pそれぞれの、割り当てられたグループの重心からの距離(第1距離)を参照する(ステップS105)。このとき、プロセッサ11は、研究室1~Pそれぞれについて、割り当てられていない他のグループの重心からの距離(第2距離)も算出しておく。そして、第1距離よりも第2距離の方が小さい研究室が存在する場合(ステップS107でYES)、プロセッサ11は、その研究室に割り振るグループを、第2距離となるグループとなるよう再グループ分けを行う(ステップS109)。
【0081】
プロセッサ11は、すべての研究室について、振り分けられたグループの重心からの距離が他のグループの重心からの距離よりも短くなるまで、以上のステップS103~S109を繰り返す(ステップS107でNO)。これにより、すべての研究室が重心からの距離が最も近くなるグループに振り分けられる。
【0082】
分類処理115が行われることによって、あるカテゴリの各要素を、他のカテゴリの各要素への関連性に応じて指定されたグループ数に分類することが可能になる。この例では、研究室1~Pを、講義1~Nそれぞれへの関連性に応じて3つのグループに分類することができる。この分類結果が出力されることによって、学生Tは、例えば、受けた講義との関連性の高い研究室のグループを知ることができる。
【0083】
なお、クラスタリング技術の他の例として、k―Shapeが挙げられる。k―Shapeは、時系列データのクラスタリングアルゴリズムの1つであって、時系列データを対象とした形状に着目したクラスタリング手法である。
【0084】
k―Shapeでも、
図11に示された流れと同様にして研究室1~Pが分類される。その処理において、k―Shapeでは、k-meansと異なる手法で距離が算出される。すなわち、k―Shapeにおいては、ScalingとShiftingとに対する不変性(Invariances)を踏まえて距離尺度SBD(Shape-based distance)を用いてデータ(研究室1~P)間の距離が計算される。Scalingは縦軸に対して拡大(縮小)した際にデータ同士の性質が似ているかどうかを表し、Shiftingは時間軸(位相)に対してずらした場合にデータ同士の性質が似ているかどうかを表す。距離尺度SBDにおいては、相互相関を用いて類似性が判定される。距離尺度SBDにおいては、データを時間軸移動させながら最大の内積を算出し、内積が最大の位置を検出する。距離尺度SBDは0から2の間の値を取り、0に近いほど2つの時系列データが類似している。
【0085】
k-meansとk―Shapeとに上記の違いがあることから、好ましくは、分類処理115においては、データが並び順を有さず個々に独立したデータである場合にはk-meansが用いられ、並び順を有する場合にはk―Shapeが好適に用いられる。並び順を有するデータは、例えば、講義や特許などを難易度などでソートして並べたデータ、などが該当する。
【0086】
<3.付記>
本発明を用いることにより、授業(講義)と研究室(研究)の関連性を可視化(数値化)できる。そのため、学生の履修科目と研究室とのミスマッチを減少できる。
尚、本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。例えば、複数の大学間の授業(講義)と研究室(研究)の関係、企業の事業内容と大学の研究室(研究)や授業(講義)との関係、高校での学習内容と大学の研究室(研究)や授業(講義)との関係など種々の関連性の把握に役立てることができる。そのため、本発明を用いることにより、大学・学部でのカリキュラム設計やブランディングに役立つ。また、高校や塾の進学支援に繋げることもできる。さらに、企業と大学の研究室(研究)とのマッチングに役立つので、大学のシーズの売り込み先の検索や共同研究先の検索などに役立つ。
【符号の説明】
【0087】
10 :演算装置
11 :プロセッサ
12 :メモリ
14 :ディスプレイ
17 :入力装置
21 :第1データ
22 :第2データ
41 :画面
42 :選択肢
111 :特徴量生成処理
112 :指標値生成処理
113 :出力処理
114 :判定処理
115 :分類処理
121 :コンピュータプログラム
122 :データ記憶部
A :研究室
B :研究室
B1 :講義
B2 :講義
B3 :講義
B4 :講義
B5 :講義
B6 :講義
B7 :講義
F1 :第1の特徴量
F2 :第2の特徴量
G1 :グラフ
G2 :グラフ
G3 :グラフ
G4 :グラフ
T :学生
V1 :ベクトル
V11 :第1のベクトル
V12 :第2のベクトル
V2 :特徴量
V21 :第1の特徴量
V22 :第2の特徴量
V3 :指標値
V31 :行列
V32 :行列
V4 :ノイズ項