(57)【要約】  プレイリストの構成に基づいて曲の再生長さを予測する方法およびシステムを提供する。曲の再生長さを予測する方法は、各プレイリストに対して曲構成情報と再生履歴情報を管理する段階、および電子機器から特定のプレイリストに対する再生要求が受信されれば、曲構成情報と再生履歴情報を利用して特定のプレイリストの曲ごとに該当の曲が再生される確率である再生長さを予測する段階を含む。
2021519944.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムが実行する方法であって、
前記コンピュータシステムは、少なくとも１つのプロセッサを含み、
当該方法は、
前記少なくとも１つのプロセッサが、各プレイリストに対して曲構成情報と再生履歴情報を管理する段階と、
前記少なくとも１つのプロセッサが、電子機器から特定のプレイリストに対する再生要求を受信すると、前記曲構成情報と前記再生履歴情報を利用して前記特定のプレイリストの曲ごとに該当の曲が再生される確率である再生長さを予測する段階と
を含む、方法。
【請求項２】
前記管理する段階は、
前記プレイリストそれぞれに対し、曲の再生順序と曲ごとの全体の再生長さを含む曲構成情報、および曲ごとの前記全体の再生長さに対してユーザそれぞれが実際に再生した割合を示す実際の再生長さを含む再生履歴情報を管理する段階
を含む、請求項１に記載の方法。
【請求項３】
前記予測する段階は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、
前記取得したプレイリストの再生履歴情報を利用して前記特定のプレイリストの曲ごとに予想再生長さを算出する段階と
を含む、請求項１または２に記載の方法。
【請求項４】
前記取得する段階は、
曲どうしの類似度に基づき、前記特定のプレイリストに含まれる曲と同一あるいは類似の曲で構成されたプレイリストを取得すること
を特徴とする、請求項３に記載の方法。
【請求項５】
前記取得する段階は、
各曲に対し、該当の曲の音源データをディープラーニング学習モデルによって学習して固有の音源特徴を生成する段階と、
前記音源特徴を利用して曲どうしの類似度を算出する段階と、
前記曲どうしの類似度に基づき、前記特定のプレイリストに含まれる曲と同一あるいは類似の曲で構成されたプレイリストを取得する段階と
を含む、請求項３に記載の方法。
【請求項６】
前記予測する段階は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、
前記取得したプレイリストで前記特定のプレイリストの各曲と対応する曲に対する全体ユーザの実際の再生長さを平均する方式により、前記特定のプレイリストの曲ごとの予想再生長さを算出する段階と
を含む、請求項２に記載の方法。
【請求項７】
前記予測する段階は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、
前記取得したプレイリストで前記特定のプレイリストの各曲と対応する曲に対する前記電子機器のユーザの実際の再生長さを平均する方式により、前記特定のプレイリストの曲ごとの予想再生長さを算出する段階と
を含む、請求項２に記載の方法。
【請求項８】
前記管理する段階は、
前記プレイリストの各曲に対して該当の曲が再生された時点の時間、天気、位置のうちの少なくとも１つを含む追加情報を前記再生履歴情報とともに管理する段階
をさらに含み、
前記予測する段階は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、
前記取得したプレイリストのうちで前記特定のプレイリストを要求した時点の追加情報とマッチングするプレイリストの再生履歴情報を利用して、前記特定のプレイリストの曲ごとの予想再生長さを算出する段階と
を含む、請求項２に記載の方法。
【請求項９】
当該方法は、
前記少なくとも１つのプロセッサが、前記特定のプレイリストの曲ごとの再生長さに従って曲の再生に必要なリソースを分配し、前記特定のプレイリストの再生のための音源データを前記電子機器に提供する段階
をさらに含む、請求項１乃至８のいずれか一項に記載の方法。
【請求項１０】
前記提供する段階は、
前記特定のプレイリストの曲ごとに、該当の曲の予測された再生長さに対応する単位でプリフェッチを実行すること
を特徴とする、請求項９に記載の方法。
【請求項１１】
請求項１〜１０のうちのいずれか一項に記載の方法をコンピュータに実行させるためのプログラム。
【請求項１２】
コンピュータシステムであって、
メモリ、および
前記メモリに接続され、前記メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも１つのプロセッサ
を含み、
前記少なくとも１つのプロセッサは、
各プレイリストに対して曲構成情報と再生履歴情報を管理する情報管理部と、
電子機器から特定のプレイリストに対する再生要求が受信されれば、前記曲構成情報と前記再生履歴情報を利用して前記特定のプレイリストの曲ごとに該当の曲が再生される確率である再生長さを予測する再生長さ予測部と
を含む、コンピュータシステム。
【請求項１３】
前記情報管理部は、
前記プレイリストそれぞれに対し、曲再生順序と曲ごとの全体の再生長さを含む曲構成情報、および曲ごとに前記全体の再生長さに対してユーザそれぞれが実際に再生した割合を示す実際の再生長さを含む再生履歴情報を管理すること
を特徴とする、請求項１２に記載のコンピュータシステム。
【請求項１４】
前記再生長さ予測部は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得し、
前記取得したプレイリストの再生履歴情報を利用して前記特定のプレイリストの曲ごとに予想再生長さを算出すること
を特徴とする、請求項１２または１３に記載のコンピュータシステム。
【請求項１５】
前記再生長さ予測部は、
曲どうしの類似度に基づき、前記特定のプレイリストに含まれる曲と同一あるいは類似の曲で構成されたプレイリストを取得すること
を特徴とする、請求項１４に記載のコンピュータシステム。
【請求項１６】
前記再生長さ予測部は、
各曲に対し、該当の曲の音源データをディープラーニング学習モデルによって学習して固有の音源特徴を生成し、
前記音源特徴を利用して曲どうしの類似度を算出し、
前記曲どうしの類似度に基づき、前記特定のプレイリストに含まれる曲と同一あるいは類似の曲で構成されたプレイリストを取得すること
を特徴とする、請求項１４に記載のコンピュータシステム。
【請求項１７】
前記再生長さ予測部は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得し、
前記取得したプレイリストで前記特定のプレイリストの各曲と対応する曲に対する全体ユーザの実際の再生長さを平均する方式により、前記特定のプレイリストの曲ごとに予想再生長さを算出すること
を特徴とする、請求項１３に記載のコンピュータシステム。
【請求項１８】
前記再生長さ予測部は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得し、
前記取得したプレイリストで前記特定のプレイリストの各曲と対応する曲に対する前記電子機器のユーザの実際の再生長さを平均する方式により、前記特定のプレイリストの曲ごとに予想再生長さを算出すること
を特徴とする、請求項１３に記載のコンピュータシステム。
【請求項１９】
前記情報管理部は、
前記プレイリストの各曲に対して該当の曲が再生された時点の時間、天気、位置のうちの少なくとも１つを含む追加情報を前記再生履歴情報とともに管理し、
前記再生長さ予測部は、
前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得し、
前記取得したプレイリストのうちで前記特定のプレイリストを要求した時点の追加情報とマッチングするプレイリストの再生履歴情報を利用して、前記特定のプレイリストの曲ごとに予想再生長さを算出すること
を特徴とする、請求項１３に記載のコンピュータシステム。
【請求項２０】
前記少なくとも１つのプロセッサは、
前記特定のプレイリストの曲ごとの再生長さにしたがって曲の再生に必要なリソースを分配し、前記特定のプレイリストの再生のための音源データを前記電子機器に提供するデータ提供部
をさらに含む、請求項１２乃至１９のいずれか一項に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
以下の説明は、ストリーミング（ｓｔｒｅａｍｉｎｇ）基盤の音楽サービスを提供する技術に関する。
【背景技術】
【０００２】
デジタル技術の発達により、音源をデジタル形態で生成して保存および管理することができるようになった。これにより、音源の作成、配布、管理が容易となり、ＰＣ、ノート型ＰＣ、タブレット、スマートフォンのような多様な端末機を利用して容易に鑑賞することができるようになった。
【０００３】
音楽を鑑賞するための方法が多様化している中、例えば、通信網を介して音楽をダウンロードして利用したり、インターネットによるストリーミングサービスでリアルタイム受信したりすることで、音楽を鑑賞することができるようになった。
【０００４】
一例として、特許文献１（公開日２０１４年２月１４日）には、ユーザのプレイリストに基づいてユーザカスタムされた音楽放送サービスを提供する、プレイリスト基盤の音楽放送サービス方法およびこの装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】韓国公開特許第１０−２０１４−００１９１２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
プレイリスト（ｐｌａｙｌｉｓｔ）の曲の構成に基づき、曲ごとに該当の曲が最後まで再生される確率である再生長さを予測することを目的とする。
【０００７】
プレイリストに含まれる各曲の再生長さに基づいて曲ごとにプリフェッチ（ｐｒｅ−ｆｅｔｃｈｉｎｇ）を効果的に実行することで、滑らかな（ｓｅａｍｌｅｓｓ）再生環境を提供することを他の目的とする。
【０００８】
プレイリストの曲ごとの再生長さに基づくことで不必要なデータフェッチを減らすことができ、サービス全般にわたって消耗されるリソースを効率的に利用することをさらに他の目的とする。
【課題を解決するための手段】
【０００９】
コンピュータシステムが実行する方法であって、前記コンピュータシステムは、少なくとも１つのプロセッサを含み、当該方法は、前記少なくとも１つのプロセッサが、各プレイリストに対して曲構成情報と再生履歴情報を管理する段階と、前記少なくとも１つのプロセッサが、電子機器から特定のプレイリストに対する再生要求を受信すると、前記曲構成情報と前記再生履歴情報を利用して前記特定のプレイリストの曲ごとに該当の曲が再生される確率である再生長さを予測する段階とを含む方法を提供する。
【００１０】
一側面によると、前記管理する段階は、前記プレイリストそれぞれに対し、曲の再生順序と曲ごとの全体の再生長さを含む曲構成情報、および曲ごとの前記全体の再生長さに対してユーザそれぞれが実際に再生した割合を示す実際の再生長さを含む再生履歴情報を管理する段階を含んでよい。
【００１１】
他の側面によると、前記予測する段階は、前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、前記取得したプレイリストの再生履歴情報を利用して前記特定のプレイリストの曲ごとに予想再生長さを算出する段階とを含んでよい。
【００１２】
また他の側面によると、前記取得する段階は、曲どうしの類似度に基づき、前記特定のプレイリストに含まれる曲と同一あるいは類似の曲で構成されたプレイリストを取得してよい。
【００１３】
また他の側面によると、前記取得する段階は、各曲に対し、該当の曲の音源データをディープラーニング学習モデルによって学習して固有の音源特徴を生成する段階、前記音源特徴を利用して曲どうしの類似度を算出する段階、および前記曲どうしの類似度に基づき、前記特定のプレイリストに含まれる曲と同一あるいは類似の曲で構成されたプレイリストを取得する段階を含んでよい。
【００１４】
また他の側面によると、前記予測する段階は、前記曲構成情報を利用して前記特定のプレイリストの曲の構成と対応するプレイリストを取得する段階と、前記取得したプレイリストで前記特定のプレイリストの各曲と対応する曲に対する全体ユーザの実際の再生長さを平均する方式により、前記特定のプレイリストの曲ごとに予想再生長さを算出する段階とを含んでよい。
【００１５】
また他の側面によると、前記予測する段階は、前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、前記取得したプレイリストで前記特定のプレイリストの各曲と対応する曲に対する前記電子機器のユーザの実際の再生長さを平均する方式により、前記特定のプレイリストの曲ごとに予想再生長さを算出する段階とを含んでよい。
【００１６】
また他の側面によると、前記管理する段階は、前記プレイリストの各曲に対し、該当の曲が再生された時点の時間、天気、位置のうちの少なくとも１つを含む追加情報を前記再生履歴情報とともに管理する段階をさらに含み、前記予測する段階は、前記曲構成情報を利用して前記特定のプレイリストの曲構成と対応するプレイリストを取得する段階と、前記取得したプレイリストのうちで前記特定のプレイリストを要求した時点の追加情報とマッチングするプレイリストの再生履歴情報を利用して、前記特定のプレイリストの曲ごとに予想再生長さを算出する段階とを含んでよい。
【００１７】
また他の側面によると、当該方法は、前記少なくとも１つのプロセッサが、前記特定のプレイリストの曲ごとの再生長さに従って曲再生に必要なリソースを分配し、前記特定のプレイリストの再生のための音源データを前記電子機器に提供する段階をさらに含んでよい。
【００１８】
さらに他の側面によると、前記提供する段階は、前記特定のプレイリストの曲ごとに、該当の曲の予測された再生長さに対応する単位でプリフェッチ（ｐｒｅ−ｆｅｔｃｈｉｎｇ）を実行してよい。
【００１９】
前記方法をコンピュータに実行させるためのプログラムが記録されていることを特徴とする、非一時的なコンピュータ読み取り可能な記録媒体を提供する。
【００２０】
コンピュータシステムであって、メモリ、および前記メモリに接続され、前記メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも１つのプロセッサを含み、前記少なくとも１つのプロセッサは、各プレイリストに対して曲構成情報と再生履歴情報を管理する情報管理部と、電子機器から特定のプレイリストに対する再生要求が受信されれば、前記曲構成情報と前記再生履歴情報を利用して前記特定のプレイリストの曲ごとに該当の曲が再生される確率である再生長さを予測する再生長さ予測部とを含む、コンピュータシステムを提供する。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態における、ネットワーク環境の例を示した図である。
【図２】本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
【図３】本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図である。
【図４】本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
【図５】本発明の一実施形態における、プレイリストの曲構成情報を含む管理テーブルの例を示した図である。
【図６】本発明の一実施形態における、プレイリストの再生履歴情報を含む管理テーブルの例を示した図である。
【図７】本発明の一実施形態における、曲どうしの類似度に基づいてプレイリストの曲ごとに予想再生長さを算出する過程の一例を示したフローチャートである。
【図８】本発明の一実施形態における、特定のプレイリストの曲構成と対応するプレイリストを取得する過程を説明するための例示図である。
【図９】本発明の一実施形態における、特定のプレイリストの曲ごとに予想再生長さを算出する過程を説明するための例示図である。
【図１０】本発明の一実施形態における、特定のプレイリストの曲ごとの予想再生長さによるプリフェッチ過程を説明するための例示図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態について、添付の図面を参照しながら詳細に説明する。
【００２３】
本発明の実施形態は、ストリーミング基盤の音楽サービスを提供する技術に関する。
【００２４】
本明細書において具体的に開示される事項を含む実施形態は、プレイリスト構成に基づいて曲の再生長さを予測することができ、これによって効率性、リソース節減、費用節減、サービス品質、利便性などの側面において相当な長所を達成することができる。
【００２５】
図１は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図１のネットワーク環境は、複数の電子機器１１０、１２０、１３０、１４０、複数のサーバ１５０、１６０、およびネットワーク１７０を含む例を示している。このような図１は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図１のように限定されることはない。
【００２６】
複数の電子機器１１０、１２０、１３０、１４０は、コンピュータシステムによって実現される固定端末や移動端末であってよい。複数の電子機器１１０、１２０、１３０、１４０の例としては、スマートフォン、携帯電話、ナビゲーション、ＰＣ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ）、ノート型ＰＣ、デジタル放送用端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、タブレット、ゲームコンソール、ウェアラブルデバイス、ＩｏＴ（ｉｎｔｅｒｎｅｔ  ｏｆ  ｔｈｉｎｇｓ）デバイス、ＶＲ（ｖｉｒｔｕａｌ  ｒｅａｌｉｔｙ）デバイス、ＡＲ（ａｕｇｍｅｎｔｅｄ  ｒｅａｌｉｔｙ）デバイスなどがある。一例として、図１では、電子機器１１０の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器１１０は、実質的に無線または有線通信方式を利用し、ネットワーク１７０を介して他の電子機器１２０、１３０、１４０および／またはサーバ１５０、１６０と通信することのできる多様な物理的なコンピュータシステムのうちの１つを意味してよい。
【００２７】
通信方式が限定されることはなく、ネットワーク１７０が含むことのできる通信網（一例として、移動通信網、有線インターネット、無線インターネット、放送網、衛星網など）を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてよい。例えば、ネットワーク１７０は、ＰＡＮ（ｐｅｒｓｏｎａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＣＡＮ（ｃａｍｐｕｓ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＭＡＮ（ｍｅｔｒｏｐｏｌｉｔａｎ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＷＡＮ（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＢＢＮ（ｂｒｏａｄｂａｎｄ  ｎｅｔｗｏｒｋ）、インターネットなどのネットワークのうちの１つ以上の任意のネットワークを含んでよい。さらに、ネットワーク１７０は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター−バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の１つ以上を含んでもよいが、これらに限定されることはない。
【００２８】
サーバ１５０、１６０それぞれは、複数の電子機器１１０、１２０、１３０、１４０とネットワーク１７０を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する１つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ１５０は、ネットワーク１７０を介して接続した複数の電子機器１１０、１２０、１３０、１４０に第１サービスを提供するシステムであってよく、サーバ１６０も、ネットワーク１７０を介して接続した複数の電子機器１１０、１２０、１３０、１４０に第２サービスを提供するシステムであってよい。より具体的な例として、サーバ１５０は、複数の電子機器１１０、１２０、１３０、１４０においてインストールされて実行されるコンピュータプログラムであるアプリケーションを通じ、該当のアプリケーションが目的とするサービス（一例として、音楽サービスなど）を第１サービスとして複数の電子機器１１０、１２０、１３０、１４０に提供してよい。他の例として、サーバ１６０は、上述したアプリケーションのインストールおよび実行のためのファイルを複数の電子機器１１０、１２０、１３０、１４０に配布するサービスを第２サービスとして提供してよい。
【００２９】
図２は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。図２では、電子機器に対する例として電子機器１１０の内部構成およびサーバ１５０の内部構成について説明する。また、他の電子機器１２０、１３０、１４０やサーバ１６０も、上述した電子機器１１０またはサーバ１５０と同一または類似の内部構成を有してよい。
【００３０】
電子機器１１０およびサーバ１５０は、メモリ２１１、２２１、プロセッサ２１２、２２２、通信モジュール２１３、２２３、および入力／出力インタフェース２１４、２２４を含んでよい。メモリ２１１、２２１は、非一時的なコンピュータ読み取り可能な記録媒体であって、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、ディスクドライブ、ＳＳＤ（ｓｏｌｉｄ  ｓｔａｔｅ  ｄｒｉｖｅ）、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）などのような永続的大容量記録装置を含んでよい。ここで、ＲＯＭ、ＳＳＤ、フラッシュメモリ、ディスクドライブのような永続的大容量記録装置は、メモリ２１１、２２１とは区分される別の永続的記録装置として電子機器１１０やサーバ１５０に含まれてもよい。また、メモリ２１１、２２１には、オペレーティングシステムと、少なくとも１つのプログラムコード（一例として、電子機器１１０においてインストールされて実行されるブラウザや特定のサービスの提供のために電子機器１１０にインストールされるアプリケーションなどのためのコード）が記録されてよい。このようなソフトウェア構成要素は、メモリ２１１、２２１とは別のコンピュータ読み取り可能な記録媒体からロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー（登録商標）ドライブ、ディスク、テープ、ＤＶＤ／ＣＤ−ＲＯＭドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信モジュール２１３、２２３を通じてメモリ２１１、２２１にロードされてもよい。例えば、少なくとも１つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システム（一例として、上述したサーバ１６０）がネットワーク１７０を介して提供するファイルによってインストールされるコンピュータプログラム（一例として、上述したアプリケーション）に基づいてメモリ２１１、２２１にロードされてよい。
【００３１】
プロセッサ２１２、２２２は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ２１１、２２１または通信モジュール２１３、２２３によって、プロセッサ２１２、２２２に提供されてよい。例えば、プロセッサ２１２、２２２は、メモリ２１１、２２１のような記録装置に記録されたプログラムコードに従って受信される命令を実行するように構成されてよい。
【００３２】
通信モジュール２１３、２２３は、ネットワーク１７０を介して電子機器１１０とサーバ１５０とが互いに通信するための機能を提供してもよいし、電子機器１１０および／またはサーバ１５０が他の電子機器（一例として、電子機器１２０）または他のサーバ（一例として、サーバ１６０）と通信するための機能を提供してもよい。一例として、電子機器１１０のプロセッサ２１２がメモリ２１１のような記録装置に記録されたプログラムコードに従って生成した要求が、通信モジュール２１３の制御に従ってネットワーク１７０を介してサーバ１５０に伝達されてよい。これとは逆に、サーバ１５０のプロセッサ２２２の制御に従って提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール２２３とネットワーク１７０を経て電子機器１１０の通信モジュール２１３を通じて電子機器１１０に受信されてよい。例えば、通信モジュール２１３を通じて受信されたサーバ１５０の制御信号や命令、コンテンツ、ファイルなどは、プロセッサ２１２やメモリ２１１に伝達されてよく、コンテンツやファイルなどは、電子機器１１０がさらに含むことのできる記録媒体（上述した永続的記録装置）に記録されてよい。
【００３３】
入力／出力インタフェース２１４は、入力／出力装置２１５とのインタフェースのための手段であってよい。例えば、入力装置は、キーボード、マウス、マイクロフォン、カメラなどの装置を、出力装置は、ディスプレイ、スピーカ、触覚フィードバックデバイスなどのような装置を含んでよい。他の例として、入力／出力インタフェース２１４は、タッチスクリーンのように入力と出力のための機能が１つに統合された装置とのインタフェースのための手段であってもよい。入力／出力装置２１５は、電子機器１１０と１つの装置で構成されてもよい。また、サーバ１５０の入力／出力インタフェース２２４は、サーバ１５０に接続するかサーバ１５０が含むことのできる入力または出力のための装置（図示せず）とのインタフェースのための手段であってよい。より具体的な例として、電子機器１１０のプロセッサ２１２がメモリ２１１にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ１５０や電子機器１２０が提供するデータを利用して構成されるサービス画面やコンテンツが、入力／出力インタフェース２１４を通じてディスプレイに表示されてよい。
【００３４】
また、他の実施形態において、電子機器１１０およびサーバ１５０は、図２の構成要素よりも多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、電子機器１１０は、上述した入力／出力装置２１５のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）モジュール、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。より具体的な例として、電子機器１１０がスマートフォンである場合、一般的にスマートフォンが含んでいる加速度センサやジャイロセンサ、カメラモジュール、物理的な各種ボタン、タッチパネルを利用したボタン、入力／出力ポート、振動のための振動器などのような多様な構成要素が、電子機器１１０にさらに含まれるように実現されてよい。
【００３５】
以下では、プレイリスト構成に基づいて曲の再生長さを予測する方法およびシステムの具体的な実施形態について説明する。
【００３６】
一般的なプレイリストは、単純な規則によって曲が順に再生される。ユーザが最後まで再生せずに途中でスキップ（ｓｋｉｐ）する確率が高い曲に対しても再生のためのリソースが消耗されるようになるため、このような不必要なリソースの消耗により、全体的なサービスが円滑になされないことがある。
【００３７】
本発明は、プレイリストの再生の流れを確率的モデルによって予測し、これに合わせて曲の再生に必要なリソースを効果的に配分することを目的とする。
【００３８】
図３は、本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図であり、図４は、本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
【００３９】
本実施形態に係るサーバ１５０は、クライアント（ｃｌｉｅｎｔ）である複数の電子機器１１０、１２０、１３０、１４０を対象にストリーミング基盤の音楽サービスを提供するプラットフォームの役割をする。サーバ１５０は、電子機器１１０、１２０、１３０、１４０上にインストールされるアプリケーションと連動して音楽サービスを提供してよい。
【００４０】
サーバ１５０のプロセッサ２２２は、図４に係る音楽提供方法を実行するための構成要素として、図３に示すように、情報管理部３１０、再生長さ予測部３２０、およびデータ提供部３３０を含んでよい。実施形態によって、プロセッサ２２２の構成要素は、選択的にプロセッサ２２２に含まれても除外されてもよい。また、実施形態によって、プロセッサ２２２の構成要素は、プロセッサ２２２の機能の表現のために分離されても併合されてもよい。
【００４１】
このようなプロセッサ２２２およびプロセッサ２２２の構成要素は、図４の音楽提供方法が含む段階４１０〜段階４４０を実行するようにサーバ１５０を制御してよい。例えば、プロセッサ２２２およびプロセッサ２２２の構成要素は、メモリ２２１が含むオペレーティングシステムのコードと少なくとも１つのプログラムのコードとによる命令（ｉｎｓｔｒｕｃｔｉｏｎ）を実行するように実現されてよい。
【００４２】
ここで、プロセッサ２２２の構成要素は、サーバ１５０に記録されたプログラムコードが提供する命令に従ってプロセッサ２２２によって実行される、プロセッサ２２２の互いに異なる機能（ｄｉｆｆｅｒｅｎｔ  ｆｕｎｃｔｉｏｎｓ）の表現であってよい。例えば、サーバ１５０がプレイリストと関連する情報を管理するように上述した命令に従ってサーバ１５０を制御するプロセッサ２２２の機能的表現として、情報管理部３１０が利用されてよい。
【００４３】
段階４１０において、プロセッサ２２２は、サーバ１５０の制御と関連する命令がロードされたメモリ２２１から必要な命令を読み取ってよい。この場合、読み取られた命令は、以下で説明する段階４２０〜段階４４０をプロセッサ２２２が実行するように制御するための命令を含んでよい。
【００４４】
段階４２０において、情報管理部３１０は、プレイリストそれぞれに対して曲構成情報と再生履歴情報を調査および集計して、記録および管理してよい。プレイリストとは、少なくとも１つの音楽コンテンツ（曲）で構成されたトラック集であって、ユーザが直接構成するか他人から共有された再生リスト、あるいはサービス上で自動推薦された再生リストなどを含んでよい。情報管理部３１０は、音楽サービスでユーザが消費した履歴のあるプレイリストを対象に、各プレイリストの曲構成に関する全般的な情報、またはユーザによる再生ログデータを記録および管理してよい。図５は、プレイリスト＿Ａの曲構成情報５００を含む管理テーブルの例を示した図である。図５に示すように、ｓｏｎｇ＿１−＞ｓｏｎｇ＿２−＞ｓｏｎｇ＿３−＞ｓｏｎｇ＿４の順に構成されたプレイリスト＿Ａに対し、曲構成情報５００は、曲再生順序５０１、曲構成のテーマやタイトルなどのような主題５０２、全体の再生長さ５０３、平均の再生長さ５０４、曲ごとの再生長さ５０５、ジャンル５０６、ＢＰＭ（ｂｅａｔ  ｐｅｒ  ｍｉｎｕｔｅ）５０７などを含んでよい。図６は、プレイリスト＿Ａの再生履歴情報６００を含む管理テーブルの例を示した図である。プレイリスト＿Ａに対してすべてのユーザが同じ順序で曲を再生すると仮定する。図６に示すように、ｓｏｎｇ＿１−＞ｓｏｎｇ＿２−＞ｓｏｎｇ＿３−＞ｓｏｎｇ＿４の順に構成されたプレイリスト＿Ａに対し、再生履歴情報６００は、曲再生順序６０１と、ユーザそれぞれが曲ごとの全体の再生長さに対して実際にどのくらい再生したかを示す再生の割合である実際の再生長さ６０２などを含んでよい。さらに、情報管理部３１０は、プレイリスト＿Ａの各曲に対し、該当の曲が再生された時点に関する追加情報として、曲再生時点の時間帯、天気、位置、社会的イシューなどを追加で収集して各ユーザの実際の再生長さ６０２とともに管理してよい。このような追加情報は、音楽サービスを利用するユーザの電子機器１１０、１２０、１３０、１４０から取得した情報、または電子機器１１０、１２０、１３０、１４０から取得した情報を利用してインターネット上で取得した情報を包括したものを意味してよい。
【００４５】
再び図４を参照すると、段階４３０において、再生長さ予測部３２０は、電子機器１１０から特定のプレイリストに対する再生要求が受信されれば、段階４２０で管理されているプレイリストの曲構成情報と再生履歴情報を利用して、特定のプレイリストの曲構成による曲ごとの再生長さを予測してよい。再生長さ予測部３２０は、電子機器１１０のユーザが要求した特定のプレイリストの再生の流れを確率的モデルによって予測してよい。本発明では、各プレイリストの曲構成情報と再生履歴情報とを関連付けることのできるモデルを設計し、このようなモデルを利用して予め計算されたデータを確保してよい。例えば、Ｔｒａｃｋ１の後にＴｒａｃｋ２が配置される曲構成を含むプレイリストのうち、主題Ａのプレイリストでは平均的にＴｒａｃｋ２が全体再生時間１２０秒のうちの９０秒が再生され、主題Ｂのプレイリストでは平均的にＴｒａｃｋ２が全体再生時間１２０秒のうちの８０秒が再生されることがある。再生長さ予測部３２０は、ユーザが特定のプレイリストの再生を要求すれば、該当のプレイリストの曲構成に対応する既存のプレイリストのログデータを取得して電子機器１１０と共有してよい。一例として、再生長さ予測部３２０は、曲どうしの類似度に基づき、ユーザによる再生履歴があるプレイリストのうちから電子機器１１０が要求した特定のプレイリストの曲構成と対応する既存のプレイリストを探索し、該当のプレイリストの再生履歴情報を利用して特定のプレイリストの曲ごとに予想再生長さを算出してよい。
【００４６】
図７は、本発明の一実施形態における、曲どうしの類似度に基づいてプレイリストの曲ごとに予想再生長さを算出する過程の一例を示したフローチャートである。
【００４７】
段階７０１において、再生長さ予測部３２０は、各曲に対して該当の曲の音源データが入力されると、入力された音源データを学習データ形態で処理してよい。このとき、音楽コンテンツである曲は、オーディオファイルフォーマットを有するすべてのデジタルデータを意味してよく、例えば、ＭＰ３（ＭＰＥＧ  ＡｕｄｉｏＬａｙｅｒ−３）、ＷＡＶＥ（Ｗａｖｅｆｏｒｍ  ＡｕｄｉｏＦｏｒｍａｔ）、ＦＬＡＣ（Ｆｒｅｅ  Ｌｏｓｓｌｅｓｓ  ＡｕｄｉｏＣｏｄｅｃ）などを含んでよい。また、再生長さ予測部３２０には、曲に関するテキスト情報がともに入力されてよいが、このとき、テキスト情報は、歌詞を含むか、あるいは歌手、ジャンル、曲名、アルバム名などのようなメタ情報、さらに曲の分類や検索などと関連して入力されたハッシュタッグ（ｈａｓｈｔａｇ）、クエリ（ｑｕｅｒｙ）などの情報を含んでよい。続いて、再生長さ予測部３２０は、前処理によって音源データを時間−周波数で表現してよい。例えば、再生長さ予測部３２０は、音源データをメルスペクトログラム（Ｍｅｌ−ｓｐｅｃｔｒｏｇｒａｍ）やＭＦＣＣ（Ｍｅｌ  Ｆｒｅｑｕｅｎｃｙ  Ｃｅｐｓｔｒａｌ  Ｃｏｅｆｆｉｃｉｅｎｔ）のような時間−周波数−大きさ形態のデータに変換してよい。再生長さ予測部３２０に各曲に対するテキスト情報がともに入力された場合には、テキスト情報を前処理してよい。一例として、再生長さ予測部３２０は、形態素分析器、索引語抽出器などのような言語前処理器により、入力されたテキスト情報から無意味なテキストをフィルタリングしてよい。言い換えれば、再生長さ予測部３２０は、テキスト情報に含まれる助詞や助動詞などのような品詞の単語、特殊記号（例えば、！、？、／など）などを除去し、体言や語根に該当する単語を抽出してよい。
【００４８】
段階７０２において、再生長さ予測部３２０は、音源データに対して前処理された学習データを学習モデルによって学習して固有の特徴を生成した後、生成された固有の特徴をデータベース（図示せず）に記録してよい。再生長さ予測部３２０は、ディープラーニングを利用して音源データ自体の固有の音響特徴（ａｃｏｕｓｔｉｃ  ｆｅａｔｕｒｅｓ）を生成してよい。一例として、再生長さ予測部３２０は、畳み込みニューラルネットワーク（ＣＮＮ：Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）基盤の学習モデルを利用してよい。再生長さ予測部３２０は、ＣＮＮ学習モデルを利用して音源データを多次元実数ベクトルで表現してよい。ＣＮＮ学習モデルは音源データ学習層を含んでよく、以下の過程１〜３は、音源データ学習層で音源データに対応する実数ベクタルを生成する過程の例であってよい。
【００４９】
過程１において、曲の音源データ（一例として、ｍｐ３ファイル）は、前処理によってメルスペクトログラムやＭＦＣＣのような時間−周波数−大きさ形態のデータに変換されてよい。
【００５０】
過程２において、変換された音源データから１つ以上の短い時間区間（１〜１０秒）の複数の周波数フレームがサンプリングされて音源データの学習モデルに対する入力データとして使用されてよい。例えば、再生長さ予測部３２０は、複数のフレームをサンプリングし、音源データ学習層で音楽モデルの例として提示されるＣＮＮモデルの入力として活用してよい。これにより、音源データの学習のためのＣＮＮモデルは、サンプリングされたフレームと同じ数のチャネルを有するモデルとなる。あるいは、生成されたフレームそれぞれを単一チャンネルとして使用し、各フレームに対して固有の畳み込み／プーリング過程を経た後、生成された各フレームの特徴ベクトルを接合することで全結合層の入力として使用可能となる。
【００５１】
過程３において、音源データ学習層が含むことのできる複数の畳み込み（ｃｏｎｖｏｌｕｔｉｏｎ）およびプーリング（ｐｏｏｌｉｎｇ）層を繰り返し構成することにより、音楽フレームから抽象化された特徴（ｆｅａｔｕｒｅ）を生成してよい。畳み込みではパッチの大きさが多様に構成されてよく、プーリングも最大値（ｍａｘ）を利用したプーリング技法、平均値（ａｖｅｒａｇｅ）を利用したプーリング技法、および前記２つのプーリング技法を接合したハイブリッドプーリング技法などのような多様なプーリング技法のうちの少なくとも１つが使用されてよい。
【００５２】
複数の畳み込みおよびプーリング層上には音響特徴を生成するための全結合層（ｆｕｌｌｙ−ｃｏｎｎｅｃｔｅｄ  ｌａｙｅｒ）があり、各層別の関数は、シグモイド（ｓｉｇｍｏｉｄ）関数、双曲線（Ｈｙｐｅｒｂｏｌｉｃ  Ｔａｎｇｅｎｔ：ｔａｎｈ）関数、ＲｅＬＵ（Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）関数などのような多様な関数が使用されてよい。結局、音源データに対して１つの多次元実数ベクトルが生成されてよい。例えば、与えられた最初の音源データｍ０は、音楽学習モデルの出力層において、ｘ０＝｛０．２、−０．１、０．３、・・・}の形態のように１つの多次元実数ベクトルで表現されてよい。
【００５３】
また、再生長さ予測部３２０は、各曲に対してテキスト情報がともに入力された場合、テキスト情報も多次元実数ベクトルで表現してよい。一例として、再生長さ予測部３２０は、テキスト情報に対する前処理によってフィルタリングされたテキストを事前学習された学習モデルによってワードベクトル（ｗｏｒｄ  ｖｅｃｔｏｒ）として生成してよい。例えば、ワードベクトルは、数値型（ｎｕｍｅｒｉｃａｌ）多次元ベクトル形態で表現されてよい。ワードベクトル生成のために、単語出現頻度ヒストグラム、ＴＦ（ｔｅｒｍ  ｆｒｅｑｕｅｎｃｙ）／ＩＤＦ（ｉｎｖｅｒｓｅ  ｄｏｃｕｍｅｎｔ  ｆｒｅｑｕｅｎｃｙ）、言語学習モデル（例えば、ｗｏｒｄ２ｖｅｃ、ｐｈｒａｓｅ２ｖｅｃ、ｄｏｃｕｍｅｎｔ２ｖｅｃなど）などが使用されてよい。例えば、「イ・スンファン  良い日  バラード  １９９２」などのような歌手／ジャンル／曲名／年度は、１つのｎ次元実数ベクトルｖ＝｛０．３、−１．２、１．２、・・・}のように表現可能である。このとき、言語学習モデルのためのテキスト情報フィールド（歌手、ジャンル、曲名、年度など）の順に固定する必要はなく、目的に合うように変更可能である。
【００５４】
上述した再生長さ予測部３２０は、音源データの特徴ベクトルとテキスト情報のワードベクトルを曲ごとにデータベースに記録および維持してよい。音源データの特徴ベクトルとテキスト情報のワードベクトルはそれぞれ、個別のデータベースで構築されてもよいし、あるいは１つのデータベースで構築されてもよい。このようなデータベースは、サーバ１５０に含まれる構成要素によって実現されてもよいし、あるいはサーバ１５０と連動可能な個別のシステム上に構築された外部データベースとして存在してもよい。
【００５５】
段階７０３において、再生長さ予測部３２０は、曲それぞれに対してデータベースに記録された音源データに対する固有の特徴を利用して曲どうしの類似度を算出してよく、曲どうしの類似度に基づき、ユーザによる再生履歴があるプレイリストのうちから電子機器１１０が要求した特定のプレイリストの曲構成と対応するプレイリストを取得してよい。他の例として、再生長さ予測部３２０は、音源データの特徴ベクトルとともに、テキスト情報のワードベクトルを複合的に利用して曲どうしの類似度を算出することも可能である。言い換えれば、再生長さ予測部３２０は、曲どうしの類似度に基づき、電子機器１１０が要求した特定のプレイリストの曲と同一あるいは類似の曲で構成されたプレイリストを取得してよい。
【００５６】
段階７０４において、再生長さ予測部３２０は、段階７０３で取得したプレイリストの再生履歴情報を利用して特定のプレイリストを構成している各曲と対応する曲の多数のユーザによる実際の再生長さを平均する方式により、特定のプレイリストの曲ごとの予想再生長さを算出してよい。
【００５７】
図８に示すように、再生長さ予測部３２０は、電子機器１１０が要求した特定のプレイリストが、ｓｏｎｇ＿ｉ−＞ｓｏｎｇ＿ｉｉ−＞ｓｏｎｇ＿ｉｉｉ−＞ｓｏｎｇ＿ｉｖの順に構成されたＰｌａｙｌｉｓｔ＿I  ８００であるとするとき、曲の構成がｓｏｎｇ＿ｉ、ｓｏｎｇ＿ｉｉ、ｓｏｎｇ＿ｉｉｉ、ｓｏｎｇ＿ｉｖと同一あるいは類似の曲（ｓｏｎｇ＿ｉ’、ｓｏｎｇ＿ｉ’’、・・・、ｓｏｎｇ＿ｉｉ’、ｓｏｎｇ＿ｉｉ’’、・・・、ｓｏｎｇ＿ｉｉｉ’、ｓｏｎｇ＿ｉｉｉ’’、・・ｓｏｎｇ＿ｉｖ’、ｓｏｎｇ＿ｉｖ’’、・・・）を含むプレイリスト（Ｐｌａｙｌｉｓｔ＿１〜Ｎ）８１０を探索する。プレイリスト（Ｐｌａｙｌｉｓｔ＿１〜Ｎ）８１０にはＰｌａｙｌｉｓｔ＿I８００の曲構成ｓｏｎｇ＿ｉ−＞ｓｏｎｇ＿ｉｉ−＞ｓｏｎｇ＿ｉｉｉ−＞ｓｏｎｇ＿ｉｖのうちの少なくとも２曲以上が連続する曲構成（例えば、ｓｏｎｇ＿ｉ−＞ｓｏｎｇ＿ｉｉ、ｓｏｎｇ＿ｉｉ−＞ｓｏｎｇ＿ｉｉｉ、ｓｏｎｇ＿ｉｉｉ−＞ｓｏｎｇ＿ｉｖ）と対応するプレイリストが含まれてよい。
【００５８】
図９を参照すると、再生長さ予測部３２０は、電子機器１１０が要求した特定のプレイリスト８００に対応するプレイリスト８１０を探索し、該当のプレイリスト８１０の曲ごとに再生長さを平均してよい。例えば、特定のプレイリストの最初の曲であるｓｏｎｇ＿ｉと同一あるいは類似の曲（ｓｏｎｇ＿ｉ、ｓｏｎｇ＿ｉ’、ｓｏｎｇ＿ｉ’’）の実際の再生長さを平均し、特定のプレイリストの再生を要求したユーザによってｓｏｎｇ＿ｉがどのくらい再生されるかを予測してよい。特定のプレイリスト８００の曲構成と同一あるいは類似のプレイリスト８１０の再生履歴情報に基づくユーザによる再生長さが平均的に９０％、１０％、２０％、７５％である場合、ｓｏｎｇ＿ｉ−＞ｓｏｎｇ＿ｉｉ−＞ｓｏｎｇ＿ｉｉｉ−＞ｓｏｎｇ＿ｉｖの順に構成されたＰｌａｙｌｉｓｔ＿I８００に対する曲ごとの再生長さを９０％、１０％、２０％、７５％と予測してよい。
【００５９】
したがって、再生長さ予測部３２０は、ユーザが要求した特定のプレイリストに対して曲構成が同一あるいは類似のプレイリストを消費した他のユーザの再生ログを平均することにより、特定のプレイリストの曲ごとに再生長さを予測することができる。このとき、再生長さ予測部３２０は、プレイリストに対するユーザの再生ログが十分に蓄積されている場合には、他のユーザの再生ログではなくユーザの再生ログだけを利用して特定のプレイリストの曲ごとの再生長さを個人化して予測することも可能である。また、再生長さ予測部３２０は、電子機器１１０が特定のプレイリストを要求した時点の時間帯、天気、位置、社会的イシューなどとマッチングする追加情報を有する再生ログを利用することで、ユーザ状況による特定のプレイリストの曲ごとに再生長さを予測することも可能である。
【００６０】
再び図４を参照すると、段階４４０において、データ提供部３３０は、電子機器１１０が要求した特定のプレイリストに対して段階４３０で予測した曲ごとの再生長さに対応するリソースを分配し、特定のプレイリストの再生のための音源データを電子機器１１０に提供してよい。データ提供部３３０は、特定のプレイリストに対して予測された曲ごとの再生長さに合わせて曲の再生に必要なリソースを効果的に分配してプリフェッチを実施してよい。例えば、図１０に示すように、曲の構成が同一あるいは類似のプレイリストを消費した他のユーザの再生ログに基づき、ｓｏｎｇ＿ｉ−＞ｓｏｎｇ＿ｉｉ−＞ｓｏｎｇ＿ｉｉｉ−＞ｓｏｎｇ＿ｉｖの順に構成されたＰｌａｙｌｉｓｔ＿I８００の再生長さが曲ごとに９０％、１０％、２０％、７５％と予測された場合、電子機器１１０ではｓｏｎｇ＿ｉの音源データを９．０秒単位のチャンク（ｃｈｕｎｋ）で受信して再生すると同時に、ｓｏｎｇ＿ｉｉは１．０秒、ｓｏｎｇ＿ｉｉｉは２．０秒、ｓｏｎｇ＿ｉｖは７．５秒単位で該当の音源データを予めダウンロードして次の再生を準備するようにする。言い換えれば、データ提供部３３０は、電子機器１１０のユーザが要求した特定のプレイリスト８００に対し、最後まで再生される確率が高い曲の場合にはより多くのデータをより早くプリフェッチし、最後まで再生される確率が低い曲の場合にはより少ないデータをよりゆっくりプリフェッチする。
【００６１】
このように、本発明の実施形態によると、プレイリストの曲構成に基づき、曲ごとに該当の曲が最後まで再生される確率である再生長さを予測することができ、これに基づいて曲ごとにプリフェッチを効率的に実行することで、滑らかな再生環境を提供することができる。さらに、本発明の実施形態によると、プレイリストに対し、曲ごとの再生長さに基づいて不必要なデータフェッチを減らすことができ、これによってサービス全般にわたって消耗されるリソースを効率的に利用することができる。
【００６２】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および／またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ、マイクロコンピュータ、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、１つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム（ＯＳ）およびＯＳ上で実行される１つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、１つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および／または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは１つのプロセッサおよび１つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【００６３】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの１つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび／またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、１つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【００６４】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク、および磁気テープのような磁気媒体、ＣＤ−ＲＯＭおよびＤＶＤのような光媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）のような光磁気媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。
【００６５】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ／あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【００６６】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【図１】
2021519944.tif 000003
【図２】
2021519944.tif 000004
【図３】
2021519944.tif 000005
【図４】
2021519944.tif 000006
【図５】
2021519944.tif 000007
【図６】
2021519944.tif 000008
【図７】
2021519944.tif 000009
【図８】
2021519944.tif 000010
【図９】
2021519944.tif 000011
【図１０】
2021519944.tif 000012
【国際調査報告】
2021519944.tif 000013
2021519944.tif 000014
2021519944.tif 000015
2021519944.tif 000016