JP2023548654A - 履き物デジタルアセットを生成するためのコンピュータアーキテクチャ - Google Patents
履き物デジタルアセットを生成するためのコンピュータアーキテクチャ Download PDFInfo
- Publication number
- JP2023548654A JP2023548654A JP2023521668A JP2023521668A JP2023548654A JP 2023548654 A JP2023548654 A JP 2023548654A JP 2023521668 A JP2023521668 A JP 2023521668A JP 2023521668 A JP2023521668 A JP 2023521668A JP 2023548654 A JP2023548654 A JP 2023548654A
- Authority
- JP
- Japan
- Prior art keywords
- engine
- footwear
- spline
- digital asset
- cad
- 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
- 238000011960 computer-aided design Methods 0.000 claims abstract description 94
- 230000000007 visual effect Effects 0.000 claims abstract description 79
- 238000010801 machine learning Methods 0.000 claims abstract description 62
- 238000013461 design Methods 0.000 claims abstract description 40
- 230000002787 reinforcement Effects 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims description 77
- 238000012549 training Methods 0.000 claims description 48
- 238000004519 manufacturing process Methods 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 20
- 238000007781 pre-processing Methods 0.000 claims description 17
- 238000000844 transformation Methods 0.000 claims description 9
- 238000007620 mathematical function Methods 0.000 claims description 8
- 238000009877 rendering Methods 0.000 claims description 7
- 238000010146 3D printing Methods 0.000 claims description 5
- 238000013519 translation Methods 0.000 claims description 5
- 238000007670 refining Methods 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 description 32
- 230000006870 function Effects 0.000 description 23
- 210000002569 neuron Anatomy 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 239000000463 material Substances 0.000 description 18
- 230000008569 process Effects 0.000 description 18
- 238000010276 construction Methods 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000000605 extraction Methods 0.000 description 11
- 238000012805 post-processing Methods 0.000 description 9
- 238000011156 evaluation Methods 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 7
- 210000004027 cell Anatomy 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 6
- 230000018109 developmental process Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 239000000203 mixture Substances 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008676 import Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 238000012417 linear regression Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000007637 random forest analysis Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000013589 supplement Substances 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- DQXBYHZEEUGOBF-UHFFFAOYSA-N but-3-enoic acid;ethene Chemical compound C=C.OC(=O)CC=C DQXBYHZEEUGOBF-UHFFFAOYSA-N 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000007728 cost analysis Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 239000005038 ethylene vinyl acetate Substances 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 229920001200 poly(ethylene-vinyl acetate) Polymers 0.000 description 2
- 239000004814 polyurethane Substances 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000013396 workstream Methods 0.000 description 2
- 241000255925 Diptera Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 235000002597 Solanum melongena Nutrition 0.000 description 1
- 244000061458 Solanum melongena Species 0.000 description 1
- 241001441726 Tetraodontiformes Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000000740 bleeding effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000021824 exploration behavior Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000006260 foam Substances 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229920002635 polyurethane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000000225 synapse Anatomy 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000002747 voluntary effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Image Analysis (AREA)
- Footwear And Its Accessory, Manufacturing Method And Apparatuses (AREA)
Abstract
コンピューティングマシンが履き物の入力画像にアクセスするものであって、該入力画像は画素又はヴォクセルベースの画像とされる。コンピューティングマシンは、前記入力画像に基づいて且つ機械学習エンジンを用いて、履き物のNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3D(3次元) CAD(コンピュータ支援設計)デジタルアセットを生成する。3D CADデジタルアセットを生成するステップは:訓練済み分類エンジンを用いて履き物の視覚的コンポーネントを識別するステップと、履き物の視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いてスプラインが視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップとを含む。3D CADデジタルアセットは、スプラインを含む。機械学習エンジンは訓練済み分類エンジンと訓練済み強化学習エンジンとを備える。コンピューティングマシンは、3D CADデジタルアセットを表す出力を提供する。
Description
実施形態はコンピュータアーキテクチャに関するものである。いくつかの実施形態は機械学習に関する。いくつかの実施形態は、履き物を表すデジタルアセットを生成するために機械学習を用いることに関する。
本願は、2020年10月8日に出願された米国仮特許出願第63/089,435号の優先権の利益を主張するものであり、その内容の全体が参照によって取り込まれる。
履き物のデザインは多くの場合複雑である。履き物アイテムは複数の異なるコンポーネントを含み得るものであり、各コンポーネントは異なる形状及び位置を伴っている。履き物に関してのデジタルな表現形式が好ましいとされ得る。
後述の詳細な説明及び図面は、具体的な実施形態について十分に例示するものであり、当業者がこれらを実施できるように例示がなされている。他の実施形態は、構造的、論理的、電気的、プロセス的、及び他の変更を取り入れていることができる。いくつかの実施形態の部分及び特徴を、他の実施形態のそれに含めるか又は他の実施形態のそれと代替させることができる。請求項に記載されている実施形態は、それらの請求項のあらゆる等価物を包括する。
上述のように、例えば履き物等のアパレルのデザインは多くの場合複雑である。アパレルアイテムは複数の異なるコンポーネントを含み得るものであり、各コンポーネントは異なる形状及び位置を伴っている。これ故に、ハンドデザインされた2次元(2D)又は3次元(3D)アパレルモデルについて3Dコンピュータ支援設計(CAD)デジタルモデルを生成することが複雑な処理となり得る。このようなデジタルモデルは、例えば履き物を製造する複雑な処理に際しての命令を生成するために用いられ得る。上述にて例示されるように、アパレルに関してのデジタルな表現形式が好ましいとされ得る。
いくつかの実施形態は、アパレルを製造するためのアパレルCADファイルを(例えば、画像、モデル又は他の視覚的データから)生成することに関する。いくつかの実施形態によれば、コンピューティングマシンは、例えば履き物等のアパレルの入力画像にアクセスする。入力画像は、画素又はヴォクセルベースの画像である。コンピューティングマシンは、入力画像に基づいて、且つ、コンピューティングマシンにて実装されている1つ以上の機械学習エンジンを用いて、アパレルに関しての非一様有理基底スプライン(NURBS、non-uniform rational basis spline)モデルを備える3D CADデジタルアセットを生成する。3D CADデジタルアセットを生成することは、訓練済み分類エンジン(trained classification engine)を用いてアパレルの視覚的コンポーネントを識別することを含む。3D CADデジタルアセットを生成することは、アパレルの視覚的コンポーネントについて、訓練済み強化学習エンジン(trained reinforcement learning engine)を用いて、スプラインが視覚的コンポーネントから所定の平均距離以内に収まる迄、スプラインを反復的に適合化することをも含む。3D CADデジタルアセットは、スプラインを含む。機械学習エンジンは、訓練済み分類エンジン及び訓練済み強化学習エンジンを含む。コンピューティングマシンは、3D CADデジタルアセットを表す出力を提供する。
本明細書にて用いられる場合、NURBSモデルは、2D又は3Dオブジェクトについての数理的表現を含み得るものであり、これは標準形状(例えば、円錐)又はフリーフォーム形状(例えば、車両)とされ得る。
スプラインは、例えば船体等の大きなものを形成する者を誘導するために用いられる曲線パターンを含み得る。Bスプライン(Bは基底の略である。)は、4個の(或いは別の個数の)ローカル関数又は曲線外に存する制御点に基づいている。非均一(NU、NonUniform)とは、(任意の2点間の)定義済み形状の一部のセクションを形状全体の他のセクションとの相対的関係で伸縮し得るということを指し得る。有理(R、Rational)とは、別のオブジェクトとの各位置の関係を考慮するに際して、形状の一部の点に対して他の点よりも多くの重みを与えることができる能力を表し得る。(これは4次元的特徴と呼び得る。)
スプラインは、制御点と制御点に基づいた数理的関数とを用いて定義され得る。スプラインのグラフィカルな表現形式は、制御点に基づいて数理的に算出され得る。制御点は、数理的関数に対応する曲線の形状を決定する。
本発明の諸側面は、コンピュータシステムの一部として実装され得る。コンピュータシステムは、1つの物理マシンとされるか、又は、クラウドコンピューティング分散モデルの場合には、例えば役割若しくは機能又はプロセススレッド等によって複数の物理マシン間に分散されているものとされ得る。様々な実施形態では、本発明の諸側面は、仮想マシン内にて実行(run in)されるものと構成され得るものであり、これら仮想マシンは1つ以上の物理マシン上で実行(executed on)される。当業者ならば、本発明の特徴は、様々な異なる適切なマシン実装例によって具現化され得るものと理解されよう。
システムは様々なエンジンを含み、各々は関数又は関数のセットを実行するように構築され、プログラムされ、構成され、又は他の態様にて適応されている。本明細書にて用いられるエンジンとの用語は、有形の装置、コンポーネント、又はコンポーネントの組み合わせを意味し、これらは例えばASICやFPGA等のハードウェアを用いることによって実装されるか、又は、例えばプロセッサベースのコンピューティングプラットフォームとコンピューティングプラットフォームを専用用途装置に転じさせて特定の機能を実装させるプログラム命令等のハードウェア及びソフトウェアの組合せによって実装され得る。エンジンはこれら2種の組合せとしても実装され得るものであり、特定の機能がハードウェアのみによって実現され、また、他の機能はハードウェアとソフトウェアとの組合せによって実現されるものとされ得る。
例を挙げるに、ソフトウェアは実行可能形式で又は非実行可能形式で有形マシン可読記憶媒体上に存することができる。非実行可能形式で存するソフトウェアは、実行時に先んじて又は実行中にて実行可能形式にコンパイル、変換、又は他の態様で転換され得る。例を挙げるに、エンジンの基礎的ハードウェアによって実行されるに際して、ソフトウェアは、指定のオペレーション(specified operation)をハードウェアに行わせる。したがって、エンジンは、指定の態様(specified manner)で動作するように又はそのエンジンとの関連で説明された任意のオペレーションの全部又は一部を行うように、物理的に構築されているか、具体的に構成されているか(例えば、ハードワイヤードされている)、又は一時的に構成されている(例えば、プログラミングされている)。
エンジンが一時的に構成されている例を検討するに、各エンジンは異なる時点においてインスタンス化されていることができる。例えば、エンジンがソフトウェアを用いて構成された汎用ハードウェアプロセッサコアを備える場合、汎用ハードウェアプロセッサコアは異なる時点にて各々の異なるエンジンとして構成されていることができる。したがって、例えば、ソフトウェアは、ハードウェアプロセッサコアに関して、ある時点のインスタンスでは特定のエンジン(particular engine)を構成させることができ、また、異なる時点のインスタンスでは異なるエンジンを構成させることができる。
特定の実装例では、エンジンの少なくとも一部、ある場合はその全部を、オペレーティングシステム、システムプログラム、及びアプリケーションプログラムを実行する1つ以上のコンピュータのプロセッサ上で実行できるものであり、それに際して、適切な場合にはマルチタスキング、マルチスレッディング、分散(例えば、クラスタ、P2P、クラウド等)処理、又は他のそのような手法を用いてエンジンを実装することもできる。したがって、各エンジンは様々な適切な構成をもってして実現でき、また、特段の断りなき限り、一般的には本明細書中に例示された任意の特定の実施形態に限定されることを要さない。
加えて述べるに、エンジンはそれ自体が1つ以上のサブエンジンをもって構成され得るものであり、各々はそれ自体がエンジンたるものとしてみなされ得る。また、本明細書にて開示される書中にて説明された実施形態では、様々なエンジンの各々は、定義済みの機能に対応する。もっとも、他の想定される実施形態では、各機能が1つ以上のエンジンに分配され得ることにも留意されたい。同様に、他の想定される実施形態では、複数の定義済みの機能は、これら複数の機能を担当する単一のエンジンによって実装され得るものであり、場合によっては他の機能と共に担当される又は本明細書にて具体的に例示された例とは異なった態様でエンジンのセットに分配され得る。
図1は、いくつかの例示的実施形態による、機械学習プログラムの訓練及び使用について示す。いくつかの例示的実施形態では、機械学習アルゴリズム又はツールとも称される機械学習プログラム(MLP、machine-learning program)は、画像認識や機械翻訳等の機械学習タスクと関連付けられているオペレーションを行うために活用される。
機械学習とは、明示的なプログラミング無くしてコンピュータが学習することを可能とする研究分野である。機械学習は、ツールとも称されるアルゴリズムの研究及び構築に関して検討するものであり、これらは既存のデータから学習し、新規なデータについて予測をなし得る。このような機械学習ツールは、例示的な訓練データ112からモデルを構築することによって機能するものであり、これは出力又は評価120と称されるデータ駆動予測又は決定をなすためになされる。例示的実施形態は少数の機械学習ツールとの関連で提示されているものの、本明細書にて提示されている諸原理は他の機械学習ツールに適用されることもできる。
いくつかの実施形態では、異なる機械学習ツールを用い得る。例えば、ロジステイック回帰(LR、Logistic Regression)、単純ベイズ(Naive-Bayes)、ランダムフォレスト(RF、Random Forest)、ニューラルネットワーク(NN、neural network)、行列因数分解、及びサポートベクターマシン(SVM、Support Vector Machine)ツールをジョブポスティングの分類及びスコアリングのために用い得る。
機械学習における2つのありふれた問題としては、分類問題及び回帰問題が挙げられる。カテゴリ化問題とも称される分類問題は、アイテム(item)を複数のカテゴリ値(category value)の1つに分類(classify)することを試みる(例えば、あるオブジェクトがリンゴであるか或いはオレンジであるか)。回帰アルゴリズムは、(例えば、実数である数値を提供することによって)いくつかのアイテムを定量化することを試みる。機械学習アルゴリズムは、訓練データ112を活用して、帰趨に影響を及ぼす識別済み特徴102の間での相関を求める。
機械学習アルゴリズムは、データ分析のために特徴102を活用して、評価120を生成する。特徴(feature)102は、観測(observe)される事象の測定可能(measurable)な個別の性質(property)である。「特徴」の概念は、線形回帰等の統計学的手法にて用いられる説明変数に関連している。情報を有しており、判別力を有しており、且つ独立性を有している特徴を選定することは、パターン認識、分類、及び回帰においてMLPの効果的な動作のために枢要である。特徴は、例えば数値特徴や文字列やグラフ等の異なるタイプとされ得る。
1つの例示的実施形態では、特徴102は異なるタイプとされ得るものであり、例えば次の1つ以上を含み得る:メッセージのワード103、メッセージの概念104、通信履歴105、過去のユーザ挙動106、メッセージの主題107、他のメッセージ属性(attribute)108、送信者109、及びユーザデータ110。
機械学習アルゴリズムは、訓練データ112を活用して、結果又は評価120に影響を及ぼす識別済み特徴102の間での相関を求める。いくつかの例示的実施形態では、訓練データ112はラベル付けデータを含むものであり、これは1つ以上の識別済み特徴102及び1つ以上の結果についての既知データであり、例えば次のことが含まれ得る:通信パターンの検出、メッセージの意味の検出、メッセージの要約の生成、メッセージ内のアクションアイテムの検出、メッセージ内の緊急度の検出、送信者に対してのユーザの関係性の検出、スコア属性の算定、メッセージスコアの算定等。
訓練データ112及び識別済み特徴102をもってして、機械学習ツールは、動作114にて訓練される。機械学習ツールは、訓練データ112との相関に応じて特徴102の値を査定する。訓練の結果として、訓練済み機械学習プログラム116がもたらされる。
評価をなすために機械学習プログラム116が用いられた際には、新規データ118が訓練済み機械学習プログラム116への入力として提供され、また、機械学習プログラム116は出力として評価120を生成する。例えば、アクションアイテムについてメッセージをチェックする場合、機械学習プログラムは、メッセージ内容とメッセージメタデータとを活用してメッセージ内にアクションについての要求があるか否かについて決定する。
機械学習の手法では、モデルを訓練(train)して、モデルに投入されるデータについて正確に(accurately)予測をなす(例えば、所与の発話でユーザによって発言された事項が何のことであるか;名詞が事物、場所、若しくはものであるか;翌日の天機がどのようなものとなるか等)。学習(learning)フェーズに際して、モデルは入力の訓練(training)データセットに対して開発されて、モデルが最適化されて、所与の入力についての出力を正しく(correctly)予測する。一般的には、学習フェーズは、教師あり、半教師あり、又は教師なしとすることができ;訓練入力に対応して「正しい」出力が提供される水準が次第に減じられていく様を示している。教師あり学習フェーズでは、全ての出力はモデルに提供され、また、入力を出力にマッピングする一般則又はアルゴリズムを拵えるようにモデルは指示される。対照的に、教師なし学習フェーズでは、所望の出力は入力には提供されず、モデルが自己の規則を拵えることができるようにして訓練データセット(training dataset)内の関係性を発見できるようにする。半教師あり学習フェーズでは、不完全にラベリングされた訓練セット(training set)が提供され、訓練データセットについて一部の出力が既知とされ一部が未知とされる。
訓練データセットに対してモデルを複数エポック(例えば、反復回)に亘って実行でき、その際には訓練データセットを反復的にモデル内へと投入してその結果を緻密化できる。例えば、教師あり学習フェーズでは、所与の入力セットについての出力を予測するモデルが拵えられて、複数のエポックに亘って評価がなされて、訓練データセットに関して最大数の入力についての所与の入力に対応するものとして指定されている出力がより安定的に提供される。別の例では、教師なし学習フェーズでは、データセットをn個のグループにクラスタリングするモデルが拵えられて、複数のエポックに亘って該モデルについて評価がなされるものであって、該モデルが所与の入力を所与のグループにどの程度の一貫性をもって割り当てているか及び該モデルが各エポックに亘ってn個の所望のクラスタをどの程度の信頼性をもってもたらすかについて評価がなされる。
エポックが実行されたらば、モデルが評価されて、それらの変数の値が調整されて、反復的な態様でモデルをより良く緻密化することが試みられる。様々な態様では、諸々の評価は、偽陰性に対してバイアスされていたり、偽陽性に対してバイアスされていたり、或いは、モデルの総合的精度との関係で均等バイアスとされている。用いられる機械学習手法に応じて、幾つかの方法に即して値を調整できる。例えば、遺伝的又は進化論的アルゴリズムでは、所望の出力を予測するのに関して最も成果をもたらすモデルについての値を用いて以降のエポックに際して用いるモデルについての値を拵えるものであり、これらにはランダムなバリエーション/変異が含まれ得るものであり追加的なデータポイントが提供され得る。当業者ならば、本開示内容に適用可能な幾つかの他の機械学習アルゴリズムについて熟知しているはずであり、これらには線形回帰、ランダムフォレスト、決定木学習、ニューラルネットワーク、ディープニューラルネットワーク等が含まれ得る。
各モデルは複数のエポックに亘って規則又はアルゴリズムを拵えるものであり、入力に影響を与える1つ以上の変数の値を変化させることによって所望の結果により忠実にマッピングをなすようにこれをなすものであるが、訓練データセットが変化に富むものたり得るものでありまた望ましくはかなり大きい故に完全な正確性及び精度は達成できないかもしれない。したがって、学習フェーズを構成するエポック数は、所定の試行回数として若しくは固定時間/コンピューティング制約として設定でき、又は、所与のモデルの正確性が十分に高いか十分に低いか或いは正確性に関しての頭打ちを迎えた際には、その回数/制約に達する前に打ち切ることができる。例えば、訓練フェーズ(training phase)がn個のエポックを実行して少なくとも95%の正確性のモデルをもたらすように設計されている場合であってそのようなモデルが第n番エポックの前にもたらされた場合、学習フェーズ(learning phase)は早期に終了されて終局目標的正確性閾値(end-goal accuracy threshold)を充足するモデルが用いられ得る。同様に、所与のモデルがランダム可能性閾値を充足するのに十分に不正確な場合(例えば、所与の入力について正/否の出力を決定することに関してモデルが55%程度の正確性しかもたらせない場合)、そのモデルについての学習フェーズは早期に終了されることができるも、学習フェーズ(learning phase)内の他のモデルは訓練(training)を継続し得る。同様に、所与のモデルが複数のエポックに亘って類似の正確性をもたらすか或いはその結果を動揺させる場合(性能が頭打ちとなった場合)、所与のモデルについての学習フェーズはエポック数/コンピューティング制約に達する前に打ち切ることができる。
学習フェーズが完了したら、モデルは確定される。一部の例示的実施形態では、確定済みモデルはテスト基準について評価される。第1の例では、その入力について既知の出力を含むテストデータセットが、確定済みモデルに投入されて、それが未だ訓練されていないデータの扱いについてのモデルの正確性を決定する。第2の例では、偽陽性率又は偽陰性率を用いて確定後にモデルを評価し得る。第3の例では、データクラスタリング間の描写(delineation)を用いてそのデータクラスタについて最も明確な境界をもたらすモデルを選択する。
図2は、いくつかの実施形態による、例示的ニューラルネットワーク204について示す図である。図示のように、人工ニューラルネットワーク204は、入力として、ソースドメインデータ202を受信する。入力は、複数のレイヤ206を通されて出力に達する。各レイヤ206は、複数のニューロン208を含む。ニューロン208は、以前のレイヤからの入力を受信して、また、それらのニューロンから受信された値に重みを適用してそれによってニューロン出力が生成される。最終レイヤ206からのニューロン出力は組み合わされて人工ニューラルネットワーク204の出力が生成される。
図2の下部に示されているように、入力はベクトルxである。入力は複数のレイヤ206を通されるものであって、重みW1, W2,…,Wiは各レイヤへの入力に適用されて、 f1(x), f2(x),…, fi-1(x)が得られて、出力f(x)が算出される迄それがなされる。
いくつかの例示的実施形態では、人工ニューラルネットワーク204(例えば、ディープ学習、ディープ畳み込み、又は再帰ニューラルネットワーク)は、例えばロングショートタームメモリ(LSTM)等のネットワークとして配列された一連のニューロン208を備える。ニューロン208は、データ処理及び人工知能とりわけ機械学習にて用いられるアーキテクチャ上の要素であり、所与のニューロン208に提供される入力の重みに基づいてそのメモリ内に納められている値についていつ「記憶」すべきか及びいつ「忘却」すべきかを決定する。ここで用いられるニューロン208の各々は、人工ニューラルネットワーク204内の他のニューロン208からの所定個数の入力を受け付けて、被分析フレームの内容についてリレーショナルな及びサブリレーショナルな出力を提供するように構成されている。個々のニューロン208は、ニューラルネットワークの様々な構成をもたらすように鎖状配置され及び/又はツリー構造に配置されることができ、発話内の各フレームが相互にどのように関連しているかについての相互作用及び関係性学習モデリングを提供できる。
例えば、ニューロンとして役割を担うLSTMノードは、入力ベクトル(例えば、発話からの音素)と、メモリセルと、出力ベクトル(例えば、文脈的な表現形式)とを扱うための幾つかのゲートを含む。入力ゲート及び出力ゲートはそれぞれメモリセルへ流入及びメモリセルから流出する情報を制御するのに対して、忘却ゲートは人工ニューラルネットワーク内の先行するリンク付けされたセルからの入力に基づいてメモリセルから情報を随意的に取り除く。様々なゲートのための重み及びバイアスベクトルは訓練フェーズ中に調整されるものであり、また、訓練フェーズが完了されたらば、それらの重み及びバイアスは通常動作のために確定される。当業者ならば、ニューロン及びニューラルネットワークは、プログラム的に(例えば、ソフトウェア命令を介して)又は専用ハードウェアを介して構築され得るものであり、各ニューロンをリンクして人工ニューラルネットワークを形成することができる。
ニューラルネットワークはデータ分析のために特徴を活用して、評価を生成する(例えば、units-of-speech認識)。特徴は、観測される事象の測定可能な個別の性質である。「特徴」の概念は、線形回帰等の統計学的手法にて用いられる説明変数に関連している。さらに、ディープな特徴は、ディープニューラルネットワークの隠れレイヤ内のノードの出力を表す。
時には人工ニューラルネットワークとも称されるニューラルネットワークとは、動物の脳の生物学的ニューラルネットワークについての検討に基づいたコンピューティングシステム/装置である。このようなシステム/装置は、漸進的に性能を向上させるものであって、これは学習とも称されるものであり、典型的にはタスク固有のプログラミングなくしてタスクの遂行がなされる。例えば、画像認識においては、あるオブジェクトを含む画像を識別するように人工ニューラルネットワーク教え込むことができ、オブジェクトについての名称がタグ付けされた例としての画像を分析することによってこれをなし得るものであり、オブジェクト及び名称について学習したならば、分析結果を用いてタグ付けされていない画像内のオブジェクトを識別できる。人工ニューラルネットワークはニューロンと称される接続された(connected)ユニットの集合(collection)に基づいており、ニューロン間にありシナプスと称される各接続(connection)は接続の強度に応じて変化するアクティブ化強度を伴う単方向信号を送信し得る。受信側ニューロンは、典型的には、潜在的には多数の送信側ニューロンからの信号を組み合わされた受信信号が十分な強度のものであるか否かに基づいて、自己に接続されている下流側ニューロンへと信号を活性化し、伝播させることができるものであって、ここで強度はパラメータとされる。
ディープニューラルネットワーク(DNN、deep neural network)とは、複数のレイヤによって構成されているスタック化されたニューラルネットワークである。レイヤはノードによって構成されており、これらは計算が行われる領域であり、人間の脳内のニューロンに大まかに基づいており、十分な刺激に直面した際にそれは発信する。ノードは、データからの入力を、その入力を増幅又は減衰させる係数又は重みのセットと組み合わせるものであって、それによってアルゴリズムが学習しようとしているタスクについての入力に対して重要性が与えられる。これらの入力-重みの積は総和されて、また、その総和はノードのアクティブ化関数と呼ばれるものへと通されて、終局的結果に影響を及ぼすことに関して信号がネットワーク内へと更に進んで行くか否か及びその度合いを決定する。DNNは、特徴抽出及び変換に際して非線形処理ユニットの多数のレイヤのカスケードを用いる。各逐次的レイヤは、先行するレイヤからの出力を入力として用いる。高レベル特徴は、低レベル特徴から導出されて、ヒエラルキカルな表現形式が形成される。入力レイヤに続くレイヤは、入力についてのフィルタリング結果であり且つ次の畳み込みレイヤによって用いられる特徴マップをもたらす畳み込みレイヤとされ得る。
DNNアーキテクチャの訓練においては、変数間の関係を推定するための統計的処理のセットとして構成されている回帰は、コスト関数の最小化を伴い得る。コスト関数は、人工ニューラルネットワークが訓練事例を正しい出力にマッピングするに際してどの程度良好に機能したかについて表す数値(number)を返す関数として実装され得る。訓練に際しては、コスト関数の値(value)が所定の範囲内ではない場合、既知の訓練画像に基づいて、逆伝播が用いられるものであって、ここで逆伝播とは例えばストキャスティック勾配降下(SGD、stochastic gradient descent)法等の最適化方法と共に用いられる人工ニューラルネットワークを訓練するありふれた方法である。
逆伝播の使用には、伝播及び重み更新が含まれ得る。入力が人工ニューラルネットワークに提示された際には、それが出力レイヤに到達する迄、それはレイヤ毎に、人工ニューラルネットワークを通じて順伝播されていく。そして、コスト関数を用いて人工ニューラルネットワークの出力が所望の出力と比較され、また、出力レイヤ内の各ノードについて誤差値が算定される。誤差値は逆伝播されるものであり、出力から始まって、各ノードが関連付けられた誤差値を有することとなる迄なされるものであり、これによって当初の出力へのその寄与度が大まかに表される。逆伝播では、これらの誤差値を用いて、人工ニューラルネットワーク内の重みとの関係でのコスト関数の勾配を算定できる。算定された勾配は、選択された最適化方法に投入されて、重みが更新されて、コスト関数が最小化される。
図3は、いくつかの実施形態による、画像認識機械学習プログラムの訓練について示す概略図である。機械学習プログラムは、1つ以上のコンピューティング機器にて実装されていることができる。ブロック302では訓練セットが示されており、これには複数のクラス304が含まれる。各クラス304は、クラスと関連付けられている複数の画像306を含む。各クラス304は、画像306内のオブジェクトのタイプに対応し得る(例えば、0~9の数字、男性又は女性、イヌ又はネコ等)。1つの例では、機械学習プログラムは米国大統領の画像を認識するように訓練されるものであり、また、各クラスは各大統領に対応する(例えば、1つのクラスがBarack Obamaに対応し、1つのクラスがGeorge W. Bushに対応する等)。ブロック308では、機械学習プログラムは、例えば、ディープニューラルネットワークを用いて訓練される。ブロック310でブロック308の訓練によって生成された訓練済み分類器は画像312を認識し、また、ブロック314で該画像が認識される。例えば、画像312がBill Clintonの写真である場合、分類器は、ブロック314で画像がBill Clintonに対応するものとして認識する。
図3は、いくつかの例示的実施形態による、分類器の訓練について示す。機械学習アルゴリズムは顔(faces)を認識するように設計されており、また、訓練セット302はサンプルをクラス304(例えば、クラスは財布(purses)の全画像を含む)へとマッピングするデータを含む。クラスは、ラベルと称されることもできる。本願にて提示される実施形態はオブジェクト(object)認識との関連で提示されているも、同様の原理は任意のタイプのアイテム(item)を認識するための機械学習プログラムを訓練するために適用され得る。
訓練セット302は各クラス304についての複数の画像306(例えば、画像306)を含み、また、各画像は認識されるべきカテゴリの1つ(例えば、クラス)と関連付けられる。機械学習プログラムは訓練データをもって訓練されて(308)、画像を認識するように動作可能な分類器310を生成する。いくつかの実施形態では、機械学習プログラムはDNNである。
入力画像312が認識されるべき際には、分類器310は、入力画像312を分析して、入力画像312に対応するクラス(例えば、クラス314)を識別する。
図4は、いくつかの例示的実施形態による、特徴抽出処理及び分類器訓練について示す。分類器の訓練は、特徴抽出レイヤ402と、分類器レイヤ414とに分けることができる。各画像は特徴抽出レイヤ402内の複数のレイヤ406~413によって逐次的に分析される。
DNNの発展によって、顔認識(face recognition)の主たる関心は良質な顔特徴空間について学習することとなっており、即ち、同じ人物の顔が相互に近距離に置かれ、また、異なる人物の顔が相互に遠距離に置かれることが関心となっている。例えば、LFW(Labeled Faces in the Wild)データセットに伴う認証タスクが多くの場合顔認証(face verification)に用いられている。
多くの顔識別(face identification)タスク(例えば、MegaFace及びLFWデータセットと関連付けられているもの)は、ギャラリーセット及びクエリセット内の画像間での類似度比較に基づいており、これは実質的には人物の同一性推定におけるKNN(K-nearest-neighborhood)法となる。理想的な場合、顔特徴抽出機は良好であり(クラス間距離が常にクラス内距離より大きい)、また、人物の同一性推定に関してKNN法は十分である。
特徴抽出とは、大規模なデータセットを記述するのに必要なリソース量を削減するための処理である。複雑なデータの分析をなす場合、主要な問題の1つは関与する変数の多さから派生する。多変数を伴う分析に際しては、多量のメモリと演算力とが一般的に要求されるものであり、また、これによって分類アルゴリズムが訓練サンプルに対して過剰適合されてしまって新規サンプルに対して劣悪な一般化を示し得る。特徴抽出とは、変数の組合せを構築する方法を説明する一般的用語であって、先述の大規模データセット関連の問題を迂回するものであって、そうしつつも所望の目的との関係ではデータを十分な正確性をもって記述する。
いくつかの例示的実施形態では、特徴抽出は測定データの初期セットから始まり、情報性を有し且つ非冗長性を有することが意図されている派生値(特徴)が構築されるものであり、後の学習ステップ及び一般化ステップが支援される。さらに、特徴抽出は次元縮退に関連するものであり、(場合によっては極度にスパースなデータを伴う)大きなベクトルを同じ又は類似の情報量を含むより小さなベクトルに縮退させること等を伴う。
初期特徴のサブセットを決定することが、特徴選択と呼ばれる。被選択特徴は入力データ(input data)からの関連性を有する情報を含んでいることを期待されており、それによって完全な初期データの代わりにこの縮退表現形式を用いて所望のタスクを行えるようにする。DNNでは、レイヤのスタックを活用するものであり、各レイヤは機能を担う。例えば、レイヤは畳み込みや非線形変換や平均算出等を担い得る。やがて、このDNNは分類器414によって出力をもたらす。図4では、データは左から右へと伝わり、また、特徴が抽出される。人工ニューラルネットワークを訓練することの目的は、所望のタスクに関して十分となるような全レイヤのパラメータを探すことにある。
図4に示すように、「ストライドが4」とされたフィルタがレイヤ406で適用されて、また、最大プーリングがレイヤ407~413にて適用される。ストライドが、入力ボリューム(input volume)周りでフィルタがどのように畳み込むかを制御する。「ストライドが4」とは、フィルタが、入力ボリューム周りで一度に4単位毎に畳み込むことを指す。最大プーリングとは、各最大プーリング領域内の最大値を選択することによってダウンサンプリングすることを指す。
いくつかの例示的実施形態では、各レイヤの構造は予め定義されている。例えば、畳み込みレイヤは小さな畳み込みカーネルとそれら各々の畳み込みパラメータとを含み得るものであり、また、総和レイヤは入力画像の2つの画素の和又は荷重和を算定できる。訓練によって、総和における重み係数の定義付けが支援される。
DNNの性能を向上させる1つの方策としては、特徴抽出レイヤに関してより新しい構造を識別することが挙げられ、また、別の方策としては、所望のタスクの達成のための異なるレイヤにおいてパラメータが識別される態様を向上させることが挙げられる。課題となるのは、典型的なニューラルネットワークにとっては、最適化すべきパラメータが何百万個とあり得ることである。これらのパラメータ全ての最適化を初めからなすのには何時間も或いは幾日も或いは何週間もかかりうるものであり、利用可能なコンピューティング資源量及び訓練セット内のデータ量にこれは依存する。
図5は、いくつかの実施形態による、コンピューティングマシン500についての回路ブロック図を示す。いくつかの実施形態では、コンピューティングマシン500のコンポーネントは、図5の回路ブロック図に示されている他のコンポーネントを格納しているかそれらに統合されていることができる。例えば、コンピューティングマシン500はプロセッサ502内に所在することができ、また、以下においては「処理回路」とも呼ばれ得る。処理回路は、例えば、1つ以上のCPUや1つ以上のGPU等の処理ハードウェアを含み得る。代替的な実施形態では、コンピューティングマシン500は、スタンドアロンデバイスとして動作し、又は他のコンピュータに接続(例えば、ネットワーク化)されてもよい。ネットワークで結ばれた展開において、コンピューティングマシン500は、サーバクライアントネットワーク環境でサーバ、クライアント又はその両方の役割にて動作できる。例を挙げるに、コンピューティングマシン500はP2P(又は他の分散型)ネットワーク環境でピアマシンの役割にて動作できる。本稿では、P2P、装置対装置(D2D、device-to-device)及びサイドリンクとの語は可換に用いられ得る。コンピューティングマシン500は、専用コンピュータ、パーソナルコンピュータ(PC)、タブレットPC、パーソナルデジタルアシスタント(PDA)、携帯電話、スマートフォン、ウェブアプライアンス、ネットワークルータ、スイッチ、ブリッジ、又は、そのマシンによって行われるべきアクションを指定する命令(シーケンシャル又はそれ以外)を実行可能な任意のマシンとされ得る。
本開示の例は、ロジック又はいくつかのコンポーネント、モジュール、若しくはメカニズムを含むかそれらに基づいて動作し得る。モジュール及びコンポーネントは指定のオペレーション(specified operation)をなし得る有体エンティティ(例えば、ハードウェア)であり、特定の態様(certain manner)にて構成又は配置されていることができる。例を挙げるに、回路はモジュールとして指定の態様(specified manner)にて(例えば、内部的に又は他の回路等の外部エンティティとの関係で)配置されていることができる。例を挙げるに、1つ以上のコンピュータシステム/装置(例えば、スタンドアロン、クライアント、又はサーバコンピュータシステム)又は1つ以上のハードウェアプロセッサの全部又は一部は、ファームウェア又はソフトウェア(例えば、命令、アプリケーションの部分、又はアプリケーション)によって、指定のオペレーションをなすように動作するモジュールとして構成されていることができる。例を挙げるに、ソフトウェアはマシン可読媒体上に所在し得る。例を挙げるに、モジュールの基礎的ハードウェアによって実行されるに際して、ソフトウェアは、指定のオペレーションをハードウェアに行わせる。
したがって、「モジュール」(及び「コンポーネント」)との用語は、有体エンティティを包括するものであって、エンティティは、指定の態様で動作するように又は本開示にて説明された任意のオペレーションの全部又は一部を行うように、物理的に構築されているか、具体的に構成されている(例えば、ハードワイヤードされている)か、又は一時的に(例えば、一過的に)構成されている(例えば、プログラミングされている)。モジュールが一時的に構成されている例を検討するに、各モジュールは任意のある時点においてインスタンス化されていることを要するわけではない。例えば、モジュールがソフトウェアを用いて構成された汎用ハードウェアプロセッサを備える場合、汎用ハードウェアプロセッサは異なる時点における各々の異なるモジュールとして構成され得る。したがって、例えば、ソフトウェアは、ハードウェアプロセッサに関して、ある時点のインスタンスでは特定のモジュールを構成させることができ、また、異なる時点のインスタンスでは異なるモジュールを構成させることができる。
コンピューティングマシン500は、ハードウェアプロセッサ502(例えば、CPU、GPU、ハードウェアプロセッサコア、又はこれらの任意の組合せ)と、メインメモリ504と、静的メモリ506とを含み得るものであり、これらの全部又は一部は相互にインターリンク(例えば、バス)508を介して通信できる。図示はされていないも、メインメモリ504は、取り外し可能ストレージ及び取り外し不能ストレージや揮発性メモリ又は不揮発性メモリのいずれか又は全てを含み得る。コンピューティングマシン500は、ビデオ表示ユニット510(又は他の表示ユニット)と、英数入力装置512(例えば、キーボード)と、ユーザインタフェース(UI)ナビゲーション装置514(例えば、マウス)とをさらに含み得る。例を挙げるに、表示ユニット510、入力装置512及びUIナビゲーション装置514は、タッチスクリーンディスプレイとされ得る。コンピューティングマシン500は、記憶装置(例えば、ドライブユニット)516と、信号生成装置518(例えば、スピーカー)と、ネットワークインタフェース装置520と、GPSセンサやコンパスや加速度計や他のセンサ等の1つ以上のセンサ521とを追加的に含み得る。コンピューティングマシン500は、シリアル(例えば、USB)やパラレルや他の有線の又は無線(例えば、赤外線(IR)、近距離無線通信(NFC)等)の接続等の出力コントローラ528を含み得るものであり、これは1つ以上の周辺機器(例えば、プリンタやカードリーダー等)と通信するため又は1つ以上の周辺機器を制御するためである。
ドライブユニット516(例えば、記憶装置)は、本開示の任意の1つ以上の手法又は機能を具現化する又はそれらによって活用されるデータ構造又は命令524(例えば、ソフトウェア)の1つ以上のセットが格納されているマシン可読媒体522を、含み得る。命令524は、コンピューティングマシン500によるその実行に際して、完全に又は少なくとも部分的に、メインメモリ504内に或いは静的メモリ506内に或いはハードウェアプロセッサ502内に所在することもできる。例を挙げるに、ハードウェアプロセッサ502、メインメモリ504、静的メモリ506、又は記憶装置516の1つ又は任意の組合せは、マシン可読媒体を構成し得る。
マシン可読媒体522は単一媒体として示されているも、「マシン可読媒体」との用語は1つ以上の命令524を格納するように構成された単一の媒体又は複数の媒体(例えば、集中型又は分散型のデータベース、及び/又は関連付けられているキャッシュ及びサーバ)を含み得る。
「マシン可読媒体」との用語は、コンピューティングマシン500によって実行されるべき命令を格納、エンコード、若しくは搬送し得る任意の媒体であって、本開示の任意の1つ以上の手法をコンピューティングマシン500に行わせるか、又はそのような命令によって用いられるか、或いはそれらと関連付けられているデータ構造を格納、エンコード、若しくは搬送し得る媒体を含み得る。マシン可読媒体についての非限定的な例を挙げるに、ソリッドステートメモリ、並びに光学及び磁気媒体が含まれ得る。マシン可読媒体の具体例には次のものが含まれ得る:半導体メモリ装置(例えば、EPROMやEEPROM等)やフラッシュメモリ装置等の不揮発性(non-volatile)メモリ;内蔵ハードディスクやリムーバブルディスク等の磁気ディスク;光磁気ディスク;RAM;並びにCD-ROM及びDVD-ROMディスク。いくつかの例では、マシン可読媒体は、非一時的(non-transitory)マシン可読媒体を含み得る。いくつかの例では、マシン可読媒体は、一時的な伝播信号ではないマシン可読媒体を含み得る。
命令524は、いくつかの転送プロトコル(例えば、フレームリレー、インターネットプロトコル(IP)、TCP、UDP、HTTP等)の任意の1つを活用して、ネットワークインタフェース装置520を介して伝送媒体を用いて通信ネットワーク526上でさらに送受信され得る。例示的な通信ネットワークとしては他のものもあるが次のものが含まれ得る:LAN、WAN、パケットデータネットワーク(例えば、インターネット)、携帯電話ネットワーク(例えば、セルラーネットワーク)、単なる昔ながらの電話(POTS、Plain Old Telephone)ネットワーク、及び無線データネットワーク(例えば、Wi-Fi(登録商標)として知られているIEEE 802.11規格ファミリー、WiMaxとして知られているIEEE 802.16規格ファミリー)、IEEE 802.15.4規格ファミリー、LTE規格ファミリー、UMTS規格ファミリー、P2Pネットワーク等。例を挙げるに、ネットワークインタフェース装置520は、通信ネットワーク526に接続するための1つ以上の物理ジャック(例えば、イーサネット(登録商標)、同軸、又は電話ジャック)又は1つ以上のアンテナを含み得る。
いくつかの実施形態は、機械学習手法を用いて履き物(或いは他のアパレル)アイテムの画像入力(例えば、デザインスケッチ、写真又は3Dソリッドモデル)を3D CADデジタルアセット(例えば、NURBS)に転換するためのコンピュータ化処理に向けられている。いくつかの実施形態は、入力を受けて、デザインインスピレーションや製造やマーケティングやデジタルアセット生成(例えば、AR(augmented reality)/VR(virtual reality)やゲーミング環境等における使用)に用いられ得るロバストなデジタル出力を生成する処理に向けられている。いくつかの実施形態は、履き物との関係で開示されている。もっとも、本明細書にて開示されている技術は履き物に限定されることはなく、任意の他のアパレル(例えば、ジーンズ、レザージャケット、スカート等)又は非アパレルアイテム(例えば、テーブル、チェア、家屋、自転車、野球ミット、ホッケースティック、野球のボール、バスケットボールのボール等)に対して拡張され得る。
高レベルでは、画像が処理のために機械学習エンジン(例えば、図1~4と併せて説明されているもの)に提供される。機械学習エンジンは、NURBSモデルを提供する。NURBSモデルは、出力(例えば、製造命令として用いられる3Dモデル)を提供するために用いられ得る。何らかのメトリックが当初デザイン意図(original design intent)に合致する迄、3Dモデルに対して反復的緻密化及び調整がなされ得る。
1つの例示的問題としては、履き物(及び他のアパレル)のデザイナー達は、自己のデザインを作成するに際して、3D CADシステムを持ちいらずに、紙媒体にスケッチを描いたり或いはモールドを制作したりしていたということが挙げられる。3D CADデザインを作成及び構築することは、退屈且つ時間浪費的であり、また、大抵の履き物デザイナー達の芸術的才能を活用するとは必ずしも言えない。また、このことは3D CADエンジニアのスキルセットを十分に活用しておらず、他の場合では手動での反復的な緻密化及び調整が機械学習システムの進歩を受けて自動的に処理できる。デザイン(例えば、2Dのラインアート、スケッチの写真、タブレット内のスケッチ、写真、メッシュオブジェクト、又はスカルプチャ(例えば、オブジェクトのスキャン))を与えられて、これをリッチな3Dパラメトリック「デジタルアセット」に変換又は転換するための労力及びコストは法外及び時間労的となり得る。
デザインオブジェクトの3Dパラメトリック表現(例えば、NURBS)は、その製造容易性に関して多数の利点を有する。また、より早く一貫的な変更を施す処理をこれと併せて用い得る。リッチな3Dパラメトリックアセットは、組織横断的デジタル・コラボレーションのためのプラットフォームたり得る。3Dパラメトリックアセットは、AR又はVRにおける将来的なユースケースへの布石として機能し得る。
NURBSをメッシュへ転換する処理を実装するための処理が開発された。いくつかの事案では、NURBSはメッシュ形式よりも格段に多量の情報を含み得る。なぜならば、NURBSは本質的にはジオメトリの数学的モデルだからである。したがって、これらのNURBS情報は、メッシュ表現(又はオブジェクトについての他の必要とされるデジタル表現)に容易に転換され得る。いくつかの事案では、コンピューティングマシンがNURBSを伴ってテンプレートを操作できる。操作されたテンプレートは、構造的データ等の情報を伴うレイヤを含み得る。操作されたテンプレートは、メッシュ等でのポイントのクラウドよりも多くの情報をふくみ得る。
デザインから3Dアセットを作成する代替的アプローチのいくつかは、3D CADエンジニアのスキルセットを活用し得る。CADエンジニアは、当初デザインを3D CADシステムへと再現或いは「コピー」することから始める。時間浪費的且つ退屈な作業の大部分は、何らかのメトリックが当初デザインの意図を合致させて充足させる迄、3Dコピーに対して反復的緻密化及び調整を施すことにある(メトリックについては後述参照)。メトリックの例としては、当初の2D版への忠実性を示すための2D平面への3D正投影を挙げ得る。
高パラメータ曲線は、形状指定点を多数有し得る(例えば、10個以上や20個以上等)。対照的には、スプラインは低パラメータ曲線を含み得るものであり、数学的関係によって増強された具体的な比較的少数の制御点を組み込んでいるものであり、スプラインはより容易に操作可能となり且つリソース浪費性は減じられる。後述のアプローチの1つでは、入力画像がスプラインに転換されて、また、メトリックが閾値に達するまで、ターゲットテンプレート範囲を充足するように(例えば、製造制約や履き物固有の制約等の制約に基づいて等)スプラインの制御点が操作される。
いくつかの態様では履き物デザイン用のパイプライン処理が含まれ、これは機械学習の利用によってデザイン入力(例えば、スケッチ、写真又は3Dソリッドモデル)を3D CADデジタルアセット(例えば、NURBS)に迅速に転換することを自動化する。パイプラインには複数の段階及びサービスが含まれ、エンドユーザエクスペリエンスを提供するウェブアプリケーションを介して編成(orchestrated)がなされ得る。パイプライン内の段階には次のものが含まれ得る:前処理、部分識別、3D NURBS構築、及びセーブ/転換。
前処理段階では、コンピューティングマシンは、デザイン入力を各々の2D正投影ビュー又は投影に拵える。部分識別段階では、コンピューティングマシンは「部分識別」手続又はセマンティックセグメンテーションを行うものであり、履き物の様々なコンポーネントに関して識別及び画定をなす機械学習手法を用いてこれがなされる。これらの画定されたコンポーネントは、ラベル付けされ、また、それらの各々の輪郭を示す曲線によって表される。
3D NURBS構築段階では、入力として、ラベル付けされた曲線のセットが受け取られる。3D CADデジタルアセットは、ラベル付けされた曲線のセットから作成される。3Dアセットの構築は3D CADシステム内にてなされ、強化学習をふくむ手法が用いられ、バックエンドサービスが、訓練され、また、3D CADシステム内にてテンプレート履き物ベースラインスプラインを、それについての等価な曲線となるように如何にして入力の正投影から「コピー」乃至は進化をなすかについて学習する。成功裏な構築は、3D作成されたアセットをその正投影入力と反復的に比較及び調整することを通じてガイド及び決定されていく。製造トレランスやデザインカテゴリ規則等の他の制約は、必要に応じて、反復的緻密化に適用される。
セーブ/転換段階では、完全パラメータ化3Dアセットは、例えば3Dやマシンプリンティング、視覚的レンダリング、及びAR/VR等の下流側用途のための適切なフォーマットとなるように、セーブ、フラット化、展開又は転換される。
図6は、いくつかの実施形態による、履き物を表すデジタルアセットを生成するためのデータフローパイプライン600について示す図である。パイプライン600は、1つ以上のコンピューティングマシン500によって実装される。パイプライン600は本開示では履き物との関係で説明されているが、パイプライン600は任意の他のアパレル又は非アパレルアイテムと共に用いられ得る。データフローパイプライン600は特に履き物との関係で説明されているが、データフローパイプライン600は他のオブジェクト及び物品(アパレル品や用品等を含むがこれらには限定されない)についても実装され得ることに留意されたい。データフローパイプラインは、ここでは高レベルで説明されている。データフローパイプラインについてのいくつかの例は、以下にて図7~13を伴ってより詳しく説明される。
示されているように、履き物(或いは他のアパレルや用品等)の物品と関連付けられている入力(例えば、線画スケッチ602、写真604、及び/又は3Dモデル606)が、前処理エンジン610に提供される。コンセプト生成器608も、データを前処理エンジン610に提供する。コンセプト生成器608は、GAN(generative adversarial network(敵対的生成ネットワーク))機械学習エンジン又は新たな履き物スケッチ及びデザインを自動的に(或いは代替的には手動的に)合成(synthesize)できる任意の他のエンジンを実装し得る。GAN機械学習エンジンは、利用不能又は欠損しているビューを、利用可能なビューから補完、追完、又は強化することもできる。前処理エンジン610は正投影612を出力し、部分識別エンジン614によってこれが用いられて履き物の物品の部分が識別される。識別された部分は、履き物の物品に対応する履き物の物品についての3Dモデルを構築するために3Dモデル構築エンジン620によって用いられる。コンピュテーショナルデザイン616が3Dコンポーネントカタログ618に提供され、これが3Dモデル構築エンジン620に入力を提供するものであり、また、履き物についての機能的デザイン最適化及びコンピュテーショナル評価を行って実世界における性能を予測する。カテゴリ規則622(例えば、バスケットボール、サッカー、ランニング、ライフスタイル等の履き物のカテゴリに関すること)及び製造規則626が制約適用エンジン624に提供されるものであり、これが3Dモデル構築エンジン620及び後処理エンジン628によって適用するべき制約を提供する。3Dモデル構築エンジン620によって構築された3Dモデルは、後処理エンジン628に提供される。後処理エンジン628は、他の特徴及びプロパティを3Dアセットに追加するものであり、例えば、異なるサイズに関して3Dアセットのグレーディング、成人-若年層-子供の構成、又はジェンダーフィットやコンフォートや性能や機能に関して最適化されたニュアンス等が含まれる。後処理エンジン628は他のディメンション及び値を提供することもでき、これらは3Dアセットを製造可能な部品又はコンポーネントにするために用いられ得る。マテリアルカタログ630及び後処理エンジン628の出力が、マテリアル適用エンジン632に提供される。マテリアル適用エンジン632は、マテリアルを識別するものであり、また、識別されたマテリアルについての表現を色彩適用エンジン636に提供する。色彩コンセプト生成器634は、色彩適用エンジン636のために色彩コンセプトを生成する。適用された色彩は、シミュレーション638に基づいて検証640のために提供される。肯定的な場合、検証640の結果は、3D NURBS642、2Dパターン644、及びマシンコード646を(例えば、3Dプリンティング又は製造のために)生成するために用いられる。肯定的な場合、検証640の結果は、3Dメッシュ648及び写実的モデル650を生成するために用いられる。図6のパイプライン600は「多方向的」且つ多面的であり、適切な入力をパイプラインの任意の関連性を有するステージ或いはステップにて開始でき、3Dアセットについての下流出力を合成及び構築するために、或いは、上流の3Dアセットを任意のパイプライン段階にて許容可能なその最小若しくは名目的物品構成に分解できる。
コンピュテーショナルデザイン616はコンピュテーショナルエンジンを含み得るものであり、これは履き物(或いは他のアパレルや用品等)についての機能的デザイン最適化及びコンピュテーショナル評価を行って実世界における性能を予測する。3Dコンポーネントカタログ618は先行して若しくは同時的に生成若しくはアーカイブされた入手容易な履き物(或いは他のアパレルや用品等)のコンポーネントのコレクションを含み得るものであり、これは3Dモデルの構築又はコンピュテーショナルデザインに用いられ得る。カテゴリ規則622は、履き物(或いは他のアパレルや用品等)の開発に適用される様々なカテゴリ(バスケットボール、サッカー、ランニング、ライフスタイル等)からの規則についての(例えば、リスト又はコレクションとして表された)ナレッジベースを含み得る(例えば、赤色を白の布地と共に用いると色にじみが惹起され得るとの警告)。製造規則626は、履き物の開発に適用される工場及び製造規則についての(例えば、リスト又はコレクションとして表された)ナレッジベースを含み得る。例えば、一部のアンダーカット(undercut)はモールド容易性を担保するために特定の角度及び厚みとされ得る。一部のエッチカット(etch cut)は工場/機械の性能又はトレランス故にXより大きくなければならない。ステッチの間隔やステッチの幅は、特定量より近接するものとされないかもしれない。ステッチの順序又はレイヤリング規則は、製造規則626内に含まれ得る。
後処理エンジン628は、他のプロパティを3Dアセットに追加し得るものであり、例えば、異なるサイズに関してのそのグレーディング、成人-若年層-子供の構成、又はジェンダーフィットやコンフォートや性能や機能に関して最適化されたニュアンス等が含まれ、それを製造可能な部分又はコンポーネントとする他の寸法及び値も附加される。マテリアルカタログ630は、様々な履き物の物品についてマテリアル及びマテリアルの組合せを生成したり示唆したり推奨したりするGANエンジン(或いは他の機械学習エンジン)を含み得る。これは全体論的になされ得る。
色彩コンセプト生成器634は、様々な履き物(或いは他のアパレルや用品等)の物品について単色又は色彩の組合せを生成、示唆、及び推奨するGANエンジン(或いは他の機械学習エンジン)を含み得る。これは全体論的になされ得る。検証640は、パイプライン600の後の段階にて終局的に処理される前の今までに適用された入力に関してのフィードバック又は最終チェックをユーザに提供するためのエンジンを含み得る。検証640は、マテリアル分析に関してのコスト又は一覧について段階分け(stage)もすることができる。3Dメッシュ648は、一緒にステッチングされたポリゴンメッシュで作られた3D CADオブジェクトを含み得る。
3Dメッシュ648は、それが高速にレンダリングされる故に、アニメーション産業においては主たるフォーマットとして選択されるものとして用いられ得る。3Dメッシュ648は、オブジェクトの3D「ワイヤーフレーム」を含み得る。これはポイントクラウドに類似し得るも、3Dメッシュ648はポイントの代わりに接続されたポリゴンで形成されていることができる。
いくつかの事案では、3Dメッシュ648は、3D NURBS642とは異なる。3Dメッシュ曲線は、構造又は図面を形成するようにメッシュされた又は結合されたポリゴンパターンを含む。NURBS曲線とは異なり、3Dメッシュ曲線は、曲線の曲率を調整できるスプライン(例えば、スプラインはNURBS曲線である)の制御点等のリッチなパラメータを欠くことがある。
例えば、図7に示されているように、第1段階は、当初の芸術的デザイン表現について正投影612を生成する前処理610を含む。この段階では、当初のデザインアートワーク(例えば、線画スケッチ602、写真604、及び/又は3Dモデル606)を取得し、それを正投影612に分解する。正投影612は、2Dの正投影ビュー(例えば、上部、左、右、背部、正面、底部)を含み得る。これらのビューが2D線画入力と共に既に利用可能ならば、第1の段階中のこれらのステップのいくつかは省略され得る。一部のビューが欠損している場合、これらについては、デザイナーに芸術的に生成させるか、或いは、他の利用不能な「欠損中の」2D正投影ビューを利用可能なものから合成するように訓練されているGAN機械学習エンジンを用いて得られる。例えば、履き物の左側面ビューのみが利用可能ならば、GANエンジンは、上部ビュー、正面ビュー、背面ビュー、底部ビュー、及び右側面ビューに相当するビューを生成し得る。GANエンジンは、デザイナーの意図に合致する迄、連続的に他のビューを作成及び生成し得る。3Dモデル606又は彫刻デザインについては、正投影612は、モデルについての斜視ビューとされ得る。GAN機械学習エンジンは、図1~4に説明された概念のいくつかを実装し得る。
図7は、いくつかの実施形態による、(例えば、前処理エンジン610による)前処理についてのデータフローパイプライン700について示す図である。示されているように、履き物の線画又はスケッチ702、履き物の写真704、及び/又は履き物の3Dモデル706が、(前処理エンジン610に対応し得る)前処理エンジン708に提供される。前処理エンジン708の出力は、履き物の正投影ビュー710である。
図6に戻るに、(例えば、図8に示されているように、)第2の段階はスマートな自動化された部分の識別である。この段階(stage)では、正投影612内の正投影ビューを用いて、セグメントに機械学習識別処理(部分識別エンジン614)を適用して、また、当初のデザインオブジェクト(或いは履き物)を構成する様々なコンポーネントを画定する。
図8は、いくつかの実施形態による、部分の識別についてのデータフローパイプライン800について示す図である。示されているように、(例えば、部分識別エンジン614に対応するスマートな自動化された部分の識別処理を実装する)部分識別エンジン804は、履き物の部分804を識別する。図示のように、トップライン、フォクシング、ロゴ、ミッドソール、及びヴァンプが識別される。
図6に戻るに、部分識別エンジン614の訓練に際して、セマンティックセグメンテーションカテゴリ下においての機械学習プログラムが、デザインの部分を認識及び分類するように訓練される。履き物の例に関しては、先述のエンジンは、履き物アイテムの様々な部分(例えば、ミッドソール、アウトソール、ヴァンプ、フォクシング、ロゴ、レースガード等)を分類するように訓練される。ここにて適用可能な1つの手法では、回転やスケーリング等の2D変換を用いてコンポーネントについての複数の線画バリエーションが生成される。例えば、ロゴに対して、回転や拡大や縮小や並進やこれらの操作の任意の組合せがなされる。この強化データセットは、コンポーネント部分を識別及び分類するために機械学習分類エンジンを訓練するために用いられる。訓練済みエンジンが当該部分をより良く識別できるようにするために、これと同じ変換が履き物の各部分に適用される。
上述された訓練済み機械学習エンジンを伴うスマートな部分についての分類/セマンティックセグメンテーションフェーズ(phase)では、分類手法を用いて興味対象を含む当初の2D線画の長方形サブセクションを識別する。例えば、訓練済み機械学習エンジンは、ロゴやミッドソール等の周りにボックスを描画する。必要に応じてこれが再帰的に適用されて、コンポーネントを構成する曲線/セグメントをヒエラルキカルにサブ分類する。ミッドソールの例に関しては(図9を参照)、コンポーネントの2D線画曲線をバイトライン、接地部、ヒールレイク、ヒールスプリング、トースプリング、及びトーカウンタ等のサブコンポーネントにさらに分解するためにこれを用い得る。ロゴに関しては(図10を参照)、これを適用してロゴ底部セグメントに対してロゴ上部部分を識別する。
図9は、いくつかの実施形態による、履き物900のミッドソールのコンポーネントを識別する境界ボックスについて示す図である。図示のように、履き物900のミッドソールは、ヒールカウンタ902、バイトライン904、トーカウンタ906、ヒールレイク908、接地部910、及びトースプリング912についての境界ボックスを含む。
図10はいくつかの実施形態による、履き物1000のロゴのコンポーネントを識別する境界ボックスについて示す図である。示されているように、履き物1000のロゴは、ロゴ上部1002及びロゴ下部1004についての境界ボックスを含む。
図9~10は境界ボックス概念を履き物の特定の視覚的コンポーネントへ適用したものとして説明しているが、境界ボックス概念は、履き物の任意の視覚的コンポーネントに適用可能であり、ここに列挙されているものに限定されはしないことに留意されたい。さらに、ここにて説明された技術は履き物に限定はされず、任意の他のアパレル(例えば、ジーンズ)又は任意の他のアパレルコンポーネント(例えば、ジーンズのポケット、ベルト輪、ジッパー、及びボタン)に拡張されることができる。技術は、非アパレルアイテム(例えば、ダイニングテーブル)又は非アパレルアイテムのコンポーネント(例えば、ダイニングテーブルのテーブル脚及びテーブルトップ)にさらに拡張されることができる。
この分野における機械学習の1つの課題は、探索空間削減である。本件開示では、先ず境界ボックスについての第1のレベルを分類して、そして第1のレベルの各境界ボックス内へと探索を深めて識別を緻密化することによって、探索空間(search space)削減の課題を解決する。例えば、履き物のミッドソールを探すこと(find)の方が、ヒールカウンタ、バイトライン、トーカウンタ等を識別すること(identify)より容易である。
図6に戻るに、コンピューティングマシンは、トレース生成及び後処理628を伴って、分類済みコンポーネントの一部である曲線を区別して、また、そうではない曲線を除外する。他の分類済みセグメントの2D曲線(例えば、バイトライン及びヴァンプのインターセクト)を同じ長方形境界ボックス分類器内にて表示又は捉えることができる故に、除外処理は有用となり得る。分類器が、興味対象の2D曲線(例えば、バイトライン)を含み且つ場合によっては他の曲線(例えば、ヴァンプ及びフォクシング)を含んでいるかもしれない境界ボックスを生成したならば、興味対象の曲線セグメント上で点についてのセットが識別される(例えば、エッジ点(「開始」及び「終了」の点))。これらの点が、当初の2D線画から曲線を再び生成(regenerate)するために用いられる「ガイドポスト」又は「ガイド点」である(図11を参照)。これらの「ガイド点」が定められたらば、コンピューティングマシンは上述の数学的関係を識別するものであって、当初の2D線画内の画素のセットを再びトレース(retracing)することによってこれをなすものであって、曲線を構成するこれらの点の間での「最短経路」を探すことによってこれがなされるものであって、このことは「トレース生成(trace-generation)」と称することができる。幅又はサイズが複数画素級である曲線に関しては、「平均化」手法を適用して曲線を「細くする」ことができるものであり、例えば3画素の幅に関しては真ん中の画素を採用する等。分類済み部分を構成する各曲線の輪郭が、後にラベル付けされる。コンポーネントについてのこの明白なラベル付け及び曲線トレースは、各コンポーネントを下流側での再現可能性を担保することに関して有用たり得る。
図11は、いくつかの実施形態による、境界ボックスをもってマーキングされた履き物コンポーネント1102及び1104の例について示す図1100である。
図6に戻るに、入力画像/図面からNURBSを生成して履き物の特定の製造制約に沿わせることは、3Dモデル構築エンジン620によってなされる。3Dモデル構築エンジン620は、強化学習エンジンを活用し得る。強化学習エンジンは、図1~4と併せて説明された手法を用いて実装され得る。3Dモデル構築エンジン620では、製造制約が「境界条件」の態様として(AI(人工知能)/ML(機械学習)及びヒューリスティックを用いる)強化学習エンジンのコードの一部となる。これらの規則及び制約(rules and constraints)が充足された場合に3D NURBSをレンダリングすることができるものであり、故にそれらの条件(conditions)が充足される迄、強化学習エンジンは反復を行う。
部分識別エンジン614は興味対象たる部分(例えば、ロゴ)を抽出して、それが3Dモデル構築エンジン620にインポートできるようにする。分類器が興味対象たる部分を識別し、また、境界ボックスを作成したらば、それは部分の輪郭を構成する点を有していることができる(例えば、ロゴの輪郭)。部分識別エンジン614は、当初の画像上で利用可能であり且つ分類器によって識別された点と合致する画素を用いて、部分の輪郭を再びトレースし得る。一部の態様では、当初の画像に存在する画素データポイントを活用して、分類/セグメンテーション段階にて識別された点を増やす又は補足することができる。
3Dモデル構築エンジン620は、強化学習を活用して3Dから2Dへのパターンエンジニアリングの継続的で反復的な緻密化及び調整をこなすことができる(図12を参照)。3Dモデル構築エンジン620は、当初のデザインレンディション(例えば、アーティストによって創作されたスケッチや写真や3Dモールド等)から3DパラメトリックNURBSアセットを作成する。
図12は、いくつかの実施形態による、3Dアセットの構築についてのデータフローパイプライン1200について示す図である。図示のように、部分識別結果1202が3D CADシステム1204に提供される。3D CADシステム1204は、生成的学習エンジン又はRLエンジンを実行しているサーバ1206と反復的に通信して、3Dアセットを構築する。
図13は、いくつかの実施形態による、履き物の3Dモデル1300の詳細の例について示す図である。図示のように、3Dモデル1300は、異なる観測ポジション又は観測アングルからの履き物についてのビュー1302,1304,1306,1308を含む。
部分識別エンジン614によってなされる「スマートな自動化された部分の識別」で(例えば、境界ボックス、ガイド点、及び/又は曲線を用いて)2D線画履き物デザインの様々な曲線コンポーネントの識別及びラベル付けがなされた後、これらの曲線は3Dモデル構築エンジン620内へとインポートされる。そうすると、これらの曲線は3次元(例えば、XYZ)座標、方向情報、スケーリング係数、ラベル等についてのリストの形式をとることになる。
3Dモデル構築エンジン620は、生成的学習エンジン又はRLエンジンを進行させて、3D CADシステムと反復的に対話して、開始時3Dモデルを構築して、或いは、ベースライン履き物テンプレートの3D開始時3Dモデルを緻密化及び調整して、それを何らかの予め定義された成功基準(例えば、制約適用エンジン624の履き物製造制約)を介して当初デザイン意図へと進化及び「モーフィング」させる。この反復的処理は、新たな曲線が当初デザインに合致する迄、3D CADシステム内にて初期曲線上の点を動かす。3Dモデル又はテンプレート曲線についての最終進化は、履き物アイテムの構築に関してのコードシーケンス(例えば、3D CADソフトウェア定義ファイル)を介してそれ自体の3D形状にレンダリングされる。これに関与する操作についてのいくつかの例は以下において詳述されている。
3Dモデル構築エンジン620の動作に際しては、コンピューティングマシンが、「スマートな自動化された部分の識別」で生成されたターゲット曲線を部分識別エンジン614によって3D CADエンジンへとインポートする。コンピューティングマシンは、3D CADエンジンを用いてターゲット曲線を再スケーリング、再配置、再アライン、再向き決めして、生成的学習又はRLエンジンを用いて履き物プロファイルをデジタル空間周りにラップさせる。そして、また生成的学習又はRLエンジンを用いて、コンピューティングマシンは、ベースライン履き物テンプレート(baseline footwear template)内のスプラインを反復的に調整し、スプラインがそれらのターゲット曲線に合致する迄、制御点を動かしていくことによってこれをなす。諸制約が、ヒューリスティックのセットとしてコードされるだけとはならずに、自動化された態様で学習及びまとめられることを担保するために、3D履き物構築/レンダリング操作は、生成的学習又はRLエンジンのフィードバックループ全体の一部とされる。生成的学習又はRLエンジンは、諸制約を伴ってテンプレートスプラインを安定的にターゲット曲線にアラインする術を学習する。一旦3Dパラメトリック履き物オブジェクトが構築されたらば、それに対して分解及び展開(例えば、シート材料から裁断できる何らかのものになるように平坦化すること)を行ってそのコンポーネント断片を得る。一部の部分は生成的手法で加飾及び/又はデザイン付けされる一方で、例えば履き物のアッパー等の一部の部分は製造可能なパターンたる2Dパネルに平坦化される。2Dパネルは開始時テンプレートとしても用いられ得るものであり、それがデジタル履き物上にラッピングされるとその正投影がターゲット2D曲線に合致することとなるようにそれに対して反復的にRL調整がなされる。
一部の場合であって生成的機械学習システムを介してオンザフライで生成できる場合、靴テンプレート(shoe template)の使用は不要となり得る。一部の場合、使用されるテンプレートターゲットがあるも、これは潜在的には機械学習手法を用いて生成されることができる(例えば、GANによって起点を生成できる)。
一部の実施形態では、これらの作成された3Dアセット(3D asset)は、隣接ワークストリームに関して標準的且つ一貫的な基底或いは基礎をもたらす。これらの3Dデザイン(3D design)は3Dモデル(3D model)構築エンジン620にフィードバックされて、その性能がシミュレーションされるものであって、完全なフィードバックループが確立されるものであり、より良好な包括的デザインサイクル或いはプロセスがもたらされる。例えば、コンピューティングマシンは、仮想3Dオブジェクト(3D object)に対して物理シミュレーション(例えば、トラクションや摩擦等)を行うことができるものであり、物理シミュレーションに基づいてより多くの属性ももたらされ得る。トラクションには、フィデリティに加えて性能が制約として含まれ得る。最適化は、コストや性能や使用マテリアル等に基づき得る。多変数最適化も可能である。
後処理エンジン628では、追加の「規則及び制約」が最終的3Dアセットに適用されて細部を詰めることができる。最小エッチング間隔やトレランス等の製造制約を適用し得る。履き物ステッチ間隔、ステッチ幅、及びステッチ順序/レイヤリングも適用し得る。異なる履き物カテゴリに関して異なる規則を採用し得る。履き物カテゴリの例としては、バスケットボール履き物、サッカー履き物、ゴルフ履き物、及びランニング履き物が挙げられる。当該プロセスは、3Dモデル構築エンジン620による3Dモデルの構築と同期して並びに3Dモデルの構築後の後処理ステップとしてもなされ得る。当該プロセスによって3Dアセットに対してパラメトリックパラメータ(parametric parameter)、寸法、及び値が賦与されて、これによってそれらがコンポーネントの製造可能な部分と化す。
マテリアル適用エンジン632及び色彩適用エンジン636は、マテリアル属性を3Dアセットのコンポーネントに適用及び割り当て(apply and assigns)をなす。これらマテリアル属性の例としては、色彩又は色相、アッパーのマテリアルのタイプ(例えば、レザーや合成系等)、ミッドソールの発泡部の組成(例えば、EVA(エチレン酢酸ビニール)やPU(ポリウレタン)等)が挙げられる。色彩/色相の割り当て及び適用(assignment and application)はヒューリスティックな態様でなされ得るものであり、把握されるマーケティング上の需要又はデザイナーの願望に基づいてこれがなされ得る。代替的にそれは生成的になされ得るものであり、機械学習GANシステムを用いることができ、該システムが隣接領域や未探索の可能性を探索することを許容し得る。
コンピューティングマシンは、マテリアル及び製造可能な部分の一覧を生成できる。コンピューティングマシンは、マテリアル及び手順を管理及び編纂して、3Dアセットを最終物理製品となるように構築する。これらのステップによってより優れた計画及びコスト分析が可能となる。また、これらのステップは、先行する段階に対して即応的なフィードバックループをもたらすものであり、代替マテリアル又は例えばコスト目標等の充足すべき他の制約に関しての探索行動を惹起し得る。これらのステップは「レシピ」をもたらし得るものであり、これには原料及び手順が含まれ、これによって履き物について3Dデジタル形式から物理形態に転化させ得る。
コンピューティングマシンは写実的及び動画的なレンダリングを提供して、これによってデザインについての視覚的展示手段をもたらし得る。陰影や反射や光源や音響等の属性を3Dデジタルアセットに附加及び追加でき、これによってそれらが素人や消費者にからみて視覚的に魅力的且つ写実的なものとなる。
いくつかの実施形態の長所には以下の事項の1つ以上が含まれ得る:(i)手動操作及び処理が減る故のデザイナー及び開発者の生産性の向上;(ii)パイプライン手法の流用可能性(一部の段階に関して追加、拡張、及び/又は強化を任意の時点にてなし得る);(iii)完全自動化によってエラー耐性がもたらされ、より一貫的な出力が得られ、また逸脱具合も予測可能になること;(iv)迅速なコスト分析及び高速な開発レビューが可能となること;(v)開発サイクル及び市場導入タイムフレームの短縮;(vi)デザイナーや開発者やコスト分析者やマーケティング人員等に対して、迅速で全世界スケール且つ常時稼働型のリモート・コラボレーション・プラットフォームを提供できること;(vii)3Dアセットによって隣接ワークストリームに関して標準的且つ一貫的な基底或いは基礎がもたらされること(例えば、コンピュテーショナルデザインや高解像度レンダリング等);(viii)3DアセットによってARやVR等の新興的な下流側用途に関しての礎が準備されること;及び(ix)物理的な接触を最小化することによって無接触型開発工程が許容され得ること。
いくつかの実施形態では、コンピューティングマシンは、ターゲット曲線をセマンティックセグメンテーションサービスから3D CADエンジン内へとインポートする。コンピューティングマシンは、これら全てのターゲット曲線を再スケーリング、再配置、再アライン、再向き決めするものであり、いくつかのヒューリスティックを用いてこれをなすものであり、これによって下流側の3D CADエンジンコードがそれらから履き物アイテムを構築できるようにする。一部の実施形態では、ベースライン履き物テンプレート内のスプラインに手を加えることに代えて、これらの新たな曲線(及びスプライン)を再作成する。各ターゲット曲線について、コンピューティングマシンは、20個(或いは他の個数)の制御点を伴い各ターゲット曲線の端点で開始及び終結する新たなストレートライン型スプラインを、作成する。コンピューティングマシンは、これらのターゲット曲線/ストレートライン型スプラインペアの各々について再向き決め及び「標準スケール」への再スケーリングの別の変換操作を行う。コンピューティングマシンは、ストレートライン型スプラインに強化学習を適用して、それがターゲット曲線に合致する迄、20個の制御点に手を加えていく。コンピューティングマシンは、確定されたスプラインを当初の縮尺及び向きに戻るように変換して、3D CADエンジンコードが適用可能となるようにする。制御点の削減は時々数学的関数を用いてなされる。
上述の強化学習操作に関して、一部態様では、「合致」とは、数式1にあるように、ターゲット曲線の点及びスプラインの点の間の差分のRSS(root sum square)が0に接近することとして定義され、定量化される。RSSの例示的関数が強化学習アルゴリズムにおいて報酬関数として用いられる。
いくつかの実施形態によれば、コンピューティングマシンは、ターゲット曲線をセマンティックセグメンテーションサービスから3D CADエンジン内へとインポートする。コンピューティングマシンは、ターゲット曲線を再スケーリング、再配置、再アライン、再向き決めするものであり、いくつかのヒューリスティックを用いてこれをなすものであり、それらを3Dスプラインに転換するものであり、これによって下流側の3D CADエンジンコードがそれらから履き物アイテムを構築できるようにする。
いくつかの実施形態では、用いられたヒューリスティックの全部又は一部を強化学習処理内へと(例えば、制約及び主題専門知識に基づいて)取り込む。いくつかの実施形態では、強化学習エンジン内にて用いられる手法を適用して、これらの反復的緻密化及び調整を行って、任意のデザイン入力の3Dパラメトリック版の構築を自動化する。具体的には、これを用いて2D線画から3DパラメトリックNURBSを作成できる。
いくつかの実装例によれば、コンピューティングマシンは、ターゲット曲線をセマンティックセグメンテーションサービスから3D CADエンジン内へとインポートする。コンピューティングマシンは、これら全てのターゲット曲線を再スケーリング、再配置、再アライン、再向き決めして、RL(Reinforcement Learning)を用いてその靴プロファイルをデジタルラスト(digital last)周りにラップさせる。また、コンピューティングマシンは、RLを用いて、ベースライン履き物テンプレート内のスプラインを反復的に調整するものであって、スプラインがそれらのターゲット曲線に合致する迄、制御点を移動させることによってこれをなす。いくつかの実施形態では、諸制約及び主題専門知識が、ヒューリスティックのセットとしてコードされるだけとはならずに、自動化された態様で学習及びまとめられることを担保するために、3D CADエンジンコード内の3D履き物構築/レンダリングステップは、RLフィードバックループ全体の一部とされる。RLエンジンは、この文脈で何が3D CADエンジンコードを成立又は不成立とするか、並びに、どのようにしてテンプレートスプラインをターゲット曲線にアラインするのかを、学習し得る。3Dパラメトリック履き物オブジェクトが構築されたらば、それに対して分解又は展開を行ってコンポーネント断片を得ることができる。一部の部分は生成的手法で加飾又はデザイン付けされる一方で、例えば靴のアッパー等の一部の部分は製造可能なパターンたる2Dパネルに平坦化されることができる。一部の場合、2Dパネルは開始時テンプレートとしても用いられ得るものであり、それがデジタル履き物アイテムラスト(digital footwear item last)上にラッピングされると、その正投影がターゲット2D線画曲線(target 2D line-art curve)に合致することとなるようにそれに対して反復的にRL調整がなされる。
図14は、いくつかの実施形態による、履き物(或いは代替的には、アパレルや用品等の他のオブジェクト)を表すデジタルアセットを生成する例示的な方法1400について示す流れ図である。方法1400は、例えばコンピューティングマシン500等の1つ以上のコンピューティングマシンを用いて実装され得る。デジタルアセットを伴って開始されて上流へと向かっていき、履き物画素又はヴォクセルに基づいた画像を作成する逆転処理も実装できる。
ステップ1410では、コンピューティングマシンは、履き物(又は代替的にはアパレルや用品等の他のオブジェクト)の入力画像にアクセスする。入力画像は、画素又はヴォクセルベースのイメージである。
ステップ1420では、コンピューティングマシンは、入力画像に基づいて、且つ、コンピューティングマシンにて実装されている機械学習エンジンを用いて、履き物(或いは代替的には、アパレルや用品等の他のオブジェクト)に関してのNURBSモデルを備える3D CADデジタルアセットを生成する。ステップ1420は、ステップ1422及び1424を含み得る。
ステップ1422では、コンピューティングマシンは、訓練済み分類エンジンを用いて履き物(或いは代替的には、アパレルや用品等の他のオブジェクト)の視覚的コンポーネントを識別する。ステップ1424では、コンピューティングマシンは、履き物の視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いてスプラインが視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化する。3D CADデジタルアセットは、スプラインを含む。機械学習エンジンは、訓練済み分類エンジン及び訓練済み強化学習エンジンを含む。
いくつかの実施形態では、分類エンジンは、履き物の視覚的コンポーネントを表す画像と履き物の視覚的コンポーネントの表現形式についての変換を含む訓練データセットとを用いて訓練される。変換は、スケーリング、回転、及び並進の1つ以上を含み得る。訓練済み分類エンジンは、視覚的コンポーネントについて境界ボックスを生成し得る。境界ボックスは、視覚的コンポーネントと関連付けられているものとして示されている少なくとも第1の画素のセットと、視覚的コンポーネントと関連付けられていないものとして示されている少なくとも第2の画素のセットとを備え得る。訓練済み分類エンジンは、視覚的コンポーネントの第1の部分を識別する第1のサブエンジンと、視覚的コンポーネントの第2の部分を識別する第2のサブエンジンとを備え得る。視覚的コンポーネントの第2の部分は、前記視覚的コンポーネントの第1の部分のサブコンポーネントとされ得る。第2のサブエンジンは、第1のサブエンジンによって識別された前記視覚的コンポーネントの前記第1の部分に対して作用し得る。
スプラインに対して反復的に適合化をなすことには、スプラインが製造制約基準(或いはメトリックスとの関係で測定又は比較し得る任意の他の基準)を充足することを担保することを含み得る。訓練済み強化学習エンジンは、少なくとも1つの製造トレランス制約及び/又は少なくとも1つのデザインカテゴリ規則制約に基づいて動作し得る。視覚的コンポーネントは:ミッドソール、アウトソール、ヴァンプ、フォクシング、レースガード、ヒールカウンタ、ヒールレイク、バイトライン、接地部、トースプリング、及びトーカウンタの少なくとも1つを備え得る。
ステップ1430では、コンピューティングマシンは、3D CADデジタルアセットを表す出力を提供する。いくつかの実施形態では、コンピューティングマシンは、1つ以上のコンピューティングマシンにて、エンドユーザによって提供されたメトリックスに基づいて、1つ以上のメトリックスが所定の範囲内となる迄、3D CADデジタルアセットを、反復的に緻密化する。コンピューティングマシンは、緻密化された3D CADデジタルアセットを表す出力を提供する。反復的精緻化は次の事項を含み得る:3D CADデジタルアセットを複数のスプラインとして表すステップと、前記複数のスプラインの1つ以上の制御点を前記所定の範囲に基づいて反復的に操作するステップ。一部の場合、前記3D CADデジタルアセットを表す前記出力が下流側エンジンに提供される。前記下流側エンジンは:3Dプリンティングエンジン、視覚的レンダリングエンジン、及びAR/VRエンジンの1つ以上を含み得る。コンピューティングマシンは、前記3D CADデジタルアセットに基づいて、前記3D CADデジタルアセットによって表された履き物の製造であって1つ以上の製造マシンでの製造を、制御し得る。
いくつかの実施形態では、方法1400に対しての入力は画素又はヴォクセルベースのファイルであり、これに対して、出力はモデリングされる履き物アイテムの曲線及び表面のNURBS数学的表現形式である。出力は、履き物に関しての製造命令を生成するために用いられ得るものであり、これを製造マシンに提供し得る。
いくつかの実施形態では、スプラインは制御点と制御点に基づいた数学的関数とを備えるものであり、スプラインに対して反復的に適合化をなすことは視覚的コンポーネントに基づいてスプラインの制御点に対して変換を加えることを伴う。
いくつかの実施形態では、操作1410前に、コンピューティングマシンは、入力画像を前処理して、入力画像を1つ以上の2D正投影ビューに変換する。前処理には1つ以上の2D変換が含まれ得る。
いくつかの実施形態では、訓練済み分類エンジンは、前処理済み2D正投影ビューに基づいて利用不能な2Dビューを合成するように訓練されたGANエンジンを備える。視覚的コンポーネントは、前処理済み2D正投影ビュー及び合成済み2Dビューに基づいて識別される。
いくつかの実施形態は、履き物を表す画像、モデル、及びデジタルアセットとの関連で説明されている。もっとも、本明細書にて開示されている技術は履き物に限定されることはなく、2D又は3Dでモデリング可能な他のアイテム(例えば、アパレル、用品、オブジェクト等)についても用いられ得る。履き物に加えて或いはそれの代わりにこの技術の実施形態を用い得る他のアイテムの例には次のものが含まれる:スポーツ用品、車両用タイヤ、子供用玩具、携帯電話ケース、卓上オーナメント、祝祭日用オーナメント、燭台等。この技術は、3Dプリンティングに適した任意のアイテムに関して有用となり得る。
いくつかの実施形態は、付番された例として説明されている(例1、2、3等)。これらは例として提示されているに過ぎず、本明細書に開示された技術を限定はしない。
例1は、方法であって:1つ以上のコンピューティングマシンにて履き物の入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、前記入力画像に基づいて且つ前記1つ以上のコンピューティングマシンにて実装された機械学習エンジンを用いて、前記履き物のNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3次元CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3次元CADデジタルアセットを生成するステップは:訓練済み分類エンジンを用いて前記履き物の視覚的コンポーネントを識別するステップと、前記履き物の前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3次元CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、前記3次元CADデジタルアセットを表す出力を提供するステップとを含む、こと。
例2では、例1の主題は次の事項を含む:前記スプラインは制御点と前記制御点に基づいた数学的関数とを備えるものであり、前記スプラインに対して反復的に適合化をなすことは前記視覚的コンポーネントに基づいて前記スプラインの前記制御点に対して変換を加えることを伴うこと。
例3では、例1~2の主題は次の事項を含む:前記分類エンジンは、履き物の視覚的コンポーネントを表す画像と履き物の視覚的コンポーネントの表現形式についての変換を備える訓練データセットを用いて訓練されるものであって、前記変換はスケーリング、回転、及び並進の1つ以上とされること。
例4では、例1~3の主題は次の事項を含む:前記スプラインに対して反復的に適合化をなすことは、前記スプラインが製造制約基準を充足することを担保することを含む、こと。
例5では、例1~4の主題は:前記1つ以上のコンピューティングマシンにて、エンドユーザによって提供されたメトリックスに基づいて、1つ以上のメトリックスが所定の範囲内となる迄、3次元CADデジタルアセットを、反復的に緻密化するステップと、前記緻密化された3次元CADデジタルアセットを表す出力を提供するステップとを含む、こと。
例6では、例5の主題は次の事項を含む:前記3次元CADデジタルアセットを反復的に緻密化するステップは:前記1つ以上のコンピューティングマシンにて、前記3次元CADデジタルアセットを複数のスプラインとして表すステップと、前記複数のスプラインの1つ以上の制御点を前記所定の範囲に基づいて反復的に操作するステップとを含む、こと。
例7では、例1~6の主題は次の事項を含む:前記3次元CADデジタルアセットを生成するステップは、更に:前記入力画像を前処理して、前記入力画像を1つ以上の2次元正投影ビューに変換するステップを含む、こと。
例8では、例7の主題は次の事項を含む:前記前処理は1つ以上の2次元変換を伴うこと。
例9では、例7~8の主題は次の事項を含む:前記訓練済み分類エンジンは、前記前処理済み2次元正投影ビューに基づいて利用不能な2次元ビューを合成するように訓練されたGAN(敵対的生成ネットワーク)エンジンを備えるものであって、前記視覚的コンポーネントは前記前処理済み2次元正投影ビュー及び前記合成済み2次元ビューに基づいて識別されること。
例10では、例1~9の主題は次の事項を含む:前記訓練済み強化学習エンジンは、少なくとも1つの製造トレランス制約及び少なくとも1つのデザインカテゴリ規則制約に基づいて動作すること。
例11では、例1~10の主題は次の事項を含む:前記視覚的コンポーネントは:ミッドソール、アウトソール、ヴァンプ、フォクシング、レースガード、ヒールカウンタ、ヒールレイク、バイトライン、接地部、トースプリング、及びトーカウンタの少なくとも1つを備え得ること。
例12では、例1~11の主題は次の事項を含む:前記訓練済み分類エンジンは前記視覚的コンポーネントについて境界ボックスを生成するものであって、前記境界ボックスは、前記視覚的コンポーネントと関連付けられているものとして示されている少なくとも第1の画素のセットと、前記視覚的コンポーネントと関連付けられていないものとして示されている少なくとも第2の画素のセットとを備えること。
例13では、例1~12の主題は次の事項を含む:前記訓練済み分類エンジンは、前記視覚的コンポーネントの第1の部分を識別する第1のサブエンジンと、前記視覚的コンポーネントの第2の部分を識別する第2のサブエンジンとを備えるものであって、前記視覚的コンポーネントの前記第2の部分は前記視覚的コンポーネントの前記第1の部分のサブコンポーネントであり、前記第2のサブエンジンは前記第1のサブエンジンによって識別された前記視覚的コンポーネントの前記第1の部分に対して作用すること。
例14では、例1~13の主題は次の事項を含む:前記3次元CADデジタルアセットを表す前記出力が下流側エンジンに提供されるものであって、前記下流側エンジンは:3次元プリンティングエンジン、視覚的レンダリングエンジン、及びAR/VRエンジンの1つ以上を含み得る、こと。
例15では、例1~14の主題は次の事項を含む:前記3次元CADデジタルアセットに基づいて且つ前記1つ以上のコンピューティングマシンを用いて、前記3次元CADデジタルアセットによって表された前記履き物の製造であって、1つ以上の製造マシンでの製造を制御するステップを含む、こと。
例16は、方法であって:1つ以上のコンピューティングマシンにてアパレルの入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、前記入力画像に基づいて且つ前記1つ以上のコンピューティングマシンにて実装された機械学習エンジンを用いて、前記アパレルのNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3次元CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3次元CADデジタルアセットを生成するステップは:訓練済み分類エンジンを用いて前記アパレルの視覚的コンポーネントを識別するステップと、前記アパレルの前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3次元CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、前記3次元CADデジタルアセットを表す出力を提供するステップとを含む、こと。
例17は、方法であって:1つ以上のコンピューティングマシンにて用品の入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、前記入力画像に基づいて且つ前記1つ以上のコンピューティングマシンにて実装された機械学習エンジンを用いて、前記用品のNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3次元CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3次元CADデジタルアセットを生成するステップは:訓練済み分類エンジンを用いて前記用品の視覚的コンポーネントを識別するステップと、前記用品の前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3次元CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、前記3次元CADデジタルアセットを表す出力を提供するステップとを含む、こと。
例18は、方法であって:1つ以上のコンピューティングマシンにてオブジェクトの入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、前記入力画像に基づいて且つ前記1つ以上のコンピューティングマシンにて実装された機械学習エンジンを用いて、前記オブジェクトのNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3次元CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3次元CADデジタルアセットを生成するステップは:訓練済み分類エンジンを用いて前記オブジェクトの視覚的コンポーネントを識別するステップと、前記オブジェクトの前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3次元CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、前記3次元CADデジタルアセットを表す出力を提供するステップとを含む、こと。
例19は、命令が含まれる少なくとも1つのマシン可読媒体であって、該命令が処理回路によって実行されると、前記処理回路に例1~18のいずれかを実行する動作を行わせる、マシン可読媒体である。
例20は、例1~18のいずれかを実行する手段を備える装置である。
例21は、例1~18のいずれかを実行するためのシステムである。
例22は、例1~18のいずれかを実行するための方法である。
実施形態が具体的な実施形態の例をもって説明されているも、本開示の幅広い精神及び範疇から逸脱せずに、これらの実施形態に様々な修正及び変更をなし得ることが明らかである。よって、明細書及び図面は、限定的なものとしてではなく、例示的なものとしてみなされるべきである。本明細書の一部を構成する添付の図面は、例示としてであって限定するものとしてではなく、主題が実践され得る具体的な実施形態を示す。示されている実施形態は、当業者が開示の教示事項を実施可能とする程度に十分な詳細を伴って説明されている。これらから他の実施形態を活用し及び派生させることができ、本開示の範疇から逸脱せずに構造的及び論理的な置換や変更を加え得る。したがって、この詳細な説明は限定的意味において捉えられることを要さず、添付の特許請求の範囲のみによって様々な実施形態の範囲が画されるものであり、それらの特許請求の範囲が与えられる等価物の完全な範囲までに及ぶ。
本明細書では、特定の実施形態を図示及び説明したものの、同じ目的を達成するために意図された任意の構成を、図示の特定の実施形態に代え得ることに留意されたい。本開示は、様々な実施形態の任意の及び全ての適応又は変形を包括することを意図している。上述の実施形態の組合せ、及び本明細書にて特に説明されていない他の実施形態は、上述の説明を考慮すれば、当業者に明らかとなるであろう。
本稿では、特許文献で一般的であるように、「不定冠詞」は、「少なくとも1つ」又は「1つ以上」の他の例や用法とは独立に、1つ又は1つより多いことを含む意図で用いられ得る。本書では、「又は」は、別段の定めなき限り、「A又はB」は「A但しBは無し」、「B但しAは無し」、及び「A且つB」を含むように、非排他性を指すのに用いられる。本稿では、「含む」及び「ここで」という用語は、それぞれ「備える」及び「ここで」の平易な言葉と同等なものとして用いられている。また、後述の請求項では、「含む」及び「備える」はオープンエンド型であり、即ち、請求項においてそれらの後に列挙されたものに加えて要素を含むシステム、物品、組成物、製剤又はプロセスは、その請求項の範囲に含まれるものと依然としてみなされる。さらに、後述の請求項では、「第1」、「第2」、「第3」等の用語は、単に標識的に用いられており、その対象に数値的な要件を課すことを意図してはいない。
開示の要約は、読者が技術開示の性質を迅速に把握できるような要約を必要とする37 C.F.R. §1.72(b)を遵守するために提供されている。当該要約は、特許請求の範囲又は意味の解釈又は制限に用いられないとの認識の上で提出されている。また、先の詳細な説明において、本開示の合理化目的で、様々な特徴が単一の実施形態に合一化されていることに留意されたい。この開示方法は、権利請求される実施形態が各請求項に明示的に記載されている以上の特徴を要している意図を反映したものと解釈されてはならない。むしろ、以下の請求項に反映されているように、発明的主題は、単一の開示された実施形態の全ての特徴よりも少ない特徴に求められる。したがって、後述の請求項は、各請求項が別個の実施形態として独立したものとして、詳細な説明に組み込まれる。
Claims (20)
- 方法であって:
1つ以上のコンピューティングマシンにて履き物の入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、
前記入力画像に基づいて且つ前記1つ以上のコンピューティングマシンにて実装された機械学習エンジンを用いて、前記履き物のNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3D(3次元) CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3D CADデジタルアセットを生成するステップは:
訓練済み分類エンジンを用いて前記履き物の視覚的コンポーネントを識別するステップと、
前記履き物の前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3D CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、
前記3D CADデジタルアセットを表す出力を提供するステップと、を含む、方法。 - 請求項1に記載の方法において、前記スプラインは制御点と前記制御点に基づいた数学的関数とを備えるものであり、前記スプラインに対して反復的に適合化をなすことは前記視覚的コンポーネントに基づいて前記スプラインの前記制御点に対して変換を加えることを伴う、方法。
- 請求項1に記載の方法において、前記分類エンジンは、履き物の視覚的コンポーネントを表す画像と履き物の視覚的コンポーネントの表現形式についての変換を備える訓練データセットを用いて訓練されるものであって、前記変換はスケーリング、回転、及び並進の1つ以上とされる、方法。
- 請求項1に記載の方法において、前記スプラインに対して反復的に適合化をなすことは、前記スプラインが製造制約条件を充足することを担保することを含む、方法。
- 請求項1に記載の方法において、更に、
前記1つ以上のコンピューティングマシンにて、エンドユーザによって提供されたメトリックスに基づいて、1つ以上のメトリックスが所定の範囲内となる迄、前記3D CADデジタルアセットを、反復的に緻密化するステップと、
前記緻密化された3D CADデジタルアセットを表す出力を提供するステップとを含む、方法。 - 請求項5に記載の方法において、前記3D CADデジタルアセットを反復的に緻密化するステップは:
前記1つ以上のコンピューティングマシンにて、前記3D CADデジタルアセットを複数のスプラインとして表すステップと、
前記複数のスプラインの1つ以上の制御点を前記所定の範囲に基づいて反復的に操作するステップとを含む、方法。 - 請求項1に記載の方法において、前記3D CADデジタルアセットを生成するステップは、更に、:
前記入力画像を前処理して、前記入力画像を1つ以上の2D(2次元)正投影ビューに変換するステップを含む、方法。 - 請求項7に記載の方法において、前記前処理は1つ以上の2D変換を伴う、方法。
- 請求項7に記載の方法において、前記訓練済み分類エンジンは、前記前処理済み2D正投影ビューに基づいて利用不能な2Dビューを合成するように訓練されたGAN(敵対的生成ネットワーク)エンジンを備えるものであって、前記視覚的コンポーネントは前記前処理済み2D正投影ビュー及び前記合成済み2Dビューに基づいて識別される、方法。
- 請求項1に記載の方法において、前記訓練済み強化学習エンジンは、少なくとも1つの製造トレランス制約及び少なくとも1つのデザインカテゴリ規則制約に基づいて動作する、方法。
- 請求項1に記載の方法において、前記視覚的コンポーネントは:ミッドソール、アウトソール、ヴァンプ、フォクシング、レースガード、ヒールカウンタ、ヒールレイク、バイトライン、接地部、トースプリング、及びトーカウンタの少なくとも1つを備える、方法。
- 請求項1に記載の方法において、前記訓練済み分類エンジンは前記視覚的コンポーネントについて境界ボックスを生成するものであって、前記境界ボックスは、前記視覚的コンポーネントと関連付けられているものとして示されている少なくとも第1の画素のセットと、前記視覚的コンポーネントと関連付けられていないものとして示されている少なくとも第2の画素のセットとを備える、方法。
- 請求項1に記載の方法において、前記訓練済み分類エンジンは、前記視覚的コンポーネントの第1の部分を識別する第1のサブエンジンと、前記視覚的コンポーネントの第2の部分を識別する第2のサブエンジンとを備えるものであって、前記視覚的コンポーネントの前記第2の部分は前記視覚的コンポーネントの前記第1の部分のサブコンポーネントであり、前記第2のサブエンジンは前記第1のサブエンジンによって識別された前記視覚的コンポーネントの前記第1の部分に対して作用する、方法。
- 請求項1に記載の方法において、前記3D CADデジタルアセットを表す前記出力が下流側エンジンに提供されるものであって、前記下流側エンジンは:3Dプリンティングエンジン、視覚的レンダリングエンジン、及びAR/VRエンジンの1つ以上を含み得る、方法。
- 請求項1に記載の方法において、更に、
前記3D CADデジタルアセットに基づいて且つ前記1つ以上のコンピューティングマシンを用いて、前記3D CADデジタルアセットによって表された前記履き物の製造であって、1つ以上の製造マシンでの製造を制御するステップを含む、方法。 - 命令が格納された非一時的マシン可読媒体であって、該命令が1つ以上のコンピューティングマシンによって実行されると、前記1つ以上のコンピューティングマシンに:
前記1つ以上のコンピューティングマシンにて履き物の入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、
前記入力画像に基づいて且つ前記1つ以上のコンピューティングマシンにて実装された機械学習エンジンを用いて、前記履き物のNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3D(3次元) CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3D CADデジタルアセットを生成するステップは:
訓練済み分類エンジンを用いて前記履き物の視覚的コンポーネントを識別するステップと、
前記履き物の前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3D CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、
前記3D CADデジタルアセットを表す出力を提供するステップと、を含む動作を行わせる、非一時的マシン可読媒体。 - 請求項16に記載のマシン可読媒体であって、前記スプラインは制御点と前記制御点に基づいた数学的関数とを備えるものであり、前記スプラインに対して反復的に適合化をなすことは前記視覚的コンポーネントに基づいて前記スプラインの前記制御点に対して変換を加えることを伴う、マシン可読媒体。
- 請求項16に記載のマシン可読媒体であって、前記分類エンジンは、履き物の視覚的コンポーネントを表す画像と履き物の視覚的コンポーネントの表現形式についての変換を備える訓練データセットを用いて訓練されるものであって、前記変換はスケーリング、回転、及び並進の1つ以上とされる、マシン可読媒体。
- システムであって:
処理回路と、
命令が格納されたメモリであって、前記処理回路によって実行されると、前記処理回路に:
前記処理回路にて履き物の入力画像にアクセスするステップであって、前記入力画像は画素又はヴォクセルベースの画像とされる、ステップと、
前記入力画像に基づいて且つ機械学習エンジンを用いて、前記履き物のNURBS(non-uniform rational basis spline(非一様有理基底スプライン))モデルを含む3D(3次元) CAD(コンピュータ支援設計)デジタルアセットを生成するステップであって、前記3D CADデジタルアセットを生成するステップは:
訓練済み分類エンジンを用いて前記履き物の視覚的コンポーネントを識別するステップと、
前記履き物の前記視覚的コンポーネントについて、スプラインを、訓練済み強化学習エンジンを用いて前記スプラインが前記視覚的コンポーネントから所定の平均距離以内に収まる迄、反復的に適合化するステップであって、前記3D CADデジタルアセットは前記スプラインを含み、前記機械学習エンジンは前記訓練済み分類エンジンと前記訓練済み強化学習エンジンとを備えるステップとを含む、ステップと、
前記3D CADデジタルアセットを表す出力を提供するステップと、を含む動作を行わせる、メモリとを備える、システム。 - 請求項19に記載のシステムにおいて、前記スプラインは制御点と前記制御点に基づいた数学的関数とを備えるものであり、前記スプラインに対して反復的に適合化をなすことは前記視覚的コンポーネントに基づいて前記スプラインの前記制御点に対して変換を加えることを伴う、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063089435P | 2020-10-08 | 2020-10-08 | |
US63/089,435 | 2020-10-08 | ||
PCT/US2021/054136 WO2022076797A1 (en) | 2020-10-08 | 2021-10-08 | Computer architecture for generating footwear digital asset |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023548654A true JP2023548654A (ja) | 2023-11-20 |
Family
ID=81079274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023521668A Pending JP2023548654A (ja) | 2020-10-08 | 2021-10-08 | 履き物デジタルアセットを生成するためのコンピュータアーキテクチャ |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220114289A1 (ja) |
EP (1) | EP4226269A1 (ja) |
JP (1) | JP2023548654A (ja) |
KR (1) | KR20230082668A (ja) |
CN (1) | CN116547665A (ja) |
WO (1) | WO2022076797A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7511465B2 (ja) * | 2020-12-24 | 2024-07-05 | 株式会社アシックス | 靴型作製支援装置、および靴型作製システム |
US11610054B1 (en) | 2021-10-07 | 2023-03-21 | Adobe Inc. | Semantically-guided template generation from image content |
US12056799B2 (en) * | 2022-04-28 | 2024-08-06 | Dassault Systemes Solidworks Corporation | Converting images to sketches that are modifiable using computer-aided design (CAD) software |
CN114861247B (zh) * | 2022-07-06 | 2022-12-30 | 广东时谛智能科技有限公司 | 基于简易设计生成鞋体模型方法、装置、设备及存储介质 |
US20240029353A1 (en) * | 2022-07-14 | 2024-01-25 | Dassault Systemes Simulia Corp. | Automatic creation of three-dimensional (3d) variable resolution region geometries |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL1010452C2 (nl) * | 1998-11-02 | 2000-05-03 | Koelman Intellectueel Eigendom | Werkwijze en inrichting voor het ontwerpen van oppervlakken met een vrije vorm. |
US7945343B2 (en) * | 2006-12-18 | 2011-05-17 | Nike, Inc. | Method of making an article of footwear |
WO2014107520A1 (en) * | 2013-01-02 | 2014-07-10 | Embodee Corp. | Footwear digitization system and method |
US20160110479A1 (en) * | 2014-10-15 | 2016-04-21 | Yong Li | System and method for constructing customized foot orthotics |
DE102018220365A1 (de) * | 2018-11-27 | 2020-05-28 | Adidas Ag | Verfahren zur Herstellung mindestens eines Teils eines Sportartikels |
-
2021
- 2021-10-08 CN CN202180081910.5A patent/CN116547665A/zh active Pending
- 2021-10-08 KR KR1020237015403A patent/KR20230082668A/ko unknown
- 2021-10-08 EP EP21878599.6A patent/EP4226269A1/en active Pending
- 2021-10-08 JP JP2023521668A patent/JP2023548654A/ja active Pending
- 2021-10-08 WO PCT/US2021/054136 patent/WO2022076797A1/en active Application Filing
- 2021-10-08 US US17/497,101 patent/US20220114289A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220114289A1 (en) | 2022-04-14 |
KR20230082668A (ko) | 2023-06-08 |
CN116547665A (zh) | 2023-08-04 |
EP4226269A1 (en) | 2023-08-16 |
WO2022076797A1 (en) | 2022-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111489412B (zh) | 用于使用神经网络生成基本逼真图像的语义图像合成 | |
US20220114289A1 (en) | Computer architecture for generating digital asset representing footwear | |
Kulkarni et al. | Picture: A probabilistic programming language for scene perception | |
US20230070008A1 (en) | Generating three-dimensional object models from two-dimensional images | |
Gálvez et al. | Iterative two-step genetic-algorithm-based method for efficient polynomial B-spline surface reconstruction | |
JP7343963B2 (ja) | 画像を入力とする関数を学習するためのデータセット | |
CN107038751A (zh) | 从2d图像进行3d建模对象的识别 | |
Phan et al. | Color orchestra: Ordering color palettes for interpolation and prediction | |
US20190164055A1 (en) | Training neural networks to detect similar three-dimensional objects using fuzzy identification | |
US10262448B2 (en) | Repurposing existing animated content | |
US11423617B2 (en) | Subdividing a three-dimensional mesh utilizing a neural network | |
US11842468B2 (en) | Synthesizing digital images utilizing image-guided model inversion of an image classifier | |
US20220229943A1 (en) | Joint retrieval and mesh deformation | |
Daneshmand et al. | Size-dictionary interpolation for robot’s adjustment | |
Yetiş et al. | A novel approach for classification of structural elements in a 3d model by supervised learning | |
Khoroshiltseva et al. | Relaxation labeling meets gans: solving jigsaw puzzles with missing borders | |
Arcidiacono | An empirical study on synthetic image generation techniques for object detectors | |
Daneshmand et al. | Real-time, automatic digi-tailor mannequin robot adjustment based on human body classification through supervised learning | |
US11972534B2 (en) | Modifying materials of three-dimensional digital scenes utilizing a visual neural network | |
US20230394734A1 (en) | Generating Machine-Learned Inverse Rig Models | |
US20240144622A1 (en) | Object alignment techniques for animation | |
Varshney et al. | AI-Enable Generating Human Faces using Deep Learning | |
Shelke et al. | Indian heritage monuments identification Using deep learning methodologies | |
Duignan | Exploring Advanced Methodologies for the Generation of Synthetic Data | |
Dev | Data-Driven Modelling of Perceptual Properties of 3D Shapes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240626 |