(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-12-09
(54)【発明の名称】アテンディッドロボットのための深層学習による顔認識フレームワーク
(51)【国際特許分類】
G06V 10/82 20220101AFI20221202BHJP
G06T 7/00 20170101ALI20221202BHJP
G06N 3/04 20060101ALI20221202BHJP
G06N 3/08 20060101ALI20221202BHJP
【FI】
G06V10/82
G06T7/00 350C
G06T7/00 660A
G06N3/04
G06N3/08
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021565067
(86)(22)【出願日】2020-10-07
(85)【翻訳文提出日】2022-01-19
(86)【国際出願番号】 US2020054531
(87)【国際公開番号】W WO2021071913
(87)【国際公開日】2021-04-15
(32)【優先日】2019-10-08
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】520262319
【氏名又は名称】ユーアイパス,インコーポレイテッド
【氏名又は名称原語表記】UiPath,Inc.
【住所又は居所原語表記】1 Vanderbilt Avenue, 60th Floor, New York, NY 10017, United States of America
(74)【代理人】
【識別番号】100180781
【氏名又は名称】安達 友和
(74)【代理人】
【識別番号】100182903
【氏名又は名称】福田 武慶
(72)【発明者】
【氏名】ヨルダケ,ラズヴァン-アレクサンドリュー
(72)【発明者】
【氏名】モリー,ダニエル-アレクサンドリュー
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096BA05
5L096CA02
5L096DA02
5L096HA11
(57)【要約】
顔認識フレームワークは、アプリケーションインターフェースのためのワークフローを自動化するためのロボティックプロセスオートメーション(RPA)のために構成され得る。ロボットが自動化されたワークフローのために開始された後、ユーザーの1セットのイメージがキャプチャされ得る。1セットのイメージは、顔の特徴を識別するために、深層学習ニューラルネットワークモデルによって利用され得る。自動化されたワークフローは、顔の特徴を有するユーザーの検証の成功およびアテンディッドロボットのためのユーザーの資格情報に基づいて、アテンディッドロボットによって実行され得る。
【特許請求の範囲】
【請求項1】
コンピューティングデバイスであって、
アテンディッドロボットを操作させるように構成されたプロセッサであって、前記アテンディッドロボットは、アプリケーションインターフェースのためのワークフローを自動化するプロセッサと、
前記アテンディッドロボットが起動された後に、前記コンピューティングデバイスの近くにいるユーザーの1セットのイメージをキャプチャするように構成されたイメージセンサーであって、前記1セットのイメージは、顔の特徴を識別するために深層学習ニューラルネットワークモデルに提供されるイメージセンサーと、を含み、
前記プロセッサは、前記アテンディッドロボットによる前記ワークフローの前記自動化の遂行コマンドに続いて、前記ユーザーのキャプチャイメージを受信するように構成され、
前記プロセッサは、前記ワークフローの前記自動化を処理するように構成され、前記ワークフローの前記自動化は、前記ユーザーの前記顔の特徴の検証に成功したことに基づき、且つ前記アテンディッドロボットのための前記ユーザーの資格情報に基づく、コンピューティングデバイス。
【請求項2】
前記ユーザーの前記顔の特徴および前記ユーザーのバイオメトリック情報の検証の成功は、セキュリティ層に関連する、請求項1に記載のコンピューティングデバイス。
【請求項3】
前記セキュリティ層は、前記アプリケーションインターフェースのための前記ワークフローの前記自動化の一部である、請求項2に記載のコンピューティングデバイス。
【請求項4】
前記1セットのイメージは、前記深層学習ニューラルネットワークモデルを更新するためのフレームワークにおいて利用される、請求項1に記載のコンピューティングデバイス。
【請求項5】
前記1セットのイメージは、前記ユーザーの顔バイオメトリック情報を作成するためのフレームワークにおいて利用される、請求項1に記載のコンピューティングデバイス。
【請求項6】
前記1セットのイメージは、前記ユーザーの顔バイオメトリック情報を更新するためのフレームワークにおいて利用される、請求項1に記載のコンピューティングデバイス。
【請求項7】
コンピューティングデバイスによって実行される方法であって、前記方法は、
前記コンピューティングデバイスによって、アテンディッドロボットを操作することであって、前記アテンディッドロボットは、アプリケーションインターフェースのためのワークフローを自動化することと、
前記アテンディッドロボットが起動された後に、前記コンピューティングデバイスによって、前記コンピューティングデバイスの近くにいるユーザーの1セットのイメージをキャプチャすることであって、前記1セットのイメージは、顔の特徴を識別するために深層学習ニューラルネットワークモデルに提供されることと、
前記アテンディッドロボットによる前記ワークフローの前記自動化の遂行コマンドに続いて、前記コンピューティングデバイスによって、前記ユーザーのキャプチャイメージを受信することと、
前記コンピューティングデバイスによって、前記ワークフローの前記自動化を処理することであって、前記ワークフローの前記自動化は、前記ユーザーの前記顔の特徴の検証に成功したことに基づき、且つ前記アテンディッドロボットのための前記ユーザーの資格情報に基づくことと、を含む、方法。
【請求項8】
前記ユーザーの前記顔の特徴および前記ユーザーのバイオメトリック情報の検証の成功は、セキュリティ層に関連する、請求項7に記載の方法。
【請求項9】
前記セキュリティ層は、前記アプリケーションインターフェースのための前記ワークフローの前記自動化の一部である、請求項8に記載の方法。
【請求項10】
前記1セットのイメージは、前記深層学習ニューラルネットワークモデルを更新するためのフレームワークにおいて利用される、請求項7に記載の方法。
【請求項11】
前記1セットのイメージは、前記ユーザーの顔バイオメトリック情報を作成するためのフレームワークにおいて利用される、請求項7に記載の方法。
【請求項12】
前記1セットのイメージは、前記ユーザーの顔バイオメトリック情報を更新するためのフレームワークにおいて利用される、請求項7に記載の方法。
【請求項13】
アテンディッドロボットを操作させるように構成されたプロセッサであって、前記アテンディッドロボットは、アプリケーションインターフェースのためのワークフローを自動化するプロセッサと、
前記アテンディッドロボットが起動された後に、ユーザーのイメージをキャプチャするように構成されたイメージセンサーであって、前記イメージは、顔の特徴を識別するために深層学習ニューラルネットワークモデルに提供されるイメージセンサーと、を含み、
前記プロセッサは、前記アテンディッドロボットによる前記ワークフローの前記自動化の遂行コマンドに続いて、前記ユーザーの別キャプチャイメージを受信するように構成され、
前記プロセッサは、前記ワークフローの前記自動化を処理するように構成され、前記ワークフローの前記自動化は、前記ユーザーの前記顔の特徴の検証に成功したことに基づき、且つ前記アテンディッドロボットのための前記ユーザーの資格情報に基づく、コンピューティングデバイス。
【請求項14】
前記ユーザーの前記顔の特徴および前記ユーザーのバイオメトリック情報の検証の成功は、セキュリティ層に関連する、請求項13に記載のコンピューティングデバイス。
【請求項15】
前記セキュリティ層は、前記アプリケーションインターフェースのための前記ワークフローの前記自動化の一部である、請求項14に記載のコンピューティングデバイス。
【請求項16】
前記イメージは、前記深層学習ニューラルネットワークモデルを更新するためのフレームワークにおいて利用される、請求項13に記載のコンピューティングデバイス。
【請求項17】
前記イメージは、前記ユーザーの顔バイオメトリック情報を作成するためのフレームワークにおいて利用される、請求項13に記載のコンピューティングデバイス。
【請求項18】
前記イメージは、前記ユーザーの顔バイオメトリック情報を更新するためのフレームワークにおいて利用される、請求項13に記載のコンピューティングデバイス。
【発明の詳細な説明】
【背景技術】
【0001】
(関連出願への相互参照)
本出願は、2019年10月8日に出願された米国出願第16/595,694号の利益を主張し、その内容は参照により本明細書に組み込まれる。
【0002】
ロボティックプロセスオートメーション(RPA)は、エンタープライズプラットフォーム、仮想マシン(VM)構成、リモートデスクトップ、クラウドコンピューティング、デスクトップアプリケーション、モバイルアプリケーションなどにおいて、反復的な操作、機能、またはワークフローを自動化し得る。他のデジタル環境と同様に、RPAによるデータまたはセキュリティの侵害は、従業員の不注意、偶発的な漏洩、無自覚、ウイルスなどの脆弱性によって生じ得る。特に、アテンディッドロボットが機密データを扱うデジタル環境では、データ漏洩のリスクがより高くなり得る。
【0003】
セキュリティおよび認証の手順は、データ漏洩を防ぐように構成され得る。特定の制限されたユーザーがロボットを管理できるようにするために、顔または他のバイオメトリック認識ベースの認証は、アテンディッドロボットベースのRPAに利用され得る。特に、顔認識フレームワークおよび深層学習をアテンディッドロボットRPAに使用することが望ましい場合がある。
【発明の概要】
【0004】
アテンディッドロボット操作のためのスタンドアロンまたは追加のセキュリティ層のための顔認識を使用した認証のための方法および装置が構成または利用され得る。ロボティックプロセスオートメーション(RPA)のためにワークフローのプロセスが開始されるとき、人、ユーザー、またはオペレータの顔認識認証が、機密データ、情報、システムなどを保護するために実行され得る。
【図面の簡単な説明】
【0005】
より詳細な理解は、図中の類似の参照数字が類似の要素を示す、添付の図面との関連で例示的に与えられた以下の説明から得られ得る。
【0006】
【
図1A】ロボティックプロセスオートメーション(RPA)の開発、設計、運用、または遂行の説明図である。
【0007】
【
図1B】RPAの開発、設計、運用、または遂行の別の説明図である。
【0008】
【
図1C】コンピューティングシステムまたは環境の説明図である。
【0009】
【
図2A】アテンディッドロボット(複数可)のRPAのための顔認識フレームワークの訓練の説明図である。
【0010】
【
図2B】顔認識フレームワークを用いて、アテンディッドロボットのRPAのためのセキュリティ層を遂行する説明図である。
【0011】
【
図3】モバイルまたはエンタープライズRPAのための検証アプリケーションの例である。
【0012】
【
図4】RPAのための顔認識フレームワークをトリガするイベントのためのシステムを監視する例である。
【0013】
【
図5】RPAのための顔認識フレームワークの発注書作成の例である。
【0014】
【
図6】RPAのための顔認識フレームワークのプロセスである。
【発明を実施するための形態】
【0015】
(詳細な説明)
本明細書に記載されている方法およびプロセスでは、記載されているステップは任意の順序で順不同で実行され得、明示的に記載または表示されていないサブステップが実行され得る。また、「結合されている」または「操作的に結合されている」とは、オブジェクトが連結されていることを意味してもよいが、連結されているオブジェクトの間にゼロまたはそれ以上の中間オブジェクトを有してもよい。また、開示された特徴/要素の任意の組み合わせが、1または複数の実施形態で使用されてもよい。「AまたはB」を参照して使用する場合は、A、B、またはAおよびBを含む場合があり、より長いリストと同様に拡張され得る。表記X/Yを使用する場合、それはXまたはYを含み得る。あるいは、表記X/Yを使用する場合、それはXおよびYを含み得る。X/Y表記は、同一の説明されたロジックを有するより長いリストと同様に拡張され得る。
【0016】
図1Aは、ロボティックプロセスオートメーション(RPA)の開発、設計、運用、または遂行100の説明図である。デザイナ102は、スタジオ、開発プラットフォーム、開発環境などとして時々参照され、ロボットが1または複数のワークフローを実行または自動化するためのコード、命令、コマンドなどを生成するように構成され得る。コンピューティングシステムがロボットに提供し得る選択(複数可)から、ロボットは、ユーザーまたはオペレータによって選択されたビジュアルディスプレイの領域(複数可)の代表的なデータを決定し得る。RPAの一環として、コンピュータビジョン(CV)操作または機械学習(ML)モデルに関連して、四角、長方形、円、多角形、自由形などの多次元の形状をUIロボットの開発およびランタイムに利用され得る。
【0017】
ワークフローによって達成され得る操作の非限定的な例としては、ログインの実行、フォームへの入力、情報技術(IT)管理などのうちの1または複数であり得る。UIオートメーションのためのワークフローを実行するために、ロボットは、アプリケーションのアクセスまたはアプリケーションの開発に関係なく、ボタン、チェックボックス、テキストフィールド、ラベルなどの特定の画面要素を一意に識別する必要があり得る。アプリケーションアクセスの例としては、ローカル、仮想、リモート、クラウド、Citrix(登録商標)、VMWare(登録商標)、VNC(登録商標)、Windows(登録商標)リモートデスクトップ、仮想デスクトップインフラストラクチャ(VDI)などがあり得る。アプリケーション開発の例としては、WIN32、Java、Flash、ハイパーテキストマークアップ言語((HTML)、HTML5、拡張可能なマークアップ言語(XML)、JavaScript、C#、C++、Silverlightなどであり得る。
【0018】
ワークフローには、タスクシーケンス、フローチャート、有限状態マシン(FSM)、グローバル例外ハンドラなどが含まれ得るが、これらに限定されない。タスクシーケンスは、1または複数のアプリケーションまたはウィンドウ間の線形タスクを処理するための線形プロセスであり得る。フローチャートは、複雑なビジネスロジックを扱うように構成され得、複数の分岐ロジックオペレータを介して、より多様な方法で意思決定の統合およびアクティビティの接続を可能にする。FSMは、大規模なワークフロー用に構成され得る。FSMは、条件、遷移、アクティビティなどによってトリガされ得る有限数の状態をそれらの遂行中に使用し得る。グローバル例外ハンドラは、プロセスのデバッグプロセスなどのために、遂行エラーが発生したときのワークフローの動作を判断するように構成され得る。
【0019】
ロボットは、アプリケーション、アプレット、スクリプトなどであり得、基盤となるオペレーティングシステム(OS)またはハードウェアに対し透過的なUIを自動化し得る。展開時には、1または複数のロボットは、コンダクタ104(オーケストレータと呼ばれることもある)によって管理、制御などされ得る。コンダクタ104は、メインフレーム、ウェブ、仮想マシン、リモートマシン、仮想デスクトップ、エンタープライズプラットフォーム、デスクトップアプリ(複数可)、ブラウザ、またはそのようなクライアント、アプリケーション、もしくはプログラムにおいてワークフローを遂行または監視するようにロボット(複数可)または自動化エグゼキュータ106に指示または命令し得る。コンダクタ104は、コンピューティングプラットフォームを自動化するために複数のロボットを指示または命令するための中央または半中央点として機能し得る。
【0020】
特定の構成では、コンダクタ104は、プロビジョニング、展開、構成、キューイング、監視、ロギング、および/または相互接続性を提供するように構成され得る。プロビジョニングは、ロボット(複数可)または自動化エグゼキュータ106とコンダクタ104との間の接続または通信の作製および維持を含み得る。展開は、遂行のために割り当てられたロボットへのパッケージバージョンの配信を保証することを含み得る。構成は、ロボット環境およびプロセス構成の維持および配信を含み得る。キューイングは、キューおよびキュー項目の管理を提供することを含み得る。監視は、ロボットの識別データを追跡し、ユーザーの権限を維持することを含み得る。ロギングは、データベース(例えば、SQLデータベース)および/または別のストレージメカニズム(例えば、大規模なデータセットを格納し、迅速にクエリを実行する能力を提供するElasticSearch(登録商標)へのログの保存およびインデックス作成を含み得る。コンダクタ104は、サードパーティのソリューションおよび/またはアプリケーションのための通信の集中点として操作することにより、相互接続性を提供し得る。
【0021】
ロボット(複数可)または自動化エグゼキュータ106は、アンアテンディッド108またはアテンディッド110として構成され得る。アンアテンディッド108操作の場合、自動化は、サードパーティの入力または制御なしで実行され得る。アテンディッド110操作については、サードパーティのコンポーネントからの入力、コマンド、指示、指導などを受信して自動化が行われ得る。アンアテンディッド108またはアテンディッド110ロボットは、モバイルコンピューティングまたはモバイルデバイスの環境で実行するまたは遂行することがきる。
【0022】
ロボット(複数可)または自動化エグゼキュータ106は、デザイナ102内に構築されたワークフローを実行する遂行エージェントであり得る。UIまたはソフトウェアの自動化のためのロボット(複数可)の商業的な例としては、UiPath Robots(商標)がある。いくつかの実施形態では、ロボット(複数可)または自動化エグゼキュータ106は、Microsoft Windows(登録商標) Service Control Manager(SCM)管理サービスをデフォルトでインストールし得る。その結果、そのようなロボットは、ローカルシステムアカウントの下でインタラクティブなWindows(登録商標)セッションを開くことができ、Windows(登録商標)サービスの権利を持ち得る。
【0023】
いくつかの実施形態では、ロボット(複数可)または自動化エグゼキュータ106は、ユーザーモードでインストールされ得る。これらのロボットは、所定のロボットが設置されているユーザーと同じ権利を持ち得る。この特徴は、高密度(HD)環境などで最大のパフォーマンスで各マシンを完全に利用できるようにする高密度(HD)ロボットでも使用可能であり得る。
【0024】
特定の実施形態では、ロボット(複数可)または自動化エグゼキュータ106は、それぞれが特定の自動化タスクまたはアクティビティに特化したいくつかのコンポーネントに分割、分散などされ得る。ロボットコンポーネントには、SCM管理ロボットサービス、ユーザーモードロボットサービス、エグゼキュータ、エージェント、コマンドラインなどが含まれ得る。SCM管理ロボットサービスは、Windows(登録商標)セッションを管理または監視し、コンダクタ104と遂行ホスト(すなわち、ロボット(複数可)または自動化エグゼキュータ106が遂行されるコンピューティングシステム)との間のプロキシとして機能し得る。これらのサービスは、ロボット(複数可)または自動化エグゼキュータ106のための資格情報を任されて管理し得る。
【0025】
ユーザーモードロボットサービスは、Windows(登録商標)セッションを管理および監視し、コンダクタ104と遂行ホストとの間のプロキシとして機能し得る。ユーザーモードロボットサービスは、ロボットの資格情報を任されて管理し得る。SCM管理ロボットサービスがインストールされていない場合、Windows(登録商標)アプリケーションが自動的に起動され得る。
【0026】
エグゼキュータは、Windows(登録商標)セッションの下で与えられたジョブを遂行し得る(つまり、ワークフローを遂行し得る)。エグゼキュータは、モニタ毎のドットパーインチ(DPI)設定を意識し得る。エージェントは、システムトレイウィンドウに利用可能なジョブを表示するWindows(登録商標) Presentation Foundation(WPF)アプリケーションであり得る。エージェントはサービスのクライアントとなり得る。エージェントは、ジョブの開始または停止、設定の変更を依頼し得る。コマンドラインはサービスのクライアントとなり得る。コマンドラインは、ジョブの開始を要求し、その出力を待つことができるコンソールアプリケーションである。
【0027】
上で説明したように、ロボット(複数可)または自動化エグゼキュータ106のコンポーネントが分割される構成では、開発者、サポートユーザー、およびコンピューティングシステムが、各コンポーネントによる実行、識別、および追跡をより容易に遂行するのに役立つ。この方法では、エグゼキュータとサービスに異なるファイアウォールルールを設定するなど、コンポーネントごとに特別な動作を構成し得る。エグゼキュータは、いくつかの実施形態では、モニタごとのDPI設定を認識し得る。その結果、ワークフローは、ワークフローが作成されたコンピューティングシステムの構成に関係なく、いずれかのDPIで遂行し得る。また、デザイナ102からのプロジェクトは、ブラウザのズームレベルに依存しないようにし得る。DPIを認識していないまたは意図的に認識していないとマークされているアプリケーションの場合、いくつかの実施形態ではDPIを無効にし得る。
【0028】
図1Bは、RPAの開発、設計、運用、または遂行120の別の説明図である。スタジオコンポーネントまたはモジュール122は、ロボットが1または複数のアクティビティ124を実行するためのコード、命令、コマンドなどを生成するように構成され得る。ユーザーインターフェース(UI)オートメーション126は、1または複数のドライバ(複数可)コンポーネント128を使用して、クライアント上のロボットによって実行され得る。ロボットは、コンピュータビジョン(CV)アクティビティモジュールまたはエンジン130を使用してアクティビティを行い得る。他のドライバ132は、UIの要素を得るためにロボットによるUIオートメーションのために利用され得る。それらには、OSドライバ、ブラウザドライバ、仮想マシンドライバ、エンタープライズドライバなどが含まれ得る。特定の構成では、CVアクティビティモジュールまたはエンジン130は、UIオートメーションのために使用されるドライバであり得る。
【0029】
図1Cは、情報またはデータを通信するためのバス142または他の通信機構と、処理のためにバス142に結合された1または複数のプロセッサ(複数可)144とを含むことができるコンピューティングシステムまたは環境140の説明図である。1または複数のプロセッサ(複数可)144は、中央処理ユニット(CPU)、特定用途集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、グラフィックス処理ユニット(GPU)、コントローラ、マルチコア処理ユニット、3次元プロセッサ、量子コンピューティングデバイス、またはそれらの任意の組み合わせを含む、任意のタイプの一般的または特定用途プロセッサであり得る。1または複数のプロセッサ(複数可)144はまた、複数の処理コアを有してもよく、コアの少なくとも一部は、特定の機能を実行するように構成され得る。また、マルチパラレル処理が構成され得る。さらに、少なくとも1または複数のプロセッサ(複数可)144は、生物学的ニューロンを模倣する処理要素を含むニューロモーフィック回路であり得る。
【0030】
メモリ146は、プロセッサ(複数可)144によって遂行または処理される情報、命令、コマンド、またはデータを格納するように構成され得る。メモリ146は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、フラッシュメモリ、ソリッドステートメモリ、キャッシュ、磁気ディスクもしくは光ディスクなどの静的記憶装置、または他のタイプの非一時的な読み取り可能な媒体、あるいはそれらの組み合わせの任意の組み合わせで構成され得る。非一時的な読み取り可能な媒体は、プロセッサ(複数可)144によってアクセス可能な任意の媒体であってもよく、揮発性媒体、不揮発性媒体などを含み得る。また、媒体は、取り外し可能なものであってもよいし、取り外し不可能なものなどであってもよい。
【0031】
通信装置148は、周波数分割多元接続(FDMA)、シングルキャリアFDMA(SC-FDMA)、時分割多元接続(TDMA)、符号分割多元接続(CDMA)、直交周波数分割多重方式(OFDM)、直交周波数分割多元接続(OFDMA)、移動体用グローバルシステム(GSM:Global System for Mobile)通信、汎用パケット無線サービス(GPRS:General Packet Radio Service)、ユニバーサル移動体通信システム(UMTS:Universal Mobile Telecommunications System)、cdma2000、広帯域CDMA(W-CDMA:Wideband CDMA)、高速ダウンリンクパケットアクセス(HSDPA:High-Speed Downlink Packet Access)、高速アップリンクパケットアクセス(HSUPA:High-Speed Uplink Packet Access)、高速パケットアクセス(HSPA:High-Speed Packet Access)、ロングタームエボリューション(LTE:Long Term Evolution)、LTEアドバンスト(LTE-A:LTE Advanced)、802.11x、Wi-Fi、Zigbee、超広帯域無線(UWB:Ultra-WideBand)、802.16x、802.15、Home Node-B(HnB)、Bluetooth、無線IDタグ(RFID:Radio Frequency Identification)、IrDA(Infrared Data Association)、近距離無線通信(NFC:Near-Field Communications)、第5世代(5G)、New Radio(NR)、または、1もしくは複数のアンテナを介して通信するためのいずれかの他の無線もしくは有線のデバイス/トランシーバとして構成され得る。アンテナは、単数型、アレイ型、フェーズド型、スイッチ型、ビームフォーミング型、ビームステア型などであり得る。
【0032】
1または複数のプロセッサ(複数可)144は、バス142を介して、プラズマ、液晶ディスプレイ(LCD)、発光ダイオード(LED)、フィールドエミッションディスプレイ(FED)、有機発光ダイオード(OLED)、フレキシブルOLED、フレキシブル基板ディスプレイ、プロジェクションディスプレイ、4Kディスプレイ、高精細(HD)ディスプレイ、Retina(著作権)ディスプレイ、面内スイッチング(IPS)またはそのようなベースのディスプレイなどのディスプレイデバイス150にさらに結合され得る。ディスプレイデバイス150は、入力/出力(I/O)のために、当業者に理解されるように、抵抗性、静電容量性、表面音響波(SAW)静電容量性、赤外線、光学イメージング、分散信号技術、音響パルス認識、フラストレート全内部反射などを使用して、タッチ、3次元(3D)タッチ、マルチ入力タッチ、またはマルチタッチディスプレイとして構成され得る。
【0033】
キーボード152およびコンピュータマウス、タッチパッドなどの制御装置154は、コンピューティングシステムまたは環境140への入力のためにバス142にさらに結合され得る。さらに、入力は、それと通信している別のコンピューティングシステムを介してリモートでコンピューティングシステムまたは環境140に提供されてもよいし、コンピューティングシステムまたは環境140が自律的に操作してもよい。
【0034】
メモリ146は、1または複数のプロセッサ(複数可)144によって遂行または処理されたときに機能を提供するソフトウェアコンポーネント、モジュール、エンジンなどを格納してもよい。これは、コンピューティングシステムまたは環境140のためのOS156を含み得る。モジュールは、アプリケーション固有のプロセスまたはその派生物を実行するためのカスタムモジュール158をさらに含み得る。コンピューティングシステムまたは環境140は、付加的な機能を含む1または複数の付加的な機能モジュール160を含み得る。
【0035】
コンピューティングシステムまたは環境140は、サーバー、組み込みコンピューティングシステム、パーソナルコンピュータ、コンソール、パーソナルデジタルアシスタント(PDA)、携帯電話、タブレットコンピューティングデバイス、量子コンピューティングデバイス、クラウドコンピューティングデバイス、モバイルデバイス、スマートフォン、固定型モバイルデバイス、スマートディスプレイ、ウェアラブルコンピュータなどとして実行するように適合または構成され得る。
【0036】
本明細書に記載された例では、モジュールは、カスタムの非常に大規模な集積(VLSI)回路またはゲートアレイ、ロジックチップ、トランジスタ、または他の個別部品のような既製の半導体を含むハードウェア回路として実装され得る。また、モジュールは、フィールドプログラマブルゲートアレイ、プログラマブルアレイロジック、プログラマブルロジック装置、グラフィックス処理ユニットなどのプログラマブルハードウェア装置に実装され得る。
【0037】
モジュールは、様々なタイプのプロセッサによって遂行されるためのソフトウェアに少なくとも部分的に実装され得る。識別された遂行可能コードのユニットは、例えば、オブジェクト、プロシージャ、ルーチン、サブルーチン、または関数として編成されていてもよいコンピュータ命令の1または複数の物理的または論理的なブロックを含み得る。識別されたモジュールの遂行可能は、論理的に結合されるとモジュールを構成するように、異なる位置に共に配置されたり、格納されたりする。
【0038】
遂行可能なコードのモジュールは、単一の命令、1または複数のデータ構造、1または複数のデータセット、複数の命令などであり、複数の異なるコードセグメント、異なるプログラム間、複数のメモリデバイス間などに分散され得る。操作データまたは機能データは、モジュール内で識別され、ここで示されてもよく、任意の適切なタイプのデータ構造内で適切な形態で具現化され、組織化され得る。
【0039】
本明細書で説明された例では、コンピュータプログラムは、ハードウェア、ソフトウェア、またはハイブリッド実装で構成され得る。コンピュータプログラムは、互いに操作可能な通信を行い、情報または指示を渡すためのモジュールで構成され得る。
【0040】
図2Aは、コンダクタ、オーケストレータなどの一部として実装され得る、アテンディッドロボット(複数可)200のRPAのための顔認識フレームワークの訓練の説明図である。
図2Bは、顔認識フレームワークを用いて、アテンディッドロボットのRPAのためのセキュリティ層を遂行する説明図である。特定の構成では、セキュリティ層は、アプリケーションインターフェースを自動化するためのワークフローまたはワークフローアクティビティの一部であり得る。
【0041】
バックグラウンド、システムトレイなどで実行しているアテンディッドロボットのために自動化されたプロセスが開始され得る(202)。バックグラウンドで実行しているアテンディッドロボット(複数可)は、ロボット(複数可)を開始またはトリガするための、Ctrl+Shift+Rなどのキーが押されるのを待ち得る。自動化されたプロセスは、ワークフローまたはワークフローアクティビティに関連する任意のプロセスであり得る。さらに、検証アプリケーションまたはステーションは、アテンディッドユーザーに、書類の作成、読み取り、更新、または削除(CRUD)などのリアルタイム操作を行う能力を提供するように構成され得る。この能力は、自動化プロセスに関連して、分類、人間のデータ抽出、人間のデータ検証などのためのものであってもよい。その他のプロセスとしては、SAPユーザーの挿入、購買発注書(PO)の作成、レポートのダウンロードなどを含み得る。
【0042】
開始後、アテンディッドロボット(複数可)は、顔認識のための深層学習、深層学習ニューラルネットワーク、TensorFlow深層学習、TensorFlowフレームワークモデルなどの訓練または遂行フェーズ(204)を提供し得る。TensorFlowは、プログラミング言語のライブラリを介して構成または利用され得る。例えば、TensorFlowは、プログラミング言語のPythonに見られるライブラリであり得る。訓練または遂行フェーズは、顔認識を実行することで、追加または余分なセキュリティ層を提供し得る。訓練ワークフロー、操作、またはフェーズでは、アテンディッドロボット(複数可)は、ユーザー名、パスワード、ニックネーム、コード、キーなど、人またはユーザーの資格情報の手動入力を促し得る(206)。資格情報が正しければ(208)、操作またはフェーズは、人またはユーザーの名前を要求する(210)。そうでなければ、訓練ワークフロー、操作、またはフェーズが終了する(216)。
【0043】
アテンディッドロボット(複数可)は、所有権を確認するために、機械またはデバイスの前などにいる人またはユーザー(212)の1もしくは複数の、または1セットのイメージもしくは写真をキャプチャし得る。特定の構成では、1もしくは複数の、または1セットのイメージもしくは写真が、スペースキーの押下によってキャプチャされ、エスケープ(ESC)キーの押下によって操作が閉じられ得る。キャプチャされた1もしくは複数の、または1セットのイメージもしくは写真は、既存または新しい機械学習(ML)モデルを訓練するために処理され得る(214)。例えば、MLモデルは、既存の人もしくはユーザーに対してよりよく訓練されてもよいし、または新しい人もしくはユーザーの顔の特徴を学習してもよい。モデルは、顔を識別し、特徴を学習して、人またはユーザーのバイオメトリック情報を作成し得る。バイオメトリック情報は、将来の認識のためにユーザー名と関連付けられ得る。
【0044】
遂行するワークフロー、操作、またはフェーズについて、手動入力で「遂行」を選択した後、RPAのための1または複数の自動化されたプロセスが開始され得る。アテンディッドロボット(複数可)は、所有権を確認するために、機械の前などで人またはユーザーの1または複数の写真またはイメージをキャプチャし得る(218)。モデルは、既知の顔に従って人またはユーザーの識別(220)を実行し、許可された人に対して成功または失敗を返信してもよい(222)。人またはユーザーが不許可の場合、遂行ワークフロー、操作、またはフェーズを終了してもよい(216)。検証が成功した場合、人またはユーザーに対するRPAのための自動されたプロセス(224)の遂行が許可されるまたは進行され得る。特定の構成では、アンアテンディッドロボット(複数可)によるワークフローの遂行および処理は、Ctrl+Shift+Rなどのキーシーケンスによってトリガされ得る。さらに、ワークフロー遂行の例は、SAPユーザーの挿入(226)、POを作成するプロセス(228)、レポートをダウンロードするプロセス(230)などであり得る。
【0045】
本明細書に記載された例について、特定の構成では、顔認識は、深層学習ニューラルネットワーク、MLソフトウェアライブラリ、TensorFlowフレームワークなどに基づいて実行され得る。顔認識モデルは、2015年6月17日にv3公開されたSchroffらの「FaceNet: 顔認識およびクラスタリングのための統一されたエンベッディング」、Parkhiらの「Deep Face Recognition」、オックスフォード大学のVisual Geometry Groupのフレームワークなどで提供されているもののうち、すべてが完全に記載されているかのように参照によって本明細書に組み込まれているものを1または複数利用し得る。
【0046】
本明細書に記載された例について、特定の構成において、顔認識モデルは、リアルタイムビデオから顔を識別または認識するように構成され得る。また、顔認識モデルは、1または複数の写真、イメージ、ビデオなどから複数の顔を同時に識別または認識するように構成され得る。顔認識モデルが複数の顔を同時に認識するように構成されている場合、顔検証を行うように構成されたロボットは、1または複数の顔が認証された人のものであると認識されない場合、検証を拒否し、プロセスを終了してもよい。
【0047】
顔認識モデルは、イベントへの登録、オンラインプラットフォーム上の職業情報など、他のソースからの情報を利用して、認識された人またはユーザーがRPAのための自動化されたプロセスを開始する権限を持っているかどうかを確認し得る。例えば、まだ登録していない人々も存在するイベントでは、1または複数の高解像度カメラは、写真、イメージ、ビデオなどをキャプチャするように構成され得る。その後、モデルはユーザーのプロフィールを検索し、会社での雇用状況、競合他社での雇用、イベントへの有効な登録などの詳細を分析し得る。このような基準を満たした場合、人またはユーザーは有効な人またはユーザーとして認識される。
【0048】
特定の構成では、アンアテンディッドロボットはまた、例えばプライベートエントランスイベント中に、会場の1または複数のリアルタイムの高解像度カメラを監視し、セキュリティのために任意の不正な人を認識するように構成され得る。リアルタイムの監視に基づいて、不正な人をセキュリティに通知するためにプロセスがトリガされ得る。また、出席者の登録が必要なイベントでは、登録エリアまたはスペースに高解像度カメラを人に向けて設置し得る。アンアテンディッドロボットはまた、人が、登録エリアまたはスペースに関連するイベントに登録されているかどうかを認識するプロセスを自動的にトリガし得る。
【0049】
本明細書に記載された例について、特定の構成では、顔認識は、1または複数の目の位置、眉毛、1または複数の異なる角度の顔の写真、1または複数の異なる角度の顔のイメージなどの訓練または事前訓練に基づき得る。特定の構成では、顔認識フレームワークは、RPAのためのソフトウェアコネクタコンポーネントまたはモジュールを使用して構成され得る。Pythonコネクタなどのソフトウェアコネクタは、コンポーネント間のインタラクションを実行、調整などをするためのアーキテクチャ構成要素、コンポーネント、またはモジュールであり得る。
【0050】
訓練または再訓練について再度言及すると、顔認識モデルは、人またはユーザーについて、0から1未満の信頼度のスコアを出力し得る。人々のグループは、顔認識モデルによって同様に訓練され得る。顔認識モデルは、ローカルに、リモートで、クラウドにおいてなどで構成され得る。
【0051】
図3は、モバイルまたはエンタープライズRPA300のための検証アプリケーションの例である。1または複数のロボットによって実行される1または複数のプロセスの操作に先立って、認識モデルまたはフレームワークを訓練(302)または遂行(304)するオプションを備えた検証、照合、またはセキュリティアプリケーションが起動してもよい。検証、照合、またはセキュリティアプリケーションは、自動化、RPAなどのための1または複数のロボットのコンダクタ、オーケストレータなどによって制御されるワークフローの一部であり得る。1または複数のロボットは、アテンディッドロボットおよびアンアテンディッドロボットの両方、または少なくとも1つのアテンディッドロボットを含み得る。特定の構成では、顔検証、バイオメトリック検証などの検証は、アテンディッドロボットを通じてのみ行われ得る。検証またはセキュリティは、ワークフローまたはプロセス実行の前、後、または実行中に1または複数のアテンディッドロボットまたはアンアテンディッドロボットに関連し得るアテンディッドロボットによって、プロセスの前に起動され得る。
【0052】
本明細書に記載された顔認識フレームワークは、データ登録データベースをスクレイプするために利用され得る。これは、ユーザーの写真またはイメージが撮影された後に、バックグラウンドでRPAロボット(複数可)が、認識し、識別し、そして登録データベースのデータを自動的にスクレイプするために実行され得る。さらに、アテンディッドロボット(複数可)は、RPAによる支払いのための金額がトランザクションに関連する閾値を超えた場合に、再照合または識別処理を起動し得る。アテンディッドロボット(複数可)は、再照合または識別に成功した場合、トランザクションを処理してもよい。
【0053】
図4は、RPA400のための顔認識フレームワークをトリガするイベントのためのシステムを監視する例である。イベント監視コンポーネント402は、アテンディッドロボット(複数可)に関連して実行され、RPAのためのワークフローを開始またはトリガするために、Ctrl+Shift+Rなどのキーの押下を待ち得る。トリガまたはキーの押下(複数可)が検出されると、イベントハンドラ404が遂行され得る。さらに、本明細書で説明したように、RPA400のための顔認識フレームワークをトリガするイベントのためにシステムを監視することに関連して、さらなる条件付きのプロセスおよびシーケンスが遂行され得る。RPA400のための顔認識フレームワークをトリガするイベントのためのシステムの監視において、訓練(Train)が選択された場合、「キャプチャアンド訓練(CaptureAndTrain)」のためのワークフローが実行され得る。そうでなければ、「キャプチャアンド識別(CaptureAndIdentify)」するワークフローが実行され得る。
【0054】
図5は、RPA500のための顔認識フレームワークのPO作成の例である。PO502は、PO作成ウィンドウまたはアプリケーションをトリガするコードME21N(1)を含み得る。PO502はまた、値VENDOR1のベンダーフィールド(2)、マテリアルフィールド(3)10599999、およびPO数量10(4)を含み得る。顔認識フレームワークに関連して許可された人の照合が成功したことに基づいてまたは成功した後に、SAPユーザーの挿入操作は、コンダクタ、オーケストレータなどからのトランザクションを有する入力を受信し得る。トランザクションは、別のRPAワークフローに関連して、コンダクタ、オーケストレータなどのキューから来たものであってもよい。ロボットは、コンダクタまたはオーケストレータの1または複数のキューをポーリングし、トランザクションを読み取り、対応する処理を遂行してもよい。また、ロボットは、コンダクタ、オーケストレータの1または複数のキューに、新規または更新されたトランザクションを入力してもよい。
【0055】
各トランザクションは、それがアテンディッドロボット(複数可)によりSAPに記入または入力する必要があるすべての情報を含むような完全なものであり得る。アテンディッドロボット(複数可)は、「ゲットキューアイテム(Get Queue Item)」などのアクティビティによって、コンダクタ、オーケストレータなどからデータを取得し、復号化し得る。別のシステムまたはワークフローによって提案されたパスワードは、SAPに入力する前に、アテンディッドロボット(複数可)によって暗号化および復号化され得る。ロボット(複数可)はその後、SAPを開き、各新入社員のためにユーザー名、住所、ログオンデータなどの新しいアカウントを作成するために、要求されるフィールドへの入力を開始してもよい。
【0056】
SAPログオン(LogOn)に関連して、アテンディッドロボット(複数可)は、SAPログオン(LogOn)アプリケーションを開き、「クリック」アクティビティで適切なサーバーを選択し、そしてユーザー名とパスワードを挿入し得る。アテンディッドロボット(複数可)は、顔認識RPAフレームワークに関連して、コンダクタ、オーケストレータなどのコンポーネントからハイパーテキストトランスファープロトコルセキュア(HTTPs)トンネルを介して資格情報を取得し得る。アテンディッドロボット(複数可)は、「別のユーザーがこのユーザーと一緒にログインしています」、「あなたのライセンスはあとx日で期限切れになります」など、注意を要するメッセージに遭遇し得る。
【0057】
前述したように、POコードME21Nは、PO作成のためのトランザクションであり得る。アクティビティは、アプリ統合パッケージの一部として、入力を読み取るためにアテンディッドロボット(複数可)によって利用され得る。ベンダーマスターデータを用いて、POは、アテンディッドロボット(複数可)によって、購入情報レコードおよびマテリアルマスターからの情報で満たされてもよい。
【0058】
図5を参照すると、(2)は、スクリーンショットまたはイメージからスクレイプされた購入情報の記録から、アテンディッドロボット(複数可)によって入力され得る。アイテム(3)は、ベンダーのマスターから入力され得る。PO番号は、アテンディッドロボット(複数可)によってSAPからコピーされ、一致する入力行に挿入され得る。
【0059】
ユーザーが正常に作成されると、トランザクションは、コンダクタ、オーケストレータなどのキューにおいて更新され得る。トランザクションのステータスは、成功、プロセス中にアプリケーションがクラッシュした場合のアプリケーション例外、ビジネス例外などを含み得る。失敗または例外は、ユーザーファイルまたは記録が既に作成されている場合に生じ得、または任意の他の例外は、RPAのワークフロー自動化の開発時に考慮される。また、アテンディッドロボット(複数可)は、処理するための任意の新しいトランザクションがあるかどうかを確認し得る。トランザクションがない場合は、アテンディッドロボット(複数可)がSAPアプリケーションを閉じて、新しいタスクのためにユーザーにトリガされるのを待ち得る。
【0060】
さらに、顔認識フレームワークに関連して許可された人の照合が成功したことに基づいてまたは成功した後に、第2プロセスは、操作の一部として「ME21N」としてPOを作成してもよい。これに関連して、アテンディッドロボット(複数可)は、SAPアプリケーションを開き、要求されたアイテムに対する1または複数のPOを作成してもよい。また、顔認識フレームワークに関連して許可された人の照合が成功したことに基づいてまたは成功した後に、第3プロセスは、操作の一部として「FBL1N」として報告をダウンロードしてもよい。ダウンロードの一部として、ベンダーのラインアイテムが検索されてもよい。アテンディッドロボット(複数可)は、ベンダーマスターデータ(Vendor Master Data)テーブルなどのテーブルからデータをフェッチするために、ベンダーアカウントおよび会社コードを入力し得る。アテンディッドロボット(複数可)は、その後、SAPアプリケーションをログアウトして閉じ得る。
【0061】
アテンディッドロボット(複数可)は、RPAの顔認識フレームワークに関連して、SAPプラットフォームを案内し得る。ナビゲーションの一部には、データを収集し、Microsoft Excelなどの別のファイルを返すことを含み得る。プロセスの一部として、デジタルアシスタントは、レポートを電子メールで送信すべきかどうか、誰に送信すべきかを尋ねてもよい。
【0062】
図6は、RPA600のための顔認識フレームワークのプロセスである。アテンディッドロボット(複数可)は、アプリケーションインターフェースのためのワークフローのアクティビティを自動化し得る(602)。イメージセンサ(複数可)は、ロボット(複数可)がワークフローの自動化されたアクティビティを開始した後に、ユーザーの1もしくは複数のまたは1セットのイメージもしくは写真をキャプチャしてもよい(604)。自動化されたアクティビティの遂行コマンドに続いて、ユーザーのキャプチャされたイメージが受信され、自動化されたアクティビティが遂行されてもよい(606)。自動化されたアクティビティの遂行は、アテンディッドロボット(複数可)のための顔の特徴、ユーザーのバイオメトリック情報、またはユーザーの資格情報のうちの1または複数の成功した検証に基づいて実行され得る。
【0063】
特徴および要素は、特定の組み合わせで上に記載されているが、各特徴または要素は、単独で、または他の特徴および要素と任意の組み合わせで使用することができることが、当業者には理解されるであろう。さらに、本明細書に記載された方法は、コンピュータまたはプロセッサによって遂行されるために、コンピュータ読み取り可能な媒体に組み込まれたコンピュータプログラム、ソフトウェア、またはファームウェアに実装され得る。コンピュータ読み取り可能な媒体の例としては、電子信号(有線または無線接続を介して送信される)およびコンピュータ読み取り可能なストレージ媒体が挙げられる。コンピュータ読み取り可能なストレージ媒体の例としては、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、レジスタ、キャッシュメモリ、半導体記憶デバイス、内蔵ハードディスクおよびリムーバブルディスクなどの磁気媒体、磁気光学媒体、ならびにCD-ROMディスクおよびデジタル多目的ディスク(DVD)などの光学媒体が挙げられるが、これらに限定されない。
【国際調査報告】