(58)【調査した分野】(Int.Cl.,DB名)
前記ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報のうち一般のユーザに共通して用いられる単語で構成される情報と、が対応付けられた共通教師データを用いて学習処理を行うことによって、前記ファイルから前記関連情報を取得するための共通識別器を取得する共通学習部と、
前記共通学習部によって取得された前記共通識別器を用いて識別処理を行うことによって、識別対象となったファイルの関連情報を取得する共通識別部と、
をさらに備える請求項1に記載の識別サーバ。
前記ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報のうち一般のユーザに共通して用いられる単語で構成される情報と、が対応付けられた共通教師データを用いて学習処理を行うことによって、前記ファイルから前記関連情報を取得するための共通識別器を取得する共通学習ステップと、
前記共通学習ステップによって取得された前記共通識別器を用いて識別処理を行うことによって、識別対象となったファイルの関連情報を取得する共通識別ステップと、
をさらに備える請求項3に記載の識別方法。
前記ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報のうち一般のユーザに共通して用いられる単語で構成される情報と、が対応付けられた共通教師データを用いて学習処理を行うことによって、前記ファイルから前記関連情報を取得するための共通識別器を取得する共通学習ステップと、
前記共通学習ステップによって取得された前記共通識別器を用いて識別処理を行うことによって、識別対象となったファイルの関連情報を取得する共通識別ステップと、
をさらに前記コンピュータに実行させるための請求項5に記載の識別プログラム。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、撮影された日時や場所に基づいた検索や、自動的に付与されたタグに基づいた検索では、ユーザ毎の事情に応じたタグに基づいた検索を実行できないという問題があった。また、ユーザが手動で付与したタグに基づいて検索では、ユーザ毎の事情に応じたタグに基づいた検索を実行できるものの、タグの付与に手間がかかってしまうという問題があった。このような問題は、必ずしも写真のファイルに限った問題ではなく、ユーザによって検索される対象となるファイルに共通する問題であった。
【0005】
上記事情に鑑み、本発明は、より容易により適切な関連情報をファイルに付与することを可能とする技術の提供を目的としている。
【課題を解決するための手段】
【0006】
本発明の一態様は、ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報と、前記ユーザの識別情報であるユーザ識別情報と、が対応付けられた個別教師データを用いて前記ユーザ識別情報毎に学習処理を行うことによって、前記ファイルから前記関連情報を取得するための個別識別器を取得する個別学習部と、前記個別学習部によって取得された前記個別識別器のうち、識別対象となったファイルのユーザ識別情報に応じた前記個別識別器を用いて識別処理を行うことによって、前記識別対象となったファイルの関連情報を取得する個別識別部と、を備える識別サーバである。
【0007】
本発明の一態様は、ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報と、前記ユーザ又は前記ファイルの属性を示す属性情報と、が対応付けられた属性別教師データを用いて前記属性情報毎に学習処理を行うことによって、前記ファイルから前記関連情報を取得するための属性別識別器を取得する属性別学習部と、前記属性別学習部によって取得された前記属性別識別器のうち、識別対象となったファイルのユーザ又は前記ファイルの属性情報に応じた前記属性別識別器を用いて識別処理を行うことによって、前記識別対象となったファイルの関連情報を取得する属性別識別部と、を備える識別サーバである。
【0008】
本発明の一態様は、上記の識別サーバであって、前記ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報のうち一般のユーザに共通して用いられる単語で構成される情報と、が対応付けられた共通教師データを用いて学習処理を行うことによって、前記ファイルから前記関連情報を取得するための共通識別器を取得する共通学習部と、前記共通学習部によって取得された前記共通識別器を用いて識別処理を行うことによって、識別対象となったファイルの関連情報を取得する共通識別部と、をさらに備える。
【0009】
本発明の一態様は、ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報と、前記ユーザの識別情報であるユーザ識別情報と、が対応付けられた個別教師データを用いて前記ユーザ識別情報毎に学習処理を行うことによって、前記ファイルから前記関連情報を取得するための個別識別器を取得する個別学習ステップと、前記個別学習ステップによって取得された前記個別識別器のうち、識別対象となったファイルのユーザ識別情報に応じた前記個別識別器を用いて識別処理を行うことによって、前記識別対象となったファイルの関連情報を取得する個別識別ステップと、を有する識別方法である。
【0010】
本発明の一態様は、ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報と、前記ユーザ又は前記ファイルの属性を示す属性情報と、が対応付けられた属性別教師データを用いて前記属性情報毎に学習処理を行うことによって、前記ファイルから前記関連情報を取得するための属性別識別器を取得する属性別学習ステップと、前記属性別学習ステップによって取得された前記属性別識別器のうち、識別対象となったファイルのユーザ又は前記ファイルの属性情報に応じた前記属性別識別器を用いて識別処理を行うことによって、前記識別対象となったファイルの関連情報を取得する属性別識別ステップと、を有する識別方法である。
【0011】
本発明の一態様は、上記の識別方法であって、前記ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報のうち一般のユーザに共通して用いられる単語で構成される情報と、が対応付けられた共通教師データを用いて学習処理を行うことによって、前記ファイルから前記関連情報を取得するための共通識別器を取得する共通学習ステップと、前記共通学習ステップによって取得された前記共通識別器を用いて識別処理を行うことによって、識別対象となったファイルの関連情報を取得する共通識別ステップと、をさらに備える。
【0012】
本発明の一態様は、ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報と、前記ユーザの識別情報であるユーザ識別情報と、が対応付けられた個別教師データを用いて前記ユーザ識別情報毎に学習処理を行うことによって、前記ファイルから前記関連情報を取得するための個別識別器を取得する個別学習ステップと、前記個別学習ステップによって取得された前記個別識別器のうち、識別対象となったファイルのユーザ識別情報に応じた前記個別識別器を用いて識別処理を行うことによって、前記識別対象となったファイルの関連情報を取得する個別識別ステップと、をコンピュータに実行させるための識別プログラムである。
【0013】
本発明の一態様は、ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報と、前記ユーザ又は前記ファイルの属性を示す属性情報と、が対応付けられた属性別教師データを用いて前記属性情報毎に学習処理を行うことによって、前記ファイルから前記関連情報を取得するための属性別識別器を取得する属性別学習ステップと、前記属性別学習ステップによって取得された前記属性別識別器のうち、識別対象となったファイルのユーザ又は前記ファイルの属性情報に応じた前記属性別識別器を用いて識別処理を行うことによって、前記識別対象となったファイルの関連情報を取得する属性別識別ステップと、をコンピュータに実行させるための識別プログラムである。
【0014】
本発明の一態様は、上記の識別プログラムであって、前記ファイルと、前記ファイルに関連する関連情報としてユーザによって指定された情報のうち一般のユーザに共通して用いられる単語で構成される情報と、が対応付けられた共通教師データを用いて学習処理を行うことによって、前記ファイルから前記関連情報を取得するための共通識別器を取得する共通学習ステップと、前記共通学習ステップによって取得された前記共通識別器を用いて識別処理を行うことによって、識別対象となったファイルの関連情報を取得する共通識別ステップと、をさらに前記コンピュータに実行させるための請求項7又は請求項8に記載の識別プログラム。
【発明の効果】
【0015】
本発明により、より容易により適切なタグをファイルに付与することが可能となる。
【発明を実施するための形態】
【0017】
図1は、ファイル登録システムのシステム構成を表すシステム構成図である。
端末装置100は、ネットワーク400を介してファイル管理システム10に通信可能に接続される。ファイル管理システムは、ファイル管理サーバ200及び識別サーバ300を備える。ファイル管理サーバ200及び識別サーバ300は、ネットワークを介して通信可能に接続される。なお、端末装置100が接続されるネットワークと、ファイル管理サーバ200及び識別サーバ300が互いに通信する際に使用されるネットワークとは、異なるネットワークであってもよい。
【0018】
端末装置100は、ユーザによって使用される情報処理装置である。端末装置100のユーザ(以下「ユーザ」という。)は、端末装置100を使用することによって、自身のファイルをファイル管理サーバ200に登録する。登録されるファイルの具体例として、写真等の画像ファイル、ニュース記事や書類等の文書ファイル等がある。ユーザは、端末装置100を使用することによって、ファイル管理サーバ200に登録されているファイルを検索する。検索する際には、ユーザは例えば検索結果として取得することを望むファイルに関連する情報(以下「関連情報」という。)を指定する。端末装置100は、ユーザによって指定された関連情報をファイル管理システム10に対して送信することによって、関連情報に関連するファイルをファイル管理システム10から受信する。端末装置100は、受信されたファイルをユーザに対して出力する。例えば、端末装置100は、受信されたファイルを画像出力装置の画面に表示させることによってファイルをユーザに出力する。なお、各ユーザはユーザ識別情報によって一意に識別される。
【0019】
ファイル管理サーバ200は、ネットワークを介して端末装置100からファイルの登録の依頼を受けると、依頼されたファイルを保存する。ファイル管理サーバ200は、ネットワークを介して端末装置100からファイルの検索の依頼を受けると、保存されているファイルの中から、依頼時に指定される関連情報に関連するファイルを検索する。ファイル管理サーバ200は、検索結果として得られたファイルを、依頼元である端末装置100に送信する。以下、ファイル管理サーバ200の構成について詳細に説明する。
【0020】
ファイル管理サーバ200は、通信部201、記憶部202及び制御部203を備える。通信部201は、ネットワークを介して端末装置100及び識別サーバ300と通信する。通信部201は複数備えられてもよい。例えば、端末装置100と通信する通信部201と、識別サーバ300と通信する通信部201と、がそれぞれ別個に設けられてもよい。
【0021】
記憶部202は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。記憶部202は、端末装置100から送信されるファイルと、関連情報テーブルとを記憶する。関連情報テーブルは、ファイルの識別情報と、ユーザの識別情報と、ファイルの関連情報とが対応付けられたテーブルである。
図2は、関連情報テーブルの具体例を示す図である。
図2に示される関連情報テーブルは、複数の関連情報レコードを有する。関連情報レコードは、ユーザ名、画像ファイル及びタグ名の各項目の値を有する。ユーザ名は、ユーザ識別情報又はユーザの氏名を表す。画像ファイルは、ファイルが記録されているフォルダ名及びファイル名を示す。なお、関連情報テーブルに登録されるファイルは画像ファイルに限定される必要は無い。タグ名は、ファイルに対応付けられた関連情報を示す。同一のファイルに複数の関連情報(タグ)が対応付けて登録されてもよい。
【0022】
制御部203は、ファイル管理サーバ200の動作を制御する。制御部203は、端末装置100からファイルの登録の依頼を受けると、登録の対象となっているファイルを通信部201を介して取得する。制御部203は、取得されたファイルを、記憶部202に記録する。このとき、制御部203は、ファイルと共に端末装置100から関連情報を取得した場合、取得された関連情報と、登録の対象となっているファイルの識別情報とを対応付けて関連情報テーブルに登録する。また、制御部203は、取得されたファイルに関する関連情報の識別を識別サーバ300に依頼する。制御部203は、識別サーバ300から識別結果を受信すると、受信された識別結果を含む関連情報を、取得されたファイルの関連情報として関連情報テーブルに登録する。
【0023】
制御部203は、ファイルの検索の依頼を受けると、指定された関連情報に対応付けて関連情報テーブルに登録されているファイルの識別情報を取得する。制御部203は、取得された識別情報のファイルを端末装置100に検索結果として送信する。
【0024】
識別サーバ300は、ファイル管理サーバ200に登録されているファイル及び関連情報を教師データとして用いることによって、識別器を生成又は更新する。識別サーバ300によって生成又は更新される識別器は、全てのユーザに共通した共通識別器と、個々のユーザに応じて生成又は更新される個別識別器と、を含む。識別サーバ300は、検索を実行する前に、教師データを用いた学習処理を実行することによって、予め共通識別器及び個別識別器を生成又は更新する。識別サーバ300は、ファイル管理サーバ200から関連情報の識別の依頼を受けると、依頼の対象となっているファイルについて共通識別器による共通識別処理と個別識別器による個別識別処理とを実行することによって、識別結果を取得する。個別識別処理の実行において使用される個別識別器は、識別対象となっているファイルのユーザである。識別サーバ300は、取得された識別結果を、依頼元であるファイル管理サーバ200に送信する。
【0025】
図3は、識別サーバ300の機能構成を示す概略ブロック図である。以下、識別サーバ300について詳細に説明する。識別サーバ300は、通信可能な情報処理装置を用いて構成される。識別サーバ300は、通信部301、教師データ取得部302、単語テーブル記憶部303、単語判別部304、共通教師データ記憶部305、共通学習部306、個別教師データ記憶部307、個別学習部308、共通識別器記憶部309、共通識別部310、個別識別器記憶部311、個別識別部312及び識別制御部313を備える。
【0026】
通信部301は、ネットワークを介してファイル管理サーバ200と通信する。
教師データ取得部302は、ネットワークを介して教師データを取得する。例えば、教師データ取得部302は、ファイル管理サーバ200に登録されているファイル及び関連情報を、このファイルのユーザを示すユーザ識別情報とともに教師データとして取得する。このとき、教師データ取得部302は、ユーザによって設定された関連情報又はユーザによって選択された関連情報を教師データとして取得する。ユーザによって設定された関連情報とは、ファイルの登録時にユーザによって指定された(ユーザが端末装置100を操作して入力した)関連情報である。ユーザによって選択された関連情報とは、識別サーバ300による識別結果の中からユーザによって選択された関連情報である。これらの関連情報は、ファイルに関連している情報であることがユーザによって認められている。教師データ取得部302は、取得された関連情報を表す各単語について、一般のユーザに共通して用いられる単語(以下「共通単語」という。)であるのか、個々のユーザによって個別に用いられる単語(以下「個別単語」という。)であるのか、単語判別部304に判別を指示する。共通単語は、例えば一般名詞である。個別単語は、例えば固有名詞である。教師データ取得部302は、共通単語として判別された関連情報を、ファイルと対応付けて共通教師データ記憶部305に登録する。教師データ取得部302は、個別単語として判別された関連情報を、ファイル及びユーザ識別情報と対応付けて個別教師データ記憶部307に登録する。なお、教師データ取得部302が教師データとして取得するファイル及び関連情報は、ファイル管理サーバ200に登録されているファイル及び関連情報に限定される必要は無い。例えば、教師データ取得部302は、SNS(Social Networking Service)を提供するサーバや、ニュースの情報を提供するサーバ等の外部サーバからファイル及び関連情報を取得してもよい。
【0027】
単語テーブル記憶部303は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。単語テーブル記憶部303は、単語テーブルを記憶する。単語テーブルは、共通単語と個別単語とを区別して表すテーブルである。例えば、単語テーブルは、共通単語のみが登録されたテーブルであってもよい。この場合、単語テーブルに登録されている単語であれば共通単語であり、単語テーブルに登録されていない単語であれば個別単語であると判別できる。
図4は、単語テーブルの具体例を示す図である。
図4に示される具体例は、共通単語のみが登録されたテーブルとして構成された単語テーブルである。
図4に示される単語テーブルは、複数の共通単語レコードを有する。共通単語レコードは、識別情報及び共通単語の各値を有する。識別情報は、共通単語レコードを一意に表す識別情報である。共通単語は、上述した共通単語を表す。
【0028】
単語判別部304は、識別サーバ300によって使用される教師データの関連情報の単語を、単語テーブルを参照することによって、共通単語と個別単語とに判別する。単語判別部304は、判別結果を教師データ取得部302に出力する。
【0029】
共通教師データ記憶部305は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。共通教師データ記憶部305は、共通単語によって構成される関連情報とファイルとを対応づけて共通教師データとして記憶する。
【0030】
共通学習部306は、共通教師データ記憶部305に記憶されている共通教師データを用いて学習処理を行う。共通学習部306には、教師付き学習によって識別器を生成又は更新するための技術(例えばDeep Learning)が適用される。共通学習部306は、複数の共通教師データに基づいて学習処理を行うことによって、識別器(以下「共通識別器」という。)を生成又は更新する。共通学習部306は、生成又は更新された共通識別器を表すパラメータ等のデータを共通識別器記憶部309に記録する。
【0031】
個別教師データ記憶部307は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。個別教師データ記憶部307は、個別単語によって構成される関連情報とファイルとユーザ識別情報とを対応づけて個別教師データとして記憶する。
【0032】
個別学習部308は、個別教師データ記憶部307に記憶されている個別教師データを用いて学習処理を行う。個別学習部308には、教師付き学習によって識別器を生成又は更新するための技術(例えばDeep Learning)が適用される。個別学習部308に適用される技術と、共通学習部306に適用される技術とは、同じ技術であってもよいし異なる技術であってもよい。個別学習部308は、ユーザ識別情報によって表されるユーザ毎に、そのユーザに対応づけられている複数の個別教師データに基づいて学習処理を行うことによって、識別器(以下「個別識別器」という。)を生成又は更新する。個別学習部308は、生成又は更新された個別識別器を表すパラメータ等のデータを、ユーザ識別情報と対応づけて個別識別器記憶部311に記録する。
【0033】
共通識別器記憶部309は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。共通識別器記憶部309は、共通学習部306によって生成又は更新された共通識別器を表すパラメータ等のデータを記憶する。
【0034】
共通識別部310は、識別制御部313によって指定されたファイルについて、共通識別器記憶部309に記憶されている共通識別器を用いることによって識別処理を行う。共通識別部310による識別処理によって、指定されたファイルに関連する情報が識別結果として得られる。共通識別部310による識別処理によって得られる識別結果は、共通単語によって表される。
【0035】
個別識別器記憶部311は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。個別識別器記憶部311は、個別学習部308によって生成又は更新された個別識別器を表すパラメータ等のデータをユーザ識別情報と対応付けて記憶する。
【0036】
個別識別部312は、識別制御部313によって指定されたファイルについて、個別識別器記憶部311に記憶されている個別識別器を用いることによって識別処理を行う。個別識別部312によって使用される個別識別器は、ファイルと共に指定されるユーザ識別情報に対応付けられている個別識別器である。個別識別部312による識別処理によって、指定されたファイルに関連する情報が識別結果として得られる。個別識別部312による識別処理によって得られる識別結果は、ユーザ識別情報によって表されるユーザの固有の個別単語によって表される。
【0037】
識別制御部313は、識別処理を制御する。例えば、識別制御部313は、ファイル管理サーバ200からファイルの識別の要求を受けると、識別対象のファイル(以下「識別対象ファイル」という。)に関連する情報の取得を、共通識別部310及び個別識別部312に要求する。識別制御部313は、個別識別部312に対する要求に際して、ユーザ識別情報を通知する。識別制御部313は、共通識別部310によって得られた識別結果を表す情報と、個別識別部312によって得られた識別結果を表す情報と、を含む識別結果通知を生成する。識別制御部313は、生成された識別結果通知をファイル管理サーバ200に送信する。
【0038】
次に、ファイル管理システム10の処理の流れについて説明する。
図5は、識別サーバ300によって学習処理が行われる際のファイル管理システム10の処理の流れを示すシーケンスチャートである。まず、ユーザが、端末装置100を操作することによって、ユーザが所望するファイルをファイル管理システム10に登録することを端末装置100に指示する。端末装置100は、ファイルの登録の指示を受ける(ステップS001)。端末装置100は、ユーザによって指定されたファイルの登録を要求するためのデータ(以下「ファイル登録要求」という。)を生成する。ファイル登録要求には、ファイルのデータ、ユーザによって指定された関連情報、ユーザの識別情報が含まれる。端末装置100は、生成されたファイル登録要求をファイル管理サーバ200に送信する(ステップS002)。
【0039】
ファイル管理サーバ200は、ファイル登録要求に応じてファイル登録処理を実行する(ステップS003)。ファイル登録処理では、ファイル管理サーバ200は、ファイル登録要求に含まれるファイル、関連情報及びユーザ識別情報を対応付けて関連情報テーブルに登録する。ファイル管理サーバ200は、ファイル登録処理が完了すると、登録完了通知を生成する。登録完了通知は、ファイル登録要求によって登録することを要求されたファイルの登録が完了したことを示す。ファイル管理サーバ200は、生成された登録完了通知を端末装置100に送信する(ステップS004)。
【0040】
ステップS004までの処理とは非同期で、識別サーバ300の教師データ取得部302は、ファイル管理サーバ200に対し教師データ取得要求を送信する(ステップS005)。教師データ取得要求は、教師データとなりうるファイル、関連情報及びユーザ識別情報を要求することを示すデータである。ファイル管理サーバ200の制御部203は、教師データ取得要求を受信すると、記憶部202の関連情報テーブルに登録されている関連情報レコードと、関連情報レコードに対応するファイルと、を対応付けて識別サーバ300に送信する(ステップS006)。このとき、制御部203は、ユーザによって設定された関連情報又はユーザによって選択された関連情報に関する関連情報レコードを送信する。識別サーバ300は、取得されたファイル及び関連情報に基づいて学習処理を実行する(ステップS007)。
【0041】
具体的には以下のとおりである。まず、単語判別部304が、取得された関連情報の単語を共通単語と個別単語とに判別する。教師データ取得部302は、単語判別部304における判別結果に基づいて、取得された教師データを共通教師データ記憶部305又は個別教師データ記憶部307に記録する。共通学習部306及び個別学習部308は、所定のタイミングで学習処理を実行する。所定のタイミングとは、所定の日時になったタイミングであってもよいし、共通教師データ記憶部305や個別教師データ記憶部307に所定量以上の教師データが蓄積されたタイミングであってもよいし、その他のタイミングであってもよい。共通学習部306は、学習結果として得られるデータを共通識別器記憶部309に記録する。個別学習部308は、学習結果として得られるデータを個別識別器記憶部311に記録する。
【0042】
次に、識別処理の流れについて説明する。
図6は、識別サーバ300によって識別処理が行われる際のファイル管理システム10の処理の流れを示すシーケンスチャートである。ステップS101〜S104の処理は、
図5におけるステップS001〜S004の処理と同様であるため説明を省略する。
【0043】
ステップS104までの処理とは非同期で、ファイル管理サーバ200の制御部203は、記憶部202に登録されているファイルについて、識別要求を生成する。識別要求は、ファイルの関連情報となりうる情報の取得を要求することを示すデータである。制御部203は、識別要求を識別サーバ300に送信する(ステップS105)。
【0044】
識別サーバ300の識別制御部313は、識別要求を受信すると、識別要求の対象となるファイル(識別対象ファイル)及びユーザ識別情報の取得をファイル管理サーバ200に対して要求する。具体的には、識別制御部313は、このような要求を示すファイル取得要求をファイル管理サーバ200に送信する(ステップS106)。ファイル管理サーバ200の制御部203は、識別対象ファイル及びユーザ識別情報を識別サーバ300に送信する(ステップS107)。
【0045】
識別サーバ300は、識別処理を実行する(ステップS108)。具体的には以下のとおりである。まず、識別サーバ300の識別制御部313は、識別対象ファイルの識別を共通識別部310及び個別識別部312に要求する。この要求に応じて、共通識別部310及び個別識別部312は識別処理を実行する。共通識別部310及び個別識別部312は、識別処理の結果を識別制御部313に出力する。識別制御部313は、共通識別部310によって得られた識別結果を表す情報と、個別識別部312によって得られた識別結果を表す情報と、を含む識別結果通知を生成する。識別制御部313は、生成された識別結果通知をファイル管理サーバ200に送信する(ステップS109)。
【0046】
ファイル管理サーバ200の制御部203は、識別サーバ300から識別結果通知を受信すると、識別結果通知に含まれる識別結果を表す情報を記憶部202に登録する(ステップS110)。具体的には、識別対象ファイルに対応付けて、識別結果に含まれる単語を関連情報として関連情報テーブルに登録する。その後、ファイル管理サーバ200の制御部203は、端末装置100からファイルの関連情報の取得の要求を表す情報(関連情報取得要求)を受信すると(ステップS111)、関連情報テーブルからファイルの関連情報を読み出す。制御部203は、読み出された関連情報を、要求元の端末装置100に対して送信する(ステップS112)。
【0047】
このように構成されたファイル管理システム10によれば、より容易により適切な関連情報をファイルに付与することが可能となる。具体的には以下のとおりである。
【0048】
ファイル管理システム10では、ユーザによって設定された関連情報又はユーザによって選択された関連情報が教師データとして取得される。この教師データに基づいて学習処理が行われることによって、識別器が生成又は更新される。そして、ユーザによって登録されるファイルについて、生成又は更新された識別器を用いた識別処理を行うことによって、タグ等として用いられる関連情報が取得される。このように自動的に関連情報が取得されるため、より容易に関連情報を取得することが可能となる。また、実際にユーザによって設定又は選択された関連情報(ユーザによって指定された関連情報)が教師データとして用いられるため、より適切な関連情報を取得する事が可能となる。
【0049】
また、ファイル管理システム10では、教師データとして用いられる関連情報は、共通単語であれば共通教師データとして用いられ、個別単語であれば個別教師データとして用いられる。個別学習部308は、ユーザ毎に、そのユーザの関連情報として登録された個別教師データを用いて学習処理を実行する。そのため、ユーザ毎により適切な関連情報を取得することが可能となる。例えば、あるユーザが飼っているペットの名前や個人の名前のように、通常の学習処理では学習できないような情報を関連情報としてファイルに対応付けることが可能となる。
【0050】
(変形例)
識別サーバ300は、特定の属性のカテゴリに属するユーザに応じて、このカテゴリに属するユーザに共通して利用される識別器を生成又は更新してもよい。この場合、教師データとして、カテゴリに属するユーザによって生成されたファイルと関連情報との組み合わせが用いられる。カテゴリの具体例として、年齢によって区別されるカテゴリや、性別によって区別されるカテゴリや、出身の県や地方や国によって区別されるカテゴリや、趣味によって区別されるカテゴリなどがある。以下、このような処理を行う識別サーバ300aについて説明する。
【0051】
図7は、識別サーバ300aの構成例を示す概略ブロック図である。識別サーバ300aは、教師データ取得部302、個別教師データ記憶部307、個別学習部308及び個別識別部312に代えて教師データ取得部302a、属性別教師データ記憶部307a、属性別学習部308a及び属性別識別部312aを備える点、ユーザデータ記憶部321をさらに備える点、において識別サーバ300と異なる。識別サーバ300aの他の構成は、識別サーバ300と同様である。
【0052】
ユーザデータ記憶部321は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。ユーザデータ記憶部321は、ユーザ情報テーブルを記憶する。
図8は、ユーザ情報テーブルの具体例を示す図である。ユーザ情報テーブルは、複数のユーザ情報レコードを有する。ユーザ情報レコードは、各ユーザに関する属性情報を有する。
図8の例では、ユーザ情報レコードは、ユーザ識別情報、ユーザ名、性別、年齢及び住所の値を有する。ユーザ識別情報は、ユーザの識別情報を示す。ユーザ名は、ユーザの氏名を示す。性別は、ユーザの性別を示す。年齢は、ユーザの年齢を示す。住所は、ユーザの住所を示す。例えば、ユーザ識別情報“000001”が示すユーザは、氏名が“A”であり、性別は“女性”であり、年齢は“17”歳であり、“東京”に住所を構えている。
【0053】
性別、年齢及び住所は、ユーザの属性情報の具体例である。ユーザの属性情報として他の情報がユーザ情報レコードに含まれてもよい。例えば、ユーザの属性情報は、ユーザの趣味、ユーザの出身地、ユーザの出身校、ユーザの勤務先、ユーザが所属するサークル、ユーザの学年、ユーザが有している資格であってもよい。
【0054】
教師データ取得部302aは、教師データとしてファイル及び関連情報を取得する際に、そのファイル及び関連情報に関するユーザ情報を取得する。ユーザ情報には、少なくとも上記の属性情報が含まれる。教師データ取得部302aは、属性別教師データ記憶部307aに属性別教師データを記録する際に、ファイル及び関連情報に対応付けてユーザ情報を記録する。
【0055】
属性別教師データ記憶部307aは、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。属性別教師データ記憶部307aは、個別単語によって構成される関連情報とファイルとユーザ情報とを対応づけて属性別教師データとして記憶する。
【0056】
属性別学習部308aは、属性別教師データ記憶部307aに記憶されている属性別教師データを用いて学習処理を行う。属性別学習部308aには、教師付き学習によって識別器を生成又は更新するための技術(例えばDeep Learning)が適用される。属性別学習部308aは、ユーザ情報に含まれる属性情報毎に、その属性情報に対応づけられている複数の属性別教師データに基づいて学習処理を行うことによって、識別器(以下「属性別識別器」という。)を生成又は更新する。属性別学習部308aは、生成又は更新された属性別識別器を表すパラメータ等のデータを、属性情報と対応づけて属性別識別器記憶部311aに記録する。
【0057】
属性別識別器記憶部311aは、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。属性別識別器記憶部311aは、属性別学習部308aによって生成又は更新された属性別識別器を表すパラメータ等のデータを属性情報と対応付けて記憶する。
【0058】
属性別識別部312aは、識別制御部313によって指定されたファイルについて、属性別識別器記憶部311aに記憶されている属性別識別器を用いることによって識別処理を行う。属性別識別部312aによって使用される属性別識別器は、ファイルと共に指定される属性情報に対応付けられている属性別識別器である。ファイルと共に指定される属性情報は、例えばファイルのユーザのユーザ識別情報に対応付けられている属性情報である。属性別識別部312aによる識別処理によって、指定されたファイルに関連する情報が識別結果として得られる。属性別識別部312aによる識別処理によって得られる識別結果は、属性情報によって表される属性を有するユーザに共通する個別単語によって表される。
【0059】
このように構成された変形例におけるファイル管理システム10では、全てのユーザに共通する識別器ではなく、共通の属性を有するユーザのみに共通する識別器を取得する事ができる。そして、識別対象ファイルの識別処理では、識別対象ファイルに関するユーザの属性情報に応じた識別器が用いられる。そのため、全てのユーザに共通する識別器によって取得される関連情報よりも、より精度の高い(より適切な)関連情報を取得することが可能となる。例えば、識別対象ファイルが、複数の人が踊っている画像のファイルである場合、属性情報が1980年代以降の出生を表す情報であれば“クラブ”という関連情報が得られ、1980年代以前の出生を表す情報であれば“ディスコ”という関連情報が得られてもよい。
【0060】
上述した変形例では、属性情報としてユーザの属性情報が用いられたが、ファイルの属性情報が同様の処理で用いられてもよい。ファイルの属性情報とは、例えばファイルが生成された場所、ファイルが生成された日時、ファイルが生成された装置、などの情報である。例えばファイルが写真の画像である場合、ファイル(画像ファイル)の属性情報は、写真が撮影された場所、写真が撮影された日時であってもよい。
【0061】
このように構成された変形例におけるファイル管理システム10では、全てのユーザに共通する識別器ではなく、共通の属性を有するファイルのみに共通する識別器を取得する事ができる。そして、識別対象ファイルの識別処理では、識別対象ファイルに関する属性情報に応じた識別器が用いられる。そのため、全てのファイルに共通する識別器によって取得される関連情報よりも、より精度の高い(より適切な)関連情報を取得することが可能となる。例えば、識別対象ファイルが、複数の学生が写っている画像のファイルである場合、属性情報が3月の撮影を表す情報であれば“卒業式”という関連情報が得られ、4月の撮影を表す情報であれば“入学式”という関連情報が得られてもよい。
【0062】
識別サーバ300は、個別識別器のみを生成又は更新してもよい。すなわち、共通教師データ記憶部305、共通学習部306、共通識別器記憶部309及び共通識別部310を備えないように構成されてもよい。
【0063】
識別サーバ300は、個別教師データ記憶部307、個別学習部308、個別識別器記憶部311及び個別識別部312に加えて更に、属性別教師データ記憶部307a、属性別学習部308a、ユーザデータ記憶部321、属性別識別器記憶部311a及び属性別識別部312aを備えるように構成されてもよい。
【0064】
ファイル管理サーバ200は、識別サーバ300による識別結果を関連情報の候補としてユーザに提示してもよい。例えば、ファイル管理サーバ200は、既に登録されたファイルが端末装置100において表示されるタイミングで、このファイルに対する識別結果を関連情報の候補として端末装置100に表示させてもよい。この場合、ユーザは、表示された関連情報の候補の中から、ユーザにとって関連情報と認められるものを選択する。端末装置100は、ユーザによる選択結果をファイル管理サーバ200に送信する。ファイル管理サーバ200の制御部203は、識別結果のうちユーザによって選択された識別結果のみを関連情報として登録する。制御部203は、識別結果のうちユーザによって選択されなかったものを破棄してもよい。このようにしてユーザによって選択された識別結果は、上述した“ユーザによって選択された関連情報”として、識別サーバ300において教師データとして用いられる。このような処理が行われることにより、ユーザに過度な手間(例えば、一つ一つのファイル全てに関連情報を手入力するような手間)をかけることなく、識別サーバ300における識別精度を自律的に高める事が可能となる。
【0065】
上述した実施形態における識別サーバの機能をコンピュータで実現するようにしても良い。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0066】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。