JP2023533962A - インテリジェントな親和性ベースのフィールド更新の実行 - Google Patents
インテリジェントな親和性ベースのフィールド更新の実行 Download PDFInfo
- Publication number
- JP2023533962A JP2023533962A JP2023501010A JP2023501010A JP2023533962A JP 2023533962 A JP2023533962 A JP 2023533962A JP 2023501010 A JP2023501010 A JP 2023501010A JP 2023501010 A JP2023501010 A JP 2023501010A JP 2023533962 A JP2023533962 A JP 2023533962A
- Authority
- JP
- Japan
- Prior art keywords
- field
- record
- records
- receiving
- selection
- 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.)
- Pending
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2428—Query predicate definition using graphical user interfaces, including menus and forms
-
- 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/903—Querying
- G06F16/9038—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/235—Update request formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/256—Integrating or interfacing systems involving database management systems in federated or virtual databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本願では、レコード内のフィールドを更新する方法、システム、及び非一時的コンピュータ読取可能媒体について説明する。最初、フィールドがどれほど頻繁に更新されるかに従って、フィールドが表示される。フィールドの1つが選択され、次いで、選択されたフィールドを含むレコードタイプのレコードが表示される。レコードの1つが選択され、選択されたレコードの選択されたフィールドに記憶された値をユーザが更新することを可能にするフォームが表示される。
Description
ビジネスを行い、日常的な業務を遂行するために、ビジネス顧客は、複数の記録の経過を追う必要がある。多くの場合、顧客のビジネスやプロジェクトが成長するとき、保持される記録の数も同様に増大する。
情報を最新に保ち、事前に計画を立てるために、あらゆる顧客が、記録を更新する必要がある。さらに、あらゆる顧客又は企業は、典型的には、経営陣や利害関係者に受け入れられるような、情報の計画及び保存、記録の内部的な更新などの独自の方法を有する。しかしながら、記録の大きさや、情報が記憶されるしばしばユニークな方法や形式に起因して、記録の更新は合理化することができず、しばしばかなり煩雑な方法で生じる。
例えば、このような顧客は、レコードのリスト内から更新したいレコードを選択するように求められることがある。1つの更新だけが望まれるとき、数百又はさらには数千のレコードから、そうする必要があることは、しばしば、著しく時間的に非効率になり、顧客のパフォーマンス効率を妨げる。さらに、いくつかのレコードに到達するには、しばしば、他のレコードが最初に記入されていること(事前に必要なレコード)、又は他のステップが行われていることを要し、これらの事前に必要なレコード又はステップは、毎回同じ値又はアクションをとる場合があり、時間及びパフォーマンス効率におけるさらなる障害を形成する。したがって、プロジェクト、機会、又は日常業務を監視及び計画する際に、そのような顧客は、毎回レコードの長いリストを通じてレコードを選択すること又は毎回値を事前記入することに関連した面倒さを回避する、レコードを更新するためのより容易な方法から、利益を得ることになる。
本明細書に組み込まれ、明細書の一部を形成する添付の図面は、本開示の実施形態を示し、説明とともに、さらに実施形態の原理を説明するのに役立ち、当業者が実施形態を個々に又はこれらの組み合わせとして作成及び使用することを可能にする。
顧客ユーザのユーザがユーザモジュールを使用して中央モジュールを介してマルチテナントデータリポジトリの対応するレコードを更新することができる、一例示的な実施形態のブロック図である。
いくつかの実施形態による、顧客のユーザに関するモジュラーインターフェース構造、マルチテナントデータリポジトリ内に存在するレコード、及び更新インターフェース構造を示す。
1つ以上の実施形態に従う、フィールドを選択するためのグラフィカルユーザインターフェース(GUI)の例示的な画面を示す。
1つ以上の実施形態に従う、レコードを選択するためのGUIの例示的な画面を示す。
1つ以上の実施形態に従う、選択されたレコードの選択されたフィールド内の値を更新するための例示的なフォームを示す。
1つ以上の実施形態に従う、レコード内のフィールドを更新するためのフローチャートを示す。
1つ以上の実施形態に従う、レコードのリストを選択するための例示的な画面を示す。
1つ以上の実施形態に従う、レコードの選択されたフィールド内の値を更新するための例示的なフォームを示す。
一実施形態によるニューラルネットワークを示す。
一実施形態による、分類木のフォレストを使用するランダムフォレスト分類器を示す。
一実施形態による、重み付きSVMを示すグラフを示す。
一実施形態による、特徴重み付きSVM重要性を示すグラフを示す。
一実施形態による、例示的なクラウドコンピューティング環境のブロック図である。
以下の実施形態で提示されるシステムのいずれかの、基礎をなす構造の例示的なコンポーネントのブロック図である。
要素が最初に現れる図面は、通常、対応する参照番号における最左端の1つ又は複数の桁により示される。図面において、同様の参照番号は、同一又は機能的に類似した要素を示すことがある。
本明細書で提供されるのは、ユーザが大量の時間を無駄にする必要なく又は大量のステップを実行する必要なくレコードの値を編集することができるようにする、ユーザが編集しそうなレコードの予測及び結果として生じるレコードの効率的な方法での表示のためのシステム、機器、装置、方法、及び/又はコンピュータプログラム製品の実施形態、及び/又はこれらの組み合わせ及びサブコンビネーションである。
図1は、マルチテナントデータリポジトリ内の顧客のレコードを更新することを求める顧客(例えば、クラウドベースのレコード管理システム内のビジネス顧客)のユーザによりアクセスされ得るユーザモジュール102、中央モジュール104、及びマルチテナントデータリポジトリ106間の相互作用を示すデータ転送環境100のブロック図である。マルチテナントデータリポジトリ106は、複数のテナント(顧客)によりアクセスされ、各顧客は、マルチテナントデータリポジトリ106に記憶された独自のデータ及びレコードを有する。
一実施形態によれば、中央モジュール104とユーザモジュール102は、図12に示すコンピュータシステム1200などの1つ以上の別個のコンピュータシステムを含んでもよく、これは、パーソナルコンピュータ、モバイル装置などを含むことができる。本明細書で説明される方法を説明するのを助けるために、基礎をなす構造の一例示的な実施形態を説明する。図12に示すコンピュータシステム1200の基礎をなす構造は、データベースとデータの送受信を実装することができる。このようなコンピュータシステムは、上述した実施形態によればユーザモジュール102、中央モジュール104、及びマルチテナントデータリポジトリ106を含むことができるが、後述する実施形態において、ユーザモジュール102と中央モジュール104は異なるコンピュータシステム1200上にある。コンピュータシステム1200は、プロセッサ1204などの1つ以上のプロセッサ(中央処理装置又はCPUとも呼ばれる)を含むことができる。プロセッサ1204は、通信インフラストラクチャ又はバス1206に接続することができる。
コンピュータシステム1200は仮想化することができ、あるいは、モニタ、キーボード、ポインティング装置などのユーザ入力/出力装置1203を含むこともでき、これらは、ユーザ入力/出力インターフェース1202を通じて通信インフラストラクチャ1206と通信することができる。
1つ以上のプロセッサ1204は、グラフィックス処理ユニット(GPU)でもよい。一実施形態において、GPUは、例えば、特定のユーザの特定の顧客について又は特定の顧客の特定のグループの全てのユーザについてのスコア付け評価を行うため、どのレコードがアクセスされそうか(これは以下で説明する)をスコア付けするときにレコードの関連ファクタを考慮に入れるために、又は、前に記入されたレコードのフィールドにおけるパターンを検出するために、データが大量に処理されるべきときに、レコードのフィールドの関連値から、マルチテナントデータリポジトリ106内のテーブルから受け取ったレコードデータを処理するように設計された特化した電子回路であるプロセッサでもよい。GPUは、コンピュータグラフィックスアプリケーション、画像、ビデオ、ワード処理文書、PDFファイルなどに共通の数学的に負荷の高いデータなどの、大きいデータブロックの並列処理に効率的である並列構造を有することができ、これらのいずれも、上述したマルチテナントデータリポジトリ106から受け取ったテーブルデータを含むことができる。
コンピュータシステム1200は、ランダムアクセスメモリ(RAM)などのメイン又は一次メモリ1208を含むこともできる。メインメモリ1208は、1つ以上のレベルのキャッシュ(二次キャッシュを含む)を含むことができる。
コンピュータシステム1200は、1つ以上の二次記憶装置又はメモリ1210を含むこともできる。二次メモリ1210は、例えば、ハードディスクドライブ1212及び/又は取り外し可能記憶装置又はドライブ1214を含むことができ、これらは、複数の物理ハードディスクドライブコンポーネント(SSD又はSATAベースのディスクドライブなど)を1つ以上の論理ユニットに結合することができるレイド(Raid)アレイ、又は取り外し可能記憶ユニット1218と相互作用することができる。取り外し可能記憶ユニット1218は、リモートでアクセスされるネットワークドライブを含む、コンピュータソフトウェア(制御ロジック)及び/又はデータを記憶した、コンピュータ使用可能又は読取可能な記憶装置を含むことができる。取り外し可能記憶ユニット1218は、プログラムカートリッジ及びカートリッジインターフェース、取り外し可能記憶メモリチップ(EPROM又はPROMなど)及び関連するソケット、メモリスティック及びUSBポート、メモリカード及び関連するメモリカードスロット、及び/又は任意の他の取り外し可能記憶ユニット及び関連するインターフェースでもよい。取り外し可能記憶ドライブ1214は、取り外し可能記憶ユニット1218から読み取り、及び/又は取り外し可能記憶ユニット1218に書き込むことができる。
二次メモリ1210は、コンピュータプログラム及び/又は他の命令及び/又はデータをコンピュータシステム1200によりアクセスできるようにするための他の手段、装置、コンポーネント、道具、又は他のアプローチを含むことができる。そのような手段、装置、コンポーネント、道具、又は他のアプローチは、例えば、取り外し可能記憶ユニット1222及びインターフェース1220を含むことができる。取り外し可能記憶ユニット1222及びインターフェース1220の例には、プログラムカートリッジ及びカートリッジインターフェース(ビデオゲーム装置に見られるものなど)、取り外し可能メモリチップ(EPROM又はPROMなど)及び関連するソケット、メモリスティック及びUSBポート、メモリカード及び関連するメモリカードスロット、及び/又は任意の他の取り外し可能記憶ユニット及び関連するインターフェースを含むことができる。
コンピュータシステム1200は、通信又はネットワークインターフェース1224をさらに含むことができる。通信インターフェース1224は、コンピュータシステム1200が外部装置、外部ネットワーク、外部エンティティなどの任意の組み合わせ(参照符号1228により個別及び集合的に参照される)と通信及び相互作用することを可能にすることができる。例えば、通信インターフェース1224は、コンピュータシステム1200が通信パス1226を通じて外部又はリモートのエンティティ1228と通信できるようにしてもよく、該通信パス1226は、有線及び/又は無線(又は、これらの組み合わせ)でもよく、LAN、WAN、インターネットなどの任意の組み合わせを含むことができる。制御ロジック及び/又はデータは、通信パス1226を介してコンピュータシステム1200に、及びコンピュータシステム1200から送信することができる。
コンピュータシステム1200は、いくつかの非限定的な例を挙げると、パーソナルデジタルアシスタント(PDA)、デスクトップワークステーション、ラップトップ又はノートブックコンピュータ、ネットブック、タブレット、スマートフォン、スマートウォッチ又は他のウェアラブル、アプライアンス、モノのインターネット(Internet-of-Things)の一部、及び/又は組み込みシステムのいずれか、又はこれらの任意の組み合わせでもよい。
コンピュータシステム1200における任意の適用可能なデータ構造、ファイル形式、及びスキーマが、これらに限られないがJavaScript(登録商標) Object Notation(JSON)、拡張可能マークアップ言語(Extensible Markup Language、XML)、イェットアナザーマークアップ言語(Yet Another Markup Language、YAML)、拡張可能ハイパーテキストマークアップ言語(Extensible Hypertext Markup Language、XHTML)、ワイヤレスマークアップ言語(Wireless Markup Language、WML)、MessagePack、XMLユーザインターフェース言語(XML User Interface Language、XUL)、又は任意の他の機能的に類似した表現を単独で又は組み合わせて含む標準から導出されてもよく、データを(例えば、図1のソースモジュール102、中央モジュール104、マルチテナントデータリポジトリ106のいずれかの間で)送信又は受信するために使用されてもよい。代替的に、専有のデータ構造、形式、又はスキーマが、排他的に又は既知若しくはオープンの標準と組み合わせて使用されてもよい。
いくつかの実施形態において、制御ロジック(ソフトウェア)を記憶させた有形の非一時的なコンピュータ使用可能又は読取可能な媒体を含む有形の非一時的な機器又は製造品は、本明細書においてコンピュータプログラム製品又はプログラム記憶装置と呼ばれることもある。これは、これらに限られないが、コンピュータシステム1200、メインメモリ1208、二次メモリ1210、及び取り外し可能記憶ユニット1218及び1222、並びに前述のものの任意の組み合わせを具現化する有形の製造品を含む。このような制御ロジックは、1つ以上のデータ処理装置(コンピュータシステム1200など)により実行されたときに、そのようなデータ処理装置に、本明細書に記載されるとおり動作させることができる。
コンピュータシステム1200は、これらに限られないが、以下で説明するクラウドコンピューティング環境502などのリモート又は分散クラウドコンピューティングソリューション;ローカル又はオンプレミスのソフトウェア(「オンプレミス」のクラウドベースソリューション);「アズアサービス(as a service)」モデル(例えば、コンテンツアズアサービス(content as a service、CaaS)、デジタルコンテンツアズアサービス(digital content as a service、DCaaS)、ソフトウェアアズアサービス(software as a service、SaaS)、マネージドソフトウェアアズアサービス(managed software as a service、MSaaS)、プラットフォームアズアサービス(platform as a service、PaaS)、デスクトップアズアサービス(desktop as a service、DaaS)、フレームワークアズアサービス(framework as a service、FaaS)、バックエンドアズアサービス(backend as a service、BaaS)、モバイルバックエンドアズアサービス(mobile backend as a service、MBaaS)、インフラストラクチャアズアサービス(infrastructure as a service、IaaS)など);及び/又は、前述の例又は他のサービス若しくは配信パラダイムの任意の組み合わせを含むハイブリッドモデルを含む、任意の配信パラダイムを通じて任意のアプリケーション及び/又はデータにアクセスし、又は該アプリケーション及び/又はデータをホストするクライアント又はサーバでもよい。例えば、請求項6の方法(以下で説明される)並びに図3~図5及び図7~図8のGUIは、マルチテナントデータリポジトリ106を含む中央モジュール104から実行される分散クラウドコンピューティング環境からのSaaS実行の一部として提供されてもよい。
マルチテナントデータリポジトリ106を実装する際に、一例示的なアプローチとして、コンピュータシステム1200は、永続性を有するインメモリデータベースを使用することができ、これは、永続性のためのトランザクションログが二次メモリ1210に記憶されて、コンピュータシステム1200の一次メモリ1208からデータオブジェクトを記憶し、該データオブジェクトにアクセスすることができる。このようなデータベースは、これらのリポジトリの構成データオブジェクトを記憶し、該構成データオブジェクトにアクセスするために使用することができ、これにおいて、ユーザセッションを監視することに基づくレコードアクセスデータ(records-accessed data)は、マルチテナントデータリポジトリ106へパースされる(parsed into)。
代替的に、これらのリポジトリの構成データオブジェクトを記憶し、該構成データオブジェクトにアクセスするために、コンピュータシステム1200は、上述した第1の実施形態より少ない一次メモリ1208を使用して、インメモリデータベースとして存在するデータの一部のみを実装して、インメモリフットプリントを削減してもよく、代わりに、データの大部分を二次メモリ1210内のディスクベースのデータベースとして記憶してもよい(より頻繁にアクセスされるデータは一次メモリ1208に記憶され、より頻繁にアクセスされないデータは二次メモリ1210に記憶される)。
マルチテナントデータリポジトリ106が別個のシステム1200として実装される場合、それは、通信又はネットワークインターフェース1224を通じて、例えば内部ネットワーク、インターネットなどを通じて、リンクされたネットワークエンティティにデータを送信することができ、ユーザモジュール102と中央モジュール104は、通信パス1226を通じてアクセスされ得る内部又は外部ネットワークに存在するエンティティ1228を含むことができる。代替的に、中央モジュール104が、コンピュータシステム1200内に連帯的にマルチテナントデータリポジトリ106と共に存在する場合、コンピュータシステム1200は、中央モジュール104とマルチテナントデータリポジトリ106との間の通信に通信インフラストラクチャ1206を使用してデータベースを実装することができるが、通信パス1226を通じて、通信インターフェース1224を通じてユーザモジュール102にデータを送信することができ、これにおいて、中央モジュール104はネットワークエンティティ628である。
図11に示すように、本明細書に記載されるシステム及び/又は方法が実施され得る一例示的な環境1100のブロック図において、クラウドコンピューティング環境1102は、バックエンドプラットフォーム1108を含むことができる。上述した図1の中央モジュール104は、クラウドコンピューティング環境1102などのホストを含むこともできる。クラウドコンピューティング環境1102は、上述したのと同じタイプのコンピューティングシステム1200の、中央モジュールコンピューティングシステム1104によりアクセスすることができ、一実施形態において、中央モジュールコンピューティングシステム1104は中央モジュール104に含まれる。この場合、図12の中央モジュールコンピューティングシステム1104は、図12に示すような通信又はネットワークインターフェース1224によりクラウドコンピューティング環境1102にアクセスすることができ、ネットワークゲートウェイ1106は、中央モジュールコンピューティングシステムの通信パス1226によりアクセスされるリモートエンティティ1228を含むことができる(これにおいて、図11に示す3つのエンティティ1102、1104、及び1106は、図1の中央モジュール104に対応することになる)。代替的に、コンピューティングクラウド環境1102自体が、図12のリモートエンティティ1228に対応してもよく、例えばアプリケーションプロトコルインターフェース(API)を通じて、通信パス1226を通じて中央モジュールコンピューティングシステム1104により直接アクセスされてもよく、ネットワークゲートウェイ1106の必要が排除される(双方のオプションが図11に示されており、中央モジュールコンピューティングシステム1104の上のフローパスはネットワークゲートウェイ1106を使用し、中央モジュールコンピューティングシステム1104の下のフローパスはクラウドコンピューティング環境1102に直接接続しており、双方とも破線の双方向の線を使用して示されている)。
環境1100及び100の装置は、有線接続、無線接続、又は有線及び無線接続の組み合わせを通じて接続することができる。
一例示的な実施形態において、データ転送環境100の1つ以上の部分が、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、無線LAN(WLAN)、ワイドエリアネットワーク(WAN)、無線ワイドエリアネットワーク(WWAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部、公衆交換電話網(PSTN)の一部、セルラー電話網、無線ネットワーク、WiFiネットワーク、WiMaxネットワーク、任意の他のタイプのネットワーク、又は2つ以上のこのようなネットワークの組み合わせでもよい。
上記で説明したように、図1の中央モジュール104は、図12に示すコンピュータシステム1200と同じタイプのコンピュータシステムを含む、図11に示す中央モジュールコンピューティングシステム1104を有することができる。ユーザモジュール102又はマルチテナントデータリポジトリ106は、中央モジュールコンピューティングシステム1104を通じて中央モジュール104にアクセスすることができ、ユーザモジュール102又はマルチテナントデータリポジトリ106は、一実施形態において中央モジュールコンピューティングシステム1104の観点からは外部ネットワークエンティティ1228でもよく、例えばTCP/UDP/FTP/HTML5プロトコルを使用して、コンピューティングシステム11104の通信インターフェース1224の通信パス1226を通じてデータパケットの形でデータをやりとりすることができる。代替的に、一実施形態において、ソースモジュール102は、中央モジュール104によりホストされるクラウドコンピューティング環境1102内のコンピューティングリソース1110(以下で説明する)上にアプリケーション1110aとしてホストされるフロントエンドアプリケーション1110a(例えば、ウェブブラウザアプリケーション、ウェブブラウザ拡張部分、専有のOSアプリケーション、スタンドアロンの実行可能アプリケーション、コマンドラインアクセスシェルプログラム、FTP/UDP/TCP/HTML5プロトコルなど)を通じて中央モジュール104にアクセスすることができる。
図11のバックエンドプラットフォーム1108は、サーバ又はサーバのグループを含むことができる。一実施形態において、バックエンドプラットフォーム1104は、クラウドコンピューティング環境1102をホストすることができる。バックエンドプラットフォーム1102はクラウドベースでない場合があり、あるいは部分的にクラウドベースでもよいことが理解され得る。
クラウドコンピューティング環境1102は、コンピューティングアズアサービス(computing as a service)(上述した「CaaS」)を配信する環境を含み、それにより、共有リソース、サービスなどを、中央モジュールコンピューティングシステム1104及び/又はバックエンドプラットフォーム1108に提供することができる。クラウドコンピューティング環境1102は、サービスを配信するシステム及び/又は装置の物理的な場所及び構成のエンドユーザ知識を必要としない、計算、ソフトウェア、データアクセス、記憶、及び/又は他のサービスを提供することができる。例えば、中央モジュールコンピューティングシステム1104、並びにソースモジュール102は、アプリケーションプロトコルインターフェース(API)又は前に列挙された様々な通信プロトコルのいずれかを通じて、バックエンドプラットフォーム1108内のコンピューティングリソース1110内のデータベースに記憶され又は該データベース上にホストされているデータを受信することができる。クラウドコンピューティング環境1102は、コンピューティングリソース1110を含むことができる。
各コンピューティングリソース1110は、1つ以上のパーソナルコンピュータ、ワークステーション、コンピュータ、サーバ装置、又は上述したコンピュータシステム1200などのタイプの、他のタイプの計算及び/又は通信装置を含む。コンピューティングリソース1110は、バックエンドプラットフォーム1108をホストすることができる。クラウドコンピューティングリソースは、クラウドコンピューティングリソース1110で実行される計算インスタンスを含むことができる。クラウドコンピューティングリソース1110は、上述したような有線接続、無線接続、又は有線又は無線接続の組み合わせを介して、他のクラウドコンピューティングリソース1110と通信することができる。
コンピューティングリソース1110は、1つ以上のアプリケーション(「APP」)1110a、1つ以上の仮想マシン(「VM」)1110b、仮想化ストレージ(「VS」)1110c、及び1つ以上のハイパーバイザ(「HYP」)1110dなどの、クラウドリソースのグループを含むことができる。
アプリケーション1110aは、コンピュータシステム1200に提供され又はコンピュータシステム1200によりアクセスされ得る1つ以上のソフトウェアアプリケーションを含むことができる。一実施形態において、中央モジュール104は、中央モジュールコンピューティングシステム1104のコンピュータシステム1200上でローカルに実行されるクラウドコンピューティング環境1102のみを含むことができる。アプリケーション1110aは、バックエンドプラットフォーム1108に関連づけられたソフトウェア、及び/又はクラウドコンピューティング環境1102にわたり(例えば、ソースモジュール102に)提供されるように構成された任意の他のソフトウェアを含むことができる。アプリケーション1110aは、仮想マシン1110bの1つ以上を介して、1つ以上の他のアプリケーション1110aからの情報を送信/受信することができる。コンピューティングリソース1110は、この方法で、仮想マシン1110bを通じて互いのアプリケーション1110aにアクセスすることができてもよい。代替的な一実施形態において、別個の中央モジュールコンピューティングシステム1104は必要とされず、中央モジュール104は、クラウドコンピューティング環境1102のみを含み、これは、コンピューティングリソース1110によりホスト及び実行され、コンピューティングリソース1110のうちの1つの通信インターフェース1224を使用して、又はアプリ1110aを介して、上述した様々な通信プロトコルのいずれかを使用して、ソースモジュール102と通信する。
仮想マシン1110bは、物理マシンのようにプログラムを実行するマシン(例えば、コンピュータ)のソフトウェア実装を含むことができる。これは、コンピュータシステム1200のタイプの別個の中央モジュールコンピューティングシステム1104が存在しない代替的な実施形態において、特に有用な可能性がある。この実施形態において、中央モジュールコンピューティングシステム1104は、仮想化マシン1110bでもよく、アプリケーション1110aを介して、上記で列挙された様々な通信プロトコルを使用してソースモジュール102と通信することができる。仮想マシン1110bは、システム仮想マシン又はプロセス仮想マシンのいずれかでもよい。システム仮想マシンは、完全なオペレーティングシステム(OS)の実行をサポートする完全なシステムプラットフォームを提供することができる。プロセス仮想マシンは、単一のプログラムを実行することができ、単一のプロセスをサポートすることができる。仮想マシン1110bは、ユーザ(例えば、中央モジュール104の管理者)のために、及び/又は1つ以上の他のバックエンドプラットフォーム1108のために実行することができ、データ管理、同期、マルチテナントデータリポジトリ106からのレコード及びそれらの値へのアクセスなどの、クラウドコンピューティング環境1102のインフラストラクチャを管理することができる。
仮想化ストレージ1110cは、コンピューティングリソース1110の記憶システム又は装置内で仮想化手法を使用する、1つ以上の記憶システム及び/又は1つ以上の装置を含むことができる。記憶システムに関し、仮想化のタイプには、ブロック仮想化とファイル仮想化を含むことができる。ブロック仮想化は、物理ストレージ又は異種構造に関係なく記憶システムにアクセスできるようにする、論理ストレージの物理ストレージからの抽象化(又は、分離)を指す場合がある。この分離は、中央モジュール104の管理者に、ユーザモジュール102において異なるエンドユーザに対して指定される通知、並びにマルチテナントデータリポジトリ106からアクセスされるデータのレコードからの評価データ(以下で説明される)の記憶をどのように管理するかにおける柔軟性を許容することができる。ファイル仮想化は、ファイルレベルでアクセスされるデータと、ファイルが物理的に記憶されている場所との間の依存関係を排除する場合がある。このようなブロック及びファイル仮想化は、ストレージ使用の最適化、サーバ統合、及び/又は中断のないファイル移行の実行を可能にし得る。
ハイパーバイザ1110dは、複数のオペレーションシステム(例えば、「ゲストオペレーティングシステム」)が、コンピューティングシステム1200のタイプのコンピューティングシステムを含み得るコンピューティングリソース1110などのホストコンピュータ上で同時に実行できるようにする、ハードウェア仮想化手法を提供することができ、この方法で、中央モジュールコンピューティングシステム1104の仮想化ハードウェアをホストすることができる。ハイパーバイザ1110dは、ゲストオペレーティングシステムに仮想オペレーティングプラットフォームを提示することができ、様々なオペレーティングシステムの複数のインスタンスをこれらの「ゲストオペレーティングシステム」として管理することができ、これらは、例えばマルチテナントデータリポジトリ106におけるレコードのデータベースの形のデータにアクセスすることができる、RAMなどの仮想化ハードウェアリソースを共有することができる。代替的に、二次メモリが、仮想化ストレージ1110cを使用して、又は、コンピューティングシステム1200のようなタイプのコンピューティングシステムのコンピューティングリソース1110の、ハードディスクドライブ1112などの物理ストレージ上でアクセスされてもよい。これまでに説明した実施形態では、RAMと二次メモリの組み合わせを使用してデータベースにアクセスし、データベースの一部がインメモリであり得、データベースの一部がファイルに記憶され得るようにすることも想定されている。
さらに、ユーザモジュール102は、コンピューティングシステム1200のタイプのコンピューティングシステムのみの代わりに、クラウドコンピューティング環境1102を有する環境1100を含むこともできる。この環境は、図2を参照して説明され、ユーザモジュール202は、複数のユーザモジュール202を含むより大きいグループ204の一部でもよい。同様に、顧客208は、いくつかのグループ204を含むことができる。これは、マルチテナントデータベース106のテナントである顧客が企業であり得る現実の状況を反映している。
1つ以上の実施形態において、マルチテナントデータリポジトリ206は、異なるレコードタイプの複数のレコードを記憶する。レコードタイプは、レコードスキーマと呼ばれることもある。図2に示すように、マルチテナントデータリポジトリ206は、レコードA1 290、レコードA2 291、レコードB1 292、レコードB2 293、及びレコードB3 294を記憶している。レコードA1 290とレコードA2 291は双方ともレコードタイプAのレコードであり、したがって同じフィールド(例えば、フィールド1、フィールド2、フィールド3)を有する。これに対し、レコードB1 292、レコードB2 293、レコードB3 294は全て、レコードタイプBのレコードであり、したがって同じフィールド(例えば、フィールドW、フィールドX、フィールドY、フィールドZ)を有する。レコードタイプは、任意の数のフィールドを含むことができる。2つのレコードが同じレコードタイプに属し、したがって同じフィールドを有する場合があるが、この2つのレコードは、特定のフィールドに対して異なる値を記憶している場合がある。例えば、フィールド1は都市フィールドでもよい。レコードA1 290はフィールド1に「Miami」を記憶している場合があり、レコードA2 291はフィールド1に「Chicago」を記憶している場合がある。本開示の利益を有する当業者は、いくつかのフィールドが頻繁に更新され(例えば、毎日、毎週など)、一方、他のフィールドはまれに更新されるか又は全く更新されないことを理解するであろう。
1つ以上の実施形態において、顧客208(例えば、企業)は、販売スタッフ、エンジニア、トラブルシュータ、会計士などの専門家を含み得るいくつかのプロジェクトチーム又はグループ204を有する場合がある。様々な役割で、これらの専門家又はユーザ202は、インターフェース210を通じてマルチテナントデータベースリポジトリ206にアクセスすることになる。インターフェース210は、マルチテナントデータベースリポジトリ206におけるレコードを閲覧し、レコードを作成し、レコードを削除し、レコードを更新する(例えば、レコードの1つ以上のフィールドを修正/編集する)ために、ユーザによりアクセスすることができる。インターフェース210は、1つ以上の画面及び/又はやフォームを有するグラフィカルユーザインターフェース(GUI)として実装されてもよい。各画面は、ユーザにより操作できるGUIコンポーネント(例えば、テキストボックス、ドロップダウンボックス、ラジオボタン、ボタンなど)を有することができる。インターフェース210は、デスクトップパーソナルコンピュータ(PC)、ラップトップ、スマートフォン、タブレットPCなどを含む任意のタイプのユーザコンピューティング装置からアクセスすることができる。
図3は、1つ以上の実施形態に従う、インターフェース210の例示的な画面300を示す。画面300は、ユーザモジュール202(例えば、スマートフォン)に表示することができる。画面300は、ユーザのホームページに対応することができる。画面300は、マルチテナントデータリポジトリ206内のレコードタイプに属するフィールドのリスト314(例えば、フィールドアイデンティティ(identities)/名前のリスト)を表示する。1つ以上の実施形態において、リスト内の最初のN個のエントリ(例えば、N=5)は、ユーザによる、ユーザと同じチーム又は企業に属する他のユーザによる、ユーザと同じ人口統計プロファイルを共有する他のユーザによる等の、ある期間にわたるN個の最も頻繁に更新された(例えば、修正された、編集された)フィールドに対応する。リスト上の残りのエントリは、アルファベット順で、又はフィールドがどれほど最近更新されたかに基づいてソートされた、残りのフィールド(例えば、上位N個のフィールド内でないフィールド)を含むことができる。さらに又は代わりに、フィールドのリスト全体が、フィールドがどれほど頻繁にアクセスされるかによってソートされてもよく、上位N個のフィールドは、「提案」としてマークされる。1つ以上の実施形態において、上位N個のフィールドのみが表示される(例えば、リスト314は、上位N個の頻繁に更新されたフィールドのみを有する)。1つ以上の実施形態において、各フィールドはスコアに関連づけられ、リスト315内のフィールドはスコアの順序付けに従って(例えば、最高から最低へ)表示される。この詳細な説明の利益を有する当業者は、一レコードタイプが任意の数のフィールド(例えば、100+フィールド)を有する可能性があり、複数のレコードタイプが存在する可能性があることを理解するであろう。したがって、リスト314があらゆるフィールドを含む場合、リストを生成することが計算的に高価である可能性がある。さらに、リスト314が、スマートフォン、又はより小さい画面サイズを有するコンピューティング装置に表示されている場合、ユーザがフィールドの大きいリスト314をナビゲートすることが困難である可能性がある。リスト314を上位N個の頻繁に更新されたフィールドに制限することにより、計算リソースが節約され、ユーザに対するナビゲーションの負担が軽減される。
図示されていないが、リスト内の各エントリは、フィールドを含むレコードタイプを識別する場合もある。例えば、リスト314内の第1のエントリがフィールドWを識別する場合、リスト内の第1のエントリはレコードタイプBを識別することもでき、なぜならば、図2に示すように、フィールドWはレコードタイプBのフィールドであるためである。頻繁に更新されたフィールドを表示し、フィールドの選択を可能にするために、リスト314の代わりにドロップダウンボックス又は別のタイプのGUIコンポーネントが使用されてもよい。フィールドの選択を可能にするために、ラジオボタン又は通常のボタンも使用されてもよい。ユーザがフィールドを見つけるのを助けるために、検索ボックス302が表示されてもよく、ユーザ202は、特定のレコード内のフィールドの値を更新するために、フィールドの名前をタイプし、フィールドを見つけることが可能でもよい。ボックス302におけるキーストロークとして、又はフィールド314上のマウスクリックによってユーザにより入力されたデータは、ユーザがどのフィールド314を選んだかに関する訓練データを提供するために、中央モジュール104により記録されてもよく、これは、以下で説明するように使用される。同時に、ユーザ及び企業に関連する、フィールドのアクセスとの関連ファクタ(例えば、時刻(time of day)、天候、ユーザ202が顧客208に対する商用で、移動していたかどうか、曜日、顧客208の進行中のビジネス取引の存在など)も、図3の画面300でユーザがクリックすること又はボックス302において検索することによりアクセスするフィールド314ごとに、中央モジュールにより記録されてもよい。
図4は、1つ以上の実施形態に従う、別の例示的な画面400を示す。画面400と画面300は、同じGUIに属することができる。画面400は、ユーザが画面300におけるリスト314からフィールドを選択した後に表示することができる。図4に示すように、画面400は、ユーザにより(リスト314から)選択されたフィールド405と、選択されたフィールドを含むレコードタイプのレコードのリスト410を表示する。例えば、ユーザがリスト314からフィールドXを選択した場合、リスト410は、レコードB1、レコードB2、及びレコードB3を含むことができる。リスト410内のレコードは全て、選択されたフィールド(例えば、フィールドX)を有するが、各レコードは、選択されたフィールド(例えば、フィールドX)に対して異なる値を有する場合がある。例えば、フィールドXが州である場合、レコードB1内のフィールドXは「California」を記憶している場合があり、レコードB2内のフィールドXは「Texas」を記憶している場合があり、レコードB3内のフィールドXは「Florida」を記憶している場合がある。レコードのリスト410は、任意の順序でソートすることができる。例えば、リスト410は、レコードがどれほど最近アクセス又は修正されたかによってソートされてもよい。画面400は、ユーザが特定のレコードについてレコードのリスト410を検索し、及び/又はリスト内のレコードのうちの1つを選択することを可能にするさらなるGUIコンポーネント(図示せず)を有してもよい。画面400と画面300は2つの別個の画面として示されているが、1つ以上の実施形態において、画面300と画面400は単一の画面にマージされてもよい。そのような実施形態において、リスト410は、リスト314からフィールドが選択された後にのみ出現し得る。ユーザは、リスト410からレコードのうちの1つを選択することができる。選択は、リスト410内のエントリのうちの1つをクリックすることにより実行することができる。さらに又は代わりに、選択は、ボタン及びラジオボタンなどの他のGUIコンポーネントを操作することにより実行されてもよい。図4はリスト410を示しているが、他の実施形態において、レコードは、ドロップダウンボックス又は別のGUIコンポーネントを使用して表示され、選択されてもよい。
図5は、1つ以上の実施形態に従う、例示的なフォーム500を示す。フォーム500は、画面300及び画面400と同じGUIの一部でもよい。フォーム500は、ユーザがリスト410からレコードを選択したこと(図4を参照して上記で論じた)に応答して表示することができる。フォーム500は、選択されたレコード506と、選択されたフィールド508(リスト314からの)を表示することができる。フォーム500は、選択されたレコード506内の選択されたフィールド508に対するユーザからの更新値を収集するためのGUIコンポーネント516(例えば、テキストボックス)を含むこともできる。フォーム500が最初に表示されるとき、GUIコンポーネント516は、選択されたレコードの選択されたフィールド内の現在の値を入れられて(populated)いてもよい。ユーザは、GUIコンポーネント516を操作することにより更新値を入力することができる。ユーザが「保存」ボタン510を選択すると、ユーザにより提供された更新値は、選択されたレコードの選択されたフィールドに保存される。ユーザが「キャンセル」ボタン512を選択すると、選択されたレコードは更新されない。1つ以上の実施形態において、GUIコンポーネント516は、予期された更新値(以下で論じる)をシステムにより事前記入され(pre-filled)てもよい。予期された更新値が正しい場合、ユーザは「保存」ボタン510を選択することができる。そうでない場合、ユーザは、ボタン518を選択して、予期された更新値が誤っていることを示すことができる。
図6は、1つ以上の実施形態に従う、レコードを更新するためのフローチャートを示す。図6のステップは、図1及び図2を参照して上記で論じたコンポーネントの1つ以上により実行することができる。1つ以上の実施形態において、図6に示すステップの1つ以上が省略され、繰り返され、及び/又は図6に示す順序と異なる順序で実行されてもよい。したがって、本発明の範囲は、図6に示す特定のステップ配置に限定されるとみなされるべきではない。図6に示すステップは、命令が実行されたときにプロセッサに図6の処理を実行させる、コンピュータ読取可能媒体に記憶されたコンピュータ読取可能命令として実施されてもよい。
602において、複数のフィールドに対するスコアが決定される。上記で論じたように、リポジトリは、様々なレコードタイプのレコードを記憶することができる。各レコードタイプは、任意の数のフィールドを含むことができる。いくつかのフィールドは、かなり頻繁に更新される(例えば、修正される、編集される)場合がある。他のフィールドは、まれに更新され、あるいは全く更新されない場合がある。1つ以上の実施形態において、フィールドに対するスコアは、ユーザによって、ユーザと同じプロジェクトチームの他のユーザによって、ユーザと同じ企業に属する他のユーザによって、及び/又はユーザと同じ人口統計プロファイルの他のユーザによって、フィールドがどれほど頻繁に更新されるかを反映する。スコアは、機械学習を使用して決定することができる。さらに又は代わりに、スコアは、外部ソースを含む任意のソースから取得されてもよい。1つ以上の実施形態において、一レコードタイプの一フィールドが(特定のレコードにかかわらず)更新されるたび、このフィールドに対するスコアは定数k(例えば、k=1)だけインクリメントされる。その後、スコアは、ある時間にわたり減衰する。したがって、より高いスコアは、フィールドがより頻繁に更新されることを示す。
604において、フィールドのサブセットが表示される(例えば、フィールドのアイデンティティ/名前が表示される)。表示されたフィールドの例は、図3(上記で論じた)に示されている。1つ以上の実施形態において、上位N個のスコアを有するフィールドのみが表示される。この詳細な説明の利益を有する当業者は、一レコードタイプが任意の数のフィールド(例えば、100+フィールド)を有する可能性があり、複数のレコードタイプが存在する可能性があることを理解するであろう。したがって、あらゆるフィールドを表示することは、計算的に高価である可能性がある。さらに、全てのフィールドが、より小さい画面サイズを有するコンピューティング装置(例えば、スマートフォン)に表示されている場合、ユーザが多数のフィールドをナビゲートすることが困難である可能性がある。上位N個のスコアを有するフィールドのみを表示することにより、計算リソースが節約され、ユーザに対するナビゲーションの負担が軽減される。さらに、これらの表示されたフィールドは、ユーザが更新したいフィールドを含む可能性が最も高い。
606において、フィールドの選択をユーザから受け取る。ユーザは、フィールドを、それをクリックすることにより選択することができる。さらに又は代わりに、各フィールドはラジオボタンを表示されてもよく、ユーザは、ラジオボタンを選択することによりフィールドを選択する。さらに又は代わりに、フィールドは、ドロップダウンボックス内に表示され、該ドロップダウンボックスを介して選択されてもよい。
608において、選択されたフィールドを含むレコードタイプのレコードが表示される。レコードは、(ステップ604における)フィールドと同じ画面に、又は異なる画面に表示することができる。表示されたレコードの一例は、図4(上記で論じた)に示されている。表示されるレコードは、レコードがどれほど最近アクセスされたかに基づいてソートされてもよい。例えば、最も最近アクセスされたレコードが、リストの下部にあってもよい。
610において、レコードの選択をユーザから受け取る。ユーザは、レコードを、それをクリックすることにより選択することができる。さらに又は代わりに、各レコードはラジオボタンを表示されてもよく、ユーザは、対応するラジオボタンを選択することによりレコードを選択する。さらに又は代わりに、レコードは、ドロップダウンボックス内に表示され、該ドロップダウンボックスを介して選択されてもよい。
ステップ612において、フォームが生成される。フォームの一例は、図5(上記で論じた)に示されている。フォームは、選択されたレコード(ステップ610からの)内の選択されたフィールド(ステップ606からの)に対応するGUIコンポーネント(例えば、テキストボックス)を含む。GUIコンポーネントは、選択されたレコード内の選択されたフィールドの現在の値を入れられていてもよい。
614において、選択されたレコード内の選択されたフィールドに対する更新値を、GUIコンポーネントを介してユーザから受け取る。具体的には、ユーザは、GUIコンポーネントを操作して更新値を入力することができる。この更新値は、選択されたレコードの選択されたフィールドに記憶することができる。
1つ以上の実施形態において、2つ以上のフィールドが一緒に頻繁に更新されることを判断することができる。例えば、フィールドXがユーザにより更新されるとき、時間フィールドYの95%がユーザによりさらに更新されることが判断され得る。このような実施形態において、生成されたフォームは、複数のGUIコンポーネント(例えば、テキストボックス)を有してもよく、1つのGUIコンポーネントが、選択されたレコード内の選択されたフィールド(例えば、フィールドX)に対応し、1つ以上の残りのGUIコンポーネントが、選択されたフィールドと共に更新されそうである選択されたレコード内の他のフィールド(例えば、フィールドY)に対応する。複数のフィールドに対するこれらの更新値は、選択されたレコードに記憶することができる。
ステップ606は、単一のフィールドを選択することのみに言及しているが、ユーザが同じレコードタイプに属する複数のフィールドを選択することが可能でもよい。このような実施形態において、ステップ612におけるフォームは、各GUIコンポーネントが選択されたフィールドのうちの1つに対応する、複数のGUIコンポーネント(例えば、テキストボックス)を含むことができる。複数の選択されたフィールドに対するこれらの更新値は、選択されたレコードに記憶することができる。
ステップ610は、単一のレコードを選択することのみに言及しているが、ユーザが複数のレコードを選択することが可能でもよい。選択処理は、ユーザが表示されたレコードから関心のある複数のレコードをクリックすることを含むことができる。さらに又は代わりに、レコードは、複数のリストにグループ化され/編成されてもよく、複数のレコードを選択することは、ユーザがリストのうちの1つを選択することを含んでもよい。
図7は、1つ以上の実施形態に従う、例示的な画面700を示す。図7は、ユーザがフィールドWを(図6の606において)選択した後に表示することができる。図7に示すように、複数のレコードリストが表示される(例えば、レコードリストA 702A、レコードリストB 702B、レコードリストZ 702Z)。各レコードリスト702は、選択されたフィールドWを含むレコードタイプの1つ以上のレコードを含む。この例では、ユーザがレコードリストA 702Aを選択し、そのレコードリストAに5つのレコードを有することを仮定する。
図8は、ユーザがレコードリストA 702Aを選択したことに応答して生成され得る、例示的なフォーム802を示す。図示のように、フォーム802は、選択されたレコードリスト(例えば、レコードリストA)からのレコード806のうちの1つを識別し、選択されたフィールド808(例えば、フィールドW)を識別している。フォーム802は、レコードリストの識別されたレコード内の選択されたフィールドに対応するGUIコンポーネント816(例えば、テキストボックス)をさらに含む。フォーム802が最初に表示されるとき、GUIコンポーネント816は、識別されたレコードの選択されたフィールド内の現在の値を入れられていてもよい。1つ以上の実施形態において、GUIコンポーネント816は、予期された更新値(以下で論じる)をシステムにより事前記入されてもよい。予期された更新値が誤っている場合、ユーザはボタン818を選択することができる。ユーザは、GUIコンポーネント816を操作することにより更新値を入力することができる。「保存して次へ」ボタン814を選択したことに応答して、ユーザにより提供された更新値は、識別されたレコードの選択されたフィールドに保存することができ、新しいフォームが生成され、表示される。この新しいフォームは、本質的にはフォーム802と同じあり、ただし、新しいフォームがレコードのリスト内の次のレコードを識別し、新しいフォーム内のGUIコンポーネント(例えば、テキストボックス)が前述した次のレコード内の選択されたフィールドに対応する点を除く。「保存して次へ」ボタンが選択されるたび、レコードの選択されたリスト内の最後のレコードに到達するまで、次のレコードの選択されたフィールドを更新するために、新しいフォームが生成される。これは、一括更新(bulk-update)と呼ばれることがある。レコードのリスト内のレコードの更新における進捗を示すために、カウンタ899がフォームの上部に表示されてもよい。
「保存して次へ」ボタン814と同様に、「スキップ」ボタン810もレコードのリスト内の次のレコードのための新しいフォームを生成する。ただし、「スキップ」ボタン810の選択は、現在のレコードの選択されたフィールドに、ユーザにより(GUIコンポーネント816を介して)提供された更新値を保存しない。「閉じる」ボタン812の選択は、一括更新を終了する。
次に、ユーザによる、第1のレコードの記憶された、前に入力された値に基づく、GUIコンポーネント516又はGUIコンポーネント816の、予期された更新値を用いた事前記入について、より詳細に説明する。要素516又は816において、ユーザは、キーワード(KW)を入力することができる。例えば、販売者122は、自身がフィールド516又は816を更新するたび、現在の日付、時間、曜日などの既知のパラメータを入力して自身のエントリを一様に開始することができ、あるいは、前の日付付きエントリのセットに、自身のエントリをアペンドすることもできる。
前に入力されたエントリは、日付、時間、曜日などの一般的に検出されるパラメータが入力されているか、又は前のエントリへのアペンドが発生しているかを判断するために、機械学習パターン検出分析を通じて分析することができる。
本明細書では、このような判断を生成するために使用されるモジュールについて説明する。一実施形態において、このようなモジュールは、図9Aに示すように、隠れ層及び逆伝搬を有するニューラルネットワークでもよい。この場合の入力は、ユーザが516又は816のプロンプトにタイプしている1つ又は複数のキーワードであり、516又は816の、ユーザの各保存されたエントリは、入力の別個のセットを形成する。ニューラルネットワークは、日付、時刻、曜日、アペンド、又は上記のいずれでもないなどの、検出されたパラメータの潜在的な1つ又は複数のカテゴリを指定するために、これらの入力に対する機械学習分類器として使用することができる。このような分類手法を使用することにより、重みを有するノードのシステムを作成することが可能であり得る。この重みを有するノードのシステムは、ユーザの入力が属するパラメータのカテゴリの信頼できる予測を与えるために使用することができる。本明細書において、いくつかの実施形態により、図9Aに示すニューラルネットワークモデルの異なるコンポーネントについて説明する。入力層902aは、モデルへの入力を表すノード1~iを含む。これらのノードの各々は、入力された文字列の異なる側面に対応する。特に、816などで入力されたユーザの文字列は、まず単語にトークン化され、トークン化された単語は、語幹処理される(stemmed)。訓練データが、(カテゴリが既知である場合に)使用されてもよく、これにおいて、プロダクト(product)の完全な文の記述は変換されてもよい。このような変換は、既知のカテゴリの文記述内の各単語をトークン化する、単語語幹を作成する、などを行うことができる。十分な訓練データが使用された後、単語語幹の集合ライブラリが存在し得、その一部は1つのカテゴリのみに関連づけられ、一部は複数のカテゴリに関連づけられるなどし、それにより、516又は816内の入力文字列が別々にパースされたとき、1つの入力ノードが各単語に対応し得る場合、これらのノードを各カテゴリに関連づけられた単語語幹のライブラリと比較することができる。
例えば、語幹「Jun」又は「06/」は、カテゴリ「月」に関連づけられた単語語幹配列のライブラリにある可能性がある。したがって、ユーザが、入力文字列816の一部として「June 10, 2020」を入力した場合、入力層902aのノード1は単語語幹「Jun」(月)を表すことができ、ノード2は「10」(日)を表すことができ、ノード3は「2020」(年)を表すことができる。これらのノードは、次いで、訓練ライブラリ(「バッグオブワーズ(bag of words)」と呼ばれる)からの単語語幹と比較することができ、ノード2~3は、それらがバッグオブワーズ内のいずれの単語語幹とも一致しない場合、値0を割り当てることができ、ノード1は、それがバッグオブワーズ内の語幹と一致する場合、値1を割り当てることができる(この例では、それは、上記から「Jun」と一致する)。実際面では、入力はパースされ、一連の0及び1と相互に関連づけられ、これにおいて、1はバッグオブワーズ内にある単語に対応する。
ニューラルネットワークが訓練データを用いて訓練される繰り返しのラウンドを通じて、各語幹は、次の層904aに、及び最終的には出力層906aに進む語幹に関連づけられた異なる重みwijを有することができる。これは、バッグオブワーズの中のいくつかの単語が特定のカテゴリとの関連を有する可能性があり、他より重要である可能性があるためである。例えば、単語「twenty」(二十)は、明らかに日付の年を示す「2020」などの単語語幹よりもより重要でないと見なされる場合がある。出力層906aは、一例として5つのノード、ノード1、2、3、4、及びノード5を含み、5つのカテゴリ(例えば、日付、時間、曜日、前のエントリへのアペンド、又は上記のいずれでもないことに対する包括的なもの(catchall))を表すことができる。
各ノードから他のノードへの入力及び重み(図9Aに示すwij)に基づいて、出力層の結果が集計され、最も大きい結果を有する出力層内のノード(1~5)が予測分析の結果として出力される。この場合、「Jun」が月との特定の関連を有する可能性があり、「2020」が年との明らかな関連を有する可能性があるため、入力層ノードから出力層ノード1への重みは、入力層ノードから出力層ノード2~5へよりもより大きい重みを運ぶ可能性がある(出力層ノード1が日付を表すと仮定する)。
入力層902aから出力層906aにトラバースする際に、いくつかの隠れ層904aが存在する場合もある。隠れ層904aの数は、1つに予め設定されている場合があり、あるいは複数の層でもよい。隠れ層904aの数が(図9Aに示すように)1つである場合、隠れ層内のニューロンの数は、入力層及び出力層内のニューロン数の平均として算出することができる。これは、層にわたる重みの算出を容易にする際の、経験ベースの経験則から導出されている。さらなる経験則によれば、過剰適合を防止するための一実施形態において、入力層902a内のニューロンの数がNiであり、出力層内のニューロンの数がNoであり、カテゴリに関連づけられた全ての単語語幹の訓練データセット内のサンプルの数がNsである場合、1つの隠れ層内のニューロンの数Nhは、
未満に保つことができ、ここで、αはスケーリングファクタ(通常、2~10の範囲である)である。このように、モデルにおける自由パラメータの数は、過剰適合を防止するために、訓練データ内の自由度の小さい部分に制限することができる。
入力層から、図9Aに示す入力層902a内の各ノードから隠れ層904aへの重みに基づいて、入力層902aから隠れ層904aに進む際にシグモイド伝達関数が存在する場合がある。最初、重みwi,jは、0と1との間のランダムな値に初期化することができる。次いで、バッグオブワーズ内の単語語幹に対応する入力ノードの単語語幹を、これらの重みに従って伝搬することができ(順方向伝搬)、隠れ層904aは、入力層902aのニューロンに対する最初の出力を形成する。例えば、上記の例の入力層902a内のニューロン1に対して「purple」(紫)として与えられた入力は、それがバッグオブワーズ内の単語語幹に対応しなかった場合、それぞれ0を乗算される。
対照的に、ニューロン1(「June」)は、w1jまでそれぞれ、重みw11及びw12などを乗算され、同じ方法で、これらの隠れ層ノードは、隠れ層904Aに対する出力を形成するために合計される(例えば、上記の例の隠れ層内のノード1は、w11,+w21+w31+w41の合計になる)。次いで、隠れ層904aにおけるノード1は、この正味値を取得し、この活性化値を伝達して、出力層に対する前方へのニューロン出力が実際に何であるかを確認することができる。各出力層(入力層902aに対する隠れ層904aと、隠れ層904aに対する出力層906a)において、シグモイド活性化(sigmoid activation)関数
、双曲線正接(hyperbolic tangent)関数
、又はスムース正規化線形ユニット(smooth rectified linear unit、SmoothReLU)関数f(x)=log(1+ex)を含む伝達関数を使用して、出力を伝達してもよい。
上記の例において、入力層902aから隠れ層904aのニューロン1に与えられる出力は、活性化値として入力されて、隠れ層904aにおいて上述した伝達関数のうちの1つに伝達され、出力は、隠れ層904aのニューロン1の値を形成して、出力層906aへの入力として前方へ与えられ、出力層のニューロン1及び2に対するそれぞれの重みを乗算される。このようにして、入力層902a内の入力ノード1~Iの全順方向伝搬を、出力層906aに対して達成することができる。
その後、逆伝搬を行うために、予期された出力とネットワークから順方向伝搬された出力との間で誤差が算出される。ニューラルネットワークの訓練において、特にデータセットが小さいとき、k分割交差検証(k-fold cross validation)が使用されてもよい。k分割交差検証では、例えば、上述した全てのコンポーネントを含む、グループごとに異なる関連づけられた単語語幹に関して日付(カテゴリ1)又は時間(カテゴリ2)、曜日(カテゴリ3)、又はアペンド(カテゴリ4)、又はいずれでもない(カテゴリ5)に関連づけられることがわかっている、ユーザにより入力された全ての文記述の集約されたセットが存在する場合がある。この文記述のセットは、シャッフルし、k個のグループに分割することができる(例えば、kが5の場合には5グループであり、各々が、特定の数の結果(カテゴリ1/カテゴリ2)と、対応する関連づけられた単語語幹を保持している)。その後、一意のグループごとに、該グループをテストデータセットとしてホールドアウトし、集約された文記述の残りのグループは、分類器を訓練するために使用することができる。
最後、訓練に基づいて、テストグループに関する正解率を評価することができる。1つのグループをテストのために保持することができ、他のグループはモデルを訓練するために使用することができる。この方法では、そのように記述された1,0の予期された出力と、ネットワークにより(最初は、上述したように割り当てられたランダムな重みにより)実際に順方向伝搬された出力との間で誤差が算出される。
誤差を伝達するために、ネットワークを通じて逆方向に伝搬する誤差信号が、error=(expected-output)*transfer_derivative(output)により与えられ、ここで、transfer_derivativeは、使用される伝達関数(シグモイド、双曲線、又はSmoothReLU)の導関数(derivative)である。
次いで、隠れ層904a内のニューロンに対する誤差信号が、出力層から隠れ層904a内のニューロンへの重みに従って、出力層内の各ニューロンの重み付き誤差として算出される。同様に、隠れ層からの誤差信号は、次いで、入力層902aに逆に伝搬される。誤差が、説明した逆伝搬法を介してネットワーク内の各ニューロンについて算出されると、誤差は、式new_weight=old_weight+learning_rate*error*inputに従って、重みを更新するために使用される。ここで、old_weight変数は、モデルにおける前の与えられた重みであり、learning_rate変数は、誤差について補正するために古い重みをどれほど変更すべきかを指定する0から1の値であり、error変数は、逆伝搬手順により算出された誤差であり、input変数は、誤差を引き起こした入力の値である。
ある時間にわたり、このモデルを開発して、堅牢な予測分析を形成することができる。所与の入力について、おそらくいくつかの潜在的な出力カテゴリがあり、出力層906aは、数十又はさらには数百のノードで構成される場合がある。終わりにおける各出力ノードは、0から1のスコアを有する。最大のノードを有する出力ノードは、ユーザの入力(例えば、フィールド516又は816における)が関連づけられる可能性のある、プロダクト(product)の最も可能性の高いカテゴリあると見なされ、そのような要素は自動的に、フォームに事前記入することができる(例えば、日付、時刻、曜日が記入されてもよく、あるいは、新しい情報が絶えずアペンドされる場合に、前のエントリをそのまま残すことができる)。したがって、2番目に高いスコアは、ユーザの入力に関連づけられた、プロダクトの2番目に可能性の高いカテゴリを示すことになり、以下同様である。本明細書において、2つのノードが特定の閾値を超えていた場合、それは、双方の要素が存在することを816のトークン化が示していることを意味する可能性がある。このように、出力層906aにおける閾値は、どの要素を表示されるようフォーム500又は802に事前記入すべきかを決めるために使用することができる。
これらのカテゴリが表示されると、ユーザは、GUIからのフィードバックを通じて結果を立証し又は無効にすることができ、ユーザは、事前記入されたテキストが誤っている場合、518又は818をクリックすることができる。ユーザがこのボタンをクリックしない場合、「1」の値が出力層に入力され、他のカテゴリは「0」になり、この結果は、隠れ及び入力層の重みを調整して将来の処理のためにモデルをより堅牢にするために、上述したように逆伝搬される。
上記で図6のステップ602で論じたように、フィールドに対してスコアが決定される。1つ以上の実施形態において、機械学習分析と重み付き機械学習分析を使用して、スコアを決定し、したがって、ユーザによりアクセスされる可能性が最も高いフィールドを決定することができる。
まず、サポートベクタマシン(SVM)を使用した機械学習分析を行うことができる。この実施形態において、レコードに対するスコアを決定するとき、アクセスの頻度と共に、関連ファクタからのデータが考慮される。例えば、ユーザ202が、日に応じて自身がアクセスする異なるレコード又はフィールドを常に有する場合(月曜日-財務、火曜日-販売レポートなどであり、これらのレコードのフィールドの値を更新するため)、最も頻繁にアクセスされたレコード又はフィールドを単に決定することは、ユーザがこれらのそれぞれのレコードを検索するための障害を克服するのを助けることにならない。存在する他のパターンが、ユーザが特定のレコードに午後9時以降にのみアクセスすること(例えば、数字を更新すべき夜間売上高)、又は、天候が特に雨であるか又はユーザが移動しているとき、該ユーザが特定のレコード又はフィールドにアクセスする可能性があること(例えば、天候関連の損害に関連する補償等、移動の補償等)である場合がある。これらのパターンを考慮し、それらにアクセスするユーザの全体的な「親和性(affinity)」に対するスコア付けにそれらが与え得る影響を認識するために、SVMプロトコルごとに超平面を作成することができる。
つまり、これらのパターンの全てが、二値の(binary)結果をもたらすことができ、ユーザは、これらのパターンごとにレコードにアクセスしていたか、又はアクセスしていなかった(該ユーザは、天候のためにレコード又はフィールドにアクセスしていたか、又は天候のためにアクセスしていなかった)。結果として、特定の留意される関連づけられた特徴(天候、時刻、天気、移動など)の有る又は無い間のレコード又はフィールドのアクセスの頻度のそれぞれの閾(例えば、35%以上、又は決定された任意の他の所定値)値に基づいて、レコード又はフィールドを、特徴に関連づけられていると指定することができる。逆に、特定の留意される関連づけられた特徴の有る又は無い間のレコード又はフィールドのアクセスの頻度が、それぞれの閾値を下回る場合、そのレコード又はフィールドは、関連づけられた特徴に関連づけられていないと指定することができる。さらに、各関連づけられた特徴の閾値は、関連づけを反映するか又は反映しないように、ある時間にわたり設定され、微調整されてもよい。このように、関連づけられた特徴の各々について、関連づけられているか否かの二値の指定が存在し、次いで、これらの点を分離するために、SVM法により超平面が発見される。
このような超平面を発見する際にどの特徴がより大きく重み付けされるべきかを決定するために、図9Bに示すように、特徴重み付けSVMと呼ばれる手法が使用される。この図では、分類木(CT)のアンサンブルで構成されるランダムフォレストバッグ分類器(random forest bagged classifier)が使用される。各ツリーは、ランダムに選ばれたレコードサンプル(全てのレコードのプールから)を有する異なるブートストラップデータセットを使用して構築することができ、各ノードは、ランダムに選択された関連づけられた特徴の中で最良のものを使用して分割することができる。これら2種類のランダム性は、モデルの過剰適合及びノイズに対して最も重要な特徴を決定するのに役立つ。まず、元のデータセットから、ランダムな数のn個の特徴が、最初のノード(例えば、904b又は912b)において全ての関連づけられた特徴から選択される。次いで、k=1,2,....nであるk番目の特徴について、最良の分割skが使用される。次いで、データは、n個の最良の分割の中の最良の分割sを使用してノードにおいて分割される。その後、前の3つのステップが、あらゆるノードで繰り返される。これは、図9Bに示すように、ツリー1からツリーZのツリーのフォレストを結果としてもたらす。フォレスト内の全てのツリーの分割に対してどの特徴が最も影響を与えたかを判断するために、ジニ指数(Gini index)手法を使用して、所与の特徴に起因するフォレスト内のあらゆる分割におけるジニ減少を累算してもよい。
ジニ減少を算出するために、式は
であり、Ciはクラスの数であり、p(i)はクラスiの要素をランダムに選び取る確率である。最良の分割は、ジニ利得を最大化することにより選ばれ、このジニ利得は、元の不純度から分岐の重み付き不純度を減算することにより算出される。全ての関連づけられた特徴に対するジニ減少は、(ツリー1~Zの)フォレスト全体にわたる全ての分割にわたって集計される。次いで、集計されたジニ減少同士が比較され、最大の減少(最大のジニ利得)を有する特徴が、ユーザがアクセスする最大の親和性を有するレコード又はフィールドとして指定される。
このフィールドは、(図3に示し、図3を参照して上記で論じたように)ユーザに表示される上位N個のフィールドに含めることができる。ジニ分析を行う利点は、それが、SVMにより考慮に入れられる特徴を重み付けするのに役立つことである。その効果は、図10A及び図10Bで見ることができる。図10Aでわかるように、特徴を重み付けすることにより、SVMは、外れ値感度に関してもより良好に動作する。クラスタ1006aは、ライン1004a用いた特徴重み付けによってより均等に分割されており、これは、ラインの右側の外れ値により右側に引かれている元のライン1002aと対照的である。
さらに、図10Bに示すように、ジニ指数は、特徴3が他の特徴より桁違いに重要であることを明らかに示している。これが時刻対移動、対曜日対天候であり、それらのうちの1つが明らかな重要度を有する場合、その特定の関連づけられた特徴に関連してユーザ202によるアクセスの頻度を評価して、その相応の重要度に従ってユーザがどのレコード又はフィールドにアクセスしそうかを判断することは重要である。結果として、ランダム分類器モデルに適用される、ジニ指数からの特徴重み付け及び機械学習分析は、通常は重要度を有することと相互に関連づけない可能性のある関連づけられた変数を考慮に入れながら、ユーザがアクセスする可能性のあるものに対する堅牢な予測器として機能する。結果的に、強力なレベルの予測を行うことができ、対応するレコード又はフィールド、又は所定数のレコード又はフィールド(それらのジニ指数ごとに)は、(図3に示し、図3を参照して上記で論じたように)ユーザに表示される上位N個のフィールドに含めることができる。
他のセクションでなく、詳細な説明のセクションは、特許請求の範囲を解釈するために使用されることを意図していることを理解すべきである。他のセクションは、発明者により考えられた、全てではないが1つ以上の例示的な実施形態を示すことができ、したがって、本開示又は添付の特許請求の範囲をいかなる方法でも制限することを意図していない。
本開示は例示的な分野及び応用のための例示的な実施形態を説明しているが、本開示はこれらに限定されないことを理解すべきである。他の実施形態及びこれらに対する修正が可能であり、本開示の範囲及び主旨の範囲内である。例えば、この段落の一般性を制限することなく、実施形態は、図に例示され及び/又は本明細書に記載されているソフトウェア、ハードウェア、ファームウェア、及び/又はエンティティに限定されない。さらに、実施形態は(本明細書に明示的に記載されているか否かにかかわらず)、本明細書に記載されている例を超える分野及び応用に対して有意な有用性を有する。
本明細書において、実施形態は、指定された機能及びそれらの関係の実装を示す機能的な構築ブロックの助けを借りて記載されている。これらの機能的な構築ブロックの境界は、本明細書において、説明の便宜のために任意に定義されている。指定された機能及び関係(又は、これらの同等物)が適切に実行される限り、代替的な境界を定義することができる。さらに、代替的な実施形態は、本明細書に記載されるものと異なる順序付けを使用して、機能ブロック、ステップ、動作、方法などを実行することができる。
本明細書における「1つの実施形態」、「一実施形態」、「一例示的な実施形態」、又は類似のフレーズへの参照は、記載された実施形態が特定の特徴、構造、又は特性を含むことができるが、あらゆる実施形態が必ずしもその特定の特徴、構造、又は特性を含むわけではない可能性があることを示す。さらに、そのようなフレーズは必ずしも同じ実施形態を指しているわけではない。さらに、特定の特徴、構造、又は特性が一実施形態に関連して記載されているとき、そのような特徴、構造、又は特性を他の実施形態に組み込むことは、本明細書で明示的に言及又は記載されているか否かにかかわらず、関連分野における当業者の知識の範囲内である。さらに、いくつかの実施形態は、表現「結合された」及び「接続された」をその派生物とともに使用して記載される場合がある。これらの用語は、必ずしも互いの同義語として意図されているわけではない。例えば、いくつかの実施形態は、2つ以上の要素が互いに直接物理的又は電気的に接触していることを示すために、用語「接続された」及び/又は「結合された」を使用して記載される場合がある。しかしながら、用語「結合された」は、2つ以上の要素が互いに直接接触していないが、なお依然として互いに協力又は相互作用することを意味する場合もある。
本開示の幅及び範囲は、上述の例示的な実施形態のいずれによっても制限されるべきでなく、以下の特許請求の範囲及びそれらの同等物に従ってのみ定義されるべきである。
Claims (20)
- コンピュータにより実施される方法であって、
少なくとも1つのプロセッサにより、複数のフィールドを、複数のレコードに対する複数のスコアに基づいて表示させるステップと、
前記少なくとも1つのプロセッサにより、前記複数のフィールドのうちの第1のフィールドの選択を受け取るステップと、
前記少なくとも1つのプロセッサにより、及び前記第1のフィールドの前記選択に応答して、前記第1のフィールドを含むレコードタイプの複数のレコードを表示させるステップと、
前記少なくとも1つのプロセッサにより、前記複数のレコードのうちの第1のレコードの選択を受け取るステップと、
前記少なくとも1つのプロセッサにより、及び前記第1のレコードの前記選択に基づいて、前記第1のレコード内の前記第1のフィールドのための第1のグラフィカルユーザインターフェース(GUI)コンポーネントを含む第1のフォームを生成するステップと、
前記少なくとも1つのプロセッサにより、及び前記第1のGUIコンポーネントを介して、前記第1のレコード内の前記第1のフィールドに対する第1の更新値を受け取るステップと、
前記少なくとも1つのプロセッサにより、前記第1のレコード内の前記第1のフィールドに前記第1の更新値を記憶するステップと、
を含む方法。 - 前記第1の更新値を受け取る前に、前記第1のレコード内の前記第1のフィールドの既存の値を前記第1のGUIコンポーネントに入れるステップ、
をさらに含む、請求項1に記載の方法。 - 前記第1のフィールドの後に第2のフィールドが頻繁に更新されることを判断するステップであり、
前記第1のフォームは、前記第1のフィールドの後に前記第2のフィールドが頻繁に更新されることを判断したことに応答して前記第2のフィールドのための第2のGUIコンポーネントを含む、ステップと、
前記第2のGUIコンポーネントを介して、前記第1のレコード内の前記第2のフィールドに対する第2の更新値を受け取るステップと、
前記第1のレコード内の前記第2のフィールドに前記第2の更新値を記憶するステップと、
をさらに含む、請求項1に記載の方法。 - 前記第1のレコードの前記選択を受け取ることは、前記複数のレコードのうちのサブセットの選択を受け取ることを含み、前記複数のレコードのうちの前記サブセットは、前記第1のレコードと第2のレコードを含む、請求項1に記載の方法。
- 前記第2のレコード内の前記第1のフィールドのための第2のグラフィカルユーザインターフェース(GUI)コンポーネントを含む第2のフォームを生成するステップと、
前記第1のフォーム上のボタンの選択に応答して前記第2のフォームを表示するステップと、
前記第2のGUIコンポーネントを介して、前記第2のレコード内の前記第1のフィールドに対する第2の更新値を受け取るステップと、
前記第2のレコード内の前記第1のフィールドに前記第2の更新値を記憶するステップと、
をさらに含む、請求項4に記載の方法。 - 前記第1のフィールドは、前記複数のスコアのうちのスコアに関連づけられ、前記第1のフィールドに関連づけられた前記スコアは、前記第1のフィールドに対する更新に応答してインクリメントされ、前記スコアは、ある時間にわたり減衰する、請求項1に記載の方法。
- 前記複数のスコアは、ランダムフォレスト手法を使用して決定される、請求項1に記載の方法。
- システムであって、
メモリと、
前記メモリに結合された少なくとも1つのプロセッサであり、
複数のフィールドを、複数のレコードに対する複数のスコアに基づいて表示させ、
前記複数のフィールドのうちの第1のフィールドの選択を受け取り、
前記第1のフィールドの前記選択に応答して、前記第1のフィールドを含むレコードタイプの複数のレコードを表示させ、
前記複数のレコードのうちの第1のレコードの選択を受け取り、
前記第1のレコードの前記選択に基づいて、前記第1のレコード内の前記第1のフィールドのための第1のグラフィカルユーザインターフェース(GUI)コンポーネントを含む第1のフォームを生成し、
前記第1のGUIコンポーネントを介して、前記第1のレコード内の前記第1のフィールドに対する第1の更新値を受け取り、
前記第1のレコード内の前記第1のフィールドに前記第1の更新値を記憶する
ように構成される、少なくとも1つのプロセッサと、
を含むシステム。 - 前記少なくとも1つのプロセッサはさらに、
前記第1の更新値を受け取る前に、前記第1のレコード内の前記第1のフィールドの既存の値を前記第1のGUIコンポーネントに入れる
ように構成される、請求項8に記載のシステム。 - 前記少なくとも1つのプロセッサはさらに、
前記第1のフィールドの後に第2のフィールドが頻繁に更新されることを判断し、
前記第1のフォームは、前記第1のフィールドの後に前記第2のフィールドが頻繁に更新されることを判断したことに応答して前記第2のフィールドのための第2のGUIコンポーネントを含み、
前記第2のGUIコンポーネントを介して、前記第1のレコード内の前記第2のフィールドに対する第2の更新値を受け取り、
前記第1のレコード内の前記第2のフィールドに前記第2の更新値を記憶する
ように構成される、請求項8に記載のシステム。 - 前記第1のレコードの前記選択を受け取ることは、前記複数のレコードのうちのサブセットの選択を受け取ることを含み、前記複数のレコードのうちの前記サブセットは、前記第1のレコードと第2のレコードを含む、請求項8に記載のシステム。
- 前記少なくとも1つのプロセッサはさらに、
前記第2のレコード内の前記第1のフィールドのための第2のグラフィカルユーザインターフェース(GUI)コンポーネントを含む第2のフォームを生成し、
前記第1のフォーム上のボタンの選択に応答して、前記第1のフォームの後に前記第2のフォームを表示し、
前記第2のGUIコンポーネントを介して、前記第2のレコード内の前記第1のフィールドに対する第2の更新値を受け取り、
前記第2のレコード内の前記第1のフィールドに前記第2の更新値を記憶する
ように構成される、請求項11に記載のシステム。 - 前記第1のフィールドは、前記複数のスコアのうちのスコアに関連づけられ、前記第1のフィールドに関連づけられた前記スコアは、前記第1のフィールドに対する更新に応答してインクリメントされ、前記スコアは、ある時間にわたり減衰する、請求項8に記載のシステム。
- 前記複数のスコアは、ランダムフォレスト手法を使用して決定される、請求項8に記載のシステム。
- 少なくとも1つのコンピューティング装置により実行されたときに、前記少なくとも1つのコンピューティング装置に動作を実行させる命令を記憶させた非一時的コンピュータ読取可能媒体(CRM)であって、前記動作は、
複数のフィールドを、複数のレコードに対する複数のスコアに基づいて表示させることと、
前記複数のフィールドのうちの第1のフィールドの選択を受け取ることと、
前記第1のフィールドの前記選択に応答して、前記第1のフィールドを含むレコードタイプの複数のレコードを表示させることと、
前記複数のレコードのうちの第1のレコードの選択を受け取ることと、
前記第1のレコードの前記選択に基づいて、前記第1のレコード内の前記第1のフィールドのための第1のグラフィカルユーザインターフェース(GUI)コンポーネントを含む第1のフォームを生成することと、
前記第1のGUIコンポーネントを介して、前記第1のレコード内の前記第1のフィールドに対する第1の更新値を受け取ることと、
前記第1のレコード内の前記第1のフィールドに前記第1の更新値を記憶することと、
を含む、非一時的CRM。 - 前記動作は、
前記第1の更新値を受け取る前に、前記第1のレコード内の前記第1のフィールドの既存の値を前記第1のGUIコンポーネントに入れること
をさらに含む、請求項15に記載の非一時的CRM。 - 前記動作は、
前記第1のフィールドの後に第2のフィールドが頻繁に更新されることを判断することであり、
前記第1のフォームは、前記第1のフィールドの後に前記第2のフィールドが頻繁に更新されることを判断したことに応答して前記第2のフィールドのための第2のGUIコンポーネントを含む、ことと、
前記第2のGUIコンポーネントを介して、前記第1のレコード内の前記第2のフィールドに対する第2の更新値を受け取ることと、
前記第1のレコード内の前記第2のフィールドに前記第2の更新値を記憶することと、
をさらに含む、請求項15に記載の非一時的CRM。 - 前記第1のレコードの前記選択を受け取ることは、前記複数のレコードのうちのサブセットの選択を受け取ることを含み、前記複数のレコードのうちの前記サブセットは、前記第1のレコードと第2のレコードを含む、請求項15に記載の非一時的CRM。
- 前記動作は、
前記第2のレコード内の前記第1のフィールドのための第2のグラフィカルユーザインターフェース(GUI)コンポーネントを含む第2のフォームを生成することと、
前記第1のフォーム上のボタンの選択に応答して前記第2のフォームを表示することと、
前記第2のGUIコンポーネントを介して、前記第2のレコード内の前記第1のフィールドに対する第2の更新値を受け取ることと、
前記第2のレコード内の前記第1のフィールドに前記第2の更新値を記憶することと、
をさらに含む、請求項18に記載の非一時的CRM。 - 前記第1のフィールドは、前記複数のスコアのうちのスコアに関連づけられ、前記第1のフィールドに関連づけられた前記スコアは、前記第1のフィールドに対する更新に応答してインクリメントされ、前記スコアは、ある時間にわたり減衰する、請求項15に記載の非一時的CRM。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063050698P | 2020-07-10 | 2020-07-10 | |
US63/050,698 | 2020-07-10 | ||
PCT/US2021/041305 WO2022011347A1 (en) | 2020-07-10 | 2021-07-12 | Performing intelligent affinity-based field updates |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023533962A true JP2023533962A (ja) | 2023-08-07 |
Family
ID=77168492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023501010A Pending JP2023533962A (ja) | 2020-07-10 | 2021-07-12 | インテリジェントな親和性ベースのフィールド更新の実行 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220012236A1 (ja) |
EP (1) | EP4158502A1 (ja) |
JP (1) | JP2023533962A (ja) |
WO (1) | WO2022011347A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880587A (zh) * | 2022-06-10 | 2022-08-09 | 国网福建省电力有限公司 | 一种物联网设备的端口扫描路径推荐方法 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6092105A (en) * | 1996-07-12 | 2000-07-18 | Intraware, Inc. | System and method for vending retail software and other sets of information to end users |
US7113941B2 (en) * | 2002-06-05 | 2006-09-26 | Sap Aktiengesellschaft | Database access mechanisms for a computer user interface |
US7734646B2 (en) * | 2003-01-29 | 2010-06-08 | International Business Machines Corporation | Data model simplification through field fallout |
US20110314022A9 (en) * | 2003-09-19 | 2011-12-22 | Unisys Corporation | K engine - process count after build in threads |
JPWO2005086003A1 (ja) * | 2004-03-08 | 2008-01-24 | アネックスシステムズ株式会社 | データベース・システム |
JP4574366B2 (ja) * | 2004-03-30 | 2010-11-04 | 要二 竹内 | Ip電話端末として機能させるプログラムが記録されたcd−rom、管理サーバ、運用サーバ、及びip電話端末登録方法 |
US20060178856A1 (en) * | 2005-02-04 | 2006-08-10 | Keith Roberts | Systems and methods for monitoring transaction devices |
US20070203653A1 (en) * | 2006-02-28 | 2007-08-30 | Amir Ben-Dor | Method and system for computational detection of common aberrations from multi-sample comparative genomic hybridization data sets |
US7937151B2 (en) * | 2006-03-02 | 2011-05-03 | Cardiac Pacemakers, Inc. | Implantable medical device with embedded programmable non-volatile memory |
US10585931B1 (en) * | 2008-01-18 | 2020-03-10 | Servicenow, Inc. | Dynamic determination of data facets |
US8261215B2 (en) * | 2008-12-22 | 2012-09-04 | Cadence Design Systems, Inc. | Method and system for performing cell modeling and selection |
US20110289072A1 (en) * | 2010-05-24 | 2011-11-24 | Microsoft Corporation | Search-based system management |
US20120032961A1 (en) * | 2010-08-09 | 2012-02-09 | Smith Richard L | Rating tool |
JP2012243076A (ja) * | 2011-05-19 | 2012-12-10 | Sony Corp | 情報処理装置、情報処理方法、プログラム、サーバ、及び情報処理システム |
US9830050B2 (en) * | 2011-11-23 | 2017-11-28 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for providing a reminder regarding a feed item of a feed of an online social network |
US8887238B2 (en) * | 2011-12-07 | 2014-11-11 | Time Warner Cable Enterprises Llc | Mechanism for establishing reputation in a network environment |
US20140136958A1 (en) * | 2012-11-15 | 2014-05-15 | Customer Systems Plc | Relating to distributed access infrastructure for a database |
US20160225038A1 (en) * | 2015-02-02 | 2016-08-04 | Telefonaktiebolaget L M Ericsson (Publ) | Method and score management node for supporting service evaluation with consideration to a user's fading memory |
US10110670B2 (en) * | 2015-07-20 | 2018-10-23 | Oracle International Corporation | Allocation of service endpoints to servers |
US10296650B2 (en) * | 2015-09-03 | 2019-05-21 | Oracle International Corporation | Methods and systems for updating a search index |
US10440007B1 (en) * | 2015-09-29 | 2019-10-08 | Amazon Technologies, Inc. | Symbolic feedback for user input |
EP3182296B1 (en) * | 2015-12-18 | 2017-11-22 | Sap Se | Dbms-supported score assignment |
US10320834B1 (en) * | 2016-06-27 | 2019-06-11 | Symantec Corporation | Retuning of random classification forests to improve efficacy |
US10289549B1 (en) * | 2016-06-28 | 2019-05-14 | EMC IP Holding Company LLC | Checkpointing cache status information |
US10565229B2 (en) * | 2018-05-24 | 2020-02-18 | People.ai, Inc. | Systems and methods for matching electronic activities directly to record objects of systems of record |
US10846014B2 (en) * | 2018-12-17 | 2020-11-24 | Intel Corporation | Concept for group memory write instructions |
EP4062313A1 (en) * | 2019-11-18 | 2022-09-28 | Monday.com Ltd. | Collaborative networking systems, methods, and devices |
US11372832B1 (en) * | 2020-06-05 | 2022-06-28 | Amazon Technologies, Inc. | Efficient hashing of data objects |
-
2021
- 2021-07-12 EP EP21749496.2A patent/EP4158502A1/en active Pending
- 2021-07-12 US US17/373,344 patent/US20220012236A1/en active Pending
- 2021-07-12 WO PCT/US2021/041305 patent/WO2022011347A1/en unknown
- 2021-07-12 JP JP2023501010A patent/JP2023533962A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022011347A1 (en) | 2022-01-13 |
EP4158502A1 (en) | 2023-04-05 |
US20220012236A1 (en) | 2022-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10958748B2 (en) | Resource push method and apparatus | |
US20210374610A1 (en) | Efficient duplicate detection for machine learning data sets | |
US20200050968A1 (en) | Interactive interfaces for machine learning model evaluations | |
CA2953826C (en) | Machine learning service | |
US20190362222A1 (en) | Generating new machine learning models based on combinations of historical feature-extraction rules and historical machine-learning models | |
US20210406993A1 (en) | Automated generation of titles and descriptions for electronic commerce products | |
US11803510B2 (en) | Labeling software applications running on nodes of a data center | |
US20160203409A1 (en) | Framework for calculating grouped optimization algorithms within a distributed data store | |
Poornima et al. | A journey from big data towards prescriptive analytics | |
JP2023533962A (ja) | インテリジェントな親和性ベースのフィールド更新の実行 | |
Strickland | Data analytics using open-source tools | |
US11475211B1 (en) | Elucidated natural language artifact recombination with contextual awareness | |
US20200410394A1 (en) | Predicting future actions during visual data cleaning | |
US11921756B2 (en) | Automated database operation classification using artificial intelligence techniques | |
US11500933B2 (en) | Techniques to generate and store graph models from structured and unstructured data in a cloud-based graph database system | |
US20240134562A1 (en) | Automated data archival framework using artificial intelligence techniques | |
US11875294B2 (en) | Multi-objective recommendations in a data analytics system | |
US20240013247A1 (en) | Talent and opportunity management | |
US20230334343A1 (en) | Super-features for explainability with perturbation-based approaches | |
Weber | AI and BA Platforms |