(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024080444
(43)【公開日】2024-06-13
(54)【発明の名称】因子分析装置、方法、及びプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240606BHJP
G06F 18/27 20230101ALI20240606BHJP
【FI】
G06N20/00
G06F18/27
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022193634
(22)【出願日】2022-12-02
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】平光 則仁
(72)【発明者】
【氏名】岡田 浩
(72)【発明者】
【氏名】中野 一志
(72)【発明者】
【氏名】三嶋 淳也
(57)【要約】
【課題】製品の製造プロセスにおいて製品に生じる現象を予測する機械学習モデルにおいて、予測に影響を与える因子の影響度を分析する。
【解決手段】取得部32が、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、加工時の製品の状態を示す状態情報を取得し、学習部34が、状態情報を用いて、複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する予測モデル42を学習し、判定部36が、学習結果に基づいて、複数の因子と予測モデル42による予測結果とに相関があるか否かを判定し、相関があると判定された場合に、分析部38が、状態情報を用いた重回帰分析により、予測結果に対する複数の因子の各々の影響度を分析する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得する取得部と、
前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習する学習部と、
前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定する判定部と、
前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を分析する分析部と、
を含む因子分析装置。
【請求項2】
前記分析部は、分析した前記複数の因子の各々の影響度、前記影響度が所定値以上の因子、又は前記影響度が上位所定個の因子を含む分析結果を出力する請求項1に記載の因子分析装置。
【請求項3】
前記判定部は、前記機械学習モデルの予測精度が、予め定めた範囲内の場合に、前記複数の因子と前記機械学習モデルによる予測結果とに相関があると判定する請求項1又は請求項2に記載の因子分析装置。
【請求項4】
前記分析部は、前記複数の因子の各々に基づく変数を説明変数とし、前記状態情報を目的変数として重回帰分析を行って得られる重回帰式の各説明変数についての係数に基づいて、前記複数の因子の各々の影響度を算出する請求項1又は請求項2に記載の因子分析装置。
【請求項5】
前記分析部は、前記係数を標準偏回帰係数とし、各説明変数についての標準偏回帰係数の合計に対する、各説明変数についての標準偏回帰係数の割合を前記影響度として算出する請求項4に記載の因子分析装置。
【請求項6】
前記分析部は、いずれかの因子についてのべき乗項を前記説明変数に追加する処理、異なる複数の因子の組み合わせを前記説明変数に追加する処理、及び前記複数の因子のいずれかを前記説明変数から除外する処理の少なくとも1つの処理を行う請求項4に記載の因子分析装置。
【請求項7】
前記学習部は、前記複数の因子から選定した因子を説明変数とした場合に、前記機械学習モデルにより予測される予測結果と、前記説明変数に対応する前記状態情報との差である予測誤差を含む損失関数を最小化するように前記機械学習モデルのパラメータを更新する請求項1又は請求項2に記載の因子分析装置。
【請求項8】
前記学習部は、前記判定部により、前記複数の因子と前記機械学習モデルによる予測結果とに相関がないと判定された場合、前記説明変数とする因子を選定し直す請求項7に記載の因子分析装置。
【請求項9】
取得部が、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得し、
学習部が、前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習し、
判定部が、前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定し、
分析部が、前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を分析する
因子分析方法。
【請求項10】
コンピュータを、
加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得する取得部、
前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習する学習部、
前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定する判定部、並びに、
前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を分析する分析部
として機能させるための因子分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、因子分析装置、因子分析方法、及び因子分析プログラムに関する。
【背景技術】
【0002】
従来、半導体等の製品の製造プロセスにおいて製品に生じる現象(例えば、基板の反り等)を、機械学習モデルを用いてシミュレーションすることが行われている。例えば、製造プロセスの所定の処理単位において、対象物の処理に伴い測定された時系列データ群を取得し、取得した時系列データ群を複数のネットワーク部を用いて処理することで各出力データを出力する仮想測定装置が提案されている。この装置は、出力された各出力データの合成結果が、製造プロセスの所定の処理単位において対象物を処理した際の結果物の検査データに近づくよう、複数のネットワーク部を機械学習する(特許文献1)。
【0003】
また、ディープニューラルネットワーク等を用いた機械学習モデルでは、機械学習モデルがどのような考え方に基づいて判断を行い、結果を算出しているか等がブラックボックスである。そこで、ディープニューラルネットワーク等を用いた機械学習モデルにおける主要な説明変数を抽出する情報処理装置が提案されている。この装置は、データベースに格納されているデータに基づいてディープラーニングモデルを用いて予測処理を実行する。そして、この装置は、予測結果を目的変数とし、データを説明変数として重回帰分析を行い、重回帰分析の結果に基づいて、ディープラーニングモデルの予測結果を説明するための変数を決定する(特許文献2)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2020/111258号
【特許文献2】国際公開第2018/142753号
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献2に記載の情報処理装置は、金融データを対象としている。しかし、製品の製造プロセスにおいて製品に生じる現象のように、複数の製品構成部品及び物理法則が介在する場合におけるアルゴリズム等の論理式に従った予測、かつ、測定されるデータが一定のばらつきを持つような場合では、機械学習モデルにより予測できる傾向が存在しない場合がある。このような場合には、特許文献2の手法では、機械学習モデルによる予測を適切に説明することができないという問題がある。
【0006】
本発明は、上記の点に鑑みてなされたものであり、製品の製造プロセスにおいて製品に生じる現象を予測する機械学習モデルにおいて、予測に影響を与える因子の影響度を分析することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、第1態様に係る因子分析装置は、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得する取得部と、前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習する学習部と、前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定する判定部と、前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を分析する分析部とを含んで構成される。
【0008】
また、第2態様に係る因子分析方法は、取得部が、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得し、学習部が、前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習し、判定部が、前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定し、分析部が、前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を分析する方法である。
【0009】
また、第3態様に係る因子分析プログラムは、コンピュータを、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得する取得部、前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習する学習部、前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定する判定部、並びに、前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を分析する分析部として機能させるためのプログラムである。
【発明の効果】
【0010】
本発明に係る因子分析装置、方法、及びプログラムによれば、製品の製造プロセスにおいて製品に生じる現象を予測する機械学習モデルにおいて、予測に影響を与える因子の影響度を分析することができる。
【図面の簡単な説明】
【0011】
【
図1】因子分析装置のハードウェア構成を示すブロック図である。
【
図2】因子分析装置の機能構成の例を示すブロック図である。
【
図4】基板の反りによる製品の不具合を説明するための図である。
【
図5】基板の反りの測定について説明するための図である。
【
図6】基板表面の測定点を説明するための図である。
【
図7】基板表面の高さが測定される温度を説明するための図である。
【
図8】基板表面形状データのデータ構成の一例を示す図である。
【
図9】データ拡張の一例を説明するための図である。
【
図10】データ拡張の一例を説明するための図である。
【
図11】予測モデルの学習における損失関数の収束を説明するための図である。
【
図12】予測モデルの学習における予測誤差の一例を説明するための図である。
【
図13】測定値と予測値との相関を示すグラフである。
【
図15】因子分析処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法及び比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0013】
まず、本実施形態に係る因子分析装置のハードウェア構成について説明する。
【0014】
図1は、本実施形態に係る因子分析装置10のハードウェア構成を示すブロック図である。
図1に示すように、因子分析装置10は、CPU(Central Processing Unit)12、メモリ14、記憶装置16、入力装置18、出力装置20、記憶媒体読取装置22、及び通信I/F(Interface)24を有する。各構成は、バス26を介して相互に通信可能に接続されている。
【0015】
記憶装置16には、因子分析処理を実行するための因子分析プログラムが格納されている。CPU12は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、CPU12は、記憶装置16からプログラムを読み出し、メモリ14を作業領域としてプログラムを実行する。CPU12は、記憶装置16に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
【0016】
メモリ14は、RAM(Random Access Memory)により構成され、作業領域として一時的にプログラム及びデータを記憶する。記憶装置16は、ROM(Read Only Memory)、及びHDD(Hard Disk Drive)、SSD(Solid State Drive)等により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0017】
入力装置18は、例えば、キーボードやマウス等の、各種の入力を行うための装置である。出力装置20は、例えば、ディスプレイやプリンタ等の、各種の情報を出力するための装置である。出力装置20として、タッチパネルディスプレイを採用することにより、入力装置18として機能させてもよい。
【0018】
記憶媒体読取装置22は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、ブルーレイディスク、USB(Universal Serial Bus)メモリ等の各種記憶媒体に記憶されたデータの読み込みや、記憶媒体に対するデータの書き込み等を行う。通信I/F24は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0019】
次に、本実施形態に係る因子分析装置10の機能構成について説明する。
【0020】
図2は、因子分析装置10の機能構成の例を示すブロック図である。
図2に示すように、因子分析装置10の所定の記憶領域には、因子水準表40と、予測モデル42とが記憶される。予測モデル42は、製品の製造プロセスにおいて製品に生じる現象を予測する機械学習モデルである。なお、後述する因子分析処理の初期段階で因子分析装置に記憶される予測モデル42は、学習前の機械学習モデルである。予測モデル42は、例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)等の深層学習による機械学習モデルである。
【0021】
因子水準表40は、予測に影響を与える複数の因子の各々について各水準の値を定めた表である。
図3に、因子水準表40の一例を概略的に示す。
図3の例では、各因子について、3つの水準(水準1、水準2、水準3)の各々の値(A1、A2、B1等)を定めた因子水準表40の例を示している。
【0022】
なお、本実施形態では、製品の製造プロセスにおいて製品に生じる現象として、電化製品等に使われるプリント基板の部品実装プロセスにおける基板の反りを想定する。プリント基板の部品実装プロセスには、基板上に部品を配置し、リフロー又はフローはんだ付けにより、部品を基板上に実装する部品実装工程が含まれる。この部品実装工程のはんだ付け時の加熱冷却により、基板に反りが生じる場合がある。
図4に示すように、基板に反りが生じた場合、部品がはんだ付けされる基板上の部分であるランドが部品に対して移動することになり、
図4中の矢印で示す箇所に引っ張り応力が発生し、基板との接合部である部品の一部及びはんだにクラックが発生する可能性がある。これにより、絶縁抵抗不良、静電容量低下等の製品特性の劣化が生じ、製品の不具合に繋がる。また、コネクタ等、端子のはんだ付けの場合には、基板に対する端子の浮きが生じ、同様に、製品の不具合に繋がる。
【0023】
本実施形態では、上記のような製品の不具合を抑制するため、すなわち、部品実装工程における基板の反りを抑制するために、基板の反りに影響する因子、及びそれらの因子の影響度を明確化する。これにより、設計時等に各因子の影響度を反映することで、反りによる不具合の少ない基板の設計を可能にする。
【0024】
上記を踏まえ、因子水準表40には、基板の種別、外形、層構成等の基板形状に応じて、基板の反りに影響する因子として想定される各因子(例えば、基板厚さ、基板の材質、部品の種類等)と、各因子の各水準についての値とを定めておけばよい。
【0025】
また、
図2に示すように、因子分析装置10は、機能構成として、取得部32と、学習部34と、判定部36と、分析部38とを含む。各機能構成は、CPU12が記憶装置16に記憶された因子分析プログラムを読み出し、メモリ14に展開して実行することにより実現される。
【0026】
取得部32は、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、加工時の製品の状態を示す状態情報を取得する。本実施形態においては、取得部32は、上述した因子水準表40に定められた各因子の水準値を組み合わせた複数の条件下での部品実装工程における基板表面形状データを状態情報として取得する。
【0027】
図5に示すように、基板に反りが生じているか否かは、基板の各位置の高さを測定することにより把握可能である。
図5は、基板の中心を通る長手方向及び短手方向のそれぞれの直線に沿った位置における基板の高さを示したものである。
図5の左図は、大きな反りが生じていない状態、
図5の中央の図は、下に凸の方向に大きな反りが生じている状態、
図5の右図は、上に凸の方向に大きな反りが生じている状態を表している。このような状態を捉えるために、本実施形態では、基板表面形状データとして、
図6に示すように、基板表面の複数個所(
図6の例では、9か所)の測定点における高さが測定されている。なお、
図6において、白丸が測定点であり、白丸内の数字は、各測定点の番号を示している。
【0028】
また、上述したように、部品実装工程には、リフロー又はフローはんだ付けによる加熱が行われる。そこで、部品実装工程中において、基板表面の温度が、
図7に示す複数の測定温度(
図7の例では、a~j)になった時点での各測定点の高さが、基板表面形状データとして測定されている。したがって、取得部32は、
図8に示すように、各測定点についての、各温度における高さで表される基板表面形状データを状態情報として取得する。
【0029】
学習部34は、取得部32により取得された状態情報と、因子水準表40とを用いて、複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルである予測モデル42を学習する。
【0030】
具体的には、学習部34は、取得された状態情報に基づいて、予測モデル42を学習するための学習データを作成する。例えば、学習部34は、状態情報が示す各温度における基板の各測定点の高さを目的変数とし、因子水準表40に定められている複数の因子から選定された所定数の因子を説明変数とする学習データを作成する。因子の選定は、因子の組み合わせを総当り的に選定してもよいし、予め定めた優先度順に選定してもよいし、ユーザにより指定された因子を選定してもよいし、全ての因子を選定してもよい。ここで選定される因子を、以下では、「取り上げ因子」という。
【0031】
また、学習部34は、作成した学習データから、データ拡張を行って、拡張学習データを作成する。これは、不具合品の発生確率が低く、サンプルデータ数が少ないこと、条件を変更しながら大量のデータを取得することが難しいこと等を考慮したものである。具体的には、学習部34は、作成した学習データの平均、標準偏差等の統計情報を変えることなく、値を変更したデータを拡張学習データとして作成する。
【0032】
例えば、
図9に示すように、説明変数と目的変数とで表される空間に学習データをプロット(
図9中の黒丸)する。ここで、2水準の学習データでは、予測モデル42の学習が困難である。具体的には、2つの学習データの間の説明変数が予測モデル42に入力された場合、予測結果が安定しなくなる。特に、2つの学習データの中間部分では、
図9の上図中の両矢印で示すように、目的変数の取り得る範囲が大きく、予測誤差が大きくなる可能性が高い。そこで、学習部34は、
図9の下図に示すように、2つの学習データの線形性を確認したうえで、その中点(
図9中の白丸)に対応するデータを拡張学習データとして作成する。
【0033】
また、例えば、学習部34は、
図10に示すように、各学習データの値を誤差分ずらして拡張学習データを作成してもよい。誤差分は、例えば、学習データとの誤差が±0.05の範囲、±0.025の範囲等としてよい。これにより、データ量5倍に拡張可能である。なお、
図10では、学習データが存在する箇所を実線、学習データとの誤差が±0.025の範囲を破線、学習データとの誤差が±0.05の範囲を一点鎖線で表している。
【0034】
学習部34は、作成した拡張学習データを含む学習データの説明変数を予測モデル42に入力して予測される予測結果と、学習データの目的変数との差である予測誤差を含む損失関数を最小化するように、予測モデル42のパラメータを更新する。例えば、更新回数が所定回数に達した際のパラメータが設定された予測モデル42を学習済みの予測モデル42とする。
【0035】
本実施形態では、学習データとして、拡張学習データも用いることで、すなわち、データ拡張を行うことで、
図11に示すように、学習の進度に対する損失関数の収束が早くなる。
図11の例では、学習データの一部を検証データとして、交差検証を行った例である。また、
図11の例では、損失関数として、予測結果と目的変数との平均二乗誤差を用いている。また、
図12に示すように、データ拡張ありの場合の方が、予測誤差も小さく抑えることができる。
【0036】
また、学習部34は、後述する判定部36により、取り上げ因子と予測モデル42による予測結果とに相関がないと判定された場合、取り上げ因子を選定し直し、再度予測モデル42の学習を実行する。また、学習部34は、再度予測モデル42の学習を実行する場合、拡張学習データの作成方法又は作成範囲を変更するなどして、予測モデル42を学習する学習データを変更するようにしてもよい。
【0037】
判定部36は、学習部34による学習結果に基づいて、取り上げ因子と予測モデル42による予測結果とに相関があるか否かを判定する。具体的には、判定部36は、予測モデル42の予測精度が、予め定めた範囲内の場合に、取り上げ因子と予測モデル42による予測結果とに相関があると判定する。例えば、判定部36は、学習済みの予測モデル42における予測誤差又は損失関数が所定値以下の場合に、取り上げ因子と予測モデル42による予測結果とに相関があると判定する。
【0038】
分析部38は、判定部36により相関があると判定された場合に、取得部32で取得された状態情報を用いた重回帰分析により、予測結果に対する複数の因子の各々の影響度を分析する。具体的には、分析部38は、予測モデル42の学習に用いた学習データを用いて、相関があると判定された取り上げ因子の各々に基づく変数を説明変数、取得部32で取得された状態情報を目的変数として設定する。分析部38は、説明変数として、いずれかの取り上げ因子についてのべき乗項、異なる複数の取り上げ因子の組み合わせ(交互作用)を追加してもよいし、取り上げ因子のいずれかを説明変数から除外してもよい。
【0039】
分析部38は、設定した説明変数及び目的変数に基づいて重回帰分析を行い、
図13に示すように、真値と予測値との相関を示す重回帰式を求める。なお、
図13の右図は、測定値(状態情報が示す値)と予測モデル42による予測値との相関を示すグラフであり、左図は、これを正規化したものである。ここでは、測定値を正規化した値を真値としている。分析部38は、求めた重回帰式の各説明変数についての係数に基づいて、複数の取り上げ因子の各々の影響度を算出する。例えば、分析部38は、係数を標準偏回帰係数とした場合、各説明変数についての標準偏回帰係数の合計に対する、各説明変数についての標準偏回帰係数の割合を影響度として算出する。
【0040】
分析部38は、分析した複数の取り上げ因子の各々の影響度を因子分析結果として出力する。
図14に、因子分析結果の一例を示す。
図14の例では、「因子」欄は、重回帰分析の説明変数であり、取り上げ因子単体だけでなく、取り上げ因子のべき乗項や交互作用も含まれる。また、
図14の例では、各取り上げ因子の影響度だけでなく、重回帰分析により得られる、係数、係数の絶対値(abs(係数))、標準偏差、t値、t値の絶対値(abs(t))、及びP-値も含まれている。因子分析結果は、
図14の例に限定されず、分析部38は、影響度が所定値以上の因子のリスト、影響度が上位所定個の因子のリスト等を因子分析結果として出力してもよい。
【0041】
次に、本実施形態に係る因子分析装置10の作用について説明する。
【0042】
図15は、因子分析装置10のCPU12により実行される因子分析処理の流れを示すフローチャートである。CPU12が記憶装置16から因子分析プログラムを読み出して、メモリ14に展開して実行することにより、CPU12が因子分析装置10の各機能構成として機能し、
図15に示す因子分析処理が実行される。
【0043】
ステップS10で、取得部32が、部品実装工程の各温度において測定された、基板表面の各測定点の高さのデータである基板表面形状データを状態情報として取得する。次に、ステップS12で、学習部34が、因子水準表40に定められている複数の因子から、所定数の因子を取り上げ因子として選定する。
【0044】
次に、ステップS14で、学習部34が、状態情報が示す各温度における基板の各測定点の高さを目的変数とし、上記ステップS12で選定した取り上げ因子を説明変数とする学習データを作成する。さらに、学習部34が、学習データを拡張した拡張学習データを作成する。
【0045】
次に、ステップS16で、学習部34が、拡張学習データを含む学習データの説明変数を予測モデル42に入力して予測される予測結果と、学習データの目的変数との差である予測誤差を含む損失関数を最小化するように、予測モデル42のパラメータを更新する。学習部34は、更新回数が所定回数に達するまでパラメータを更新することにより、予測モデル42を学習する。
【0046】
次に、ステップS18で、判定部36が、学習済みの予測モデル42における予測誤差又は損失関数が所定値以下か否か等を判定することにより、取り上げ因子と予測モデル42による予測結果とに相関があるか否かを判定する。相関がある場合には、ステップS20へ移行し、相関がない場合には、ステップS12に戻る。
【0047】
ステップS20では、分析部38が、予測モデル42の学習に用いた学習データを用いて、相関があると判定された取り上げ因子の各々に基づく変数を説明変数、予測モデル42の予測結果を目的変数として設定し、重回帰分析を行う。次に、ステップS22で、分析部38が、重回帰分析により求まる重回帰式の各説明変数についての係数に基づいて、複数の取り上げ因子の各々の影響度を算出する。次に、ステップS24で、分析部38が、算出した複数の取り上げ因子の各々の影響度を含む因子分析結果を出力し、因子分析処理は終了する。
【0048】
以上説明したように、本実施形態に係る因子分析装置は、基板の反りに影響を与える複数の因子の各々の値を異ならせた条件毎に、部品実装工程の各温度において測定された、基板表面の各測定点の高さのデータである基板表面形状データを状態情報として取得する。また、因子分析装置は、状態情報及び因子水準表を用いて、基板の反りを予測する予測モデルを学習し、その学習結果に基づいて、複数の因子と予測モデルによる予測結果とに相関があるか否かを判定する。そして、因子分析装置は、相関があると判定された場合に、予測モデルの学習に用いた学習データにより重回帰分析を行い、予測結果に対する複数の因子の各々の影響度を分析して、出力する。このように、予測モデルによる予測結果と因子とに相関があることを確認したうえで、重回帰分析により因子の影響度を分析することで、基板の反りを予測する予測モデルにおいて、予測に影響を与える因子の影響度を分析することができる。すなわち、ブラックボックスである予測モデルの予測プロセスについて、基板の反りのメカニズムを考慮した論理的な説明が可能になる。
【0049】
上記のように、本実施形態では、CNN等の予測モデルによる基板の反りの予測において、予測結果に対する発生原因(影響する因子とその影響度)と予測結果(基板の反り量)との関係性が説明できるようになる。これにより、基板設計者が設計した基板の反りの予測結果に対して、基板のどの因子をチューニングすれば、基板の反り量を低減させることができるかを明確に理解した上で、基板設計を行うことができる。したがって、ユーザは、基板設計において、根拠を持った設計が可能となるため、試作での後戻りが減少して開発効率の向上につながる。分析結果により、基板設計時に考慮すべき基板の反りに影響する因子とその影響度との因果関係が明確になり、これが基板設計のノウハウとなり、基板設計者のスキルアップにつながる。
【0050】
なお、上記実施形態では、製品の製造プロセスにおいて製品に生じる現象として、基板の反りを一例として説明したが、これに限定されない。本実施形態は、物理法則、メカニズム等に従って加工及び組立される製品への適用が可能である。ここでの加工は、原材料に手を加えて製品を製作することである。加工の工法の一例は、成形、プレス、接合等であり、加工の原理の一例は、加熱、圧力、振動、光等である。本実施形態は、電子部品等、製品特性を満足するために多数の影響因子が存在し、それらの影響因子を、製品特性を満たすために製品設計で決定していくような製品に適用することが有効である。すなわち、製品特性に対する因子間の関係性がトレードオフとなっており、最適条件が容易に導出できないような製品である。例えば、本実施形態は、上述した基板の反り以外にも、電子部品の導電部の接触抵抗を予測する予測モデルにおける因子の分析等、他の現象に対しても適用可能である。
【0051】
また、上記実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した因子分析処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、因子分析処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0052】
また、上記各実施形態では、因子分析プログラムが記憶装置に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM、DVD-ROM、ブルーレイディスク、USBメモリ等の記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【符号の説明】
【0053】
10 因子分析装置
12 CPU
14 メモリ
16 記憶装置
18 入力装置
20 出力装置
22 記憶媒体読取装置
24 通信I/F
26 バス
32 取得部
34 学習部
36 判定部
38 分析部
40 因子水準表
42 予測モデル