IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サノフイの特許一覧

<>
  • 特許-化学物質に対する患者の反応の予測 図1
  • 特許-化学物質に対する患者の反応の予測 図2
  • 特許-化学物質に対する患者の反応の予測 図3
  • 特許-化学物質に対する患者の反応の予測 図4
  • 特許-化学物質に対する患者の反応の予測 図5
  • 特許-化学物質に対する患者の反応の予測 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-09
(45)【発行日】2024-08-20
(54)【発明の名称】化学物質に対する患者の反応の予測
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240813BHJP
   G06N 3/02 20060101ALI20240813BHJP
   G06V 10/82 20220101ALI20240813BHJP
   A61B 5/00 20060101ALI20240813BHJP
【FI】
G06T7/00 612
G06N3/02
G06T7/00 350C
G06V10/82
A61B5/00 G
【請求項の数】 15
(21)【出願番号】P 2022508787
(86)(22)【出願日】2020-08-10
(65)【公表番号】
(43)【公表日】2022-10-17
(86)【国際出願番号】 US2020045624
(87)【国際公開番号】W WO2021030270
(87)【国際公開日】2021-02-18
【審査請求日】2023-06-23
(31)【優先権主張番号】62/886,199
(32)【優先日】2019-08-13
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】20305030.7
(32)【優先日】2020-01-16
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】504456798
【氏名又は名称】サノフイ
【氏名又は名称原語表記】SANOFI
(74)【代理人】
【識別番号】100127926
【弁理士】
【氏名又は名称】結田 純次
(74)【代理人】
【識別番号】100140132
【弁理士】
【氏名又は名称】竹林 則幸
(72)【発明者】
【氏名】イェーチィー・マー
(72)【発明者】
【氏名】ウェンヂィー・ツァオ
(72)【発明者】
【氏名】チィ・タン
【審査官】鈴木 圭一郎
(56)【参考文献】
【文献】特表2015-507470(JP,A)
【文献】国際公開第2018/156133(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06N 3/02
G06V 10/82
A61B 5/00
(57)【特許請求の範囲】
【請求項1】
データ処理システムであって:
コンピュータ実行可能命令を含むコンピュータ可読メモリと;
生体画像の1つまたはそれ以上の個別の生体組織構成要素を識別することによって化学物質に対する患者の1つまたはそれ以上の反応を予測するように訓練された、少なくとも1つの人工ニューラルネットワークを含む、実行可能なロジックを実行するように構成された少なくとも1つのプロセッサとを含み、ここで、該少なくとも1つのプロセッサは、コンピュータ実行可能命令を実行しているときに:
患者の生体画像を表す画像データを受信することと;
複数の画像タイルを表す画像タイルデータを生成することであって、複数の画像タイルの各画像タイルは生体画像の個別の部分を含むことと;
化学物質に対する患者の1つまたはそれ以上の反応を予測するために、人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、画像タイルデータを処理することとを含む動作を実行するように構成され、
画像タイルデータを処理することが;
画像タイルごとに、患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することと、
画像タイルごとに、その画像タイルの1つまたはそれ以上の識別された画素に、値を割り当てることと;
画像タイルごとに、その画像タイルの加重値を、割り当てることと;
画像タイルごとに、その画像タイルの加重値を用いて、その画像タイルの1つまたはそれ以上の識別された画素に割り当て値を加重することと;
集計加重値を生成するために、すべての画像タイルの加重値を集計することと;
集計加重値に基づいて、化学物質に対する患者の1つまたはそれ以上の反応を予測することとを含む、
前記データ処理システム。
【請求項2】
動作はさらに:
画像タイルごとに予備処理済み画像タイルを表す、予備処理済み画像タイルデータを生
成することを含み;
予備処理済み画像タイルデータを生成することは、画像タイルごとに、生物組織の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することと、生物組織の1つまたはそれ以上の位置を色正規化することとを含み;
人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して処理される画像タイルデータは、予備処理済み画像タイルデータを含む、請求項1に記載のデータ処理システム。
【請求項3】
生体画像の1つまたはそれ以上の個別の生体組織構成要素を識別することによって化学物質に対する患者の1つまたはそれ以上の反応を予測するように訓練された、少なくとも1つの人工ニューラルネットワークを含む、実行可能なロジックを実行する少なくとも1つのプロセッサによって行われる、方法であって:
患者の生体画像を表す画像データを受信することと;
複数の画像タイルを表す画像タイルデータを生成することであって、複数の画像タイルの各画像タイルは生体画像の個別の部分を含むことと;
化学物質に対する患者の1つまたはそれ以上の反応を予測するために、人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、画像タイルデータを処理することとを含み、
画像タイルデータを処理することが:
像タイルごとに、患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することと;
画像タイルごとに、その画像タイルの1つまたはそれ以上の識別された画素に、値を割り当てることと;
画像タイルごとに、その画像タイルの加重値を、割り当てることと;
画像タイルごとに、その画像タイルの加重値を用いて、その画像タイルの1つまたはそれ以上の識別された画素に割り当て値を加重することと;
集計加重値を生成するために、すべての画像タイルの加重値を集計することと;
集計加重値に基づいて、化学物質に対する患者の1つまたはそれ以上の反応を予測することとを含む、
前記方法。
【請求項4】
画像タイルごとに予備処理済み画像タイルを表す、予備処理済み画画像タイルデータを生成することをさらに含み;
予備処理済み画像タイルデータを生成することは、画像タイルごとに、生物組織の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することと、生物組織の1つまたはそれ以上の位置を色正規化することとを含み;
人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して処理される画像タイルデータは、予備処理済み画像タイルデータを含む、請求項に記載の方法。
【請求項5】
人工ニューラルネットワークは畳み込みニューラルネットワークを含む、請求項1または2に記載のデータ処理システムまたは請求項3または4に記載の方法。
【請求項6】
画像タイルごとに割り当てられる加重値は、その画像タイルの個別の生体組織構成要素の予測力に基づき、画像タイルの個別の生体組織構成要素の予測力は、人工ニューラルネットワークによって学習された患者の反応を予測するための画像タイルの個別の生体組織構成要素の有効性を表す、請求項1に記載のデータ処理システムまたは請求項に記載の方法。
【請求項7】
データ処理システムであって:
コンピュータ実行可能命令を含むコンピュータ可読メモリと;
生体画像の1つまたはそれ以上の個別の生体組織構成要素を識別することによって化学物質に対する患者の1つまたはそれ以上の反応を予測するように訓練された、少なくとも1つの人工ニューラルネットワークを含む、実行可能なロジックを実行するように構成された少なくとも1つのプロセッサとを含み、ここで、該少なくとも1つのプロセッサは、コンピュータ実行可能命令を実行しているときに:
患者の生体画像を表す画像データを受信することと;
患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表す1つまたはそれ以上の画素を識別することによって、化学物質に対する患者の1つまたはそれ以上の反応を予測するために、人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、画像データを処理することとを含む動作を実行するように構成され、画像データを処理することは
像データの第1の部分を選択することと;
第1の部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、第1の部分の1つまたはそれ以上の画素を識別するために第1の部分を処理することと;
1つまたはそれ以上の個別の生体組織構成要素と患者の反応との間の学習済み関連付けに基づいて、1つまたはそれ以上の個別の生体組織構成要素のそれぞれに関して値を割り当てることと;
割り当て値に基づいて、画像データの少なくとも1つの後続部分を選択することと;
少なくとも1つの後続部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、少なくとも1つの後続部分の1つまたはそれ以上の画素を識別するために少なくとも1つの後続部分を処理することと
第1の部分と少なくとも1つの後続部分と第1の部分に関する割り当て値の集計値を生成することと;
集計値と患者の反応との間の学習済み関連付けに基づいて、化学物質に対する患者の1つまたはそれ以上の反応を予測することとを含む、前記データ処理システム。
【請求項8】
生体画像は免疫組織化学画像を含む、請求項に記載のデータ処理システム。
【請求項9】
人工ニューラルネットワークはディープリカレントアテンションモデルを含む、請求項7または8に記載のデータ処理システム。
【請求項10】
動作はさらに:
予備処理済み生体画像を表す、予備処理済み画像データを生成することを含み;
予備処理済み画像データを生成することは、生物組織の1つまたはそれ以上の位置を表す生体画像の1つまたはそれ以上の画素を識別することと、生物組織の1つまたはそれ以上の位置を色正規化することとを含み;
人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して処理される画像データは、予備処理済み画像データを含む、請求項7~9のいずれか1項に記載のデータ処理システム。
【請求項11】
化学物質に対する患者の1つまたはそれ以上の反応は患者の腫瘍のサイズの減少を含む、請求項7~10のいずれか1項に記載のデータ処理システム。
【請求項12】
生体画像の1つまたはそれ以上の個別の生体組織構成要素を識別することによって化学物質に対する患者の1つまたはそれ以上の反応を予測するように訓練された、少なくとも1つの人工ニューラルネットワークを含む、実行可能なロジックを実行する、少なくとも1つのプロセッサによって行われる、方法であって:
患者の生体画像を表す画像データを受信することと;
患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表す1つまたはそれ以上
の画素を識別することによって、化学物質に対する患者の1つまたはそれ以上の反応を予測するために、人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、画像データを処理することとを含み、データを処理することは:
像データの第1の部分を選択することと;
第1の部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、第1の部分の1つまたはそれ以上の画素を識別するために第1の部分を処理することと
1つまたはそれ以上の個別の生体組織構成要素と患者の反応との間の学習済み関連付けに基づいて、1つまたはそれ以上の個別の生体組織構成要素のそれぞれに関して値を割り当てることと;
割り当て値に基づいて、画像データの少なくとも1つの後続部分を選択することと;
少なくとも1つの後続部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、少なくとも1つの後続部分の1つまたはそれ以上の画素を識別するために少なくとも1つの後続部分を処理することと;
第1の部分と少なくとも1つの後続部分と第1の部分に関する割り当て値の集計値を生成することと;
集計値と患者の反応との間の学習済み関連付けに基づいて、化学物質に対する患者の1つまたはそれ以上の反応を予測することとを含む、前記方法。
【請求項13】
生体画像は免疫組織化学画像及び/または人工ニューラルネットワークはディープリカレントアテンションモデルを含む、請求項12に記載の方法。
【請求項14】
予備処理済み生体画像を表す、予備処理済み画像データを生成することをさらに含み;
予備処理済み画像データを生成することは、生物組織の1つまたはそれ以上の位置を表す生体画像の1つまたはそれ以上の画素を識別することと、生物組織の1つまたはそれ以上の位置を色正規化することとを含み;
人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して処理される画像データは、予備処理済み画像データを含む、請求項12または13に記載の方法。
【請求項15】
化学物質に対する患者の1つまたはそれ以上の反応は患者の腫瘍のサイズの減少を含む、請求項12~14のいずれか1項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2020年1月16日出願の出願第EP20305030.7号および2019年8月13日出願の米国仮特許出願第62/886,199号の優先権を主張するものである。それらの開示は参照によって本明細書に組み入れる。
【0002】
本開示は、概して、医薬品などの化合物に対する患者の反応を予測する、システムおよび方法に関する。
【背景技術】
【0003】
医薬品の安全性および有効性に関するデータを収集するために、通常、治験が行われる。概して、こうした治験には、薬物を消費市場で販売できるかどうかを判定する1つまたはそれ以上の相を伴う。例えば、治験は相を3つ含むことがある。第1相では、吸収、代謝、排泄などを含む薬物の効果を判定するために、比較的少人数の有償ボランティア(例えば、20人から100人のボランティア)に対して薬物が試験される。この相は完了までに数か月かかることがあり、実験薬の約70%が第1相を通る。第2相では、1つまたはそれ以上の選択基準を満たす数百人の患者に対して実験薬が試験される。1つの群の患者が実験薬を受け、別の群はプラセボまたは標準的治療を受ける。実験薬の約3分の1が試験の第1相および第2相の両方を完了する。第3相の間は、薬物は数百人から数千人の(またはそれよりも多くの)患者に対して試験される。この相は、全ての相のうちで最もコストがかかる傾向があり、第3相に入る薬物の約70%がその相を首尾よく完了できる。
【発明の概要】
【課題を解決するための手段】
【0004】
本開示の少なくとも1つの態様では、データ処理システムが提供される。データ処理システムは、コンピュータ実行可能命令を含むコンピュータ可読メモリと;生体画像の1つまたはそれ以上の個別の生体組織構成要素を識別することによって化学物質に対する1つまたはそれ以上の反応を予測するように訓練された、少なくとも1つの人工ニューラルネットワークを含む、実行可能なロジックを実行するように構成された少なくとも1つのプロセッサとを含む。少なくとも1つのプロセッサは、コンピュータ実行可能命令を実行しているときに、1つまたはそれ以上の動作を実行するように構成される。1つまたはそれ以上の動作は、患者の生体画像を表す空間配置画像データを受信することを含む。1つまたはそれ以上の動作は、複数の画像タイルを表す空間配置画像タイルデータを生成することであって、複数の画像タイルの各画像タイルは生体画像の個別の部分を含むことを含む。1つまたはそれ以上の動作は、画像タイルごとに、患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することによって、患者の1つまたはそれ以上の反応を予測するために、人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、空間配置画像タイルデータを処理することを含む。
【0005】
1つまたはそれ以上の動作は、画像タイルごとに予備処理済み画像タイルを表す、予備処理済み空間配置画像タイルデータを生成することを含むことができる。予備処理済み空間配置画像タイルデータを生成することは、画像タイルごとに、生物組織の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することと、生物組織の1つまたはそれ以上の位置を色正規化することとを含むことができる。人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して処理される空間配置画像タイルデータは、予備処理済み空間配置画像タイルデータを含むことができる。
【0006】
人工ニューラルネットワークは畳み込みニューラルネットワークを含むことができる。
【0007】
患者の1つまたはそれ以上の反応を予測することは、画像タイルごとに、その画像タイルに関する加重値を割り当てることを含むことができる。画像タイルごとに割り当てられる加重値は、その画像タイルの個別の生体組織構成要素の予測力に基づくことができる。
【0008】
少なくとも1つの態様では、データ処理システムが提供される。データ処理システムは、コンピュータ実行可能命令を含むコンピュータ可読メモリを含む。データ処理システムは、生体画像の1つまたはそれ以上の個別の生体組織構成要素を識別することによって化学物質に対する1つまたはそれ以上の反応を予測するように訓練された、少なくとも1つの人工ニューラルネットワークを含む、実行可能なロジックを実行するように構成された少なくとも1つのプロセッサを含む。少なくとも1つのプロセッサは、コンピュータ実行可能命令を実行しているときに、1つまたはそれ以上の動作を実行するように構成される。1つまたはそれ以上の動作は、患者の生体画像を表す空間配置画像データを受信することを含む。1つまたはそれ以上の動作は、患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表す1つまたはそれ以上の画素を識別することによって、患者の1つまたはそれ以上の反応を予測するために、人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して空間配置画像データを処理することを含む。空間配置データを処理することは、空間配置画像データの第1の部分を選択することを含む。空間配置データを処理することは、第1の部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、第1の部分の1つまたはそれ以上の画素を識別するために第1の部分を処理することを含む。空間配置データを処理することは、空間配置画像データの少なくとも1つの後続部分を選択することを含む。空間配置データを処理することは、少なくとも1つの後続部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、少なくとも1つの後続部分の1つまたはそれ以上の画素を識別するために少なくとも1つの後続部分を処理することを含む。
【0009】
生体画像は免疫組織化学画像を含むことができる。人工ニューラルネットワークはディープリカレントアテンションモデルを含むことができる。1つまたはそれ以上の反応は、腫瘍のサイズの減少量を含むことができる。
【0010】
1つまたはそれ以上の動作は、予備処理済み生体画像を表す、予備処理済み空間配置画像データを生成することを含むことができる。予備処理済み空間配置画像データを生成することは、生物組織の1つまたはそれ以上の位置を表す生体画像の1つまたはそれ以上の画素を識別することと、生物組織の1つまたはそれ以上の位置を色正規化することとを含むことができる。人工ニューラルネットワークに含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して処理される空間配置画像データは、予備処理済み空間配置画像データを含むことができる。
【0011】
これらのおよび他の態様、構成、および実装形態は、機能を行うための方法、装置、システム、構成要素、プログラム製品、手段または工程として、および他の手法で表現することができる。
【0012】
本開示の実装形態は、以下の利点のうちの1つまたはそれ以上を提供することができる。画像処理技術および機械学習技術は、従来の技術と比較すると予測正解率が上昇し、計算効率が上昇し、かつ/または計算能力要件が低下するようにして、薬物に対する患者の反応を予測するために、画像データを処理するために使用することができる。従来の技術と比較すると、予測は変数の数の増加を考慮に入れることができ、そのことは予測の正解率を上昇させることができる。
【0013】
これらのおよび他の態様、構成、および実装形態は、特許請求の範囲を含む、以下の説明から明らかになる。
【図面の簡単な説明】
【0014】
図1】データ処理システムの一例を示す図である。
図2】データ処理システムの例示的アーキテクチャを示すフローダイアグラムである。
図3】データ処理システムの例示的アーキテクチャを示すフローダイアグラムである。
図4】化合物に対する患者の反応を予測するための例示的方法を示すフローチャートである。
図5】化合物に対する患者の反応を予測するための例示的方法を示すフローチャートである。
図6】本開示に記載するアルゴリズム、方法、機能、処理、フロー、および手順と関連付けられた、計算機能を提供するために使用される、例示的コンピュータシステムのブロック図である。
【発明を実施するための形態】
【0015】
所与の薬物を伴う治験の場合は、管理可能な副作用のある治療から利益を享受できる治療予定の患者を選択することは、特に、腫瘍など、生命に関わる疾患の分野で、重要な場合がある。医用イメージング技術の最近の発展によって、医用画像または生体画像(例えば、免疫組織化学画像)は、試験中の治療に対する患者の転帰を予測する際に有用な場合がある。しかし、従来の患者の転帰を予測する技術は、通常、比率スコアおよび組織化学スコア(「Hスコア」と称されることもある)など、生体画像からの特徴をごく少数しか抽出しない。その結果、患者の反応の予測正解率は20%~45%の範囲になる場合がある。さらに、所与の薬物に対する患者の反応を予測するために従来の機械学習技術を使用すると、生体画像のサイズが2ギガバイト(またはそれを超える)、次元が50,000画素×40,000画素(またはそれを超える)になる場合があるので、計算が不可能になる可能性がある。すなわち、このようなサイズの画像によって、機械学習モデルが数十億の(またはそれを超える)パラメータの推測を必要とする場合がある。
【0016】
本開示の実装形態は、前述の欠点の一部または全部を軽減するために使用できる、患者の反応を予測するためのシステムおよび方法を提供する。本開示で説明するシステムおよび方法は、従来技術と比べてより高い正解率で薬物に対する患者の反応を予測するために、より計算効率の高い手法で生体画像を表す画像データを処理できるように、画像処理技術および機械学習技術を実装することができる。いくつかの実装形態では、本開示で説明するシステムおよび方法は、患者の生体画像を受信し、画像タイルを生成することができ、ここで、各画像タイルは生体画像の個別の部分を表す。次いで、各画像タイルを表すデータは、例えば、生体画像に取り込まれた生物組織の位置を識別し、それら識別された位置を色正規化するために、予備処理することができる。次いで、予備処理済み画像データは人工ニューラルネットワーク(ANN)を用いて処理することができ、ANNは、所与の薬物に関する患者の反応を予測しているとANNが学習した、個別の組織構成要素の位置を画像タイルごとに識別することができる。すなわち、識別された個別の組織構成要素に基づいて、ANNは、患者の反応の予測に影響を及ぼす可能性のある画像から、より高いレベルの特徴を識別することができる。例えば、腫瘍巣を攻撃する目標たんぱく質を有効薬物成分が認識しない場合があるため、ANNは、腫瘍巣の膜上の目標たんぱく質の部分染色されたパターンを患者の反応の乏しさと関連付けるように学習することができる。患者の反応の例は、有効性反応(患者が癌薬物療法レジメンを受けたことによる癌性腫瘍のサイズの減少/変化など)、安全性の反応(患者が癌薬物療法レジメンを受けたことによる有害反応、毒性、および心血管系リスクなど)、または両方を含むことができる。
【0017】
個別の組織構成要素のそれぞれに、学習された予測力(例えば、ANNによって学習された患者の反応を予測する有効性)に基づいて値を割り当てることができ、反応を予測することは、全ての画像タイルに対応する割り当て値を集計することを含むことができる。いくつかの実装形態では、ANNは、画像全体を表す画像データを処理するために使用することができ、ここで、ANNは、1回に生体画像の1つの個別の部分(「パッチ」と称されることもある)を処理するように構成される。
【0018】
例えば、ANNは、従来の技術と比べるとより簡単に生物組織の位置を認識できるため、生体画像における生物組織の位置を色正規化することによって、生体画像データ処理の計算効率の上昇を促進することができる。さらに、ANNを使用して1回に医用画像データの1つの個別の部分(例えば、1回に1パッチまたは1回に1タイル)を処理することによって、従来の技術と比べて計算要件の懸念を軽減させることができる。
【0019】
以下の説明では、本開示の徹底した理解をもたらすために、具体的な詳細を説明の目的のために多数記載している。しかし、それら具体的な詳細なしに本開示を実施できることが明らかである。他の例では、本開示を無用に不明確にするのを避けるために、周知の構造およびデバイスがブロック図の形態で示されている。
【0020】
図面において、デバイス、モジュール、命令ブロックおよびデータ要素を表す図式要素など、図式要素の特定の配置または順序は、説明を簡単にするために示されている。しかし、当業者なら、図面中の図式要素の特定の順序または配置は、処理の特定の順序もしくはシーケンス、またはプロセスの分割が必要とされることを示唆するものではないことを理解されたい。さらに、図面に図式要素が含まれていても、このような要素が全ての実施形態で必要とされること、またはこのような要素によって表される構成がいくつかの実装形態において他の要素に含まれないことがあること、もしくは組み合わせられることを示唆するものではない。
【0021】
さらに、2つ以上の他の図式要素の間の接続、関係、または関連付けを示すために実線もしくは破線または矢印などの接続要素が用いられる図面において、このような接続要素が全くなくても、接続、関係、または関連付けが存在できないことを示唆するものではない。言い換えれば、要素間のいくつかの接続、関係、または関連付けは、本開示を不明確にしないために図面には示されていない。さらに、例示を簡単にするために、単一の接続要素を使用して、要素間の複数の接続、関係または関連付けを表す。例えば、接続要素が信号、データ、または命令の通信を表す場合は、このような要素が、通信に影響を及ぼすように、必要に応じて、1つまたは複数の信号経路(例えば、バス)を表すことを当業者なら理解されたい。
【0022】
ここで、実装形態を詳細に参照する。実装形態の例は添付の図面に例示される。以下の詳細な説明では、説明する様々な実装形態の徹底した理解をもたらすために、特定の詳細を多数記載している。しかし、それら具体的な詳細なしに説明する多数の実装形態を実施できることが当業者には明らかである。他の例では、実装形態の態様を無用に不明確にしないように、周知の方法、手順、構成要素、回路、およびネットワークは詳細には説明していない。
【0023】
本明細書で以下に、互いに独立にまたは他の構成と組み合わせてそれぞれ使用できるいくつかの構成を説明する。しかし、個々の構成はいずれも、上記で検討したどの課題にも対処しないことも、上記で検討した課題の1つだけに対処することもある。上記で検討した課題のいくつかは、本明細書で説明するどの構成によっても十分に対処されないことがある。見出しが付けられているが、特定の見出しに関係するデータは、その見出しを有するセクションでは見当たらず、本明細書の他の箇所で見当たる場合もある。
【0024】
図1はデータ処理システム100の一例を示す。概して、データ処理システムは、所与の化学物質(例えば、医薬品)に関する患者の反応(例えば、癌性腫瘍のサイズの減少)を予測するために、患者の生体画像を表す画像データを処理するように構成される。システム100はコンピュータプロセッサ110を含む。コンピュータプロセッサ110は、コンピュータ可読メモリ111およびコンピュータ可読命令112を含む。システム100は機械学習システム150も含む。機械学習システム150は機械学習モデル120を含む。機械学習モデル120は、コンピュータプロセッサ110とは別個のものとすることもでき、それに一体化することもできる。
【0025】
コンピュータ可読媒体111(またはコンピュータ可読メモリ)は、限定されるものではないが、半導体ベースのメモリデバイス、磁気メモリデバイスおよびシステム、光学メモリデバイスおよびシステム、固定メモリ、リムーバブルメモリ、ディスクメモリ、フラッシュメモリ、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、電気消去可能プログラマブル読出し専用メモリ(EEPROM)などを含む、ローカルな技術環境に適した任意のデータ記憶技術タイプを含むことができる。いくつかの実装形態では、コンピュータ可読媒体111は、実行可能な命令を有するコードセグメントを含む。
【0026】
いくつかの実装形態では、コンピュータプロセッサ110は、汎用プロセッサを含む。いくつかの実装形態では、コンピュータプロセッサ110は、中央処理装置(CPU)を含む。いくつかの実装形態では、コンピュータプロセッサ110は、少なくとも1つの特定用途向け集積回路(ASIC)を含む。コンピュータプロセッサ110は、汎用プログラマブルマイクロプロセッサ、グラフィック処理ユニット、専用プログラマブルマイクロプロセッサ、デジタルシグナルプロセッサ(DSP)、プログラマブルロジックアレイ(PLA)、フィールドプログラマブルゲートアレイ(FPGA)、専用電子回路など、またはそれらの組み合わせを含むこともできる。コンピュータプロセッサ110は、コンピュータ実行可能命令112などのプログラムコードを実行するように構成され、機械学習モデル120を含む実行可能なロジックを実行するように構成される。
【0027】
コンピュータプロセッサ110は、患者の医用画像を表す画像データを受信するように構成される。例えば、患者の医用画像は、生物組織で抗体が特に抗原に結合する原理を活用することによって、生物組織セクションの細胞のたんぱく質(例えば、抗原)を選択的に識別するプロセスを示す、免疫組織化学的染色の結果の画像とすることができる。画像データは、データベースとのワイヤレス通信、光ファイバー通信、USB、CD-ROMなど、様々な技術のいずれかによって取得することができる。
【0028】
いくつかの実装形態では、コンピュータプロセッサ110は、複数の画像タイルを表す画像タイルデータを生成するように構成され、ここで、各画像タイルは生体画像の個別の部分を含む。画像タイルデータの生成のより詳細な例は、図2を参照しながら以下で検討する。いくつかの実装形態では、コンピュータプロセッサ110は、画像データを機械学習モデル120に伝送する前に、画像データを予備処理するように構成される。いくつかの実装形態では、画像データを予備処理することは、生物組織に対応する画像データの1つまたはそれ以上の画素位置を識別することと、それら識別された位置を色正規化することとを含む。色正規化は、異なるカラースキームを標準的カラースキームに正規化するプロセスを意味することができ、より効率的な信号識別のために、取り込まれた生物組織/腫瘍と画像背景との間のコントラストを高めることができる。例えば、コンピュータプロセッサ110は、生物組織に対応する値(例えば、色値、光度値など)を有する画像データにおいて一定の画素位置を関連付け、それら画素位置を色正規化することができる。関連付けは、1つまたはそれ以上の機械学習技術(例えば、ベイジアン法、ニューラルネットワーク技術など)によって、予めプログラムするかまたは学習することができる。
【0029】
機械学習モデル120は、一定の薬物に対応する患者の反応を予測するために、(いくつかの実装形態では、コンピュータプロセッサ110によって予備処理された後に、画像タイルデータに変換された後に、またはその両方で)画像データを処理することができる。例えば、所与の癌薬物療法レジメンに関して、機械学習モデル120は、個別の生体組織構成要素を表す画像データの1つまたはそれ以上の画素位置を識別および分析することに基づいて、癌性腫瘍のサイズの減少量を予測することができる。いくつかの実装形態では、患者の反応を予測することは、患者の反応への個別の生体組織構成要素の学習された関連付けに基づいて、識別および分析された、個別の生体組織構成要素を表す1つまたはそれ以上の画素位置に値を割り当てることを含む。患者の反応の予測は、図2図5を参照しながら以下でより詳細に検討する。
【0030】
機械学習システム150は、機械学習モデル120を訓練するために機械学習技術を適用することができる。機械学習モデル120の訓練の一部として、機械学習システム150は、対象の特性を有すると判定された入力データアイテムのポジティブ訓練セットを識別することによって、入力データの訓練セットを形成し、一部の実施形態では、対象の特性を欠いた入力データアイテムのネガティブ訓練セットを形成する。
【0031】
機械学習システム150は、訓練セットの入力データから特徴量を抽出し、その特徴量は、関連付けられた1つまたは複数の特性を入力データアイテムが有するか否かに関係する可能性があると考えられる変数である。入力データに関する特徴の順序付きリストは、ここでは、入力データに関する特徴ベクトルと称される。一実施形態では、機械学習システム150は、入力データに関する特徴ベクトルのデータ量を減らして、より小さい、より代表的なセットのデータにするために、次元削減(例えば、線形判別分析(LDA)、主成分分析(PCA)などによる)を適用する。
【0032】
いくつかの実装形態では、機械学習システム150は、入力として働くポジティブ訓練セットおよびネガティブ訓練セットの特徴ベクトルを用いて、機械学習モデル120を訓練するために、教師あり機械学習を使用する。線形サポートベクターマシン(線形SVM)、他のアルゴリズムのためのブースティング(例えば、アダブースト)、ニューラルネットワーク、ロジスティック回帰、ナイーブベイズ、メモリベースの学習、ランダムフォレスト、バッグドツリー、決定木、ブーステッドツリー、またはブーステッドスタンプなど、異なる機械学習技術を異なる実施形態で使用することができる。機械学習モデル120は、入力データアイテムから抽出された特徴ベクトルに適用されるときは、はい/いいえのブール推定、または確率を表すスカラ値など、入力データアイテムが対象の特性を有するかどうかを示すインジケーションを出力する。
【0033】
一部の実施形態では、検証セットが、対象の特性を有するかまたは欠いているかを既に判定された訓練セットのもの以外の追加入力データから形成される。機械学習システム150は、機械学習モデル120の正解率を定量化するために、訓練済みの機械学習モデル120を検証セットのデータに適用する。正解率測定に適用される一般的精度指標は:適合率=TP/(TP+FP)および再現率=TP/(TP+FN)を含み、ここで、適合率とは、陽性と予測した総数(TP+FPすなわち偽陽性)のうち、機械学習モデルが正しく予測した数(TPすなわち真陽性)であり、再現率とは、対象の特性を有していた入力データアイテムの総数(TP+FNすなわち偽陰性)のうち、機械学習モデルが正しく予測した数(TP)である。F値(F値=2×PR/(P+R))は、適合率と再現率とを統合した単一の尺度である。一実施形態では、機械学習モジュールは、モデルが十分に正しいことを示す正解率測定インジケーションなどの停止条件が発生するまで、またはある回数の訓練ラウンドが行われるまで、機械学習モデルを反復して再訓練する。
【0034】
いくつかの実装形態では、機械学習モデル120は畳み込みニューラルネットワーク(CNN)である。CNNは、CNNへの入力が、複数の空間的位置で特徴を含む、画像または他のデータに関する画像画素データに対応するという仮定に基づいて、構成することができる。例えば、入力セットは、例示的デジタル画像(例えば、生物組織の生体画像)のカラー特徴を表す、テンソルなどの多次元データ構造を形成することができる。いくつかの実装形態では、CNNへの入力は、異なるデバイスおよび車両のセンサから得られるデータ、点群データ、複数の時間ステップのそれぞれにおいて一定の特徴もしくは生オーディオを含むオーディオデータ、または様々なタイプの1次元または多次元のデータなど、様々な他のタイプのデータに対応する。CNNの畳み込み層は、データ構造の入力によって表される画像の特徴を変換するために入力を処理することができる。例えば、入力は、データ構造の所与の次元に沿った入力データおよび畳み込み層のパラメータセットを用いてドット積演算を行うことによって処理される。
【0035】
畳み込み層に関して計算を行うことは、1つまたはそれ以上のカーネルセットをデータ構造の入力部分に適用することを含むことができる。CNNが計算を行う手法は、ディープニューラルネットの作業負荷をサポートする、例示的な多層ニューラルネットワークまたはディープニューラルネットワークの各層に関する特定の特性に基づくことができる。ディープニューラルネットワークは、他の計算層と一緒に1つまたはそれ以上の畳み込みタワー(または層)を含むことができる。具体的には、例えば、コンピュータビジョンアプリケーションでは、これら畳み込みタワーは、多くの場合、行われる推論演算の大部分を占める。CNNの畳み込み層は、幅次元、高さ次元、および深さ次元という3つの次元に配置される、人工ニューロンセットを有することができる。深さ次元は、入力ボリュームまたは活性化ボリュームの第3の次元に対応し、画像のそれぞれのカラーチャネルを表すことができる。例えば、入力画像は、データ(例えば、活性化)の入力ボリュームを形成することができ、ボリュームは、次元32×32×3(それぞれ幅、高さ、深さ)を有する。3つの深さ次元は、赤(R)、緑(G)、および青(B)のRGBカラーチャネルに対応することができる。
【0036】
概して、CNNの層は、3次元入力ボリューム(入力)を、ニューロン活性化(活性化)の多次元出力ボリュームに変換するように構成される。例えば、32×32×3の3D入力構造は、例示的画像の生画素値、この場合、3つのカラーチャネル、R、G、Bを有する幅32、高さ32の画像を保持する。機械学習モデル120のCNNの畳み込み層は、入力ボリュームのローカル領域に結合できるニューロンの出力を計算する。畳み込み層の各ニューロンは、空間的に入力ボリュームのローカル領域にだけであるが、入力ボリュームの全深さ(例えば、全てのカラーチャネル)に結合することができる。畳み込み層におけるニューロンのセットに関して、層は、ニューロンに関するパラメータ(重み)と、ニューロンが結合される入力ボリュームの一定の領域との間のドット積を計算する。この計算によって、ボリュームが32×32×12などになり、ここで、12は計算に使用されるカーネル数に対応する。領域の入力へのニューロンの結合は、入力ボリュームの深さに等しい、深さ軸に沿った空間範囲を有することができる。空間範囲は、カーネルの空間次元(例えば、x次元およびy次元)に対応する。
【0037】
カーネルのセットは、幅および高さを含み入力ボリュームの深さを通って延びる、空間的特徴部を有することができる。層に関するカーネルの各セットは、その層に提供される1つまたはそれ以上の入力セットに適用される。すなわち、カーネルごとにまたはカーネルのセットごとに、機械学習モデル120は、多次元的に表すことができる(例えば、入力ボリュームまたは入力テンソルを形成する)層入力の第1の部分に、多次元的に表すことができるカーネルを重ねることができる。例えば、CNNの第1の層に関するカーネルのセットは、サイズ5×5×3×16を有することができ、これは、カーネルが適用されている入力ボリュームのカラーチャネルに対応する、幅5画素、高さ5画素、深さ3、および、出力チャネルの数に対応する、出力次元16に対応する。ここでは、カーネルのセットは、畳み込みの出力の深さ次元が16になるように、16のカーネルを含む。
【0038】
次いで、機械学習モデル120は、重ねられた要素からドット積を計算することができる。例えば、機械学習モデル120は、入力ボリュームの幅および高さにわたって各カーネルを畳み込む(またはスライドする)ことができ、カーネルの全体と、画像の部分または領域の入力との間のドット積を計算することができる。畳み込み出力の各出力値は、カーネルと例示的入力テンソルからのいくつかの入力セットとの間の、ドット積の結果である。ドット積によって、単一の層の入力に対応する畳み込み出力を、例えば、重ねられた多次元空間の左上位置を有する活性化要素を生じることができる。上記で検討したように、畳み込み層のニューロンは、複数の入力を含む入力ボリュームの領域に結合することができる。機械学習モデル120は、入力ボリュームの各入力に対して各カーネルを畳み込むことができる。機械学習モデル120は、例えば、領域の各入力に対して各カーネルを移動(またはスライド)させることによって、この畳み込み動作を行うことができる。
【0039】
機械学習モデル120は、所与の畳み込み層に関するストライド値に基づいて、領域の入力に対して各カーネルを移動させることができる。例えば、ストライドが1に設定されると、次いで機械学習モデル120は、カーネルを領域上で1回に1画素(または入力)移動させることができる。同様に、ストライドが2のときは、機械学習モデル120は、カーネルを領域上で1回に2画素移動させることができる。このように、カーネルは、層のストライド値に基づいてシフトすることができ、機械学習モデル120は、領域に関する入力が対応するドット積を有するまで、このプロセスを繰り返し行うことができる。ストライド値にはスキップ値が関係する。スキップ値は、入力ボリュームの領域で、ニューラルネットワーク層で処理するために入力がロードされるときにスキップされる、1つまたはそれ以上の入力セット(2×2)を識別することができる。いくつかの実装形態では、画像の画素の入力ボリュームは、例えば画像の枠領域の周囲に、ゼロで「パディング」することができる。このゼロパディングは、出力ボリュームの空間的サイズを制御するために使用される。
【0040】
上記で検討したように、CNNの畳み込み層は、ニューロン活性化の3次元入力ボリューム(領域の入力)を多次元出力ボリュームに変換するように構成される。例えば、入力ボリュームの幅および高さに対してカーネルが畳み込まれると、機械学習モデル120は、ストライド値に基づいて1つまたはそれ以上の空間的配置でカーネルを畳み込む結果を含む、多次元活性化マップを作ることができる。いくつかの事例では、ストライド値を大きくすると、空間的により小さい活性化出力ボリュームが作られる。いくつかの実装形態では、CNNの後続の層に出力が送信される前に、活性化を畳み込みの出力に適用することができる。
【0041】
例示的畳み込み層は、層の特性を表す、層に関する1つまたはそれ以上の制御パラメータを有することができる。例えば、制御パラメータは、カーネル数K、カーネルの空間範囲F、ストライド(またはスキップ)S、およびゼロパディングの量Pを含むことができる。これらパラメータの数値、層への入力、および層に関するカーネルのパラメータ値は、層で起こる計算および層に関する出力ボリュームのサイズを作る。いくつかの実装形態では、出力ボリュームの空間的サイズは、数式(W-F+2P)/S+1を用いて、入力ボリュームサイズWの関数として計算される。例えば、入力テンソルは、サイズ[227×227×3]の画素入力ボリュームを表すことができる。CNNの畳み込み層は、空間範囲の値F=11、ストライド値S=4、ゼロパディングなし(P=0)を有することができる。上記の数式および層カーネル量K=96を用いて、機械学習モデル120は層に関する計算を行い、その結果、畳み込み層の出力ボリュームのサイズが[55×55×96]になり、ここで、55は[(227-11+0)/4+1=55]から得られる。
【0042】
CNNの畳み込み層または他の層に関する計算(例えば、ドット積計算)は、機械学習モデル120のハードウェア回路の計算ユニットを用いた、数学演算、例えば、乗算および加算を行うことを伴う。ハードウェア回路の設計によって、ニューラルネットワークの層に関して計算を行うときに、回路のコンピューティングセルを十分に利用する能力にシステムを限定することができる。CNNを含む機械学習モデル120を有する、システム100のアーキテクチャのより詳細な例は、図2を参照しながら以下で検討する。
【0043】
いくつかの実装形態では、機械学習モデル120は、リカレントアテンションモデル(RAM)を含む。RAMは、生体画像データを順次処理して、生体画像の動的表現を構築することができる。例えば、時間ステップ(t)のそれぞれにおいて、RAMは、画像の個別の部分を指す画像のパッチにおいて所与の位置に選択的に集中することができる。次いで、RAMは、パッチから特徴を抽出し、その内部状態を更新し、集中すべき次のパッチを選ぶことができる。このプロセスは、固定数のステップの間に繰り返すことができ、その間に、RAMは、抽出された特徴を一貫して増加的に組み合わせることができる。RAMの概略的なアーキテクチャは、いくつかの多層ニューラルネットワークによって定義することができ、ここで、多層ニューラルネットワークはそれぞれ、一部の入力ベクトルを出力ベクトルにマッピングすることができる。RAMを含む機械学習モデル120を有するシステム100のアーキテクチャのより詳細な例は、図3を参照しながら以下で検討する。
【0044】
本明細書は、概して、患者をヒトの患者として説明するが、実装形態はそのようには限定されない。例えば、患者とは、ヒト以外の動物、植物、またはヒト模倣システムを指すことができる。
【0045】
図2は、データ処理システム200のアーキテクチャを示すフローダイアグラムである。データ処理システム200は、図1を参照しながら上記で検討したデータ処理システム100と実質的に同様とすることができる。データ処理システム200は、画像タイル生成モジュール220、予備処理モジュール230、フィードバックモジュール240、および機械学習システム250を含む。モジュール220、230、240は、例えば、図1を参照しながら上記で検討したデータ処理システム100のコンピュータプロセッサ110によって実行することができる。
【0046】
画像タイル生成モジュール220は、生体画像210を表す画像データを受信し、生体画像210の複数の画像タイル210aを表す画像タイルデータを生成することができる。図示のように、複数の画像タイル210aのそれぞれは、生体画像210の個別の部分を含む。図示の実装形態は6枚の画像タイル210aを示すが、画像タイルの数は6よりも多くても少なくてもよく、その数は、計算効率、計算能力、および計算確度の熟慮に基づいて選択することができる。例えば、各画像のタイル数は、(例えば、癌患者からの生検標本の免疫組織化学画像に見られるような)医用画像の不均質性によって、数枚のタイルから数千枚のタイルまで変わることがある。画像タイル210aのそれぞれを表す画像タイルデータは、予備処理モジュール230に伝送される。画像タイルごとに、予備処理モジュール230は、図1を参照しながら上記で検討したように、生物組織に対応する画像タイルデータの1つまたはそれ以上の画素位置を識別し、識別された位置を色正規化することによって、予備処理済み画像タイルデータを生成することができる。
【0047】
予備処理済み画像タイルデータは、機械学習システム250に伝送される。図示のように、予備処理済み画像タイルデータは、順次、機械学習システム250に伝送され、画像タイルの全部(または一部)に対応する予備処理済み画像タイルデータが機械学習システム250によって受信されるまで、第1の画像タイルに対応する予備処理済み画像タイルデータが第1の時間に機械学習システム250に伝送され、第2の画像タイルに対応する予備処理済み画像タイルデータが第2の時間に機械学習システム250に伝送され、以下同様である。
【0048】
図示の実装形態では、機械学習システム250はCNNを含む。機械学習システム250は、画像タイルごとに、所与の薬物に対する患者の転帰を予測している1つまたはそれ以上の個別の組織構成要素を表す、予備処理済み画像タイルデータの1つまたはそれ以上の画素位置を識別することができる。機械学習システム250は、1つまたはそれ以上の画素位置に値を割り当てることができ、割り当て値は、識別された個別の組織構成要素の学習済み予測有効性に基づいて加重することができる。機械学習システム250は、全部の画像タイル210aにわたって、加重された値を集計(例えば、加重された値を合計、加重された値を平均など)して、集計重み値を生成し、その集計重み値に基づいて患者の反応(癌性腫瘍の減少量など)を予測することができる。例えば、機械学習システム250は、集計重み値と患者の反応と間の学習済み関連付けに基づいて、患者の転帰を予測することができる。予測された患者の反応は、フィードバックモジュール240に伝送することができ、フィードバックモジュール240は、予測される患者の反応を観察される患者の反応(例えば、観察される実験結果)と比較することができ、その比較に基づいて誤差値を生成することができる。誤差値は、機械学習システム150に伝送することができ、機械学習システムは、その重みを更新し、誤差値に従ってバイアスをかけることができる。いくつかの実装形態では、フィードバックモジュール240は予測した転帰を検証するために交差検証技術を使用する。例えば、薬物開発の早期の段階では、データセット全体が医用画像を有する少数の患者の場合がある。このような小さいデータセットに適用されたモデルの頑強性を評価するために、統計的方法である交差検証を利用することができる。k分割交差検証のプロセスでは、例えば、データセット全体を、k個のほぼ等しいサイズのサブセットにランダムにセグメント化できる。1つのサブセットが検証データセットとして保持され、残りが訓練セットとして使用されるたびに、モデルが当てはめられ、テストセットにおけるそのパフォーマンスを記録することができる。次いで、異なるサブセットが検証セットとして保持され、新たなモデルが残りのサブセットで訓練される。最終結果として、全てのサブセットが検証セットとして働くことができ、全てのk分割検証の予測結果が集計されて、とりわけ、適合率精度指標、再現精度指標が取得される。これらの集計結果は、方法の頑強性のより正確な尺度を提供することができる。
【0049】
画像タイル生成モジュール220、予備処理モジュール230、およびフィードバックモジュール240を含む特定のモジュールが、本明細書で説明する技術の一定の態様を実行するものとして説明されているが、いくつかの実装形態では、それら技術の一部または全部を追加の、より少ない、または代替のモジュールによって実行することができる。
【0050】
図3は、データ処理システム300の例示的アーキテクチャを示すフローダイアグラムである。データ処理システム300は、予備処理モジュール330、フィードバックモジュール340、機械学習システム350を含む。
【0051】
予備処理モジュール330は、生体画像310を表す画像データを受信するように構成される。いくつかの実装形態では、予備処理モジュール330は、図2を参照しながら上記で検討した、データ処理システム200の予備処理モジュール230と実質的に同様である。したがって、予備処理モジュール330は、生物組織を表す画像データにおける1つまたはそれ以上の画素位置を識別することができ、予備処理済み画像データを生成するために、識別された1つまたはそれ以上の画素位置を色正規化することができる。次いで、予備処理済み画像データは、機械学習システム350に伝送することができる。
【0052】
機械学習システム350は、所与の薬物に対する患者の反応を予測するために、予備処理済み画像データを処理することができる。図示の実装形態では、機械学習システム350はRAM350を含む。RAM350は、パッチモジュール351、特徴抽出モジュール352、位置モジュール353、および予測モジュール354を含む。
【0053】
いくつかの実装形態では、パッチモジュール351は、1つまたはそれ以上の畳み込み層(例えば、3つの畳み込み層)を含む。いくつかの実装形態では、パッチモジュール351は、1つまたはそれ以上の最大プーリング層を含み、最大プーリング層は、サンプルベースの離散化プロセスを行うことができる層を指す。いくつかの実装形態では、パッチモジュール351は、1つまたはそれ以上の全結合層を含む。いくつかの実装形態では、パッチモジュール351は、一連の順次的時間ステップのそれぞれで、対応するパッチの位置データを受信する。上記で検討したように、パッチは画像310の個別の部分に対応する。パッチモジュール351は、位置データに対応する各パッチを表すパッチデータを生成する。例えば、図示のように、パッチモジュール351は、第1の時間ステップの間に第1のパッチ310aを生成する。いくつかの実装形態では、パッチモジュール351は、第1のパッチ310aに関する第1の位置をランダムに選ぶ。いくつかの実装形態では、パッチモジュール351は、第1のパッチ310aに関する第1の位置として画像310の中央を選ぶ。
【0054】
第1のパッチ310aに対応するパッチデータは、特徴抽出モジュール352によって受信される。特徴抽出モジュール352は、患者の1つまたはそれ以上の個別の組織構成要素に対応する、第1のパッチ310aの1つまたはそれ以上の画素位置を識別することができ、1つまたはそれ以上の個別の組織構成要素と患者の反応との間の学習済み関連付けに基づいて、1つまたはそれ以上の個別の組織構成要素のそれぞれに関して値を割り当てることができる。いくつかの実装形態では、特徴抽出モジュール352は、2つ以上のスタック型長短期記憶ユニットを含み、それらユニットは、単一のデータポイント(画像など)およびデータの配列全体(音声またはビデオなど)を処理するフィードバック結合を含むニューラルネットワークアーキテクチャを表す。
【0055】
位置モジュール353は、割り当て値を受信し、割り当て値に基づいて次のパッチ位置を決定する。次のパッチ位置は、強化学習のプロセスを通して位置モジュール353が学習した、最適化されたプロトコルに基づいて決定することができ、ここで、異なるプロトコルを評価することができ、最適なプロトコルを決定することができ、そのプロトコルは、現在のパッチの位置、以前のパッチから抽出された情報、および一部が予測正解率に対応できる報酬関数を最大化することを鑑みて、次のパッチに関する位置を割り当てる。位置モジュール353は、処理予定の次のパッチの位置を示す位置データを生成する。
【0056】
パッチモジュール351は、位置モジュール353によって生成される位置データを受信し、処理予定の第2のパッチ310bを表すパッチデータを生成する。パッチを処理して次の位置を選ぶ、前述のプロセスは、最終パッチ310cが特徴抽出モジュール352を通して処理されるまで続く。各割り当て値は予測モジュール354に伝送される。全てのパッチに対応する割り当て値が予測モジュール354によって受信されると、予測モジュール354は、集計値を生成することおよび集計値と患者の反応との間の学習済み関連付けに基づいて患者の反応を予測することによって、所与の薬物に対する患者の反応を予測する。予測される患者の反応を表すデータはフィードバックモジュール340に伝送され、フィードバックモジュール340は、予測される患者の転帰を観察される転帰と比較し、誤差値を生成する。誤差値を表すデータは、機械学習システム350に伝送され、機械学習システム350は、その重みを更新し、それに従ってバイアスする。いくつかの実装形態では、フィードバックモジュール340は、図2を参照しながら上記で検討したように、予測した転帰を検証するために交差検証技術を使用する。
【0057】
予備処理モジュール330、パッチモジュール351、特徴抽出モジュール352、位置モジュール353、予測モジュール354、およびフィードバックモジュール340を含む特定のモジュールが、本明細書で説明する技術の一定の態様を実行するものとして説明されているが、いくつかの実装形態では、その技術の一部または全部を、追加の、より少ない、または代替のモジュールによって実行してもよい。
【0058】
図4は、化合物に対する患者の反応を予測するための例示的方法400を示すフローチャートである。例示のために、方法400は、図1を参照しながら上記で検討したデータ処理システム100によって行われるものとして説明されている。方法400は、空間配置画像データを受信すること(ブロック410)と、空間配置画像タイルデータを生成すること(ブロック420)と、空間配置画像タイルデータを処理すること(ブロック430)とを含む。
【0059】
ブロック410で、コンピュータプロセッサ110は、患者の生体画像を表す空間配置画像データを受信する。例えば、図1を参照しながら上記で検討したように、生体画像は、患者の生物組織の免疫組織化学画像とすることができる。
【0060】
ブロック420で、コンピュータプロセッサ110は、画像の画像タイルを表す空間配置画像タイルデータを生成する。例えば、図1図2を参照しながら上記で検討したように、各画像タイルは画像の個別の部分を含むことができる。
【0061】
ブロック430で、機械学習モデル120は、画像タイルごとに、患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表すその画像タイルの1つまたはそれ以上の画素を識別することによって、患者の1つまたはそれ以上の反応を予測するために、機械学習モデル120に含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、空間配置画像タイルデータを処理する。いくつかの実装形態では、機械学習モデル120は、個別の生体組織構成要素の識別された各位置に値を割り当てることができる。値は、例えば、識別される個別の生体組織構成要素の学習される予測力に基づいて加重することができる。全ての画像タイルに対応する値は、集計値を生成するために集計する(例えば、合計する、平均するなど)ことができ、その値は反応を予測するために使用することができる。反応は、薬物などの特定の化合物に対する反応とすることができる。例えば、反応は、患者が癌薬物療法レジメンを受けたことによる、癌性腫瘍のサイズの減少量とすることができる。
【0062】
図1図2を参照しながら上記で示したように、機械学習モデル120によって処理される前に、コンピュータプロセッサ110は、予備処理済み画像タイルデータを生成することができる。予備処理済み画像タイルデータでは、画像タイルごとに、コンピュータプロセッサ110は、生物組織を表す対応する画像タイルデータの1つまたはそれ以上の画素を識別することができ、識別された1つまたはそれ以上の画素を色正規化することができる。
【0063】
図5は、化合物に対する患者の反応を予測するための例示的方法500を示すフローチャートである。例示のために、方法500は、図1を参照しながら上記で検討したシステム100によって行われるものとして説明されている。方法500は、空間配置画像データを受信すること(ブロック510)と、空間配置画像データを処理すること(ブロック520)とを含む。
【0064】
ブロック510で、コンピュータプロセッサ110は、患者の生体画像を表す空間配置画像データを受信する。例えば、図1を参照しながら上記で検討したように、生体画像は、患者の生物組織の免疫組織化学画像とすることができる。
【0065】
ブロック520で、機械学習モデル120は、患者の個別の生体組織構成要素の1つまたはそれ以上の位置を表す1つまたはそれ以上の画素を識別することによって、患者の1つまたはそれ以上の反応を予測するために、機械学習モデル120に含まれる実行可能なロジックの1つまたはそれ以上の部分を記憶する1つまたはそれ以上のデータ構造を通して、空間配置画像データを処理する。いくつかの実装形態では、空間配置画像データを処理することは、空間配置画像データの第1の部分(例えば、図3を参照しながら上記で説明したような第1のパッチ)を選択することと、図3を参照しながら上記で検討したように、第1の部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、第1の部分の1つまたはそれ以上の画素を識別するために第1の部分を処理することとを含む。いくつかの実装形態では、空間配置画像データを処理することは、空間配置画像データの少なくとも1つの後続部分(例えば、図3を参照しながら上記で説明したような第2のパッチ)を選択することと、図3を参照しながら上記で検討したように、少なくとも1つの後続部分に対応する個別の生体組織構成要素の1つまたはそれ以上の位置を表す、少なくとも1つの後続部分の1つまたはそれ以上の画素を識別するために少なくとも1つの後続部分を処理することとを含む。
【0066】
いくつかの実装形態では、機械学習モデル120は、パッチごとに、個別の生体組織構成要素の識別された各位置に値を割り当てることができる。その値は、例えば、個別の生体組織構成要素の学習される予測力に基づいて、加重することができる。全てのパッチに対応する値は、集計(例えば、合計、平均など)して集計値を生成することができ、その値を用いて反応を予測することができる。反応は、薬物などの特定の化合物に対する反応とすることができる。例えば、反応は、患者が癌薬物療法レジメンを受けたことによる、癌性腫瘍のサイズの減少量とすることができる。
【0067】
図6は、本開示のいくつかの実装形態による、(図2を参照しながら上記で説明したシステム200および図3を参照しながら上記で説明したシステム300など)本開示に記載するアルゴリズム、方法、機能、処理、フロー、および手順と関連付けられた、計算機能を提供するために使用される、例示的コンピュータシステム600のブロック図である。例示したコンピュータ602は、サーバ、デスクトップコンピュータ、ラップトップ/ノートブックコンピュータ、ワイヤレスデータポート、スマートフォン、パーソナルデータアシスタント(PDA)、タブレット型コンピューティングデバイス、または物理インスタンス、仮想インスタンス、もしくはその両方を含むそれらデバイス内の1つもしくはそれ以上のプロセッサなどを含む、任意のコンピューティングデバイスに包含されることが意図されている。コンピュータ602は、ユーザ情報を受け取ることができるキーパッド、キーボード、およびタッチスクリーンなどの入力デバイスを含むことができる。また、コンピュータ602は、コンピュータ602の動作と関連付けられた情報を伝達できる出力デバイスを含むことができる。情報は、デジタルデータ、ビジュアルデータ、オーディオ情報、または情報の組み合わせを含むことができる。情報は、グラフィカルユーザインターフェース(UI)(すなわちGUI)で表示することができる。
【0068】
コンピュータ602は、本開示で説明する主題を行うための、クライアント、ネットワーク構成要素、サーバ、データベース、持続性、またはコンピュータシステムの構成要素として役割を果たすことができる。例示したコンピュータ602は、ネットワーク630と通信可能なように接続される。いくつかの実装形態では、コンピュータ602の1つまたはそれ以上の構成要素は、クラウドコンピューティングベースの環境、ローカル環境、グローバル環境、および環境の組み合わせを含む、様々な環境内で動作するように構成することができる。
【0069】
高いレベルでは、コンピュータ602は、説明する主題と関連付けられたデータおよび情報を受信、伝送、処理、記憶、および管理するように動作可能な、電子コンピューティングデバイスである。いくつかの実装形態によれば、コンピュータ602は、アプリケーションサーバ、Eメールサーバ、ウェブサーバ、キャッシングサーバ、ストリーミングデータサーバ、またはサーバの組み合わせを含むかまたはそれと通信可能なように接続することもできる。
【0070】
コンピュータ602は、(例えば、別のコンピュータ602で実行する)クライアントアプリケーションからネットワーク630を介してリクエストを受信することができる。コンピュータ602は、受信したリクエストを、ソフトウェアアプリケーションを用いて処理することによって、受診したリクエストに応答することができる。リクエストは、内部ユーザ(例えば、コマンドコンソールから)、外部(またはサード)パーティ、自動化アプリケーション、エンティティ、個人、システム、およびコンピュータから、コンピュータ602に送信することもできる。
【0071】
コンピュータ602の構成要素のそれぞれは、システムバス603を用いて通信することができる。いくつかの実装形態では、ハードウェアまたはソフトウェア構成要素を含む、コンピュータ602の構成要素のいずれかまたは全部は、システムバス603を介して、互いにまたはインターフェース604(または両者の組み合わせ)とインターフェースすることができる。インターフェースは、アプリケーションプログラミングインターフェース(API)612、サービス層613、またはAPI612とサービス層613との組み合わせを使用することができる。API612は、ルーチン、データ構造、およびオブジェクトクラスのための仕様を含むことができる。API612は、コンピュータ言語依存または非依存とすることができる。API612は、完全インターフェース、シングルファンクション、または1セットのAPIを指すことができる。
【0072】
サービス層613は、コンピュータ602およびコンピュータ602に通信可能なように接続される他の構成要素に(例示されているか否かにかかわらず)、ソフトウェアサービスを提供することができる。コンピュータ602の機能は、このサービス層を用いる全てのサービス消費者にとってアクセス可能とすることができる。サービス層613によって提供されるようなソフトウェアサービスは、定義されたインターフェースを通して再使用可能な定義された機能を提供することができる。例えば、インターフェースは、JAVA、C++、または拡張可能なマーク付け言語(XML)フォーマットでデータを提供する言語で書かれたソフトウェアとすることができる。コンピュータ602の一体化された構成要素として例示されているが、代替の実装形態では、API612またはサービス層613は、コンピュータ602の他の構成要素およびコンピュータ602に通信可能なように接続される他の構成要素に関係する、独立型の構成要素とすることができる。さらに、API612またはサービス層613のいずれかまたは全ての部材は、本開示の範囲から逸脱することなく、別のソフトウェアモジュール、エンタープライズアプリケーション、またはハードウェアモジュールの子モジュールまたはサブモジュールとして実装することができる。
【0073】
コンピュータ602はインターフェース604を含む。図6には単一のインターフェース604を例示しているが、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って、2つ以上のインターフェース604を使用することができる。インターフェース604は、分散環境でネットワーク630(例示されているか否かにかかわらず)に接続された他のシステムと通信するために、コンピュータ602によって使用することができる。概して、インターフェース604は、ネットワーク630と通信するために動作可能なソフトウェアまたはハードウェア(またはソフトウェアおよびハードウェアの組み合わせ)で符号化されたロジックを含むかまたはそれを用いて実装することができる。より詳細には、インターフェース604は、通信と関連付けられた1つまたはそれ以上の通信プロトコルをサポートするソフトウェアを含むことができる。したがって、ネットワーク630またはインターフェースのハードウェアは、例示したコンピュータ602内でおよびその外側で物理信号を伝達するように動作可能にすることができる。
【0074】
コンピュータ602はプロセッサ605を含む。図6では単一のプロセッサ605として示しているが、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って、2つ以上のプロセッサ605を使用することができる。概して、プロセッサ605は、本開示で説明するアルゴリズム、方法、機能、処理、フロー、および手順を用いる動作を含むコンピュータ602の動作を行うために、命令を実行することができ、データを操作することができる。
【0075】
コンピュータ602は、ネットワーク630(例示されているか否かにかかわらず)に接続された、コンピュータ602および他の構成要素のために、データを保持できるデータベース606も含む。例えば、データベース606は、本開示と一致するデータを記憶する、インメモリ、従来の、または別のデータベースとすることができる。いくつかの実装形態では、データベース606は、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って、2つ以上の異なるデータベースタイプ(例えば、ハイブリッドインメモリデータベースおよび従来のデータベース)の組み合わせとすることができる。図6で単一のデータベース606として例示しているが、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って、(同じ、異なる、またはタイプの組み合わせの)2つ以上のデータベースを使用することができる。データベース606はコンピュータ602の内部構成要素として例示しているが、代替の実装形態では、データベース606はコンピュータ602の外部にあるものとすることができる。
【0076】
コンピュータ602は、ネットワーク630(例示されているか否かにかかわらず)に接続された、コンピュータ602または構成要素の組み合わせのために、データを保持できるメモリ607も含む。メモリ607は、本開示と一致する任意のデータを記憶することができる。いくつかの実装形態では、メモリ607は、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って、2つ以上の異なるタイプのメモリの組み合わせ(例えば、半導体と磁気記憶装置との組み合わせ)とすることができる。図6で単一のメモリ607として例示しているが、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って、(同じ、異なる、またはタイプの組み合わせの)2つ以上のメモリ607を使用することができる。メモリ607はコンピュータ602の内部構成要素として例示しているが、代替の実装形態では、メモリ607はコンピュータ602の外部にあるものとすることができる。
【0077】
アプリケーション608は、コンピュータ602の特定のニーズ、要望、または特定の実装形態および説明した機能に従って機能を提供するアルゴリズムソフトウェアエンジンとすることができる。例えば、アプリケーション608は、1つまたはそれ以上の構成要素、モジュール、またはアプリケーションとして働くことができる。さらに、単一のアプリケーション608として例示しているが、アプリケーション608は、複数のアプリケーション608としてコンピュータ602に実装することができる。さらに、コンピュータ602の内部にあるものとして例示しているが、代替の実装形態では、アプリケーション608は、コンピュータ602の外部にあるものとすることができる。
【0078】
コンピュータ602は電源614を含むこともできる。電源614は、ユーザ交換可能または不可能になるように構成できる充電式または非充電式のバッテリを含むことができる。いくつかの実装形態では、電源614は、充電、スタンバイ、および電力管理の機能を含む、電力変換回路および管理回路を含むことができる。いくつかの実装形態では、電源614は、例えば、コンピュータ602に電力供給するかまたは充電式バッテリを充電するために、コンピュータ602を壁のソケットまたは電力源に差し込むことを可能にする電源プラグを含むことができる。
【0079】
任意の数のコンピュータ602が、コンピュータ602を包含するコンピュータシステムと関連付けられるかまたはその外部にあり、各コンピュータ602がネットワーク630を介して通信することができる。さらに、用語「クライアント」、「ユーザ」、および他の適切な用語は、本開示の範囲から逸脱することなく、必要に応じて互いに交換可能に使用することができる。さらに、本開示は、多数のユーザが1つのコンピュータ602を使用できること、および1人のユーザが複数のコンピュータ602を使用できること企図する。
【0080】
本明細書で説明する主題および機能動作の実装形態は、本明細書で開示される構造およびそれらの構造上の等価物を含む、デジタル電子回路で、有形に具体化されるコンピュータソフトウェアもしくはファームウェアで、コンピュータハードウェアで、またはそれらの1つまたはそれ以上の組み合わせで実装することができる。説明した主題のソフトウェア実装形態は、1つまたはそれ以上のコンピュータプログラムとして実装することができる。各コンピュータプログラムは、データ処理装置による実行のためにまたはその動作を制御するために、有形の非一時的なコンピュータ可読のコンピュータ記憶媒体で符号化される、コンピュータプログラム命令の1つまたはそれ以上のモジュールを含むことができる。その代わりに、またはそれに加えて、プログラム命令は、人工的に生成された伝搬信号内/上に符号化することができる。例えば、信号は、データ処理装置による実行のための適切な受信装置に伝送するために情報を符号化するように生成される、マシン生成の電気信号、光信号、または電磁信号とすることができる。コンピュータ記憶媒体は、マシン可読記憶デバイス、マシン可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはコンピュータ記憶媒体の組み合わせとすることができる。
【0081】
用語「データ処理装置」、「コンピュータ」、および「電子コンピュータデバイス」(または当業者によって理解される等価物)はデータ処理ハードウェアを指す。例えば、データ処理装置が、一例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサまたはコンピュータを含む、全ての種類の、データを処理するための装置、デバイス、およびマシンを包含することができる。装置は、例えば、中央処理装置(CPU)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)を含む、専用論理回路を含むこともできる。いくつかの実装形態では、データ処理装置または専用論理回路(またはデータ処理装置もしくは専用論理回路の組み合わせ)は、ハードウェアベースまたはソフトウェアベースのもの(またはハードウェアベースとソフトウェアベースの両方の組み合わせ)とすることができる。装置は、場合により、コンピュータプログラムのための実行環境を生み出すコード、例えば、プロセッサファームウェア、プロトコルスタック、データベースマネージメントシステム、オペレーティングシステム、または実行環境の組み合わせを構成するコードを含むことができる。本開示は、従来のオペレーティングシステム、例えば、LINUX、UNIX、WINDOWS、MAC OS、ANDROID、またはIOSを有するかまたは有しない、データ処理装置の使用を企図する。
【0082】
プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコード、と呼ぶかまたはそれらとして説明することもできる、コンピュータプログラムは、任意の形態のプログラミング言語で書くことができる。プログラミング言語は、例えば、コンパイラ型言語、インタープリタ型言語、宣言型言語、または手続き型言語を含むことができる。プログラムは、独立型プログラムとして、コンピューティング環境で使用するためのモジュール、構成要素、サブルーチン、またはユニットを含む、任意の形態で展開することができる。コンピュータプログラムは、必ずしもその必要はないが、ファイルシステム内のファイルに対応することができる。プログラムは、他のプログラムまたはデータ、例えば、マークアップ言語ドキュメントに、対象のプログラム専用の単一ファイルに、または1つもしくはそれ以上のモジュール、サブプログラム、もしくはコードの一部を記憶する複数の座標ファイルに記憶される、1つまたはそれ以上のスクリプトを保持するファイルの一部に記憶することができる。コンピュータプログラムは、1つのコンピュータまたは複数のコンピュータで実行するために展開することができ、複数のコンピュータは、例えば、1つのサイトに配置されるか、または、通信ネットワークによって相互接続される複数サイトにわたって分散される。様々な図で例示するプログラムの一部は、様々なオブジェクト、方法、または処理によって様々な構成および機能を実装する個々のモジュールとして示されることがあるが、プログラムは、その代わりに、いくつかのサブモジュール、サードパーティサービス、構成要素、およびライブラリを含むことができる。逆に、様々な構成要素の構成および機能は、必要に応じて組み合わせて単一の構成要素にすることができる。計算による決定を行うために使用される閾値は、静的に、動的に、または静的かつ動的に決定することができる。
【0083】
本明細書で説明する方法、処理、またはロジックフローは、入力データを操作し出力を生成することによって機能を行うように、1つまたはそれ以上のコンピュータプログラムを実行する1つまたはそれ以上のプログラマブルコンピュータによって行うことができる。方法、処理、またはロジックフローは、専用論理回路、例えば、CPU、FPGA、またはASICによって行うこともでき、装置はその専用論理回路として実装することもできる。
【0084】
コンピュータプログラムの実行に適したコンピュータは、汎用および専用のマイクロプロセッサならびに他の種類のCPUのうち1つまたはそれ以上に基づくことができる。コンピュータの要素は、命令を行うかまたは実行するためのCPU、ならびに命令およびデータを記憶するための1つまたはそれ以上のメモリデバイスである。概して、CPUは、メモリから命令およびデータを受信する(そこにデータを書き込む)ことができる。コンピュータは、データを記憶するための1つまたはそれ以上の大容量記憶デバイスを含むか、またはそれに動作可能なように接続することもできる。いくつかの実装形態では、コンピュータは、例えば、磁気ディスク、磁気光学ディスク、または光学ディスクを含む、大容量記憶デバイスからデータを受信し、そこにデータを転送することができる。さらに、コンピュータは、別のデバイスに、例えば、携帯電話、携帯情報端末(PDA)、モバイルのオーディオもしくはビデオプレイヤー、ゲーム機、全地球測位システム(GPS)受信機、またはユニバーサルシリアルバス(USB)フラッシュドライブなどの携帯式記憶デバイスに組み込むことができる。
【0085】
コンピュータプログラム命令およびデータを記憶するのに適した(必要に応じて、一時的または非一時的)コンピュータ可読媒体は、あらゆる形態の恒久的/非恒久的および揮発性/不揮発性のメモリ、媒体、およびメモリデバイスを含むことができる。コンピュータ可読媒体は、例えば、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、消去可能プログラム可能読出し専用メモリ(EPROM)、電気消去可能プログラマブル読出し専用メモリ(EEPROM)、およびフラッシュメモリデバイスなどの半導体メモリデバイスを含むことができる。コンピュータ可読媒体は、例えば、テープ、カートリッジ、カセット、および内蔵ディスク/リムーバブルディスクなどの磁気デバイスを含むこともできる。コンピュータ可読媒体は、磁気光学ディスクおよび光学メモリデバイス、ならびに、例えば、デジタルビデオディスク(DVD)、CD ROM、DVD+/-R、DVD-RAM、DVD-ROM、HD-DVD、およびBLURAYを含む技術を含むこともできる。メモリは、キャッシュ、クラス、フレームワーク、アプリケーション、モジュール、バックアップデータ、ジョブ、ウェブページ、ウェブページテンプレート、データ構造、データベーステーブル、リポジトリ、および動的情報を含む、様々なオブジェクトまたはデータを記憶することができる。メモリに記憶されるオブジェクトおよびデータのタイプは、パラメータ、変数、アルゴリズム、命令、規則、制約、および参照を含むことができる。さらに、メモリは、ログ、ポリシ、セキュリティまたはアクセスデータ、およびレポーティングファイルを含むことができる。プロセッサおよびメモリは、専用論理回路によって補うかまたはそれに組み込むことができる。
【0086】
本開示で説明する主題の実装形態は、ユーザに情報を表示すること(およびユーザから入力を受信すること)を含む、ユーザとの対話を提供するための、ディスプレイデバイスを有するコンピュータに実装することができる。ディスプレイデバイスのタイプは、例えば、陰極線管(CRT)、液晶ディスプレイ(LCD)、発光ダイオード(LED)、およびプラズマモニタを含むことができる。ディスプレイデバイスは、キーボード、および、例えば、マウス、トラックボール、またはトラックパッドを含むポインティングデバイスを含むことができる。ユーザ入力は、感圧性を有するタブレットコンピュータの表面、または静電容量式または電気式のセンシングを用いたマルチタッチスクリーンなど、タッチスクリーンの使用よって、コンピュータに提供することもできる。例えば、ビジュアルフィードバック、聴覚フィードバック、またはタクタイルフィードバックを含む、感覚のフィードバックを含む、ユーザフィードバックを受信することを含む、ユーザとの対話を提供するために、他の種類のデバイスを使用することができる。ユーザからの入力は、音響、音声、またはタクタイル入力の形態で受診することができる。さらに、ユーザが使用するデバイスにドキュメントを送信し、ドキュメントを受信することによって、コンピュータがユーザと対話することができる。例えば、コンピュータは、ウェブブラウザから受信するリクエストに応答して、ユーザのクライアントデバイスのウェブブラウザにウェブページを送信することができる。
【0087】
用語「グラフィカルユーザインターフェース」すなわち「GUI」は、1つまたはそれ以上のグラフィカルユーザインターフェースおよび特定のグラフィカルユーザインターフェースのディスプレイのそれぞれを説明するために、単数形でも複数形でも用いられることがある。したがって、GUIは、限定されるものではないが、情報を処理しその情報結果をユーザに効率的に提示する、ウェブブラウザ、タッチスクリーン、またはコマンドラインインターフェース(CLI)を含む、任意のグラフィカルユーザインターフェースを表すことができる。概して、GUIは、インタラクティブフィールド、プルダウンリスト、およびボタンなど、一部または全部がウェブブラウザと関連付けられた、複数のユーザインターフェース(UI)要素を含むことができる。これらのおよび他のUI要素は、ウェブブラウザの機能に関係するかまたはそれを表すことができる。
【0088】
本明細書で説明する主題の実装形態は、バックエンドコンポーネント(例えば、データサーバとして)を含むかまたはミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含む、コンピューティングシステムにおいて実装することができる。さらに、コンピューティングシステムは、フロントエンドコンポーネント、例えば、ユーザがコンピュータとそれを通して対話できる、グラフィカルユーザインターフェースまたはウェブブラウザの一方または両方を有する、クライアントコンピュータを含むことができる。システムの構成要素は、通信ネットワークにおける任意の形態または媒体のワイヤラインもしくはワイヤレスのデジタルデータ通信(またはデータ通信の組み合わせ)によって相互接続することができる。通信ネットワークの例には、ローカルエリアネットワーク(LAN)、ワイヤレスアクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、広域ネットワーク(WAN)、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WIMAX)、(例えば、802.11a/b/g/nもしくは802.20またはプロトコルの組み合わせを用いる)ワイヤレスローカルエリアネットワーク(WLAN)、インターネットの全部もしくは一部、または1つもしくはそれ以上の位置における任意の他の1つの通信システムもしくは複数の通信システム(または通信ネットワークの組み合わせ)が含まれる。ネットワークは、例えば、インターネットプロトコル(IP)パケット、フレームリレーフレーム、非同期転送モード(ATM)セル、ボイス、ビデオ、データ、またはネットワークアドレス間の通信タイプの組み合わせによって通信することができる。
【0089】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、概して、互いに離間することができ、通常、通信ネットワークを通して対話することができる。クライアントとサーバとの関係は、それぞれのコンピュータで動作しクライアント-サーバ関係を有する、コンピュータプログラムによって生じることができる。
【0090】
クラスタファイルシステムは、読出しおよび更新のための複数のサーバからアクセス可能な、任意のファイルシステムタイプとすることができる。交換ファイルシステムのロックはアプリケーション層で行うことができるので、ロックまたは整合性の追跡は必要ではない場合がある。さらに、ユニコードデータファイルは、ユニコードでないデータファイルとは異なるものとすることができる。
【0091】
本明細書は特定の実装形態の詳細を多く含むが、これらは、特許請求されるものの範囲に対する限定としてではなく、特定の実装形態に特有の構成を説明するものと解釈すべきである。別々の実装形態の文脈において本明細書に記載される一定の構成は、単一の実装形態で組み合わせて実装することもできる。逆に、単一の実装形態の文脈において記載される様々な構成は、複数の実装形態で、別々に、または任意の適切な下位組み合わせで実装することもできる。さらに、上記で説明した構成が一定の組み合わせで作用するように記載され、最初にそのように特許請求される場合もあるが、特許請求される組み合わせからの1つまたはそれ以上の構成を、場合によっては、その組み合わせから削除することができ、特許請求される組み合わせは、下位組み合わせまたは下位組み合わせの変更形態を対象とすることがある。
【0092】
前述の説明では、実装形態によって異なる場合がある多数の特定の詳細を参照しながら、本発明の実施形態を説明してきた。したがって、説明および図面は、限定的というよりも例示的であると見なすべきである。本発明の範囲および出願人が本発明の範囲であると意図するものの唯一かつ排他的な指標は、本願に付与される請求項一式の、後の修正があればそれも含めた、このような請求項が発行する特定の形式での、文字通りかつ均等物の範囲である。このような請求項に含まれる用語について本明細書で明確に記載される定義があればそれは、請求項において使用されるそのような用語の意味を支配するものとする。さらに、前述の説明または以下の特許請求の範囲において、用語「さらに含む(further comprising)」または「さらに含む(further including)」を用いるとき、そのフレーズに続くものは、その前に列挙した工程またはエンティティの、追加の工程もしくはエンティティ、または下位工程/下位エンティティとすることができる。
【0093】
本主題の特定の実装形態を説明してきた。説明した実装形態の他の実装形態、修正形態、および変換形態が当業者には明らかなように以下の特許請求の範囲内に包含される。図面または特許請求の範囲で動作が特定の順序で示されているが、これは、このような動作が図示の特定の順序でもしくはシーケンシャルに行われること、または望ましい結果を実現するために例示した全ての動作が行われること(いくつかの動作が任意選択であると考えてよい)が必要であると理解するべきではない。一定の環境において、マルチタスキングまたは並行処理(またはマルチタスキングおよび並行処理の組み合わせ)は、有利なことがあり、適切であると見なされる場合に行われることがある。
【0094】
さらに、上記で説明した実装形態における様々なシステムモジュールおよび構成要素の分離または一体化は、全ての実装形態でこのような分離または一体化を必要とすると理解するべきではなく、説明したプログラム構成要素およびシステムが、単一のソフトウェア製品に一緒に一体化できるか、または複数のソフトウェア製品にパッケージできることを理解されたい。
【0095】
したがって、上記で説明した例示的実装形態は、本開示を定義するものでも制約するものでもない。他の変形形態、代替形態、および修正形態も本開示の精神および範囲から逸脱することなく可能である。
【0096】
さらに、特許請求するいずれの実装形態も、少なくとも1つのコンピュータ実装方法と;そのコンピュータ実装方法を行うようにコンピュータ可読命令を記憶する、非一時的コンピュータ可読媒体と;その非一時的コンピュータ可読媒体に記憶されるコンピュータ実装方法または命令を行うように構成された、ハードウェアプロセッサと相互運用可能なように接続されるコンピュータメモリを含む、コンピュータシステムと、に適用可能であると考えられる。
【0097】
これらシステムおよび方法のいくつかの実施形態を説明してきた。それにもかかわらず、本開示の精神および範囲から逸脱することなく様々な修正を行うことができることが理解されるであろう。
図1
図2
図3
図4
図5
図6