JP7523733B2 - ウェブコンテンツの自動高速表示制御方法 - Google Patents
ウェブコンテンツの自動高速表示制御方法 Download PDFInfo
- Publication number
- JP7523733B2 JP7523733B2 JP2022524779A JP2022524779A JP7523733B2 JP 7523733 B2 JP7523733 B2 JP 7523733B2 JP 2022524779 A JP2022524779 A JP 2022524779A JP 2022524779 A JP2022524779 A JP 2022524779A JP 7523733 B2 JP7523733 B2 JP 7523733B2
- Authority
- JP
- Japan
- Prior art keywords
- user terminal
- data
- web content
- processing unit
- original data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 139
- 238000012545 processing Methods 0.000 claims description 574
- 238000013473 artificial intelligence Methods 0.000 claims description 124
- 238000003860 storage Methods 0.000 claims description 62
- 230000009471 action Effects 0.000 claims description 14
- 238000004148 unit process Methods 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 67
- 238000010586 diagram Methods 0.000 description 58
- 238000004891 communication Methods 0.000 description 39
- 238000012360 testing method Methods 0.000 description 37
- 230000002441 reversible effect Effects 0.000 description 26
- 230000004044 response Effects 0.000 description 24
- 230000006870 function Effects 0.000 description 23
- 230000001276 controlling effect Effects 0.000 description 22
- 238000013500 data storage Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 22
- 238000005457 optimization Methods 0.000 description 19
- 230000008859 change Effects 0.000 description 18
- 238000010801 machine learning Methods 0.000 description 14
- 238000012544 monitoring process Methods 0.000 description 14
- 239000000463 material Substances 0.000 description 11
- 239000012218 nanoagent Substances 0.000 description 8
- 230000015572 biosynthetic process Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 235000014510 cooky Nutrition 0.000 description 6
- 238000009877 rendering Methods 0.000 description 6
- 230000004075 alteration Effects 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 5
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000013508 migration Methods 0.000 description 5
- 230000005012 migration Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000012384 transportation and delivery Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 239000000969 carrier Substances 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000010079 rubber tapping Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000004984 smart glass Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Description
このため同じ通信事業者間で同じ規格のフィーチャーフォン等の携帯情報端末を使う場合であれば、同じウェブコンテンツを問題なく表示できる。この一方で、例えば異なる通信事業者間で通信が行われる場合、ユーザが通信データの規格に合わないフィーチャーフォン等の携帯情報端末を使用する場合には、ユーザの携帯情報端末に正常にウェブコンテンツが表示されない問題が生じていた。
この問題に対応するために、異なる通信事業者間の通信データを、ユーザが使用する携帯情報端末の通信データの規格に合わせて変換する、いわゆる通信データ変換技術が進展してきた。この通信データ変換技術を用いて、表示の互換性を実現できる。
ウェブサイトの運営者は、CDNを提供する企業と契約して、企業が提供するCDNの方法を使うことができる。この場合、管理者が公開するウェブサイトのドメインは、CDNを提供する企業のドメインではなく、ウェブサイトの運営者が指定するドメインを使うことができる。これにより、ウェブサイトの運営者は自己のドメインを維持したまま、ユーザに対して強力なCDNの方法を提供することができる。
CDNの方法によれば、一つのウェブサーバに対して一度に多数の利用者端末からのアクセスが集中した場合でも、複数のウェブサーバ群同士で形成された通信網を通じて余力のあるウェブサーバを活用できるから、ウェブサーバの処理時間の遅延を防止して、ユーザの利用者端末からの多くのデータ要求に高速に対応できる。
タスクランナーの一つである、GULPと呼ばれる方法を用いた場合、ウェブコンテンツを表示するためのオリジナルデータは常時監視されている。そしてオリジナルデータに改変があったことが検知されると、自動的にオリジナルデータが改変され、ウェブコンテンツが自動的に即時更新される。
この様な調整としては、例えば、ユーザの利用者端末の高速表示を妨げる要素が前記オリジナルデータに存在するなら、このオリジナルデータに含まれる要素を削除する、オリジナルデータに含まれる要素処理を後回しにする等の方法、
ユーザの利用者端末に転送されるオリジナルデータの容量削減、圧縮等による、前記オリジナルデータの転送時間の削減等の方法等が挙げられる。
これらの調整は、ウェブコンテンツを提供するウェブサイトの管理者により通常実施される。そしてこれらの調整により、ウェブコンテンツはユーザの利用者端末に高速表示される。
通常ウェブコンテンツは日々更新されていくが、更新されたウェブコンテンツの中には、先に調整が完了しているウェブコンテンツの部分以外に、新たなウェブコンテンツの部分が追加されて調整が完了していないウェブコンテンツの部分が増加するからである。
またオリジナルデータの表示に要する時間よりも調整後のデータの表示に要する時間が短くなるとは限らない。
オリジナルデータに対して一律に同じ調整を行ったのではウェブコンテンツを利用者端末毎に表示する際に、不具合が生じる可能性がある。
このため、それぞれのオリジナルデータの内容を個別に把握した上で、それぞれのウェブコンテンツに適した対策を、利用者端末の種類に応じて実施する必要がある。
この結果、ウェブコンテンツを提供するウェブサイトの管理者は、ウェブコンテンツの高速表示のために多くの工程処理を常時要求されることが多い。
そしてこれらの調整は、一回の処理に数日以上の時間を要することもある。
しかし単位時間当たりのデータ転送容量を増大した場合でも上記の調整に多くの労力と時間がかかる問題は残ったままである。
同様にCDNを用いたデータ処理時間の遅延防止の方法を用いた場合でも、上記の調整に多くの労力と時間がかかる問題が残る。
先に説明した課題を解決するため、本発明者が鋭意検討した結果、前記(1)から(3)のステップを実施する際に、ウェブコンテンツを表示するためのオリジナルデータを利用者端末にそのまま送信するのではなく、サーバに設置されたリクエスト処理ユニットに利用者端末からのリクエストの送信があった場合、アプリケーション処理ユニットに保存されたオリジナルデータが、人工知能ユニットが立案した戦略案に基づいてデータ取得・処理ユニットで処理された後に、処理済みデータが利用者端末に送信されるステップを含むウェブコンテンツの自動高速表示制御方法が、本発明の目的に適うことを見出し、本発明を完成するに至った。
[1]ネットワークを通じて通信可能な一または二以上のサーバに対して利用者端末からリクエストが送信されてから、利用者端末にウェブコンテンツを表示するためのオリジナルデータがサーバから利用者端末に送信されて、ウェブコンテンツが利用者端末で入力受付可能になるまでに、
前記サーバに設置されたリクエスト処理ユニットに対して、利用者端末から送信されたリクエストが、アプリケーション処理ユニットと人工知能ユニットが受信するステップと、
アプリケーション処理ユニットが、ウェブコンテンツを表示するためのオリジナルデータをデータ取得・処理ユニットに対して送信するステップと、
人工知能ユニットが、ウェブコンテンツを利用者端末毎に表示する戦略案を立案するステップと、
データ取得・処理ユニットが、利用者端末にウェブコンテンツを表示するためのオリジナルデータを受信するステップと、
前記戦略案に基づいて、データ取得・処理ユニットによりオリジナルデータが加工されて、複数の加工済みデータが生成するステップと、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択されるステップと、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが、利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示されるステップと、
が実施され、
前記サーバが、一または二以上の物理マシン、一または二以上の仮想マシン、ならびに、一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境からなり、
前記戦略案を立案するステップが、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースのうち、
利用者端末毎に、利用者端末にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性を学習するステップと、
利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理するステップと、
を含むことを特徴とする、ウェブコンテンツの自動高速表示制御方法を提供するものである。
[2]リソースが、オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのデータを含み、
処理済みデータが、オブジェクト置換済みプログラムを含み、
リソース参照部分を有するオリジナルデータが、リソース参照部分をプログラムのオブジェクトに置換されて、オブジェクト置換済みプログラムが、生成するステップと、
前記オブジェクトが、識別情報と共にリソース毎に対応付けられるステップと、
利用者端末毎に、利用者端末に搭載されたブラウザでオブジェクト置換済みプログラムが実行されると、
オブジェクト置換済みプログラムに含まれるオブジェクトが識別情報によりリソースを特定し、そのリソースが実行されるステップと、
を含む、上記[1]に記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[3]利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理するステップが、
前記処理済みデータに含まれるプログラムのうち、実行させるプログラムを選択するステップ、
前記処理済みデータに含まれるプログラムのうち、優先して実行させるプログラムを選択するステップ、
前記処理済みデータに含まれるプログラムのうち、遅延して実行させるプログラムを選択するステップ、
前記処理済みデータに含まれるプログラムのうち、実行させるプログラムの実行順序を選択するステップ、
前記処理済みデータに含まれるプログラムのうち、実行させるプログラムの実行タイミングを選択するステップ、
および
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータを選択するステップ、
からなる群より選ばれる少なくとも一つのステップを含む、上記[1]または[2]に記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[4]オリジナルデータが、プログラムデータおよびバイナリデータの少なくとも一つを含み、
プログラムデータが、マークアップ言語、プログラミング言語、スタイルシート、スクリプト言語からなる群より選ばれる少なくとも一つを有するコードを含み、
バイナリデータが、画像ファイル、音ファイルおよび動画ファイルの少なくとも一つを含み、
リソースが、オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つを含み、
加工済みデータが生成されるステップが、
(1)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに不要部分が削除されるステップと、
(2)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに必要部分が圧縮されるステップと、
(3)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに実行順序が変更されるステップと、
(4)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに実行タイミングが変更されるステップと、
(5)オリジナルデータに含まれる、バイナリデータから、単位面積当たりの表示画素数、単位時間当たりの録画録音密度、容量および保存形式からなる群より選ばれる少なくとも一つが変換されるステップと、
の(1)~(5)からなる群より選ばれる少なくとも一つのステップを含み、
利用者端末毎にウェブコンテンツが表示されるステップが、
リクエストが利用者端末からネットワークを通じてリクエスト処理ユニットに送信されるステップと、
リクエスト処理ユニットに受信されたリクエストから、利用者端末毎の表示環境が特定されるステップと、
利用者端末のブラウザからリクエストがリクエスト処理ユニットに送信された後に、アプリケーション処理ユニットおよびデータ取得・処理ユニットの少なくとも一つからリソースが利用者端末毎に送信され、利用者端末毎のブラウザに表示されるステップと、
を含む、上記[1]~[3]のいずれかに記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[5]オリジナルデータが加工されて、複数の加工済みデータが生成するステップが、
前記データ取得・処理ユニットが通信可能な記憶領域に保存された利用者端末に関する機種情報データに基づいて、利用者端末毎に複数の加工済みデータが生成されるステップを含み、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択されるステップが、
利用者端末毎に、機種情報データに基づいて利用者端末の表示画面の表示環境を特定するステップと、
利用者端末毎に、ウェブコンテンツのうち、利用者端末の表示画面の表示環境に合わせて最初に表示されるウェブコンテンツの部分を特定するステップと、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示されるステップが、ウェブコンテンツのうち、利用者端末の表示画面の表示環境に合わせて最初に表示されるウェブコンテンツに対応する処理済みデータを利用者端末に優先して送信するステップと、
を含む、上記[1]~[4]のいずれかに記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[6]ウェブコンテンツが利用者端末毎に表示されるステップが、
ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分に対応するデータが利用者端末に送信されるステップと、
利用者端末に利用者端末の画面に最初に表示される部分に対応するウェブコンテンツの部分が表示されてから一定時間が経過したことを示すイベント情報、および、ユーザが利用者端末を操作して利用者端末に対して追加の情報を表示させる行動を起こしたことを示すイベント情報の少なくとも一つのイベント情報が、サーバおよびブラウザの少なくとも一つにより検出されるステップと、
前記イベント情報をアプリケーション処理ユニット、人工知能ユニット、データ取得・処理ユニットおよび利用者端末に搭載されたブラウザの少なくとも一つが検出した後に、ウェブコンテンツの残りの一部または全部の部分を表示するためのリソースが、アプリケーション処理ユニットおよびデータ取得・処理ユニットの少なくとも一つから、ネットワークを通じて利用者端末に送信されるステップと、
を含む、上記[1]~[5]のいずれかに記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[7]ウェブコンテンツが利用者端末毎に表示されるステップが、
ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分を表示するためのリソースが利用者端末に送信されるステップと、
ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分が入力受付可能になるまでの時間が伸縮するステップと、
を含む、上記[6]に記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[8]ウェブコンテンツを閲覧するユーザのユーザ体験に基づいて、ユーザとウェブコンテンツとのエンゲージメントのスコアが算出されるステップと、
前記エンゲージメントのスコアに基づいて、利用者端末毎に、ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分が入力受付可能になるまでの時間が伸縮するステップと、
を含む、上記[7]に記載のウェブコンテンツの自動高速表示制御方法を提供するものである。
[9]上記[1]~[8]のいずれかに記載のウェブコンテンツの自動高速表示制御方法を実施するためのプログラムであって、
ネットワークを通じて通信可能な一または二以上のサーバに対して利用者端末からリクエストが送信されてから、利用者端末にウェブコンテンツを表示するためのオリジナルデータがサーバから利用者端末に送信されて、ウェブコンテンツが利用者端末で入力受付可能になるまでに、
前記サーバに設置されたリクエスト処理ユニットに対して、利用者端末から送信されたリクエストが、アプリケーション処理ユニットと人工知能ユニットが受信する手段と、
アプリケーション処理ユニットが、ウェブコンテンツを表示するためのオリジナルデータをデータ取得・処理ユニットに対して送信する手段と、
人工知能ユニットが、ウェブコンテンツを利用者端末毎に表示する戦略案を立案する手段と、
データ取得・処理ユニットが、利用者端末にウェブコンテンツを表示するためのオリジナルデータを受信する手段と、
前記戦略案に基づいて、データ取得・処理ユニットによりオリジナルデータが加工されて、複数の加工済みデータが生成する手段と、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択される手段と、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが、利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示される手段と、
を備え、
前記サーバが、一または二以上の物理マシン、一または二以上の仮想マシン、ならびに、一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境からなり、
前記戦略案を立案する手段が、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースのうち、
利用者端末毎に、利用者端末にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性を学習する手段と、
利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理する手段と、
を含む、ウェブコンテンツの自動高速表示制御プログラムを提供するものである。
[10]上記[9]に記載されたウェブコンテンツの自動高速表示制御プログラムを記録した、記憶装置を提供するものである。
[11]上記[1]~[8]のいずれかに記載のウェブコンテンツの自動高速表示制御方法を実施するためのシステムであって、
ネットワークを通じて通信可能な一または二以上のサーバに対して利用者端末からリクエストが送信されてから、利用者端末にウェブコンテンツを表示するためのオリジナルデータがサーバから利用者端末に送信されて、ウェブコンテンツが利用者端末で入力受付可能になるまでに、
前記サーバに設置されたリクエスト処理ユニットに対して、利用者端末から送信されたリクエストが、アプリケーション処理ユニットと人工知能ユニットが受信する手段と、
アプリケーション処理ユニットが、ウェブコンテンツを表示するためのオリジナルデータをデータ取得・処理ユニットに対して送信する手段と、
人工知能ユニットが、ウェブコンテンツを利用者端末毎に表示する戦略案を立案する手段と、
データ取得・処理ユニットが、利用者端末にウェブコンテンツを表示するためのオリジナルデータを受信する手段と、
前記戦略案に基づいて、データ取得・処理ユニットによりオリジナルデータが加工されて、複数の加工済みデータが生成する手段と、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択される手段と、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが、利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示される手段と、
を備え、
前記サーバが、一または二以上の物理マシン、一または二以上の仮想マシン、ならびに、一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境からなり、
前記戦略案を立案する手段が、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースのうち、
利用者端末毎に、利用者端末にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性を学習する手段と、
利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理する手段と、
を含む、ウェブコンテンツの自動高速表示制御システムを提供するものである。
このため、本発明に係る方法によれば、これまでサーバに対してリクエストを送信していない利用者端末から最初のリクエストがあった場合でも、初回から、オリジナルデータに基づくウェブコンテンツが利用者端末で入力受付可能になる時間よりも短い時間で、処理済みデータに基づくウェブコンテンツが利用者端末毎に受付可能になる状態を実現できる。
このため、人間がオリジナルデータの状態や処理済みデータの状態を目視により確認、編集する必要がなく、ウェブコンテンツの自動高速表示が実現される。
このためサーバにリクエスト処理ユニットを設置するだけで、また必要に応じてマイグレーションおよびDNSの変更の少なくとも一つを行うだけで、本発明のウェブコンテンツの自動高速表示制御方法を実施できるから、簡単な操作でウェブコンテンツの自動高速表示を実現することができる。
[図2] 図2は、本発明に使用するアプリケーション処理ユニットAを説明するための模式図である。
[図3] 図3は、本発明に使用する人工知能ユニットを説明するための模式図である。
[図4] 図4は、本発明に使用するリクエスト処理ユニットを説明するための模式図である。
[図5] 図5は、本発明に使用するデータ取得・処理ユニットを説明するための模式図である。
[図6] 図6は、本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法に使用される利用者端末101のハードウェア構成の一例を説明するための図である。
[図7] 図7は、本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法に使用されるアプリケーション実行サーバのハードウェア構成を説明するための図である。
[図8] 図8は、本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法に使用される、アプリケーション実行サーバ103の記憶装置1101に含まれるハードウェア構成の詳細を説明するための模式図である。
[図9] 図9は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図10] 図10は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図11] 図11は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図12] 図12は、オリジナルデータ200がどのように処理されるかを説明するための概念図である。
[図13] 図13は、オリジナルデータ200がどのように処理されるかを説明するための概念図である。
[図14] 図14は、処理済みデータの生成と、リソースの最適化との関係を説明するためのフローチャートである。
[図15] 図15は、本発明の実施形態1に使用する、データ取得・処理ユニットDの設定ファイル格納部1523に保存された機種情報ファイル126の一例を示す概念図である。
[図16] 図16は、処理前のHTMLファイルと最適化されたHTMLファイルとの対応関係を説明するための概念図である。
[図17] 図17は、利用者端末の表示環境ごとに不要部分が削除されるステップを説明するためのフローチャートである。
[図18] 図18は、利用者端末の表示環境ごとに必要部分が圧縮されるステップを説明するためのフローチャートである。
[図19] 図19は、HTMLファイル113に記載されたスクリプト言語ファイル部分108a~108dが直列的に実行されるステップを説明するための図である。
[図20] 図20は、HTMLファイル113に記載されたスクリプト言語ファイル部分108a~108cとスクリプト言語ファイル108dとが並列的に実行されるステップを説明するための図である。
[図21] 図21は、HTMLファイル113に記載されたスクリプト言語ファイル108dの実行が後回しにされるステップを説明するための図である。
[図22] 図22は、処理済みデータが生成されるステップを説明するためのフローチャートである。
[図23] 図23は、オリジナルデータ200に追加、移動、削除、変更等の改変があったことを知らせる信号が動作制御部へ送信されるステップを説明するためのフローチャートである。
[図24] 図24は、本発明の実施形態2に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムであり、リバースプロキシ型の構成を記載した概略図である。
[図25] 図25は、本発明の実施形態2に係るウェブコンテンツの自動高速表示制御方法に使用される、リバースプロキシサーバ1703の記憶装置1701に含まれるハードウェア構成の詳細を説明するための図である。
[図26] 図26は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図27] 図27は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図28] 図28は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図29] 図29は、本発明の実施形態3に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムであり、ナノエージェント型の構成を記載した概略図である。
[図30] 図30は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図31] 図31は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図32] 図32は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図33] 図33は、本発明の実施形態4に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムであり、SaaS型の構成を記載した概略図である。
[図34] 図34は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図35] 図35は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図36] 図36は、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
[図37] 図37は、利用者端末101にウェブコンテンツ211が高速表示される仕組みを説明するための概念図である。
[図38] 図38は、ユーザ体験がどのようにウェブコンテンツの自動高速表示を実現するステップに反映されるかを説明するためのフローチャートである。
以下に、それぞれの実施形態について図面を参照しつつ説明する。なお、本発明は以下の実施形態に限定されるものではない。
図1は、本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムを説明するための模式図である。本発明の実施形態1では、一つの例として、A~Dの四つのユニットが一つの実行環境内に構築されている。
ユーザは利用者端末101を操作して、ネットワーク102を通じて、アプリケーション実行サーバ103と通信できる。
このリクエストは、利用者端末101に搭載されたブラウザ等にウェブコンテンツを表示するためのデータの送信をアプリケーション実行サーバ103に求めるものである。このリクエストは、最初にリクエスト処理ユニットCに送信される。
利用者端末101から送信されたリクエストに基づいて、アプリケーション処理ユニットAに保存されているオリジナルデータが加工される。このオリジナルデータは、ウェブコンテンツを利用者端末101毎に表示するためのデータである。
オリジナルデータの加工は、人工知能ユニットBの立案した戦略案に基づいて、データ取得・処理ユニットDにより実施される。
最初にこれらのAからDの四つのユニットについて説明する。
図2は、本発明に使用するアプリケーション処理ユニットAを説明するための模式図である。
本発明に使用するアプリケーション処理ユニットAは、ウェブコンテンツを表示するためのオリジナルデータ200等を保存し、利用者端末101、各ユニット等に利用者端末101毎からのリクエスト、オリジナルデータ200に含まれるリソース等を送信する機能を主として担う。
図2では、データがファイル形式で管理できることを模式的に示している。
このHTMLファイル113は、例えば、データベース1106に関連付けられたPHP105等のプログラムにより、動的または静的に生成される。
これらのリソースは適宜HTMLファイル113から参照され、実行することができる。また、HTMLファイル113内部に直接記載されたCSSのスタイルシート、JavaScript(登録商標)等のプログラム等を実行することもできる。
図3は、本発明に使用する人工知能ユニットを説明するための模式図である。
本発明に使用する人工知能ユニットBは、それぞれのAからDの各ユニットに対して動作の指針を与える、司令塔としての機能を主として担う。
具体的には、例えば、アプリケーション処理ユニットAに保存されているオリジナルデータ200を、利用者端末101のそれぞれの表示環境に応じて加工する、複数の加工済みデータ201の中から利用者端末101毎に最適なものを選択する、加工済みデータ201に含まれるプログラムの実行順序、実行タイミング等を決定する等の一または二以上の戦略案を生成する。人工知能ユニットBの人工知能制御部1410により、戦略案としての戦略ファイル1412が人工知能記憶領域1430に生成される。
この戦略案は、例えば、戦略ファイル1412として人工知能ユニットBが利用できる保存領域に保存することができる。戦略ファイル1412は、人工知能ユニットB内部に保存される場合に限定されず、例えば、人工知能ユニットBの外部に保存して、人工知能ユニットBが利用できるようにすることもできる。
図4は、本発明に使用するリクエスト処理ユニットを説明するための模式図である。
本発明に使用するリクエスト処理ユニットCは、先に示した図1に例示されるように、ユーザが操作する利用者端末101のブラウザ等から送信されたリクエストを最初に受信する、いわば通信ゲートとしての機能を主として担う。
図4では、一つの例として、アプリケーション実行サーバ103にアプリケーション処理ユニットA、人工知能ユニットB、リクエスト処理ユニットCおよびデータ取得・処理ユニットDが配置されている場合が図示されている。
本発明の実施形態1の場合は、例えば、一つの実行環境であるアプリケーション実行サーバ103が使用されている。
この実行環境は、例えば、複数の物理マシン、複数の仮想マシン、複数のコンテナ等から構成される場合であっても、一つの物理マシンが実際に存在するかのように運用することができる。
図5は、本発明に使用するデータ取得・処理ユニットを説明するための模式図である。
本発明に使用するデータ取得・処理ユニットDは、アプリケーション処理ユニットAから、リクエスト処理ユニットCを通じてオリジナルデータ200等を取得し、それぞれの利用者端末101に適したリソースの最適化等を実施する機能を主として担う。
データ取得・処理ユニットDは、例えば、最適化ユニットd100、クローラーユニットd200およびコントロールユニットd300等を含む。
利用者端末101の具体例としては、例えば、スマートフォン、フィーチャーフォン等の携帯情報端末、PDA(PERSONAL DIGITAL ASSISTANT)、タブレット等の情報表示端末、スマートウォッチ、スマートメガネ等のウェアラブル通信端末、PC(PERSONAL COMPUTER)等のコンピュータ等が挙げられる。
図4では、一つの利用者端末101が例示されているが、実際には一または二以上の利用者端末101を使用することができる。
ネットワーク102は、光ファイバー・通信用電線等を利用した有線、赤外線・電波等の電磁波等を利用した無線等を通じて、利用者端末101、各種実行環境等に対して相互に通信できる環境を提供できる。
図6は、本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法に使用される利用者端末101のハードウェア構成の一例を説明するための図である。
[利用者端末101のハードウェア構成]
最初に利用者端末101のハードウェア構成について説明する。
利用者端末101は、例えば、中央演算処理装置1000(CPU、CENTRAL PROCESSING UNIT)、記憶装置1001、通信用インターフェイス1002、入力装置1003および表示装置1004等のハードウェア構成を備える。これらのハードウェア構成はそれぞれ接続されていて相互に通信が可能である。
中央演算処理装置1000の構成は、一つのマイクロプロセッサを搭載するものに限定されず、二以上のプロセッサを搭載するマルチプロセッサを含むものであってもよい。
主記憶部としては、例えば、RAM等の揮発性メモリが使用される。また補助記憶部としては、例えば、ハードディスク、ソリッドステートディスク、フラッシュメモリ等の不揮発性メモリが使用される。
記憶装置1001には、例えば、利用者端末101で使用することのできるブラウザについてのアプリケーションプログラム等が保存されている。このブラウザによりウェブコンテンツを利用者端末101で閲覧することができる。
また通信用インターフェイス1002は、利用者端末101からネットワーク102を介してリクエスト処理ユニットC等に各種データを送信する。
入力装置1003としては、例えば、タッチパネル、タッチパッド、マウス、キーボード、カメラ、マイク等が挙げられる。
例えば、タッチパネルやタッチパッドの場合には、ユーザの指による操作、タッチペン等の専用の入力具による操作等により各種データの入力を受け付ける。
表示装置1004としては、例えば、液晶パネル、LEDパネル、有機ELパネル、液晶モニタ、LEDモニタ、有機ELモニタ等が挙げられる。表示装置1004は各種データの入力を受け付けるタッチパネルであってもよい。
次にアプリケーション実行サーバ103のハードウェア構成について説明する。なお、アプリケーション実行サーバ103は全体として一つの実行環境から構築されているものであれば、その構成に特に限定はない。
ここでは、一例として、アプリケーション実行サーバ103のハードウェア構成が物理マシンにより構成される場合を例に挙げて説明する。アプリケーション実行サーバ103の構成は、先に説明した通り、物理マシンにより構成される場合に限定されない。一または二以上の物理マシン、一または二以上の仮想マシンならびに一または二以上のコンテナ等からなる群より選ばれる少なくとも一つの実行環境を選択した場合でも、一つの物理マシンにより構成される実行環境と同様の実行環境を構築して、本発明の実施形態1に使用することができる。
アプリケーション実行サーバ103は、例えば、中央演算処理装置1100(CPU、CENTRAL PROCESSING UNIT)、記憶装置1101、通信用インターフェイス1102、入力装置1103および表示装置1104等のハードウェア構成を備える。
これらのハードウェア構成はそれぞれ接続されていて相互に通信が可能である。
中央演算処理装置1100の構成は、一つのマイクロプロセッサを搭載するものに限定されず、二以上のプロセッサを搭載するマルチプロセッサを含むものであってもよい。
図7では、一例として記憶装置1101の内部にリクエスト処理ユニットC等の各ユニットが設置されている。AからDの各ユニットは、一つの記憶装置1101に設置してもよいし、AからDの各ユニットが相互に通信可能であれば、異なる記憶装置に分散して設置することもできる。
またリクエスト処理ユニットCからネットワーク102を通じて利用者端末101に各種データを送信する。
入力装置1103としては、例えば、タッチパネル、タッチパッド、マウス、キーボード、カメラ、マイク等が挙げられる。
表示装置1104としては、例えば、液晶パネル、LEDパネル、有機ELパネル、液晶モニタ、LEDモニタ、有機ELモニタ等が挙げられる。表示装置1104は各種データの入力を受け付けるタッチパネルであってもよい。
次にアプリケーション実行サーバ103の記憶装置1101に含まれるハードウェア構成の詳細について説明する。
図8は、本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法に使用される、アプリケーション実行サーバ103の記憶装置1101に含まれるハードウェア構成の詳細を説明するための模式図である。
OS1105は市場から有償または無料で入手できる。
また記憶装置1101にはアプリケーション処理ユニットA、人工知能ユニットB、リクエスト処理ユニットCおよびデータ取得・処理ユニットDが設置されている。
本発明の実施形態1では、発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法は、例えば、動作環境に含まれるOS1105上で各ユニットに含まれるプログラムを中央演算処理装置1100により動作させて実現される。
図8に示されるように、アプリケーション実行サーバ103はアプリケーション処理ユニットAを備えている。
アプリケーション処理ユニットAは、オリジナルデータ200を保存するためのオリジナルデータ記憶領域104およびデータベース1106に加えて、加工済みデータ記憶領域130を備えている。
この加工済みデータ記憶領域130は、アプリケーション処理ユニットAの他に、例えば、データ取得・処理ユニットD内に設けることができる。
オリジナルデータ200に改変があったことを知らせる信号は人工知能ユニットBおよびデータ取得・処理ユニットDの少なくとも一方に送信される。
アプリケーション実行サーバ103の時間実行制御部1120は、ネットワーク102を通じて正確な現在時刻を入手できる。時間実行制御部1120の時間実行記憶部1521に、いつ、どのタイミングで、何を実行するかの情報を記載した実行プログラム1122が保存されている。
時間実行制御部1120は、データ取得・処理ユニットDに設置することもできる。
時間実行制御部1120により、定められた日の定められた時刻に実行が必要な各種ステップを実施することができる。
先の図3に例示されるように、アプリケーション実行サーバ103の記憶装置1101に設置された人工知能ユニットBは、人工知能制御部1410を備えている。
人工知能制御部1410は、例えば、Python、C++、JavaScript(登録商標)等のプログラミング言語等により記載されたプログラム等がアプリケーション実行サーバ103に搭載されたOS等を含む実行環境で実行できる。人工知能制御部1410は戦略ファイル1412を生成することができる。生成された戦略ファイル1412は、人工知能記憶領域1430に保存される。また戦略ファイル1412をデータベース1106等に関連付けて保存することができる。
リクエスト処理ユニットCは、ネットワーク102を通じて利用者端末101等との通信を可能にし、各ユニット間等でデータを通信できる機能を持つ。
図4および図8に示されるように、アプリケーション実行サーバ103の記憶装置 1101に設置されたリクエスト処理ユニットCは、例えば、アプリケーション実行サーバ103の通信用インターフェイス1102を介して、ネットワーク102を通じてデータの入出力が可能な通信データ制御部1510を備えている。
先の図5に例示されるように、アプリケーション実行サーバ103の記憶装置1101に設置されたデータ取得・処理ユニットDは、例えば、最適化ユニットd100、クローラーユニットd200およびコントロールユニットd300を含むことができる。
最適化ユニットd100、クローラーユニットd200およびコントロールユニットd300は、Python、C++、JavaScript(登録商標)等のプログラミング言語等によりアプリケーション実行サーバ103に搭載されたOSを含む実行環境上で実行できる。
データ取得・処理ユニットDにより処理されたデータは、データベース1106等に保存することができる。
またオリジナルデータ200等を監視し、オリジナルデータ200等に変更があった場合には、その変更に応じた加工済みデータ等のリソースが最適化ユニットd100に搭載されたプログラムにより生成される。
次に本発明の実施形態1に係るウェブコンテンツの自動高速表示制御方法に使用されるオリジナルデータ200について説明する。
具体的には、プログラムデータ(1)としては、例えば、
HTML、XML等のマークアップ言語、
PHP、Perl、Java(登録商標)、C、Lua等のプログラミング言語、
CSS、SCSS等のスタイルシート、JavaScript(登録商標)、TypeScript(登録商標)、JavaScript(登録商標)のライブラリであるJQuery(登録商標)等のスクリプト言語等の一つもしくは二以上を含むデータ等が挙げられる。
また、バイナリデータ(2)としては、例えば、
画像ファイル、音ファイル、動画ファイル等の一つもしくは二以上のデータ等が挙げられる。
またバイナリデータ(2)には、例えば、音データ、画像データ、動画データ等の人間の五感で知覚できるデータ等が含まれる。
またPHP、Perl、Java(登録商標)、C、Lua等のプログラミング言語は、実際にアプリケーション実行サーバ103等を動作させ、ウェブコンテンツを利用者端末101毎に表示できる言語である。
CSS、SCSS等のスタイルシートは、主として利用者端末101のブラウザ等に表示される文字、数字、記号、画像等の位置、大きさ、種類等のデザイン構成を制御するプログラムである。
またJavaScript(登録商標)、TypeScript(登録商標)、JavaScript(登録商標)のライブラリであるJQuery(登録商標)等のスクリプト言語は、主として、利用者端末101に表示されたウェブサイト等のユーザによるボタン等に対するクリック操作、スクロール操作等の処理をはじめ、ウェブコンテンツを利用者端末101に表示するために必要な多種多様な処理を行うプログラムである。
PHPファイル105等に記載された変数に対応するデータをデータベース1106にあらかじめ書き込み保存する。
そしてPHPファイル105等に記載された変数を元に、データベース1106に保存されたデータを呼び出すことができる。
通常は、HTMLファイル113は動的に生成される。以下、同様である。
図9~図11のそれぞれは、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
図9~図11のそれぞれは、縦軸が時間を示し、横軸がデータの流れを示している。
ユーザが操作する利用者端末101のブラウザ等から送信されたリクエストは、ネットワーク102を通じてリクエスト処理ユニットCに送信される。
リクエストを受信したリクエスト処理ユニットCは、リクエストをアプリケーション処理ユニットAに送信する。リクエストを受信したアプリケーション処理ユニットAは、ユーザの利用者端末101にウェブコンテンツを表示するためのHTMLファイル113等を、例えば動的に生成する。
または人工知能ユニットBで立案された戦略案に基づいてダウンロードを待機することもできる。
このダウンロードは、アプリケーション処理ユニットAのオリジナルデータ記憶領域104に保存されている、HTMLファイル113が参照するリソースが、アプリケーション処理ユニットA、リクエスト処理ユニットCを経て、ネットワーク102を通じて利用者端末101に送信されることを意味する。
具体的には、利用者端末101のブラウザ等から送信されたリクエストが、ネットワーク102を通じてリクエスト処理ユニットCに送信される。次にリクエスト処理ユニットCからリクエストがアプリケーション処理ユニットAに送信される。
リクエストを受信したアプリケーション処理ユニットAは、レスポンスとして、例えば、HTMLファイル113等のデータをリクエスト処理ユニットCに送信する。
最適化されたHTMLファイル113zについてのデータは、データ取得・処理ユニットD、人工知能ユニットBおよびリクエスト処理ユニットCを経て、ネットワーク102を通じてユーザの利用者端末101に送信される。
データ取得・処理ユニットDで、HTMLファイル113に含まれるリソースを参照する部分が、プログラムのオブジェクトに置換されて、最適化されたHTMLファイル113zが生成する。このオブジェクトのそれぞれには、対応するリソースを特定するための識別情報が付与されている。最適化されたHTMLファイル113zはオブジェクト置換済みプログラムの一例である。
オリジナルデータ200に変化があると、データ取得・処理ユニットDに設置されたクローラーユニットd200はオリジナルデータ200をクロールし、自動的に最適化リソースが生成される。
図12および図13は、オリジナルデータ200がどのように処理されるかを説明するための概念図である。
オブジェクト置換済みプログラムが参照するリソースに対応するリソースが加工されて最適化リソースが生成されるステップと、
が含まれる。
利用者端末101にウェブコンテンツを表示するためのプログラムデータとしては、例えば、HTML、XML等のマークアップ言語、PHP、Perl、Java(登録商標)、C、Lua等のプログラミング言語の少なくとも一つが記載されたプログラムデータ等が挙げられる。
図12では、利用者端末101にウェブコンテンツを表示するためのオリジナルデータ200に含まれるマークアップ言語およびプログラミング言語の少なくとも一方が記載されたデータの一例として、HTMLファイル113が例示さている。
HTMLファイル113には、例えば、ヘッド部分113iおよびボディ部分113j等が含まれる。
図13では、例えば、図12に例示されたHTMLファイル113のうち、参照部分の全てが識別情報と共にオブジェクトに変換されている様子が例示さている。
HTMLファイル113には参照部分が含まれているが、この参照部分は、HTMLファイル113に直接記載されたスタイルシート、プログラム等の参照部分と、HTMLファイル113の外部に記載されたスタイルシート、プログラム等の参照部分等が存在する。
なおこの識別情報は、マークアップ言語等に記載されている参照部分とオブジェクトとの対応関係を定めるものであり、一つの参照部分に対して一つのオブジェクトを特定できる一意の情報である。
HTMLファイル113の記載内容および人口知能ユニットBが生成した戦略ファイルの内容から規則に従って形式的に置換箇所を決定することができ、識別情報と共にオブジェクトで置換するだけで、最適化されたHTMLファイル113zを高速に生成することができる。
また最適化されたHTMLファイル113zのボディ部分113jには、最適化されたHTMLファイル113zに識別情報と共にオブジェクトを挿入するためのオブジェクト113o10が記載されている。
加えて、最適化されたHTMLファイル113zのボディ部分には、利用者端末101のブラウザ等で実行されるプログラムが、オブジェクト113o20、113o21等として挿入されている。
次に本発明の実施形態1で使用される最適リソースが生成されるステップについて説明する。
最適リソースとしては、例えば、先に説明したプログラムデータ(1)およびバイナリデータ(2)の少なくとも一つを加工して得られるリソース等が挙げられる。
例えば、静的に生成されてアプリケーション処理ユニットAに保存されているか、または動的に生成されてアプリケーション処理ユニットAに保存されているHTMLファイル113は、ウェブコンテンツを利用者端末101に表示するためのCSSファイル107、スクリプト言語ファイル108および画像ファイル109への参照部分等、リソースへの参照部分等が記載されている。
このHTMLファイル113に記載されたプログラムの実行に伴い、ウェブコンテンツが生成される。
逆に利用者端末101が、例えば、スマートフォン場合には必要なオリジナルデータ200も、利用者端末101がPCの場合には必要とされないオリジナルデータ200の部分を含む。
さらには利用者端末101がスマートフォン場合の場合であっても、異なる複数のスマートフォン間では必要とされるオリジナルデータ200の部分も異なる場合もある。
加えて利用者端末101に搭載されているブラウザの種類によっても、必要とされるオリジナルデータ200の部分が異なる場合がある。
オリジナルデータ200にはマークアップ言語により記載されたデータが含まれる。
またマークアップ言語の記載には、直接記載されたスタイルシート、プログラミング言語、スクリプト言語等の参照情報が含まれる。
またマークアップ言語の記載には、外部のスタイルシート、外部のスクリプト言語、外部のバイナリデータ等への参照情報が含まれる。
なお、ここでいう「外部」とは、マークアップ言語の記載に直接記載はされていないが、マークアップ言語の記載から参照することによりウェブコンテンツとして活用できるものをいう。
また、HTMLファイル113が参照する複数のCSSファイル107の外部のファイル部分および複数のスクリプト言語ファイル108の外部のファイル部分等が含まれる。
画像ファイル、音ファイル、動画ファイルなどの一種もしくは二種以上の外部のファイルに関する参照部分もHTMLファイル113に記載されている。
図14は、処理済みデータの生成と、リソースの最適化との関係を説明するためのフローチャートである。
前提として、機種情報ファイルに記載された全てのユーザの利用者端末101にオリジナルデータ200は通常表示可能である。
通常は、利用者端末101の表示に不具合が生じないように、オリジナルデータ200が作成されているからである。
仮にオリジナルデータ200に不具合がある場合には、例えば、データ取得・処理ユニットDに搭載されたヘッドレスブラウザ等のエミュレータ等により、不具合が検出される。この検出された不具合についての情報を元に、個別に不具合を修正することができる。
先の図2で示した通り、プログラムデータには、例えば、HTMLファイル113、CSSファイル107、スクリプト言語ファイル108等の一種もしくは二種以上が含まれる。
データ取得・処理ユニットDによるプログラムデータの全部または一部のデータの処理としては、例えば、プログラムデータに含まれる、省略可能なプログラム等の削除、プログラム等の圧縮、処理順序の変更、処理タイミングの変更等が挙げられる。
ステップS1023とステップS1024の処理は直列に実施されているが、同時に並行して実施することもできる。
オリジナルデータ200に含まれるそれぞれのリソースに対する処理は、同じリソースについて、一回もしくは複数回実施される。
それぞれのリソースに対する処理が実施された回数に対応する、加工済みプログラムデータ、加工済みバイナリデータが得られる。
先のステップS1023およびステップS1024はオリジナルデータ200に含まれるそれぞれのリソースに対する処理である。
同様に、全てのオリジナルデータ200に含まれる、それぞれのウェブページについて、それぞれ複数の処理済みデータ210が生成される。
なお、本発明の開示においては、「表示完了時間」とは、利用者端末101からリクエストが送信されてから、利用者端末101に搭載されているブラウザ等で、そのリクエストに対応するウェブページがユーザにより入力受付可能になるまでの時間をいう。
また「入力受付可能」とは、利用者端末101に搭載されているブラウザが、ユーザによるタップ、クリック、ドラッグ、ドロップ等の操作、テキスト入力等の操作に対して反応する状態になることをいう。
実際にユーザの利用者端末101から、リクエスト処理ユニットCがリクエストを受信した直後に、リクエストが人工知能ユニットB、データ取得・処理ユニットDの順に送信される。
データ取得・処理ユニットDの制御部1512でリクエストの内容が解析される。リクエストの内容に応じて、それぞれの利用者端末101に表示されるウェブコンテンツが選択される。
またリクエスト処理ユニットCがリクエストを受信してから利用者端末101が入力受付可能になるまでの時間は200m秒以内であれば好ましく、100m秒以内であればさらに好ましい。
人間が視覚、聴覚等の五感により情報を受け取ってから、実際に行動に移るまでの時間は通常0.2秒程度である。200m秒以内にリクエスト処理ユニットC等が応答すれは、利用者端末101を利用するユーザは、ウェブコンテンツがリアルタイムに利用者端末101のブラウザ等に表示されていると感じることができる。
また利用者端末101にダウンロードされていなくても、利用者端末101のブラウザ等からネットワーク102を通じて参照することが可能なリソース等を利用者端末101のブラウザ等で実行することもできる。
これらのリソースは先に説明したオブジェクトにより最適化されたHTMLファイル113zで管理されているため、その取捨選択を高速で実施できる。
次にオリジナルデータ200から、処理済みデータ210が生成されるステップについて詳しく説明する。
Nodeオブジェクトには、段落、見出し、箇条書き等を識別する記号であるマークアップが含まれる。
また利用者端末101の種類に応じて一または二以上存在する。
またプログラムデータは、マークアップ言語、プログラミング言語、スタイルシート、スクリプト言語などの一種もしくは二種以上で記載されたプログラム等を含む。
これらの表示環境の違いはそれぞれの利用者端末101についての公開された入手可能な機種情報により特定される。
実行させないプログラムの部分の具体例としては、例えば、利用者端末101の表示装置1104に表示されない部分に寄与するプログラムの部分等が挙げられる。
利用者端末101毎に実行させるプログラムの部分および実行させないプログラムの部分を特定するためには、例えば、機種情報ファイル126に記載された全ての利用者端末101の情報に基づいて、利用者端末101毎に、事前に実際に予備試験を行って決定する。また本願発明の実施、予備試験等により得られたデータを学習して得られた学習済みモデルに従って決定する等の手法が採用される。
予備試験や実際の本願発明の実施により得られたデータを用いて、人工知能ユニットBによる機械学習等によってモデルを形成することができる。形成された学習済みモデルから得られる、リスク許容度内の予測は、予備試験の結果と同等に扱うことができる。
オリジナルデータ200のどの部分が利用者端末101の実行に必要なプログラムに該当するかどうかの許容度の判断については、全ての利用者端末101または任意に抽出された利用者端末101について、事前に実際に予備試験等を行って検証することもできる。
不具合が生じるかどうかについては、例えば、データ取得・処理ユニットDに搭載された利用者端末101に対応するヘッドレスブラウザ等のエミュレータを用いた予備試験等により、エラー信号が生じるかどうかを手がかりに、事前に調べることができる。このエラー信号がデータ取得・処理ユニットDの制御部1512で検出されると、実行させないプログラムの部分を選択する際に、どの段階で不具合が生じたのかを特定することができる。
オリジナルデータ200に基づくキャプチャ画面と、その後のキャプチャ画面とを比較し、両者が一致しなくなった時点で最後に外した実行させないプログラムの部分が、本来なら実行させるプログラムの部分に該当することが分かる。
この操作を機械学習等を通じてモデルを形成することにより、問題を生じさせるプログラムの部分を検出することができる。
この操作を実現させるプログラムがデータ取得・処理ユニットDの制御部1512に保存されている。このデータ取得・処理ユニットDの制御部1512に保存されているプログラムを実行することにより、上記の操作が自動で実施される。
一つの例として、ここではファーストビューと呼ばれる利用者端末101の画面に最初に表示されるウェブコンテンツ211の部分の表示が優先される場合を取り上げて説明する。
なお、ファーストビューの表示がどのように実現されるかについては、本発明に係る実施形態5で、さらに詳細に説明する。
処理済みデータ210が生成されるステップは、オリジナルデータに含まれるリソース、すなわち、マークアップ言語、プログラミング言語、スタイルシート、スクリプト言語等の一種もしくは二種以上を有するプログラムデータと、オリジナルデータに含まれる画像ファイル、音ファイル、動画ファイルなどの一種もしくは二種以上のバイナリデータのそれぞれについて実施される。
先の図13では、処理前のHTMLファイル113に記載されたプログラムデータ、バイナリデータ等の参照部分が、プログラムの関数に使用されるオブジェクトに置換されることを説明した。
図16では、処理前のHTMLファイル113に記載されたプログラムデータ、バイナリデータ等の参照部分が具体的にどのように最適化されたHTMLファイル113zに対応して反映されるかについて説明する。
7a,107b,107c、スクリプト言語コード部分108a,108b,108c等を含む。
バイナリデータから、単位面積当たりの表示画素数、単位時間当たりの録画録音密度、容量の大きさ、保存形式等の一種もしくは二種以上が変換されるステップ等の一種もしくは二種以上を含む。
図17は、利用者端末の表示環境ごとに不要部分が削除されるステップを説明するためのフローチャートである。
なお、一定回数処理を行っても対応する処理が実行できない場合には、そのステップを終了して次のステップの処理が実行される。以下のステップについても同様である。
例えば、実際の削除は、オブジェクトとして何も指定しないことにより簡単に実施できる。
HTMLファイル113に含まれるマークアップの中で、どのマークアップが指定されているかを追跡することにより、CSSファイル107、スクリプト言語ファイル108等が指定するマークアップを手がかりに、それぞれHTMLファイル113のどの部分がCSSファイル107、スクリプト言語ファイル108等により制御されているのかが分かる。
ユーザは、HTMLファイル113等により生成されたウェブコンテンツ211を利用者端末101のブラウザを通して閲覧する。
削除される表示情報としては、例えば、ウェブコンテンツ211の表示に影響を与えないスペース、タブ、改行や段落の区切りを示す改行情報、各ファイルに記載された保守管理上の注意書き等のテキスト情報等が挙げられる。
なお、実際には最適化されたHTMLファイル113zの中では、識別情報と併せてプログラムのオブジェクトが指定されている。削除される該当部分のオブジェクトを何もない(null)を指定することにより、利用者端末101のブラウザで最適化されたHTMLファイル113zを実行すれば、削除が実現される。
一般に、一つの同じ情報を表現する方法は複数存在する。例えば、数字の百万を意味する「1,000,000」との表記は、「10E6」と表記できる。これは10の6乗との意味である。前者は桁の区切りを示すコンマも含めて9文字が必要なのに対し、後者はアルファベット文字も含めて4文字で表現可能である。
一つの同じ情報を、アプリケーション実行サーバ103に搭載されるアプリケーション処理ユニットA等の各ユニット、利用者端末101等がより速く処理できる別の表現形式に変換する操作を本発明の開示では圧縮という。
HTMLファイル113、CSSファイル107、スクリプト言語ファイル108等のプログラムデータならびにこれらの処理済みデータの一種もしくは二種以上について、データ取得・処理ユニットDの制御部1512により、必要部分の圧縮が実現される。
なお、必要部分が圧縮されるステップにおいては、圧縮形式は、一種もしくは二種以上を使用することができる。また必要部分が圧縮されるステップでは、全てを圧縮してもよいし、一部を圧縮してもよい。画像ファイル109等のバイナリデータの圧縮についても同様である。
ウェブコンテンツ211のうち、例えば、ファーストビューと呼ばれる利用者端末101の画面に最初に表示されるウェブコンテンツ211の部分に関連するプログラムの部分の実行を先に行う。続いて、ウェブコンテンツ211のうち、ファーストビューと呼ばれる利用者端末101の画面に最初に表示されるウェブコンテンツ211の部分以外に関連するプログラムの部分の実行を後に行う。
オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシート、スクリプト言語等の一種もしくは二種以上のプログラムデータが有するプログラムの部分は、通常、記載された順番に利用者端末101側でそれぞれ実施される。
ところがオリジナルデータ200の規模が大きくなるに従って、待機時間の影響は大きくなる傾向がある。待機時間の影響を放置するとユーザがウェブサイトから離脱を起こす一つの要因となりうる。このため実行順序が変更されて、無駄な待機時間が発生しないように処理される。
遅延実行されるプログラムについては、これらのプログラムのうち、同期して実行するのか、非同期に実行するのか、優先して実行するのか等が、データ取得・処理ユニットDに搭載されたコントロールユニットd300に記載されているプログラムにより制御される。
実行タイミングについては、例えば、ファーストビューと呼ばれる利用者端末101の画面に最初に表示されるウェブコンテンツ211の部分の表示に関連するプログラムの部分の実行が完了した後に、ファーストビュー以外のウェブコンテンツ211の部分の表示に関連するプログラムの実行が開始される。
また互いに影響を及ぼさないプログラムの部分については、それぞれ非同期にプログラムの部分の実行タイミングが調整される。
一方、例えば、HTMLファイル113、CSSファイル107、スクリプト言語ファイル108等のそれぞれのプログラムデータについて、これらのファイルに記載されたプログラムの実行時間の調整も実施される。
図19は、HTMLファイル113で参照されるスクリプト言語ファイル部分108a~108dが直列的に実行されるステップを説明するための図である。
HTMLファイル113に複数のスクリプト言語ファイル部分108a~108dの参照情報が記載されている。
ここで例えば、スクリプト言語ファイル108dの表示完了時間の相対値が仮に100であり、スクリプト言語ファイル部分108a~108cの表示完了時間の相対値がそれぞれ仮に5、10および15であったとする。
ここでスクリプト言語ファイル部分108a~108dがこの順番に実行されたとすると、利用者端末101の表示が完了するまでに、表示完了時間の相対値を基準に5+10+15+100=130に相当する表示完了時間の処理が必要になる。
この場合には、スクリプト言語ファイル108の実行順序を整理して、ウェブコンテンツ211の生成時間の短縮が可能である。
この処理により、スクリプト言語ファイル108dの表示完了時間の相対値100に対応する処理が実行されている間に、表示完了時間の相対値を基準に5+10+15=30に相当する表示完了時間の処理を完結できる。
そうするとスクリプト言語ファイル部分108a~108dの表示完了時間を、相対値を基準に130から100に削減することができる。
先にスクリプト言語ファイル部分108a~108cのみを参照する情報をHTMLファイル113に記載しておき、HTMLファイル113の最後にスクリプト言語ファイル108dを参照するように処理することもできる。
次に例えば、HTMLファイル113、CSSファイル107およびスクリプト言語ファイル108が参照する全ての画像ファイル109等について、機種情報ファイル126の識別情報に基づいて特定された利用者端末101毎に表示サイズ、容量および種類の異なる処理済み画像ファイル134がそれぞれ生成される。
画像ファイル109の表示サイズの変更は、例えば、縦と横の長さの比を変更せずに、縦と横の長さが異なる処理済み画像ファイル134が複数生成されることにより実施される。
画像ファイル109の容量の変更は、例えば、画像ファイル109の単位面積当たりの画素数の変更、単位時間当たりの録画録音密度の変更等により実施される。
処理済み画像ファイル134が生成されるステップは、機種情報ファイル126に記載された全ての利用者端末101について実施される。
バイナリデータが動画ファイル、音ファイル等の場合も、同様の手順を経て、新たな複数の変換済みバイナリデータを含む処理済みデータ210を生成することができる。
例えば、オリジナルデータの表示完了時間の測定に加えて、最適化されたHTMLファイル113z、処理済みCSSファイル132および処理済みスクリプト言語ファイル133等のそれぞれについて、表示完了時間が測定される。
利用者端末101毎、ウェブページ毎等に複数ある最適化されたHTMLファイル113zは、参照するプログラムのオブジェクトを変化させた場合に、処理前のHTMLファイル113と比較して、どの程度の表示完了時間がかかるのかが測定される。
処理済みCSSファイル132は、処理前のCSSファイル107と比較して、要素として、どの程度の表示完了時間がかかるのかが測定される。
複数ある処理済みスクリプト言語ファイル133は、処理前のスクリプト言語ファイル108と比較して、要素として、どの程度の表示完了時間がかかるのかが測定される。
バイナリデータについても、複数ある加工済み画像ファイル等と、加工前の画像ファイル等と比較して、要素として、どの程度の表示完了時間がかかるのかが測定される。
なお図22では直列処理が例示されているが、それぞれの処理は並列に実施することもできる。
要素の組み合わせによっても、それぞれの要素が互いに影響を及ぼし合って、オリジナルデータ200および複数の加工済みデータ201のそれぞれについての表示完了時間が変動するからである。
またこの予備試験のデータに基づいて、機械学習によるモデル形成を行うことにより、オリジナルデータ200および複数の処理済みデータ210のうち、どの組み合わせが最も表示完了時間が短くなるかについて決定される。
図23は、オリジナルデータ200に追加、移動、削除、変更等の改変があったことを知らせる信号が動作制御部へ送信されるステップを説明するためのフローチャートである。
また図23は、オリジナルデータ200の改変の信号により、加工済みデータが新たに生成されるステップを説明するためのフローチャートである。
ウェブコンテンツ211の自動高速表示制御方法に使用されるオリジナルデータ200は、最初にアプリケーション処理ユニットAの記憶装置1101にあるオリジナルデータ記憶領域104に保存されたものをそのまま使用し続けることができる。
差異の有無を調べる時間間隔を短く設定することにより、瞬時に変更があったことを検出できる。
そして改変があったことを知らせる信号が監視制御部1115から動作制御部1116およびデータ取得・処理ユニットDに搭載されたコントロールユニットd300に送信される。
アプリケーション処理ユニットAの加工済みデータ記憶領域114に保存されている処理済みデータ210のうち、改変があった部分に対応するデータが、データ取得・処理ユニットDに搭載されたコントロールユニットd300により、処理済みデータ202により置換される。
次にリクエスト処理ユニットCが利用者端末101からリクエストを受信した後に、データ取得・処理ユニットDが、利用者端末101の表示環境を特定するステップについて説明する。
このリクエストは利用者端末101に搭載されるブラウザを経由して行われる。
これらのユーザエージェント、リファラ等の情報を利用して、アクセプトヘッダー、クッキー等によりデータ取得・処理ユニットDは、利用者端末101の表示環境を特定できる。
次に、利用者端末101の表示環境に表示可能なデータを含むウェブコンテンツ211が生成されるステップについて説明する。
既に、先に説明したステップにより、事前に利用者端末101毎に表示できるウェブコンテンツ211は生成されている。このウェブコンテンツ211と、利用者端末101との対応付けを行う。
利用者端末101の個別の表示環境の特定は、アクセプトヘッダー、クッキー等の情報を、先に説明した機種情報ファイル126と照合することにより実現される。
このため、リクエスト処理ユニットCが利用者端末101からリクエストを受信した直後に、利用者端末の表示環境に表示可能なデータを含むウェブコンテンツ211が、データ取得・処理ユニットDに搭載されたコントロールユニットd300により選択される。この段階では、利用者端末101に表示可能なウェブコンテンツ211は複数存在する。
この最適化されたHTMLファイル113zを受信した利用者端末101毎のブラウザ等で、最適化されたHTMLファイル113zを実行して、それぞれの利用者端末101に対応したウェブコンテンツ211が利用者端末101毎のブラウザ等に表示される。
次に、これらのオリジナルデータ200および複数の加工済みデータ201について、実際にこれらのオリジナルデータ200および複数の加工済みデータ201を含むウェブコンテンツ211がそれぞれの利用者端末101について選択されるか説明する。
ウェブコンテンツ211を表示するために、オリジナルデータ200および複数の加工済みデータ201のうちどれを選択するかは、事前に予備試験によりウェブコンテンツ211の表示完了時間を計測して比較する。そしてこれらの表示完了時間のデータを用いて機械学習を行い学習済みモデルを形成する。
予備試験および学習済みモデル形成の少なくとも一方によりウェブコンテンツ211の表示完了時間を計測等して比較するステップはデータ取得・処理ユニットDで実施される。
プログラムの部分は容量がより削減されたものが、容量がそれほど削減されていないものよりも通常は表示完了時間が短くなるので好ましい。
場合によっては、どの複数の加工済みデータ201よりも、オリジナルデータ200が、表示が速く完了する可能性もある。
これらのオリジナルデータ200および加工済みデータ201がそれぞれウェブコンテンツ211の表示に必要なリソースである。
先に説明した、データ取得・処理ユニットDの記憶装置1501は時間実行制御部1520を備えることもできる。
データ取得・処理ユニットDの時間実行記憶部1521に保存された予備保存データは、データ取得・処理ユニットDに加えて、アプリケーション処理ユニットAの補助記憶部1105にネットワーク102を通じて転送し、保存することもできる。
本発明の開示においては、例えば、オリジナルデータ200の監視はデータ取得・処理ユニットDにより実施することもできる。
そして処理済みデータ210が、データ取得・処理ユニットDからアプリケーション処理ユニットAの順番に送信され、ネットワーク102を通じて利用者端末101で受信される。
受信された処理済みデータ210が利用者端末101のブラウザで表示される。
受信された処理済みデータ202が、利用者端末101のブラウザで表示される。
利用者端末101では、更新されたウェブコンテンツ212を含むウェブコンテンツ211を表示することができる。
最適化されたHTMLファイル113zに含まれるプログラムのそれぞれのオブジェクトとして、HTMLファイル113と同じ内容を再現するようにオブジェクトを選択すれば最適化されたHTMLファイル113zを用いてHTMLファイル113を簡単に再現することもできる。
これらのリソースを最適化されたHTMLファイル113zのそれぞれのオブジェクトに対応付けることにより、瞬時に利用者端末101のブラウザ等にウェブコンテンツを表示することができる。そして利用者端末101で表示に使用されるリソースの利用者端末101毎に対するダウンロードの順番、タイミングが、人工知能ユニットBにより立案された戦略案に基づいて実施される。
次に人工知能ユニットBが、ウェブコンテンツを利用者端末101に表示する戦略案を立案するステップについて説明する。
リクエスト処理ユニットCを介してアプリケーション処理ユニットAと人工知能ユニットBとが相互に通信可能となる。
またアプリケーション処理ユニットAのオリジナルデータ記憶領域104に保存されたオリジナルデータ200を読取りながら加工し、加工された結果をアプリケーション処理ユニットAの加工済みデータ記憶領域130に保存することもできる。
人工知能ユニットBはこの過程をそれぞれの利用者端末101にウェブコンテンツを表示させる時間との関係、ウェブコンテンツを利用者端末101のブラウザに表示させることを妨げる結果となるエラーが発生する可能性、期待通りのウェブコンテンツが利用者端末101のブラウザに表示されているかについての表示の完全性等のそれぞれのデータに関して学習する。
これらのデータが共通して持つ属性を、例えば統計処理により解析して、ウェブコンテンツの表示完了時間の長短と関連付ける。
一方、バイナリデータは、画像ファイル、音ファイル、動画ファイルなどの一種もしくは二種以上のファイルを含む。
これらのプログラムデータ、バイナリデータ等から、実行させるプログラムの部分および実行させないプログラムの部分が利用者端末101の表示環境ごとにそれぞれ特定される。
プログラムデータが、マークアップ言語、プログラミング言語、スタイルシート、スクリプト言語からなる群より選ばれる少なくとも一つの記載を含み、
バイナリデータが、画像ファイル、音ファイルおよび動画ファイルの少なくとも1つを含む場合、
オリジナルデータ200に含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つのデータから、利用者端末の表示環境ごとに必要部分が圧縮されるステップが実施されたデータ取得・処理ユニットDに関する情報602、
オリジナルデータ200に含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つのデータから、利用者端末の表示環境ごとに実行順序が変更されるステップが実施されたデータ取得・処理ユニットDに関する情報603、
オリジナルデータ200に含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つのデータから、利用者端末の表示環境ごとに実行タイミングが変更されるステップが実施されたデータ取得・処理ユニットDに関する情報604、
オリジナルデータ200に含まれる、バイナリデータから、単位面積当たりの表示画素数、単位時間当たりの録画録音密度、容量および保存形式からなる群より選ばれる一つが変換されるステップが実施されたデータ取得・処理ユニットDに関する情報605、
オリジナルデータ200ならびに複数の加工済みデータの中から、どのデータを組み合わせて処理済みデータ210が生成されたかについての情報606、
オリジナルデータ200ならびに複数の加工済みデータからなる群より選ばれる少なくとも一つを含む処理済みデータ210と、処理済みデータ210が利用者端末101で入力受付可能になるまでの時間に関する情報607
利用者端末101毎に、アプリケーション処理ユニットA、データ取得・処理ユニットDおよびクラウド配信サーバ608のいずれから利用者端末101に送信されたかに関する情報608等について、人工知能ユニットBは学習する。
学習済みモデルを形成する際には、利用者端末101毎にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性に着目して人工知能ユニットBに学習させることが好ましい。
この加点と減点についての情報が、人工知能ユニットBの人工知能制御部1410にフィードバックされる。フィードバックされた情報を元に、人工知能ユニットBはその結果を人工知能ユニットBが立案した戦略案に反映することができる。このステップを繰り返して行うことにより、学習済みモデルが形成される。
このような人工知能を活用する方法としては、例えば、機械学習、深層学習等の方法が挙げられる。本発明の開示においてはニューラルネットワーク、強化学習によるモデル形成と予測、ベイズ推定による予測、DBスキャン法によるクラスタリング等が利用される。必要に応じてKNN法、決定木法、MT法等の人工知能アルゴリズムを併用することもできる。
先に説明した図16に示されるように、例えば、オリジナルデータ200に含まれるHTMLファイル113は、HTMLコード部分113a,113b,113c、CSSコード部分107a,107b,107c、スクリプト言語コード部分108a,108b,108c等を含む。
これらのスタイルシートF107a1,F107b1,F107c1等のコード部分のデ
ータは、最初に利用者端末101からアプリケーション実行サーバ103にリクエストが送信された際に、アプリケーション実行サーバ103からネットワーク102を通じて利用者端末101にダウンロードされて保存されている。
CSSコード部分F107a1,F107b1,F107c1等は、利用者端末101にダウンロードしてから実行することもできるし、利用者端末101に搭載されたブラウザ等から、ネットワーク102を通じて、アプリケーション実行サーバ103等に保存されているものを用いて実行することもできる。
人工知能ユニットBの立案した戦略案により、HTMLファイル113に含まれるスクリプト言語コード部分108a,108b,108cに代えて、オブジェクトとしてのF108a1,F108b1,F108c1のそれぞれのスクリプト言語プログラムが代入されている。
これらのスクリプト言語プログラムのコード部分は、利用者端末101にダウンロードしてから実行することもできるし、利用者端末101に搭載されたブラウザ等から、ネットワーク102を通じて、アプリケーション実行サーバ103等に保存されているものを用いて実行することもできる。
最適化されたHTMLファイル113zに含まれるオブジェクトとしてのF108a1,F108b1,F108c1のそれぞれのスクリプト言語プログラム等について、
利用者端末101にダウンロードさせてから実行させるのか、または、データ取得・処理ユニットD等に保存しておき、利用者端末101のブラウザからネットワーク102を通じて実行させるのか等の各ステップは、人工知能ユニットBの立案した戦略案に従って実施される。
先に説明した図16におけるHTMLファイル113と最適化されたHTMLファイル113zとの関係は、ある瞬間に切り出された状態として理解することができる。
HTMLファイル113に変化があった場合には、過去のHTMLファイル113の内容と現在のHTMLファイル113の内容が異なる。例えば、アプリケーション処理ユニットAはHTMLファイル113に変更があった場合には、タイムスタンプが変更される、変更内容の差分を出力する等の機能を備えている。この機能を利用して、HTMLファイル113のうち変更のあった部分に対応する、最適化されたHTMLファイル113zのオブジェクトを識別情報により特定することができる。
具体的にどのオブジェクトをどのように最適化されたHTMLファイル113zに反映させるかは、先に説明した場合と同様に、人工知能ユニットBの立案した戦略案に従って実施される。
この属性を人工知能ユニットBが立案する戦略案に反映させることにより、データ取得・処理ユニットDが全ての場合について検討を試みた、最速で利用者端末101に対してウェブコンテンツが入力受付可能になる処理済みデータ210と全く同じデータが適用できない場合が仮に生じたとしても、その状況を人工知能ユニットBの戦略案を用いて新たなデータを作成して対応することができる。
アプリケーション処理ユニットAに対して特別な仕様変更は必要ないから、簡単に本発明に係るウェブコンテンツの自動高速表示制御方法を実施することができる。
図24は、本発明の実施形態2に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムであり、リバースプロキシ型の構成を記載した概略図である。
本発明に係る発明の実施形態2のリバースプロキシ型は、先に説明した実施形態1のオールインワン型と比較して、アプリケーション実行サーバ103に加えてリバースプロキシサーバ1703を使用する点、
またリバースプロキシサーバ1703に、人工知能ユニットB、リクエスト処理ユニットCおよびデータ取得・処理ユニットDが設置されている点以外は、実施形態1のオールインワン型の場合と同様である。
ーバ103およびリバースプロキシサーバ1703にはそれぞれ通信用インターフェイス1102および通信用インターフェイス1702が設置されていて、ネットワーク102を通じてデータを送受信できる。
以下に、実施形態1のオールインワン型と異なる点を中心に説明する。
本発明の実施形態2の場合において、実施形態1に使用したアプリケーション実行サーバ103の場合と同様、リバースプロキシサーバ1703についても一または二以上の物理マシン、一または二以上の仮想マシンならびに一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境を採用することができる。
図25に示されるように、リバースプロキシサーバ1703の記憶装置1701には人工知能ユニットB、リクエスト処理ユニットC、データ取得・処理ユニットDおよびデータベース1706が設置されている。
上記以外のハードウェア構成については実施形態1のオールインワン型の場合と同様である。
図26~図28のそれぞれは、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
ユーザが操作する利用者端末101のブラウザ等から送信されたリクエストは、ネットワーク102を通じてリバースプロキシサーバ1703のリクエスト処理ユニットCで受信される。
このリクエストは、リクエスト処理ユニットCから、アプリケーション実行サーバ103のアプリケーション処理ユニットAに送信される。
リクエストを受信したアプリケーション処理ユニットAはレスポンスとして例えば、HTMLファイル113等のオリジナルデータ200を、リクエスト処理ユニットCに送信する。HTMLファイル113等のオリジナルデータ200は、リクエスト処理ユニットCを通じて人工知能ユニットB、データ取得・処理ユニットDの順に送信される。
最適化されたHTMLファイル113z等の加工済みデータ201は、データ取得・処理ユニットDおよびリクエスト処理ユニットCを経て、ネットワーク102を通じてユーザの利用者端末101に送信される。
図27に示されるように、利用者端末101のブラウザ等で最適化されたHTMLファイル113z等が実行される。この場合、最適化されたHTMLファイル113z等に記載されたオブジェクトに基づいて、オブジェクトの識別情報により対応する最適リソースを選択することができる。データ取得・処理ユニットDから最適リソースが取得され、リクエスト処理ユニットCから利用者端末101に最適リソースが送信される。
実施形態2のリバースプロキシ型では、オリジナルデータ200等のマイグレーションの必要がない。またアプリケーション実行サーバ103のDNSをリバースプロキシサーバ1703に変更することにより、簡単に本発明の実施形態2に係るウェブコンテンツの自動高速表示制御方法を実施することができる。
図29は、本発明の実施形態3に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムであり、ナノエージェント型の構成を記載した概略図である。
本発明に係る発明の実施形態3のナノエージェント型は、先に説明した実施形態1のオールインワン型と比較して、アプリケーション実行サーバ103に加えて人工知能サーバ1403およびデータ取得サーバ1603を使用する点が異なる。
またアプリケーション実行サーバ103にアプリケーション処理ユニットAおよびリクエスト処理ユニットCが設置されている点が異なる。
また人工知能サーバ1403に人工知能ユニットBが設置されている点、および、データ取得サーバ1603にデータ取得・処理ユニットDが設置されている点が異なる。
以下に、実施形態1のオールインワン型と異なる点を中心に説明する。
図30~図32のそれぞれは、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
ユーザが操作する利用者端末101のブラウザ等から送信されたリクエストは、ネットワーク102を通じてリクエスト処理ユニットC、アプリケーション処理ユニットAの順に送信される。
ニットAの順に受信される。アプリケーション処理ユニットAはユーザの利用者端末101にウェブコンテンツを表示するためのオリジナルデータ200をレスポンスとしてリクエスト処理ユニットCを通じて送信する。このレスポンスはネットワーク102を通じて利用者端末101に受信される。そして利用者端末101に搭載されたブラウザ等により、オリジナルデータ200に基づくウェブコンテンツが利用者端末101に表示される。
一方でリクエスト処理ユニットCはアプリケーション処理ユニットAからネットワーク102を通じて利用者端末101にレスポンスが実行される処理に割り込み、HTMLファイル113等のオリジナルデータ200を取得する。
取得されたHTMLファイル113等のオリジナルデータ200に基づいて、リクエスト処理ユニットCからリクエストが、ネットワーク102を通じて人工知能サーバ1403の人工知能ユニットB、データ取得サーバ1603のデータ取得・処理ユニットDの順に送信される。人工知能サーバ1403の人工知能ユニットBで立案された戦略案に基づいて、データ取得サーバ1603のデータ取得・処理ユニットDがHTMLファイル113等のオリジナルデータ200の最適化を行う。
最適化されたHTMLファイル113z等の加工済みデータ201は、データ取得・処理ユニットDが設置されたデータ取得サーバ1603、人工知能サーバ1403を経て、アプリケーション実行サーバ103のリクエスト処理ユニットC、ネットワーク102を通じてユーザの利用者端末101に送信される。
最適化されたHTMLファイル113z等に記載されたプログラムのオブジェクトによる参照情報に基づいて、リクエスト処理ユニットCは、データ取得・処理ユニットDから最適リソースを取得し、データ取得サーバ1603、人工知能サーバ1403およびアプリケーション実行サーバ103を経て、ネットワーク102を通じて利用者端末101に送信する。
動的に最適化されたリソースが生成され、利用者端末101の最適リソースとして活用される点は、先に説明した実施形態1の場合と同様である。
実施形態3のナノエージェント型では、オリジナルデータ200等のマイグレーションの必要がない。またアプリケーション実行サーバ103のDNSを変更する必要もないことから、簡単に本発明の実施形態3に係るウェブコンテンツの自動高速表示制御方法を実施することができる。
図33は、本発明の実施形態4に係るウェブコンテンツの自動高速表示制御方法を実施するための自動高速表示制御システムであり、SaaS型の構成を記載した概略図である。
本発明に係る発明の実施形態4のSaaS(Software as a Service)型は、先に説明した実施形態1のオールインワン型と比較して、アプリケーション処理ユニットA、人工知能ユニットB、リクエスト処理ユニットCおよびデータ取得・処理ユニットDのそれぞれがクラウド1803上に設置されている点が異なる。
先の実施形態1のオールインワン型の場合は一つの実行環境内でそれぞれのユニットAからDが相互に通信可能であった。
これに対して実施形態4のSaaS型の場合は、ネットワーク102を通じてそれぞれのユニットAからDが相互に通信可能となっている。
それ以外は実施形態1の場合と同様である。
本発明の実施形態4に係るウェブコンテンツの自動高速表示制御方法は、このクラウド環境下に構築することもできる。このクラウド環境下に構築されているものがSaas型である。
本発明の実施形態4の場合には、使用するクラウドプラットフォームの種類、提供する企業の相違、クラウド環境を実行するためのデータセンターが自国にあるか外国にあるか等の相違に関係なく、実行環境を選択して構築することができる。
図34~図36のそれぞれは、ユーザからのリクエストがどのように処理されるのかを説明するための模式図である。
ユーザが操作する利用者端末101のブラウザ等から送信されたリクエストは、ネットワーク102を通じてリクエスト処理ユニットCに送信される。
一方で図34に示されるように、リクエスト処理ユニットCはアプリケーション処理ユニットAからネットワーク102を通じて利用者端末101にレスポンスが実行される処理に割り込み、HTMLファイル113等を取得する。
例えば、取得されたHTMLファイル113等に基づいて、リクエスト処理ユニットCからリクエストがネットワーク102を通じて人工知能ユニットB、データ取得・処理ユニットDに送信される。人工知能ユニットBで立案された戦略案に基づいて、データ取得・処理ユニットDがHTMLファイル113等の最適化を行う。
例えば、最適化されたHTMLファイル113zは、データ取得・処理ユニットD、人工知能ユニットBおよびリクエスト処理ユニットCを経て、ネットワーク102を通じてユーザの利用者端末101に送信される。
最適化されたHTMLファイル113z等に記載されたそれぞれのオブジェクトが指定する参照情報に基づいて、リクエスト処理ユニットCは、データ取得・処理ユニットDから最適リソースを取得し、人工知能ユニットBを経て利用者端末101に送信する。
またウェブコンテンツを利用者端末101に表示するために運用されている従来のサーバのDNSをクラウド1803に変更する。
このようにマイグレーションとDNSを実施するだけで、ウェブコンテンツを利用者端末101に表示するために運用されている従来のサーバの環境に変更を加えることなくクラウド上に実施形態4のSasS型を実施できる。
次に本発明の実施形態5に係るウェブコンテンツの自動高速表示制御方法について説明する。
実施形態5に係るウェブコンテンツの自動高速表示制御方法を実現するために必要なステップは、先に説明した本発明の実施形態1から4のいずれの場合でも以下に説明するステップに従って実施できる。
ここでは、一つの例として、先に説明した実施形態1のオールインワン型を例に挙げて説明する。実施形態5に使用するオールインワン型のハードウェア構成は、先に説明いた実施形態1の場合と同様である。
本発明の実施形態5では、一例として、利用者端末101としてスマートフォンが採用されている。下記に説明するウェブコンテンツ211の生成ステップは、本発明の実施形態1の場合と同様である。
利用者端末101にウェブコンテンツ211が高速表示されることを妨げる要因として、大きく二つの要素が存在する。
一つは、通信の渋滞401であり、残る一つは描画の渋滞402である。
通常、オリジナルデータ200(図37の参照符号400)には、個別の利用者端末101には不要なデータも含まれる。このため、オリジナルデータ200がそのまま利用者端末101に送信されると、利用者端末101にオリジナルデータの送信完了まで余分な時間がかかることになる。
先の実施形態1の場合では、主として、図37における通信の渋滞401を改善する配信最適化に関するものであった(図37の参照符号403)。
実施形態5の場合では、通信の渋滞401の解消に加えて、描画の渋滞402の解消を実現する。
図37に示される描画の渋滞402が生じる理由の一つは、雑多な多量の情報が、一気にリクエスト処理ユニットCから利用者端末101に送信されようとするからである。
次に、通信規制を行い、利用者端末101がユーザからの入力受付可能な状態に移行することを優先する(図37の参照符号404)。
続いて、通信整理を行い、ウェブコンテンツ211の表示に必要なりソースの中から、ファーストビューに対応する部分以外が秩序立てられて利用者端末101に送信される(図37の参照符号405)。
互いにプログラムの部分同士が干渉しない場合には、他のプログラムの部分の完了を待たずに、プログラムの部分の実行を開始する非同期実行の場合等を意味する。
利用者端末101に搭載されるブラウザ等からリクエスト処理ユニットCにリクエストが送信される前に、全てのアプリケーション処理ユニットAに保存されたそれぞれのオリジナルデータ200が、データ取得・処理ユニットDにより加工されて、複数の加工済みデータ201が生成されている。
この複数の加工済みデータ201は、リクエスト処理ユニットCにアクセスすることが予想される全ての利用者端末101に対応して、利用者端末101からアプリケーション実行サーバ103に対してリクエストが送信される前に、自動で生成される。
利用者端末101からアプリケーション処理ユニットAにリクエストが送信されてから、利用者端末101でウェブコンテンツ211aが利用者端末101で入力受付可能になるまでの時間が最短になることを基準に、オリジナルデータ200と複数の加工済みデータ201の中からファーストビューに表示されるウェブコンテンツに対応する処理済みデータ210が選択される。
予備試験により得られたデータを用いて統計処理を行い、最適な処理済みデータ210を選択する戦略案を人工知能ユニットBは立案することができる。
アプリケーション処理ユニットAに保存されているオリジナルデータ200が動的に生成された場合でも、変更を受けた場合でも、オリジナルデータ200に変更があった場合には、これまでの人工知能ユニットBが立案した戦略案に基づき、新たな処理済みデータ210が生成される。
利用者端末101の表示環境は、利用者端末101からアプリケーション処理ユニットAに送信された信号に含まれるユーザエージェント、リファラ等の情報を、データ取得・処理ユニットDの設定ファイル格納部1523に保存された機種情報ファイル126と照合して特定できる。
利用者端末101のブラウザにおける初期表示画面Aの表示環境は、機種情報ファイル126に記載された情報に基づいて特定できる。
CSSファイル107および処理済みCSSファイル132に記載されたプログラムデータの大きさ等の情報、
画像ファイル109および処理済み画像ファイル134の大きさ、配置位置等の情報から、HTMLファイル113、CSSファイル107、スクリプト言語ファイル108、最適化されたHTMLファイル113z、処理済みCSSファイル132、処理済みスクリプト言語ファイル133、画像ファイル109および処理済み画像ファイル134等のうち、どの部分が利用者端末101のブラウザにおけるファーストビューに対応する初期
表示画面Aに表示されるかが特定される。
これらの特定は、データ取得・処理ユニットDに搭載された、コントロールユニットd300に記載されたプログラムにより実施される。
利用者端末101のブラウザにおける初期表示画面Aに表示されるデータが特定されれば、それに伴って、利用者端末101のファーストビューに対応する初期表示画面A以外に対応するデータを特定できる。
例えば、ウェブコンテンツ211は、ファーストビューに対応するウェブコンテンツ211aおよびファーストビューに対応しないウェブコンテンツ211bを含む。
ウェブコンテンツ211を表示するためのリソースは、HTMLファイル113または最適化されたHTMLファイル113zのうち、ファーストビューに対応するHTMLデータ301を含む。
またCSSファイル107および処理済みCSSファイル132のうち、ファーストビューに対応するCSSデータ302を含む。
画像ファイル109および処理済み画像ファイル134のうち、ファーストビューに対応する画像データ304を含む。
利用者端末101のユーザは、利用者端末101のブラウザに表示されたウェブコンテンツ211aに興味を示す場合には、利用者端末101のブラウザに対して追加の情報を表示させる行動を起こす。
逆に利用者端末101のユーザは、利用者端末101のブラウザに表示されたウェブコンテンツ211aに興味を示さない場合には、いわゆる離脱と呼ばれる行動を起こす。
この最適化されたHTMLファイル113z等には、リソースについての参照情報がプログラムの関数としてのオブジェクトとして記載されている。
また最適化されたHTMLファイル113z等には、オブジェクトを最適化されたHTMLファイル113z等にプログラムの関数として挿入するためのオブジェクトも記載されている。
この仕組みにより、利用者端末101に搭載されたブラウザがイベント情報を検出した際に動作するプログラムコードを記載することができる。
なおウェブコンテンツ211bを表示するためのリソースは、利用者端末101に対して一度に送信されてもよいし、分割して送信されてもよい。
逆に利用者端末101に対してウェブコンテンツ211bの表示に関連するプログラムの部分同士が干渉しない場合には、非同期にそれぞれのプログラムの部分の実施が開始される。
またどのプログラムの実施を優先するか、遅延させるか等についての制御が、人工知能ユニットBが立案した戦略案に従って、データ取得・処理ユニットDに搭載された、コントロールユニットd300に記載されたプログラムにより実現される。このプログラムを最適化されたHTMLファイル113z等のオブジェクトに反映させることにより、ウェブコンテンツの自動高速表示が実現される。
以降はユーザの利用者端末101に搭載されたブラウザ等の操作により、ユーザは自由に利用者端末101のブラウザ等によりウェブコンテンツを閲覧することができる。
次に本発明の実施形態6に係るウェブコンテンツの自動高速表示制御方法について説明する。
実施形態6に係るウェブコンテンツの自動高速表示制御方法を実現するために必要なステップは、先に説明した本発明の実施形態5の場合と同様である。
本発明の実施形態6では、一例として、利用者端末101としてスマートフォンが採用されている。下記に説明するウェブコンテンツ211の生成ステップは、本発明の実施形態1の場合と同様である。
本発明の実施形態6では、ウェブコンテンツを閲覧するユーザのユーザ体験と、ウェブコンテンツをユーザが閲覧することにより生じるユーザとウェブサイトとの間に生じるエンゲージメントに基づいて、ウェブコンテンツの自動高速表示を実現するステップが変化する。
ユーザがウェブコンテンツを一目見ただけで離脱して、再びウェブコンテンツを閲覧することがないとすれば、そのユーザについてのユーザ体験に関連するスコアはゼロである。
どの表示完了時間なら許容されるかについては、ユーザのウェブサイトに対するエンゲージメントによって異なる。
そしてユーザの利用者端末に表示されているウェブコンテンツの提供者や、ウェブサイトの管理者が提供しているウェブコンテンツに関連する行動の全てをユーザが実行すると、その時点におけるそのユーザについてのユーザ体験は最大化する。
つまり、ユーザとウェブサイトの運営者との間にエンゲージメントがない場合、例えば、ユーザがウェブコンテンツを閲覧していない場合は、エンゲージメントは相対値としてゼロに対応する。
ただし、一度でもリクエスト処理ユニットC等に対して利用者端末101からリクエストが送信された後は、ウェブコンテンツにアクセスしたユーザ体験がエンゲージメントスコアとして加算される。このため、リクエスト処理ユニットC等にアクセスした履歴が利用者端末101等に保存されている利用者端末101に関するエンゲージメントスコアはゼロより大きい値が記録されている。
本発明者の知見によれば、ウェブコンテンツに興味がないユーザについてはエンゲージメントの値は小さくなり、逆にウェブコンテンツに興味を示すユーザについてはエンゲージメントの値は大きくなる傾向があることが本発明者によるこれまでの検討により判明している。
本発明の実施形態6の場合では、ユーザのエンゲージメントスコアに応じて、それぞれのユーザが閲覧する利用者端末に表示されるウェブコンテンツの表示処理が調整されて、ウェブサイトを閲覧するユーザの満足度が最大化する方法が開示される。
本発明の実施形態6に使用されるリクエスト処理ユニットC等にこれまでリクエストを送信したことがないユーザに関するエンゲージメントのスコアについては最低のエンゲージメントのスコアが、相対値0として割当てられる。
一度でもリクエスト処理ユニットC等にリクエストを送信したことがあるユーザに関するエンゲージメントのスコアについては、リクエストをアプリケーション処理ユニットAに送信した行為が一つのユーザ体験となるので、エンゲージメントのスコアが加算される。
このエンゲージメントのスコアは相対値として、0から100の間で変動する。
次に利用者端末101毎にエンゲージメントのスコアを算出するステップについて説明する。
この情報に基づいて、先の実施形態5の場合で説明したのと同様、利用者端末101毎にダウンロードされた、最適化されたHTMLファイル113z等に追加されたプログラムによりエンゲージメントのスコアを管理できる。
利用者端末101毎の履歴データとしては、例えば、ユーザがウェブコンテンツ211に表示されているテキスト情報を読む時間301、
ウェブコンテンツ211に関連付けられたリンクをクリックしてリンク先の内容を閲覧したリンク302およびリンク302をクリックした回数303、
ウェブコンテンツ211に関連付けられた動画ファイルのうち、再生された動画ファイル304、動画ファイル304を再生した回数305および動画ファイル304を閲覧した時間305、
ウェブコンテンツ211に関連付けられた音楽ファイルのうち、再生された音楽ファイル306、音楽ファイル306を再生した回数307および音楽ファイル306を閲覧した時間307、
ウェブコンテンツ211に関連付けられたフォーム欄に入力したテキスト情報308およびテキスト情報308を送信した回数309、
ウェブコンテンツ211に表示された商品のうち、購入した商品310および商品310を購入した回数311、
ウェブコンテンツ211に表示された役務のうち、提供を依頼した役務312および役務312を依頼した回数313、
アプリケーション処理ユニットAにリクエストを送信した回数313、
アプリケーション処理ユニットAにリクエストを最初に送信してから最後に送信した時までの期間314、
アプリケーション処理ユニットAにリクエストを前回送信してから今回送信した時までの期間315、
利用者端末101のブラウザ画面をスクロールした回数、タッチした回数等の回数316、
利用者端末101のブラウザ画面で移動したマウス等の距離317等が挙げられる。
利用者端末101毎の履歴データは、一種もしくは二種以上を選択して使用することができる。
データベース1106に保存された利用者端末101毎の履歴データは、ユーザ毎のユーザ体験に対応する。
fiは利用者端末101毎の履歴データに対応する関数であり、aiは、各関数に対する係数を示す。iは自然数であり、それぞれの値はそれぞれの履歴データに対応する。kは履歴データの総数である。
る。
例えば、i=1に対応するオブジェクトFiには、各ユーザの一回のウェブサイト訪問当たりのテキスト情報を読む平均時間に対する、特定ユーザの一回のウェブサイト訪問当たりのテキスト情報を読む時間301の割合が対応する。
また例えば、i=2は、ウェブコンテンツ211に存在する総リンク数に対する、特定の
ユーザがクリックしたリンク302の種類の割合が対応する。
また例えば、i=3は、各ユーザの一回のウェブサイト訪問当たりのリンククリック平均
回数に対する、特定のユーザがクリックしたリンク302をクリックした回数303の割合が対応する。
以下、同様に、個々のユーザ体験毎に、それぞれの平均の履歴データに対する割合を変数fiにより対応させる。
上記数式(A)の係数aiの全ての初期値を1としたときに、数式(A)により算出されるもっとも大きい値を示すユーザについての上記数式(A)の値を100とする。
なお係数aiは、どの項目を重視するかの指標である。これらの係数を変化させた場合に、どの係数の組み合わせが最も短時間で全員のエンゲージメントスコアを高めることができるかを基準に、人工知能ユニットBの戦略に基づいて自動で調整される。
このそれぞれの値が、ウェブコンテンツ211を公開してから現在までのエンゲージメントのスコアである。
ユーザがウェブコンテンツ211を閲覧するたびにエンゲージメントのスコアは加算されていく。このため、エンゲーメントスコアは各ユーザについて一定ではなく、各ユーザについて経時的に変化する。
次にエンゲージメントのスコアに応じたウェブコンテンツ211が選択されるステップについて説明する。
ユーザ毎の履歴情報と、この履歴情報に結びつけられた利用者端末101の識別情報に基づいて、利用者端末101毎の表示環境に利用可能なファイルの組み合わせが特定されていて、利用者端末101毎に表示完了時間の異なる複数のウェブコンテンツ211をデータ取得・処理ユニットDで生成することができる。
最も表示完了時間が短い組み合わせデータにより表示されるウェブコンテンツ211の処理は、事前に完了しているため、実際には、ユーザエージェント、リファラ等の情報を、機種情報ファイル126と照合して得られた利用者端末101の表示環境に表示完了時間として0.2秒以内、好ましくは100m秒以内に対応可能である。
具体的には、特定された、利用者端末101の表示環境に利用可能なファイル群の中から、それぞれのファイルの種類に応じて、表示完了時間が短く、かつ、省略した情報がないファイルの組み合わせが抽出される。
逆にユーザのエンゲージメントスコアが最も高い場合には、利用者端末101からアプリケーション処理ユニットAにリクエストが送信されてから、利用者端末101でウェブコンテンツ211が入力受付可能になるまでの時間が最も長くなる処理済みデータ210が選択される。
ユーザのエンゲージメントスコアが最も高い場合と最も低い場合の中間の場合には、利用者端末101からアプリケーション処理ユニットAにリクエストが送信されてから、利用者端末101でウェブコンテンツ211が入力受付可能になるまでの時間が最も短くなる場合と最も長くなる場合との中間の時間となる処理済みデータ210が選択される。
最初にユーザが利用者端末101からリクエストをアプリケーション処理ユニットAに送信する(ステップS3001)。
リクエスト処理ユニットCおよびアプリケーション処理ユニットAから、リクエストが、人工知能ユニットBおよびデータ取得・処理ユニットDに送信される(ステップS3002)。
データ取得・処理ユニットDは、リクエストに含まれるアクセプトヘッダー、クッキー等の情報から利用者端末101の表示環境を特定する(ステップS3003)。
またアクセプトヘッダー、クッキー等の情報から利用者端末101に関連付けられた識別情報に基づいて、これまでのエンゲージメントスコアを特定することができる(ステップS3004)。
利用者端末101のブラウザ等で最適化されたHTMLファイル113zが実行される。そして利用者端末101でウェブコンテンツ211が表示される(ステップS3008)。
ファーストビューの描画を優先することにより、エンゲージメントスコアの低いユーザが離脱することを防止できる。
逆にエンゲージメントスコアが高いユーザについては、利用者端末101のブラウザ等が入力受付可能になるまでの時間を遅延させず、最初から内容が充実したコンテンツを配信する(図37の参照符号430参照)。
このように、利用者端末101で入力受付可能になるまでの時間を変化させて、利用者端末101毎にエンゲージメントスコアに応じて、配信内容を振り分けることができる。
ステップS3006の選択が正しい場合にはエンゲージメントスコアを加算し、ステップS3006の選択が正しくない場合にはエンゲージメントスコアを減算する。
この操作により、ユーザ体験に基づいて、よりきめ細やかにユーザのウェブコンテンツに対する満足度を自動的に高めることができる。
102 ネットワーク
103 アプリケーション実行サーバ
A アプリケーション処理ユニット
B 人工知能ユニット
C リクエスト処理ユニット
D データ取得・処理ユニット
d100 最適化ユニット
d200 クローラーユニット
d300 コントロールユニット
1523 設定ファイル格納部
104 オリジナルデータ記憶領域
105 PHPファイル
107 CSSファイル
107a,b,c CSSコード部分
107x,108x,113x 利用者端末に使用されない部分
F107a~F107c,F108a~F108c オブジェクト
108 スクリプト言語ファイル
108a~108d スクリプト言語コード部分
109 画像ファイル
113 HTMLファイル
113a~113d HTMLコード部分
113o1,113o2 オブジェクト
113o10,113o20,113o21 オブジェクト
113i ヘッド
113j ボディ
113z 最適化されたHTMLファイル
1115,1715 監視制御部
1116,1716 動作制御部
1117,1717 動作制御記憶部
1120,1720 時間実行制御部
1121,1721 時間実行記憶部
124 リソース
125 設定ファイル
126 機種情報ファイル
130 加工済みデータ記憶領域
132 処理済みCSSファイル
133 処理済みスクリプト言語ファイル
134 処理済み画像ファイル
200 オリジナルデータ
201,202 処理済みデータ
203 CLI
211,212 ウェブコンテンツ
401 通信の渋滞
402 描画の渋滞
403 配信最適化
404 ファーストビューに対応する部分の描画
405 ファーストビューに対応する部分以外の描画
410 エンゲージメントのスコアが最小の場合
420 エンゲージメントのスコアが中間の場合
430 エンゲージメントのスコアが最大の場合
1000,1100 中央演算処理装置
1001,1101,1701 記憶装置
1001a,1101a,1701a 主記憶部
1001b,1101b,1701b 補助記憶部
1002,1102 通信用インターフェイス
1003,1103 入力装置
1004,1104 表示装置
1105,1705 OS
1106,1706 データベース
1403 人工知能サーバ
1410 人工知能制御部
1412 戦略ファイル
1430 人工知能記憶領域
1510 通信データ制御部
1603 データ取得サーバ
1703 リバースプロキシサーバ
1803 クラウド
Claims (11)
- ネットワークを通じて通信可能な一または二以上のサーバに対して利用者端末からリクエストが送信されてから、利用者端末にウェブコンテンツを表示するためのオリジナルデータがサーバから利用者端末に送信されて、ウェブコンテンツが利用者端末で入力受付可能になるまでに、
前記サーバに設置されたリクエスト処理ユニットに対して、利用者端末から送信されたリクエストが、アプリケーション処理ユニットと人工知能ユニットが受信するステップと、
アプリケーション処理ユニットが、ウェブコンテンツを表示するためのオリジナルデータをデータ取得・処理ユニットに対して送信するステップと、
人工知能ユニットが、ウェブコンテンツを利用者端末毎に表示する戦略案を立案するステップと、
データ取得・処理ユニットが、利用者端末にウェブコンテンツを表示するためのオリジナルデータを受信するステップと、
前記戦略案に基づいて、データ取得・処理ユニットによりオリジナルデータが加工されて、複数の加工済みデータが生成するステップと、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択されるステップと、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが、利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示されるステップと、
が実施され、
前記サーバが、一または二以上の物理マシン、一または二以上の仮想マシン、ならびに、一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境からなり、
前記戦略案を立案するステップが、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースのうち、
利用者端末毎に、利用者端末にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性を学習するステップと、
利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理するステップと、
を含むことを特徴とする、ウェブコンテンツの自動高速表示制御方法。 - リソースが、オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのデータを含み、
処理済みデータが、オブジェクト置換済みプログラムを含み、
リソース参照部分を有するオリジナルデータが、リソース参照部分をプログラムのオブジェクトに置換されて、オブジェクト置換済みプログラムが、生成するステップと、
前記オブジェクトが、識別情報と共にリソース毎に対応付けられるステップと、
利用者端末毎に、利用者端末に搭載されたブラウザでオブジェクト置換済みプログラムが実行されると、
オブジェクト置換済みプログラムに含まれるオブジェクトが識別情報によりリソースを特定し、そのリソースが実行されるステップと、
を含む、請求項1に記載のウェブコンテンツの自動高速表示制御方法。 - 利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理するステップが、
前記処理済みデータに含まれるプログラムのうち、実行させるプログラムを選択するステップ、
前記処理済みデータに含まれるプログラムのうち、優先して実行させるプログラムを選択するステップ、
前記処理済みデータに含まれるプログラムのうち、遅延して実行させるプログラムを選択するステップ、
前記処理済みデータに含まれるプログラムのうち、実行させるプログラムの実行順序を選択するステップ、
前記処理済みデータに含まれるプログラムのうち、実行させるプログラムの実行タイミングを選択するステップ、
および
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータを選択するステップ、
からなる群より選ばれる少なくとも一つのステップを含む、請求項1または2に記載のウェブコンテンツの自動高速表示制御方法。 - オリジナルデータが、プログラムデータおよびバイナリデータの少なくとも一つを含み、
プログラムデータが、マークアップ言語、プログラミング言語、スタイルシート、スクリプト言語からなる群より選ばれる少なくとも一つを有するコードを含み、
バイナリデータが、画像ファイル、音ファイルおよび動画ファイルの少なくとも一つを含み、
リソースが、オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つを含み、
加工済みデータが生成されるステップが、
(1)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに不要部分が削除されるステップと、
(2)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに必要部分が圧縮されるステップと、
(3)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに実行順序が変更されるステップと、
(4)オリジナルデータに含まれる、マークアップ言語、プログラミング言語、スタイルシートおよびスクリプト言語からなる群より選ばれる少なくとも一つを有するコードから、利用者端末の表示環境ごとに実行タイミングが変更されるステップと、
(5)オリジナルデータに含まれる、バイナリデータから、単位面積当たりの表示画素数、単位時間当たりの録画録音密度、容量および保存形式からなる群より選ばれる少なくとも一つが変換されるステップと、
の(1)~(5)からなる群より選ばれる少なくとも一つのステップを含み、
利用者端末毎にウェブコンテンツが表示されるステップが、
リクエストが利用者端末からネットワークを通じてリクエスト処理ユニットに送信されるステップと、
リクエスト処理ユニットに受信されたリクエストから、利用者端末毎の表示環境が特定されるステップと、
利用者端末のブラウザからリクエストがリクエスト処理ユニットに送信された後に、アプリケーション処理ユニットおよびデータ取得・処理ユニットの少なくとも一つからリソースが利用者端末毎に送信され、利用者端末毎のブラウザに表示されるステップと、
を含む、請求項1~3のいずれかに記載のウェブコンテンツの自動高速表示制御方法。 - オリジナルデータが加工されて、複数の加工済みデータが生成するステップが、
前記データ取得・処理ユニットが通信可能な記憶領域に保存された利用者端末に関する機種情報データに基づいて、利用者端末毎に複数の加工済みデータが生成されるステップを含み、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択されるステップが、
利用者端末毎に、機種情報データに基づいて利用者端末の表示画面の表示環境を特定するステップと、
利用者端末毎に、ウェブコンテンツのうち、利用者端末の表示画面の表示環境に合わせて最初に表示されるウェブコンテンツの部分を特定するステップと、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示されるステップが、ウェブコンテンツのうち、利用者端末の表示画面の表示環境に合わせて最初に表示されるウェブコンテンツに対応する処理済みデータを利用者端末に優先して送信するステップと、
を含む、請求項1~4のいずれかに記載のウェブコンテンツの自動高速表示制御方法。 - ウェブコンテンツが利用者端末毎に表示されるステップが、
ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分に対応するデータが利用者端末に送信されるステップと、
利用者端末に利用者端末の画面に最初に表示される部分に対応するウェブコンテンツの部分が表示されてから一定時間が経過したことを示すイベント情報、および、ユーザが利用者端末を操作して利用者端末に対して追加の情報を表示させる行動を起こしたことを示すイベント情報の少なくとも一つのイベント情報が、サーバおよびブラウザの少なくとも一つにより検出されるステップと、
前記イベント情報をアプリケーション処理ユニット、人工知能ユニット、データ取得・処理ユニットおよび利用者端末に搭載されたブラウザの少なくとも一つが検出した後に、ウェブコンテンツの残りの一部または全部の部分を表示するためのリソースが、アプリケーション処理ユニットおよびデータ取得・処理ユニットの少なくとも一つから、ネットワークを通じて利用者端末に送信されるステップと、
を含む、請求項1~5のいずれかに記載のウェブコンテンツの自動高速表示制御方法。 - ウェブコンテンツが利用者端末毎に表示されるステップが、
ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分を表示するためのリソースが利用者端末に送信されるステップと、
ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分が入力受付可能になるまでの時間が伸縮するステップと、
を含む、請求項6に記載のウェブコンテンツの自動高速表示制御方法。 - ウェブコンテンツを閲覧するユーザのユーザ体験に基づいて、ユーザとウェブコンテンツとのエンゲージメントのスコアが算出されるステップと、
前記エンゲージメントのスコアに基づいて、利用者端末毎に、ウェブコンテンツのうち、利用者端末の画面に最初に表示される部分が入力受付可能になるまでの時間が伸縮するステップと、
を含む、請求項7に記載のウェブコンテンツの自動高速表示制御方法。 - 請求項1~8のいずれかに記載のウェブコンテンツの自動高速表示制御方法を実施するためのプログラムであって、
ネットワークを通じて通信可能な一または二以上のサーバに対して利用者端末からリクエストが送信されてから、利用者端末にウェブコンテンツを表示するためのオリジナルデータがサーバから利用者端末に送信されて、ウェブコンテンツが利用者端末で入力受付可能になるまでに、
前記サーバに設置されたリクエスト処理ユニットに対して、利用者端末から送信されたリクエストが、アプリケーション処理ユニットと人工知能ユニットが受信する手段と、
アプリケーション処理ユニットが、ウェブコンテンツを表示するためのオリジナルデータをデータ取得・処理ユニットに対して送信する手段と、
人工知能ユニットが、ウェブコンテンツを利用者端末毎に表示する戦略案を立案する手段と、
データ取得・処理ユニットが、利用者端末にウェブコンテンツを表示するためのオリジナルデータを受信する手段と、
前記戦略案に基づいて、データ取得・処理ユニットによりオリジナルデータが加工されて、複数の加工済みデータが生成する手段と、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択される手段と、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが、利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示される手段と、
を備え、
前記サーバが、一または二以上の物理マシン、一または二以上の仮想マシン、ならびに、一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境からなり、
前記戦略案を立案する手段が、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースのうち、
利用者端末毎に、利用者端末にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性を学習する手段と、
利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理する手段と、
を含む、ウェブコンテンツの自動高速表示制御プログラム。 - 請求項9に記載されたウェブコンテンツの自動高速表示制御プログラムを記録した、記憶装置。
- 請求項1~8のいずれかに記載のウェブコンテンツの自動高速表示制御方法を実施するためのシステムであって、
ネットワークを通じて通信可能な一または二以上のサーバに対して利用者端末からリクエストが送信されてから、利用者端末にウェブコンテンツを表示するためのオリジナルデータがサーバから利用者端末に送信されて、ウェブコンテンツが利用者端末で入力受付可能になるまでに、
前記サーバに設置されたリクエスト処理ユニットに対して、利用者端末から送信されたリクエストが、アプリケーション処理ユニットと人工知能ユニットが受信する手段と、
アプリケーション処理ユニットが、ウェブコンテンツを表示するためのオリジナルデータをデータ取得・処理ユニットに対して送信する手段と、
人工知能ユニットが、ウェブコンテンツを利用者端末毎に表示する戦略案を立案する手段と、
データ取得・処理ユニットが、利用者端末にウェブコンテンツを表示するためのオリジナルデータを受信する手段と、
前記戦略案に基づいて、データ取得・処理ユニットによりオリジナルデータが加工されて、複数の加工済みデータが生成する手段と、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースから、利用者端末毎にウェブコンテンツを表示するための処理済みデータが選択される手段と、
前記利用者端末毎にウェブコンテンツを表示するための処理済みデータが、利用者端末毎に送信されて、利用者端末毎にウェブコンテンツが表示される手段と、
を備え、
前記サーバが、一または二以上の物理マシン、一または二以上の仮想マシン、ならびに、一または二以上のコンテナからなる群より選ばれる少なくとも一つの実行環境からなり、
前記戦略案を立案する手段が、
前記オリジナルデータならびに複数の加工済みデータからなる群より選ばれる少なくとも一つのリソースのうち、
利用者端末毎に、利用者端末にウェブコンテンツをより速く表示するための処理済みデータが共通して有する属性を学習する手段と、
利用者端末毎に、前記属性に基づいて、前記オリジナルデータをデータ取得・処理ユニットで処理する手段と、
を含む、ウェブコンテンツの自動高速表示制御システム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/020025 WO2021234882A1 (ja) | 2020-05-20 | 2020-05-20 | ウェブコンテンツの自動高速表示制御方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JPWO2021234882A1 JPWO2021234882A1 (ja) | 2021-11-25 |
JPWO2021234882A5 JPWO2021234882A5 (ja) | 2023-05-24 |
JP7523733B2 true JP7523733B2 (ja) | 2024-07-29 |
Family
ID=78708256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022524779A Active JP7523733B2 (ja) | 2020-05-20 | 2020-05-20 | ウェブコンテンツの自動高速表示制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US12111876B2 (ja) |
JP (1) | JP7523733B2 (ja) |
WO (1) | WO2021234882A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016112354A2 (en) | 2015-01-08 | 2016-07-14 | Instart Logic, Inc. | Html streaming |
US20160205166A1 (en) | 2015-01-08 | 2016-07-14 | Instart Logic, Inc. | HTML streaming |
WO2019072201A1 (zh) | 2017-10-13 | 2019-04-18 | 华为技术有限公司 | 网页内容提取方法以及终端设备 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010702B2 (en) * | 2001-06-14 | 2011-08-30 | Nokia Corporation | Feature-based device description and content annotation |
US8412812B1 (en) * | 2004-12-30 | 2013-04-02 | Google Inc. | Client-side measurement of load times |
US8069408B2 (en) * | 2006-11-16 | 2011-11-29 | Novell, Inc. | Representing extensible markup language (XML) as an executable having conditional authentication or policy logic |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
JP5893258B2 (ja) * | 2011-03-31 | 2016-03-23 | フェリカネットワークス株式会社 | 情報処理装置および方法、並びにプログラム |
US20140068408A1 (en) * | 2012-09-05 | 2014-03-06 | Chegg, Inc. | Presentation of layered content documents in multiscreen systems |
JP6311726B2 (ja) * | 2014-01-22 | 2018-04-18 | 株式会社リコー | データ伝送システム、端末装置、プログラムおよびデータ伝送方法 |
US9158656B1 (en) * | 2014-07-15 | 2015-10-13 | American Express Travel Related Services Company, Inc. | Systems and methods for progressively launching websites |
US10212121B2 (en) * | 2014-11-24 | 2019-02-19 | Microsoft Technology Licensing, Llc | Intelligent scheduling for employee activation |
US20200159866A1 (en) * | 2018-11-19 | 2020-05-21 | International Business Machines Corporation | Perceived Web Page Loading Time |
US12069039B2 (en) * | 2020-10-23 | 2024-08-20 | EMC IP Holding Company LLC | Dynamically unifying disparate user interface applications in a cloud native environment |
-
2020
- 2020-05-20 JP JP2022524779A patent/JP7523733B2/ja active Active
- 2020-05-20 WO PCT/JP2020/020025 patent/WO2021234882A1/ja active Application Filing
- 2020-05-20 US US17/783,317 patent/US12111876B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016112354A2 (en) | 2015-01-08 | 2016-07-14 | Instart Logic, Inc. | Html streaming |
US20160205166A1 (en) | 2015-01-08 | 2016-07-14 | Instart Logic, Inc. | HTML streaming |
WO2019072201A1 (zh) | 2017-10-13 | 2019-04-18 | 华为技术有限公司 | 网页内容提取方法以及终端设备 |
CN110020292A (zh) | 2017-10-13 | 2019-07-16 | 华为技术有限公司 | 网页内容提取方法以及终端设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2021234882A1 (ja) | 2021-11-25 |
JPWO2021234882A1 (ja) | 2021-11-25 |
US20230010433A1 (en) | 2023-01-12 |
US12111876B2 (en) | 2024-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2720899C2 (ru) | Способ и система для определения зависящих от пользователя пропорций содержимого для рекомендации | |
US10936585B1 (en) | Unified data processing across streaming and indexed data sets | |
US20210342125A1 (en) | Dual textual/graphical programming interfaces for streaming data processing pipelines | |
US10607235B2 (en) | Systems and methods for curating content | |
US9396485B2 (en) | Systems and methods for presenting content | |
KR101121280B1 (ko) | 내재적 사용자 피드백에 기초한 서치 엔진 결과들 페이지에 대한 동적 레이아웃 | |
US10713666B2 (en) | Systems and methods for curating content | |
US10965766B2 (en) | Synchronized console data and user interface playback | |
KR102504075B1 (ko) | 사용자 디바이스 이벤트의 매칭 및 속성 | |
CN104782138A (zh) | 识别缩略图图像以呈现视频 | |
TW201118620A (en) | Systems and methods for providing advanced search result page content | |
RU2714594C1 (ru) | Способ и система определения параметра релевантность для элементов содержимого | |
CN106471497A (zh) | 使用上下文的辅助浏览 | |
CN1713575A (zh) | 动态生成定制菜单页的系统及方法 | |
US9922006B1 (en) | Conditional promotion through metadata-based priority hinting | |
CN108780446A (zh) | 时间依赖的机器生成的提示 | |
US9734134B1 (en) | Conditional promotion through frame reordering | |
JP2006053616A (ja) | サーバ装置、webサイト推奨方法およびプログラム | |
US9565224B1 (en) | Methods, systems, and media for presenting a customized user interface based on user actions | |
US9607322B1 (en) | Conditional promotion in content delivery | |
CN103718179A (zh) | 信息处理装置、信息处理方法、信息处理程序以及记录有信息处理程序的记录介质 | |
JP7523733B2 (ja) | ウェブコンテンツの自動高速表示制御方法 | |
US9984132B2 (en) | Combining search results to generate customized software application functions | |
US20170185656A1 (en) | Combining Search Results That Specify Software Application Functions | |
US9785969B1 (en) | Conditional promotion in multi-stream content delivery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A801 Effective date: 20220707 |
|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20220707 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230515 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230515 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240604 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240621 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7523733 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |