(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023061186
(43)【公開日】2023-05-01
(54)【発明の名称】レコメンド装置およびレコメンド方法
(51)【国際特許分類】
G06Q 10/00 20230101AFI20230424BHJP
【FI】
G06Q10/00
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021171021
(22)【出願日】2021-10-19
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】正木 大貴
(72)【発明者】
【氏名】世良 亮介
(72)【発明者】
【氏名】吉川 秀之
(72)【発明者】
【氏名】兼重 和則
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049AA20
(57)【要約】
【課題】利用者に応じた計算機環境の構成内容の推薦を可能とする。
【解決手段】レコメンド装置100は、計算機環境の利用者の属性情報を説明変数とし、計算機環境の構成内容を示すデータ(新規構築テンプレートデータベース250参照)の識別情報を目的変数とする学習データを用いて生成された新規環境学習モデル(新規構築学習モデル121参照)を参照して、利用者の属性情報から識別情報を算出し、当該識別情報に対応する計算機環境の構成内容を出力するレコメンド部(レコメンド処理部113、レコメンド情報生成部115参照)を備える。
【選択図】
図5
【特許請求の範囲】
【請求項1】
計算機環境の利用者の属性情報を説明変数とし、前記計算機環境の構成内容を示すデータの識別情報を目的変数とする学習データを用いて生成された新規環境学習モデルを参照して、前記利用者の属性情報から前記識別情報を算出し、
当該識別情報に対応する前記計算機環境の構成内容を出力するレコメンド部を備える
ことを特徴とするレコメンド装置。
【請求項2】
計算機環境の利用者の属性情報、および前記利用者の計算機環境の構成内容を説明変数とし、前記計算機環境の構成内容を示すデータの識別情報を目的変数とする学習データを用いて生成された変更環境学習モデルを参照して、前記利用者の属性情報、および当該利用者の計算機環境の構成内容から前記識別情報を算出し、
当該識別情報に対応する前記計算機環境の構成内容を出力するレコメンド部を備える
ことを特徴とするレコメンド装置。
【請求項3】
前記学習データの目的変数である識別情報に対応する前記計算機環境の構成内容は、所定期間変更されていない構成内容、所定回数の利用実績がある構成内容、所定時間の利用実績がある構成内容のなかの何れかに該当する
ことを特徴とする請求項1または2に記載のレコメンド装置。
【請求項4】
前記属性情報は、業種、分析目的、予算、利用予定人数、月間分析実行回数、および分析習熟度のなかの少なくとも何れか1つを含む
ことを特徴とする請求項1または2に記載のレコメンド装置。
【請求項5】
前記計算機環境は、データの分析環境であり、
前記属性情報は、前記データの想定量、所定期間で増加する前記データの想定量、前記データの種別、および前記データの更新周期のなかの少なくとも何れか1つを含む
ことを特徴とする請求項1または2に記載のレコメンド装置。
【請求項6】
前記計算機環境の構成内容は、当該計算機環境に含まれるツールの有無、当該ツールが使用するCPU数、当該ツールが使用するメモリサイズ、当該ツールが使用するディスク容量、当該ツールのライセンス数、当該ツールの定義ファイルのなかの少なくとも何れか1つを含む
ことを特徴とする請求項1または2に記載のレコメンド装置。
【請求項7】
前記学習データの説明変数である識別情報に対応する前記計算機環境の構成内容は、当該計算機環境に含まれるツールが使用するCPUについて所定期間における最大利用数、当該ツールが使用するメモリについて所定期間における最大利用量、当該ツールが使用するディスクについて所定期間における最大利用容量のなかの少なくとも何れか1つを含む
ことを特徴とする請求項2に記載のレコメンド装置。
【請求項8】
前記計算機環境の構成内容は、前記計算機環境に含まれるツールの有無、当該ツールが使用するリソースの量を含み、
利用実績がある前記計算機環境の構成内容である既存構成内容において、所定期間における前記リソースの最大利用量と前記既存構成内容のリソースの量との比が所定値より大きければ、前記学習データの目的変数である識別情報に対応する前記計算機環境の構成内容に含まれるリソースの量は、前記既存構成内容のリソースの量より大きい
ことを特徴とする請求項1または2に記載のレコメンド装置。
【請求項9】
前記計算機環境の構成内容は、前記計算機環境に含まれるツールの有無、当該ツールが使用するリソースの量を含み、
利用実績がある前記計算機環境の構成内容である既存構成内容において、所定期間における前記リソースの最大利用量と前記既存構成内容のリソースの量との比が所定値より小さければ、前記学習データの目的変数である識別情報に対応する前記計算機環境の構成内容に含まれるリソースの量は、前記既存構成内容のリソースの量より小さい
ことを特徴とする請求項1または2に記載のレコメンド装置。
【請求項10】
前記ツールが使用するリソースは、CPU、メモリおよびディスクのなかの少なくとも何れか1つを含む
ことを特徴とする請求項8または9に記載のレコメンド装置。
【請求項11】
レコメンド装置が、
計算機環境の利用者の属性情報を説明変数とし、前記計算機環境の構成内容を示すデータの識別情報を目的変数とする学習データを用いて生成された新規環境学習モデルを参照して、前記利用者の属性情報から前記識別情報を算出するステップと、
当該識別情報に対応する前記計算機環境の構成内容を出力するステップとを実行する
ことを特徴とするレコメンド方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、利用者に応じた計算機環境の構成内容を推薦するレコメンド装置およびレコメンド方法に関する。
【背景技術】
【0002】
コンピュータによる大量データの処理や機械学習技術の進展に伴い、故障予兆・コスト分析・不正可視化などのデータ分析が普及している。大量のデータに対して高度で高速な処理を行うためには、高性能で大規模なデータ分析環境が必要である。クラウド上にデータ分析環境を構築することにより、短時間に容易に高性能で大規模な計算リソースが利用できるようになり、所望のデータ分析環境が容易に実現可能となる。
【0003】
クラウドにおける計算機環境の構築技術として、特許文献1に記載のシステム構築装置がある。このシステム構築装置は、複数のサーバによりネットワークサービスを提供するシステムにおいてシステム構築を行うシステム構築装置であって、所定の判定条件に基づいて、前記複数のサーバにおける一のサーバのある構成要素を他のサーバで動作させることを決定する決定手段と、前記一のサーバの構成管理情報に基づいて、前記他のサーバを選択し、当該他のサーバにおいて前記構成要素を動作させる構築手段とを備える。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記のシステム構築装置によれば、ネットワークサービスを提供するサーバにおいて、サービス要求が増加してサーバの負荷が増大した場合に、サーバの構成要素の単位でのスケールアウト(サーバの台数を増やすこと)が可能となる。しかしながら、データ分析環境においては、分析対象や分析手法、費用予算(利用料金の上限)、データ量などの利用者の属性に応じて利用するツールやリソースを決める必要があり、サーバ台数を増やすだけで対応できるわけではない。これは、データ分析だけではなく他の計算機の用途においても同様であって、利用者の属性に応じてツールやリソースなどの構成内容を利用者に推薦し、利用者の了解を得たうえで、計算機環境を構築することが求められる。
【0006】
本発明は、このような背景を鑑みてなされたものであり、利用者に応じた計算機環境の構成内容の推薦を可能とするレコメンド装置およびレコメンド方法を提供することを課題とする。
【課題を解決するための手段】
【0007】
上記した課題を解決するため、本発明に係るレコメンド装置は、計算機環境の利用者の属性情報を説明変数とし、前記計算機環境の構成内容を示すデータの識別情報を目的変数とする学習データを用いて生成された新規環境学習モデルを参照して、前記利用者の属性情報から前記識別情報を算出し、当該識別情報に対応する前記計算機環境の構成内容を出力するレコメンド部を備える。
【発明の効果】
【0008】
本発明によれば、利用者に応じた計算機環境の構成内容の推薦を可能とするレコメンド装置およびレコメンド方法を提供することができる。上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態に係るレコメンド装置を含むデータ分析システムの全体構成図である。
【
図2】本実施形態に係る利用者のプロフィールを取得するプロフィール登録画面の画面構成図である。
【
図3】本実施形態に係る利用者へ推薦されたデータ分析環境の構成内容を示すレコメンド画面の画面構成図である。
【
図4】本実施形態に係る推薦されたデータ分析環境の構成内容の詳細を示すレコメンド内容詳細画面の画面構成図である。
【
図5】本実施形態に係るレコメンド装置の機能ブロック図である。
【
図6】本実施形態に係る利用者情報データベースのデータ構成図である。
【
図7】本実施形態に係る環境情報データベースのデータ構成図である。
【
図8】本実施形態に係る新規構築レコメンド情報データベースのデータ構成図である。
【
図9】本実施形態に係る構成変更レコメンド情報データベースのデータ構成図である。
【
図10】本実施形態に係る新規構築テンプレートデータベース、および構成変更テンプレートデータベースのデータ構成図である。
【
図11】本実施形態に係るレコメンド学習モデル生成指示画面の画面構成図である。
【
図12】本実施形態に係る新規構築レコメンド学習データのデータ構成図である。
【
図13】本実施形態に係る構成変更レコメンド学習データのデータ構成図である。
【
図14】本実施形態に係るリソース加増データベースのデータ構成図である。
【
図15】本実施形態に係る新規構築学習モデルの生成処理のフローチャートである。
【
図16】本実施形態に係る構成変更学習モデルの生成処理のフローチャートである。
【
図17】本実施形態に係るレコメンド情報生成処理のフローチャートである。
【発明を実施するための形態】
【0010】
≪レコメンド装置の概要≫
以下に、本発明を実施するための形態(実施形態)におけるレコメンド装置を説明する。レコメンド装置は機械学習技術を用いて、利用者属性に応じたデータ分析環境の構成内容を出力し、利用者に推薦する。機械学習モデルの学習データの説明変数は、利用者の属性として、業種や分析目的、分析習熟度などを含む。学習データの目的変数は、データ分析環境の構成内容を示し、データ分析に用いるツール、ツールに割り当てるCPU(Central Processing Unit)数(CPUコア数)やメモリサイズなどを示す情報である。
【0011】
学習データは、利用実績のある(一定の期間長/回数以上利用されている)環境である。利用者は推薦されたデータ分析環境の構成を参考にすることで、専門知識や経験の多寡を問わず利用者に適したデータ分析環境を構築することができるようになる。
【0012】
≪データ分析環境の全体構成≫
図1は、本実施形態に係るレコメンド装置100を含むデータ分析システム500の全体構成図である。データ分析システム500は、Webサーバ510、分析環境システム520、環境構築装置530、分析環境情報収集装置540、レコメンド装置100、および管理者端末570を含んで構成される。
Webサーバ510は、データ分析環境の構築や変更に係る利用者とのインタフェースを提供する。Webサーバ510と利用者とのやり取りは、
図2~
図4を用いて後記する。
【0013】
分析環境システム520は、利用者のデータ分析環境を含む計算機環境であり、計算リソースやストレージを含む。Webサーバ510および分析環境システム520は、ネットワーク580を介して利用者端末590と接続している。
環境構築装置530は、利用者が指示したデータ分析環境の構成を分析環境システム520にデプロイ(配置/構築)する。分析環境情報収集装置540は、各利用者のデータ分析環境の構成や利用状況を収集する。管理者端末570は、データ分析システム500の管理者が利用する端末である。
【0014】
レコメンド装置100は、Webサーバ510から利用者のプロフィール(属性情報、後記する
図2参照)や、分析環境情報収集装置540から利用者のデータ分析環境の利用状況を取得する。また、レコメンド装置100は、利用者に推薦するデータ分析環境の構成内容を示すテンプレートの識別情報や、当該識別情報に対応するデータ分析環境の構成内容をWebサーバ510に送信する。これらの情報は、Webサーバ510から利用者端末590に送信されて表示される(後記する
図3、
図4参照)。
【0015】
図2は、本実施形態に係る利用者のプロフィール(属性情報)を取得するプロフィール登録画面610の画面構成図である。プロフィール登録画面610は、利用者端末590のディスプレイに表示される。利用者が自身のプロフィールを入力して、「登録」ボタン618を押下すると、登録内容がWebサーバ510に送信される。Webサーバ510は、登録内容をレコメンド装置100に送信する。
【0016】
図3は、本実施形態に係る利用者へ推薦されたデータ分析環境の構成内容を示すレコメンド画面620の画面構成図である。推薦のタイミングとしては、新規にデータ分析環境を構築する場合と、既存のデータ分析環境の構成を変更する場合とがある。前者の場合には、新規構築として推薦された構成内容を示すテンプレートの識別情報がボタン621上に表示される。後者の場合には、構成変更として推薦された構成内容を示すテンプレートの識別情報がボタン622上に表示される。ボタン621,622が押下されると、テンプレートの内容であるデータ分析環境の構成内容の詳細が表示されるレコメンド内容詳細画面630(後記する
図4参照)が表示される。「構築」ボタン628が押下されると、テンプレートに対応したデータ分析環境が、分析環境システム520(
図1参照)内に構築(デプロイ)される。
【0017】
図4は、本実施形態に係る推薦されたデータ分析環境の構成内容の詳細を示すレコメンド内容詳細画面630の画面構成図である。レコメンド内容詳細画面630には、ボタン621,622に表示されたテンプレート識別情報に対応するデータ分析環境の構成内容や月額利用料金が表示される。構成内容としては、データ分析に用いるアルゴリズムの他に、環境に含まれる各種ツールの名称や、当該ツールが使用するリソースがある。ツールやリソースを変更したい場合には、利用者は変更したい欄を操作(例えば別のツールの選択、メモリ量の変更)した後に、「登録」ボタン638を押下する。すると、画面はレコメンド画面620(
図3参照)に戻り、当初表示されていたテンプレートとは異なるテンプレートであって、変更内容に対応するテンプレートの識別情報がボタン621,622に表示される。
【0018】
≪レコメンド装置の構成≫
図5は、本実施形態に係るレコメンド装置100の機能ブロック図である。レコメンド装置100はコンピュータであり、制御部110、記憶部120、および通信部130を備える。通信部130は通信デバイスを備え、Webサーバ510や分析環境情報収集装置540、管理者端末570他の装置とデータ送受信を行う。
制御部110は、CPUを含んで構成され、利用者情報取得部111、環境情報取得部112、レコメンド処理部113、学習部114、およびレコメンド情報生成部115が備わる。
【0019】
記憶部120は、ROM(Read Only Memory)やRAM(Random Access Memory)、SSD(Solid State Drive)などの記憶機器を含んで構成される。記憶部120には、利用者情報データベース210、環境情報データベース220、新規構築レコメンド情報データベース230、構成変更レコメンド情報データベース240、新規構築テンプレートデータベース250、構成変更テンプレートデータベース260、新規構築レコメンド学習データ270、構成変更レコメンド学習データ280、リソース加増データベース290、新規構築学習モデル121、構成変更学習モデル122、およびプログラム128が記憶される。なお
図5では、データベースをDBと記載している。例えば、利用者情報データベース210を利用者情報DBと記している。
【0020】
プログラム128は、新規構築学習モデル121や構成変更学習モデル122、新規構築レコメンド情報データベース230、構成変更レコメンド情報データベース240の生成処理(後記する
図15、
図16、
図17参照)の記述を含む。以下、制御部110および記憶部120の構成を順に説明する。
【0021】
≪利用者情報取得≫
利用者情報取得部111は、Webサーバ510が送信した利用者の属性情報(
図2記載のプロフィール登録画面610参照)を取得して、利用者情報データベース210に格納する。
図6は、本実施形態に係る利用者情報データベース210のデータ構成図である。利用者情報データベース210は例えば表形式のデータであって、1つの行(レコード)は利用者を示す。各レコードは、レコードの識別情報(
図6では#と記載)、利用者識別情報(
図6は利用者IDと記載)、社名、部署名、業種、分析目的、予算、利用予定人数、月間分析実行回数、分析習熟度の列(属性)を含む。予算は、月額利用料金の上限であって、単位は百万円である。月間分析実行回数は、1月当たりの分析実行の予定回数である。
【0022】
≪環境情報取得≫
環境情報取得部112は、分析環境情報収集装置540が収集した各利用者のデータ分析環境の利用状況を取得して、環境情報データベース220に格納する。
図7は、本実施形態に係る環境情報データベース220のデータ構成図である。環境情報データベース220は例えば表形式のデータであって、1つの行(レコード)はデータ分析環境の構成内容を示す。各レコードは、レコードの識別情報(
図7では#と記載)、利用者識別情報(
図7は利用者IDと記載)、環境識別情報(
図7では環境IDと記載)、構築日時、最終更新日時、各ツールの利用状況の列(属性)を含む。
【0023】
環境識別情報は、利用者ごとに割り振られる識別情報であって、利用者がデータ分析環境を新規に構築した場合と、既存のデータ分析環境の構成を変更した場合に、新たに割り振られる。構築日時は、データ分析環境が新規に構築された、または変更されて構築された日時である。最終更新日時は、最後にレコードが更新された日時である。なおレコードが更新されるのは、後記するツールのCPU月間最大使用量、またはメモリ月間最大使用量が更新された場合である。
【0024】
ツールの利用状況の列は、さらに利用有無、CPU数、CPU月間最大使用量、メモリサイズ、メモリ月間最大使用量の列を含む。ツールの利用状況の列は、ディスクのサイズ/容量、ディスクの月間最大使用量、ライセンス数、定義ファイル(設定ファイル)などの列(不図示)を含んでもよい。利用有無は、データ分析環境がツールを含むか否かを示す。CPU数はツールが使用するCPUコア数の上限を示す。CPU月間最大使用量は、直近1月間における最大のCPUコアの使用数を示す。メモリ数はツールが使用するメモリサイズの上限を示す。メモリ月間最大使用量は、直近1月間における最大のメモリの使用量(使用サイズ)を示す。
【0025】
≪レコメンド処理≫
レコメンド処理部113は、Webサーバ510の要求に対して、推薦するデータ分析環境の構成内容を示すテンプレート識別情報、およびテンプレート識別情報に対応する構成内容を送信する。
【0026】
図8は、本実施形態に係る新規構築レコメンド情報データベース230のデータ構成図である。新規構築レコメンド情報データベース230は例えば表形式のデータであって、1つの行(レコード)は、利用者に対する新規構築時に推薦するデータ分析環境の構成内容に係る情報示す。各レコードは、レコードの識別情報(
図8では#と記載)、利用者識別情報(
図8では利用者IDと記載)、レコメンド日時、テンプレート識別情報(
図8ではテンプレートIDと記載)の列(属性)を含む。
【0027】
テンプレート識別情報は、利用者識別情報に示される利用者に対して新規構築時に推薦するテンプレートの識別情報である。このテンプレート識別情報は、後記する新規構築テンプレートデータベース250(
図10参照)のテンプレート識別情報(
図10ではテンプレートIDと記載)に対応する。
【0028】
レコメンド処理部113は、Webサーバ510から利用者識別情報を含む、新規構築に対して推薦するデータ分析環境の構成内容の要求を受け付けると、新規構築レコメンド情報データベース230を参照して当該利用者識別情報に対応するテンプレート識別情報を検索して、Webサーバ510に返答する。この処理は、Webサーバ510が新規構築時にレコメンド画面620(
図3参照)のデータを利用者端末590に送信する際に実行される。なお新規構築レコメンド情報データベース230のレコメンド日時は、この処理の実行日時である。
【0029】
図9は、本実施形態に係る構成変更レコメンド情報データベース240のデータ構成図である。構成変更レコメンド情報データベース240は例えば表形式のデータであって、1つの行(レコード)は、利用者に対する構成変更時に推薦するデータ分析環境の構成内容に係る情報示す。各レコードは、レコードの識別情報(
図9では#と記載)、利用者識別情報(
図9では利用者IDと記載)、環境識別情報(
図9では環境IDと記載)、レコメンド日時、テンプレート識別情報(
図9ではテンプレートIDと記載)の列(属性)を含む。
【0030】
テンプレート識別情報は、利用者識別情報に示される使用者に対して構成変更時に推薦するテンプレートの識別情報である。このテンプレート識別情報は、後記する構成変更テンプレートデータベース260(
図10参照)のテンプレート識別情報(
図10ではテンプレートIDと記載)に対応する。
【0031】
レコメンド処理部113は、Webサーバ510から利用者識別情報および現時点での環境識別情報を含む、構成変更に対して推薦するデータ分析環境の構成内容の要求を受け付けると、構成変更レコメンド情報データベース240を参照して当該利用者識別情報および当該環境識別情報に対応するテンプレート識別情報を検索して、Webサーバ510に返答する。この処理は、Webサーバ510が構成変更時にレコメンド画面620(
図3参照)のデータを利用者端末590に送信する際に実行される。なお構成変更レコメンド情報データベース240のレコメンド日時は、この処理の実行日時である。
【0032】
図10は、本実施形態に係る新規構築テンプレートデータベース250、および構成変更テンプレートデータベース260のデータ構成図である。新規構築テンプレートデータベース250と構成変更テンプレートデータベース260とは、同等のデータ構成である。新規構築テンプレートデータベース250および構成変更テンプレートデータベース260は、例えば表形式のデータであって、1つの行(レコード)は、テンプレート識別情報に対応するデータ分析環境の構成内容を示す。各レコードは、レコードの識別情報(
図10では#と記載)、テンプレート識別情報(
図10ではテンプレートIDと記載)、レコードの登録日時、および各ツールの構成内容の列(属性)を含む。
【0033】
ツールの構成内容の列は、利用有無、CPU、メモリ、ディスク、ライセンス数、定義ファイル(設定ファイル)などの列(属性)を含む。利用有無は、データ分析環境がツールを含むか否かを示す。CPUはツールが使用するCPUコア数を示す。メモリはツールが使用するメモリサイズを示す。ディスクはツールが使用するディスクないしはSSDの領域サイズを示す。ライセンス数はツールのライセンス数を示す。定義ファイルは、ツールが使用する定義ファイル(設定ファイル)を示す。
【0034】
レコメンド処理部113は、Webサーバ510からテンプレート識別情報を含む新規構築に対するテンプレート内容の要求を受け付けると、新規構築テンプレートデータベース250を参照して当該テンプレート識別情報対応する各ツールの構成内容を検索して、Webサーバ510に返答する。また、レコメンド処理部113は、Webサーバ510からテンプレート識別情報を含む構成変更に対するテンプレート内容の要求を受け付けると、構成変更テンプレートデータベース260を参照して当該テンプレート識別情報対応する各ツールの構成内容を検索して、Webサーバ510に返答する。
これらの処理は、Webサーバ510がレコメンド内容詳細画面630(
図4参照)のデータを利用者端末590に送信する際に実行される。
【0035】
ここまで説明してきたように、新規構築レコメンド情報データベース230、構成変更レコメンド情報データベース240、新規構築テンプレートデータベース250、および構成変更テンプレートデータベース260は、レコメンド処理部113が参照する。これらのデータベースを生成するのは、後記する学習部114およびレコメンド情報生成部115である。
【0036】
また、新規構築テンプレートデータベース250、および構成変更テンプレートデータベース260は、分析環境システム520にあるデータ分析環境(計算機環境)の構成内容を示すデータである。テンプレート識別情報は、このデータの識別情報である。レコメンド処理部113(レコメンド部)は、この識別情報に対応する構成内容をWebサーバ510に送信(出力)する。
【0037】
≪学習モデル生成≫
学習部114は、データ分析システム500の管理者の指示を受けて、新規構築レコメンド学習データ270(後記する
図12参照)を生成して、新規構築学習モデル121を訓練する(新規構築学習モデル121に新規構築レコメンド学習データ270を学習させて生成する)。また学習部114は、データ分析システム500の管理者の指示を受けて、構成変更レコメンド学習データ280(後記する
図13参照)を生成して、構成変更学習モデル122を訓練する。
【0038】
新規構築学習モデル121および構成変更学習モデル122は、機械学習技術の学習モデルであって、例えばニューラルネットワークの学習モデルである。新規構築学習モデル121および構成変更学習モデル122は、サポートベクターマシンや決定木など他の機械学習技術の学習モデルであってもよい。
【0039】
図11は、本実施形態に係るレコメンド学習モデル生成指示画面310の画面構成図である。レコメンド学習モデル生成指示画面310は、管理者端末570(
図1参照)に表示される画面であって、データ分析システム500の管理者が操作する画面である。
学習モデル指定領域311には、新規構築時の推薦に利用される新規構築学習モデル121を生成するのか、構成変更時の推薦に利用される構成変更学習モデル122を生成するのかが指定される。
【0040】
学習方法指定領域312には、学習方法が自動か手動かが指定される。自動の場合には、環境情報データベース220(
図7参照)にあるデータを基に、新規構築レコメンド学習データ270および構成変更レコメンド学習データ280が生成される。手動の場合には、学習データ指定領域314において指定されるファイルから学習データが取得される。
【0041】
学習対象日指定領域313には、学習方法が自動の場合に、いつの時点以前の環境情報データベース220にあるデータを学習データとして用いるかが指定される。学習データとしては、一定期間利用され続けられている構成内容を示すデータが望ましく、例えば3か月前や1年前などが指定される。新規構築ないしは構成変更から間もないデータ分析環境は、使用するツールやリソース量の変更が予想され、安定していない可能性が高い。推薦するデータ分析環境としては、所定期間利用され続け安定している構成が望ましい。また、所定回数の利用実績がある、または所定期間変更されていない構成であってもよい。
「学習実行」ボタン318が押下されると、学習データが生成され、この学習データを用いて訓練された新規構築学習モデル121、または構成変更学習モデル122が生成される。
【0042】
図12は、本実施形態に係る新規構築レコメンド学習データ270のデータ構成図である。新規構築レコメンド学習データ270は、新規構築学習モデル121の学習データである。新規構築レコメンド学習データ270における目的変数(新規構築学習モデル121の出力)は、テンプレート識別情報(
図12ではテンプレートIDと記載)である。このテンプレート識別情報は、新規構築テンプレートデータベース250(
図10参照)のテンプレート識別情報に対応する。
【0043】
新規構築レコメンド学習データ270の説明変数(新規構築学習モデル121の入力)は、利用者の属性情報である業種、分析目的、予算、利用予定人数、月間分析実行回数、分析習熟度を含む。これらの属性の内容は、利用者情報データベース210(
図6参照)の属性と同様である。
【0044】
図13は、本実施形態に係る構成変更レコメンド学習データ280のデータ構成図である。構成変更レコメンド学習データ280は、構成変更学習モデル122の学習データである。構成変更レコメンド学習データ280における目的変数(構成変更学習モデル122の出力)は、テンプレート識別情報(
図13ではテンプレートIDと記載)である。このテンプレート識別情報は、構成変更テンプレートデータベース260(
図10参照)のテンプレート識別情報に対応する。
【0045】
構成変更レコメンド学習データ280の説明変数(構成変更学習モデル122の入力)は、利用者の属性情報、および各ツールの構成内容(従ってデータ分析環境の構成内容)を含む。利用者の属性情報は、業種、分析目的、予算、利用予定人数、月間分析実行回数、分析習熟度を含む。これらの属性の内容は、利用者情報データベース210(
図6参照)の属性と同様である。ツールの構成内容は、利用有無、CPU、CPU月間最大使用量、メモリ、メモリ月間最大使用量、ディスク、ディスク月間最大使用量、ライセンス数、定義ファイル(設定ファイル)の属性を含む。これらの属性は、環境情報データベース220(
図7参照)におけるツールの構成内容にある属性と同様である。
【0046】
図14は、本実施形態に係るリソース加増データベース290のデータ構成図である。リソース加増データベース290は、例えば表形式のデータであって、1つの行(レコード)は、CPUやメモリ、ディスクなどのリソースの加増に係る情報を示す。各レコードは、レコードの識別情報291(
図14では#と記載)、リソース292、追加単位293、閾値294の列(属性)を含む。
【0047】
学習部114は、推薦するデータ分析環境の構成内容を示す新規構築テンプレートデータベース250(
図10参照)および構成変更テンプレートデータベース260を生成する際に、リソース加増データベース290を参照する。詳しくは、環境情報データベース220(
図7参照)に示されるリソース292の利用率(月間最大使用量/リソースの量)が閾値294を超えているならば、学習部114は追加単位293に示されるリソース量を追加して新規構築テンプレートデータベース250、および構成変更テンプレートデータベース260を生成する(後記する
図15、
図16参照)。また、リソース292の利用率が閾値294以下ならば、学習部114は環境情報データベース220にあるリソースの月間最大使用量を用いて新規構築テンプレートデータベース250、および構成変更テンプレートデータベース260を生成する。
【0048】
例えば、レコード299は、環境情報データベース220に示されるツールAのCPUについて月間最大使用量/数が0.9を超えれば、CPU数を2加増することを示している。仮に環境情報データベース220に示されるツールAのCPU数が2であれば、新規構築テンプレートデータベース250および構成変更テンプレートデータベース260のツールAのCPUは、2加増して4となる。
月間最大使用量/数が0.9以下ならば、新規構築テンプレートデータベース250および構成変更テンプレートデータベース260のツールAのCPUは、環境情報データベース220に示されるツールAのCPUの月間最大使用量である。
【0049】
≪レコメンド情報生成≫
レコメンド情報生成部115は、新規構築学習モデル121を用いて、新規構築レコメンド情報データベース230(
図8参照)を生成する。詳しくは、レコメンド情報生成部115は利用者ごとに、当該利用者の属性(
図6記載の利用者情報データベース210参照)を入力とし、新規構築学習モデル121を用いてテンプレート識別情報を算出して新規構築レコメンド情報データベース230を生成する。
【0050】
またレコメンド情報生成部115は、構成変更学習モデル122を用いて、構成変更レコメンド情報データベース240(
図9参照)を生成する。詳しくは、レコメンド情報生成部115は利用者および当該利用者の環境ごとに、当該利用者の属性、および現在のデータ分析環境の構成内容(
図7記載の環境情報データベース220参照)を入力とし、構成変更学習モデル122を用いてテンプレート識別情報を算出して構成変更レコメンド情報データベース240を生成する。
【0051】
≪新規構築学習モデル生成処理≫
図15は、本実施形態に係る新規構築学習モデル121の生成処理のフローチャートである。レコメンド学習モデル生成指示画面310(
図11参照)の学習モデル指定領域311で新規構築が指定されて「学習実行」ボタン318が押下されると、この生成処理が開始する。
【0052】
ステップS11において学習部114は、新規構築テンプレートデータベース250(
図10参照)および新規構築レコメンド学習データ270(
図12参照)を初期化(全レコードを削除)する。
ステップS12において学習部114は、学習方法指定領域312(
図11参照)で自動が選択されていれば(ステップS12→YES)ステップS13へ進み、手動が選択されていれば(ステップS12→NO)ステップS21に進む。
【0053】
ステップS13において学習部114は、環境情報データベース220(
図7参照)のなかで最終更新日時が学習対象日指定領域313で指定された指定日付以前であるレコードを取得する。なお指定日付が指定されていない場合には、学習部114は最終更新日時が既定の日付以前、例えば現在より3か月以前であるレコードを取得する。
ステップS14において学習部114は、ステップS13で取得したレコードごとにステップS15~S19を繰り返し実行する。
【0054】
ステップS15において学習部114は、レコードの内容である各ツールの利用状況を新規構築テンプレートデータベース250に追加する。合わせて学習部114は、当該レコードにテンプレート識別情報を割り振る。
ステップS16において学習部114は、ステップS15で割り振ったテンプレート識別情報と、利用者の属性情報とを新規構築レコメンド学習データ270に追加する。ここで利用者の属性情報とは、利用者情報データベース210(
図6参照)においてレコードの利用者識別情報に対応する利用者の属性情報(業種など)である。
【0055】
ステップS17において学習部114は、レコードの各ツールの構成内容に含まれるそれぞれのリソース(CPUやメモリ、ディスク)について、利用率(月間最大使用量/リソース量)が当該リソース(
図14のリソース292参照)の閾値294を超えていれば(ステップS17→YES)ステップS19に進み、超えていなければ(ステップS17→NO)ステップS18に進む。
【0056】
ステップS18において学習部114は、ステップS15で追加した新規構築テンプレートデータベース250のツールのリソース(CPUやメモリ、ディスク)について、レコードの対応するリソースの月間最大使用量の値を格納する。
ステップS19において学習部114は、ステップS15で追加した新規構築テンプレートデータベース250のレコードに含まれるツールのリソースに追加単位293のリソースを加増する。例えば、ツールAのCPUについて、利用率が0.9を超えていれば、2を加増する(レコード299参照)。なお加増前における新規構築テンプレートデータベース250のリソースの値は、レコードのリソースの値である(ステップS15参照)。
【0057】
ステップS20において学習部114は、新規構築レコメンド学習データ270の利用者の属性情報を説明変数とし、テンプレート識別情報を目的変数として新規構築学習モデル121を訓練して生成する。
ステップS21において学習部114は、学習データ指定領域314に指定されたファイルから学習データを取得して新規構築レコメンド学習データ270を生成し、ステップS20に進む。
【0058】
≪構成変更学習モデル生成処理≫
図16は、本実施形態に係る構成変更学習モデル122の生成処理のフローチャートである。レコメンド学習モデル生成指示画面310(
図11参照)の学習モデル指定領域311で構成変更が指定されて「学習実行」ボタン318が押下されると、この生成処理が開始する。
【0059】
ステップS31において学習部114は、構成変更テンプレートデータベース260(
図10参照)および構成変更レコメンド学習データ280(
図13参照)を初期化する。
ステップS32において学習部114は、学習方法指定領域312(
図11参照)で自動が選択されていれば(ステップS32→YES)ステップS33へ進み、手動が選択されていれば(ステップS32→NO)ステップS41に進む。
【0060】
ステップS33において学習部114は、環境情報データベース220(
図7参照)のなかで最終更新日時が学習対象日指定領域313で指定された指定日付以前であるレコードを取得する。なお指定日付が指定されていない場合には、学習部114は最終更新日時が既定の日付以前、例えば現在より3か月以前であるレコードを取得する。
ステップS34において学習部114は、ステップS33で取得したレコードごとにステップS35~S39を繰り返し実行する。
【0061】
ステップS35において学習部114は、レコードの内容である各ツールの利用状況を構成変更テンプレートデータベース260に追加する。合わせて学習部114は、当該レコードにテンプレート識別情報を割り振る。
【0062】
ステップS36において学習部114は、ステップS35で割り振ったテンプレート識別情報と、利用者の属性情報と、レコードの内容である各ツールの利用状況とを構成変更レコメンド学習データ280に追加する。ここで利用者の属性情報とは、利用者情報データベース210(
図6参照)においてレコードの利用者識別情報に対応する利用者の属性情報(業種など)である。また、CPUやメモリ、ディスクについては、レコードの対応するリソース量とその月間最大使用量の値が構成変更レコメンド学習データ280に格納される。
【0063】
ステップS37において学習部114は、レコードの各ツールの構成内容に含まれるそれぞれのリソース(CPUやメモリ、ディスク)について、利用率(月間最大使用量/リソース量)が当該リソース(
図14のリソース292参照)の閾値294を超えていれば(ステップS37→YES)ステップS39に進み、超えていなければ(ステップS37→NO)ステップS38に進む。
【0064】
ステップS38において学習部114は、ステップS35で追加した構成変更テンプレートデータベース260のツールのリソース(CPUやメモリ、ディスク)について、レコードの対応するリソースの月間最大使用量の値を格納する。
ステップS39において学習部114は、ステップS35で追加した構成変更テンプレートデータベース260のレコードに含まれるツールのリソースに追加単位293のリソースを加増する。例えば、ツールAのCPUについて、利用率が0.9を超えていれば、2を加増する(レコード299参照)。なお加増前における構成変更テンプレートデータベース260のリソースの値は、レコードのリソースの値である(ステップS35参照)。
【0065】
ステップS40において学習部114は、構成変更レコメンド学習データ280の利用者の属性情報と、各ツールの利用状況とを説明変数とし、テンプレート識別情報を目的変数として構成変更学習モデル122を訓練して生成する。
ステップS41において学習部114は、学習データ指定領域314に指定されたファイルから学習データを取得して構成変更レコメンド学習データ280を生成し、ステップS39に進む。
【0066】
≪レコメンド情報生成処理≫
図17は、本実施形態に係るレコメンド情報生成処理のフローチャートである。
図17を参照しながらレコメンド情報生成部115が、新規構築レコメンド情報データベース230(
図8参照)および構成変更レコメンド情報データベース240(
図9参照)を生成する処理を説明する。レコメンド情報生成処理は、新規構築学習モデル121および構成変更学習モデル122が生成された後に続いて実行されてもよいし、データ分析システム500の管理者に指示されて実行されてもよいし、他のタイミングで実行されてもよい。
【0067】
ステップS51においてレコメンド情報生成部115は、新規構築レコメンド情報データベース230および構成変更レコメンド情報データベース240を初期化する。
ステップS52においてレコメンド情報生成部115は、利用者情報データベース210(
図6参照)にある利用者識別情報ごとにステップS52~S59を繰り返し実行する。
ステップS53においてレコメンド情報生成部115は、利用者情報データベース210から利用者識別情報に対応する利用者の属性情報を取得する。
【0068】
ステップS54においてレコメンド情報生成部115は、新規構築学習モデル121を用いてステップS53で取得した利用者の属性情報を入力(説明変数)としてテンプレート識別情報(目的変数)を算出する。
ステップS55においてレコメンド情報生成部115は、ステップS54で算出したテンプレート識別情報を利用者識別情報と合わせて新規構築レコメンド情報データベース230に登録する。
【0069】
ステップS56においてレコメンド情報生成部115は、環境情報データベース220(
図7参照)のなかで利用者識別情報が一致するレコードを取得する。
ステップS57においてレコメンド情報生成部115は、ステップS56で取得したレコードごとにステップS58,S59を繰り返し実行する。
ステップS58においてレコメンド情報生成部115は、構成変更学習モデル122を用いてステップS53で取得した利用者の属性情報と、環境情報データベース220のレコードにある各ツールの利用状況とを入力(説明変数)としてテンプレート識別情報(目的変数)を算出する。なお入力となるツールの利用状況におけるCPUやメモリ、ディスクは、環境情報データベース220のレコードにあるリソース量と月間最大使用量である。
【0070】
ステップS59においてレコメンド情報生成部115は、ステップS58で算出したテンプレート識別情報を利用者識別情報および環境識別情報と合わせて構成変更レコメンド情報データベース240に登録する。なお、環境識別情報とは、環境情報データベース220のレコードに含まれている環境識別情報である。
【0071】
≪レコメンド装置の特徴≫
レコメンド装置100は機械学習モデルを用いて、利用者の属性情報に応じたデータ分析環境の構成内容を新規のデータ分析環境として推薦する。また、レコメンド装置100は、利用者の属性情報および利用者が利用しているデータ分析環境の構成内容に応じたデータ分析環境の構成内容を変更後のデータ分析環境として推薦する。
【0072】
学習モデルの学習データは、利用実績のある(一定の期間長/回数以上利用されている)環境であり、利用者は専門知識や経験の多寡を問わず利用者に適したデータ分析環境を構築することができるようになる。例えば、リソースの利用率が所定値より高い場合にはリソースを加増する(
図15のステップS19、
図16のステップS39参照)。また、リソースの利用率が所定値以下の場合にはリソースを削減する(
図15のステップS18、
図16のステップS38参照)。
【0073】
≪変形例:リソース利用率の閾値≫
上記した実施形態においてレコメンド装置100は、リソースの利用率が閾値294(
図14参照)を超えていれば追加単位293のリソースを加増し、閾値294以下ならば月間最大使用量にリソースを削減するように学習データを生成している(
図15のステップS18,S19、
図16のステップS38,S39参照)。閾値294とは別に月間最大使用量に削減する新たな閾値を設けてもよい。この場合、利用率が閾値294と新たな閾値の間にある場合には、リソースの加増も削減もせず、環境情報データベース220のリソース量のままとする。
【0074】
≪変形例:利用者属性≫
上記した実施形態において利用者の属性情報は、業種、分析目的などである(
図12、
図13参照)が、さらに他の属性情報を含んでもよい。例えば利用者の属性情報は、データ分析対象のデータの想定量や、所定期間(月や年など)で増加するデータの想定量を含んでもよい。このような属性情報を含んで推薦することで、レコメンド装置100はより高精度にリソースを推薦することができるようになる。また利用者の属性情報は、データの種別(生産情報や設備情報、経営データなど)やデータの更新周期(月や半年、年など)を含んでもよい。このような属性情報を含んで推薦することで、レコメンド装置100はデータの種別に応じたツールを推薦することができるようになる。
【0075】
≪変形例:学習データ≫
上記した実施形態における新規構築学習モデル121および構成変更学習モデル122の目的変数は、テンプレート識別情報である。テンプレート識別情報に替わり、データ分析環境の構成内容を目的変数としてもよい。このように構成するには、新規構築レコメンド学習データ270および構成変更レコメンド学習データ280の目的変数をデータ分析環境の構成内容とすればよい。
【0076】
≪その他変形例≫
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。例えばレコメンド装置100は、各データベースを記憶部120に格納しているが、外部の装置に記憶される各データベースにアクセスするようにしてもよい。
【0077】
上記実施形態においてレコメンド処理部113は、レコメンド情報生成部115が生成した新規構築レコメンド情報データベース230(
図8参照)および構成変更レコメンド情報データベース240(
図9参照)を参照して、推薦するテンプレート識別情報をWebサーバ510に送信している。Webサーバ510からの要求を受け付けた時点でレコメンド処理部113(レコメンド部)が、新規構築学習モデル121および構成変更学習モデル122を用いて推薦するテンプレート識別情報を算出するようにしてもよい。
また、上記実施形態におけるレコメンド装置100は、データ分析環境の構成内容を推薦しているが、ソフトウェア開発やシミュレーション実行など他の用途の計算機環境に係る構成内容を推薦してもよい。
【0078】
本発明はその他の様々な実施形態を取ることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0079】
100 レコメンド装置
111 利用者情報取得部
112 環境情報取得部
113 レコメンド処理部(レコメンド部)
114 学習部
115 レコメンド情報生成部
121 新規構築学習モデル(新規環境学習モデル)
122 構成変更学習モデル(変更環境学習モデル)
250 新規構築テンプレートデータベース(計算機環境の構成内容を示すデータ)
260 構成変更テンプレートデータベース(計算機環境の構成内容を示すデータ)
270 新規構築レコメンド学習データ(学習データ)
280 構成変更レコメンド学習データ(学習データ)
520 分析環境システム(計算機環境)