0スペクトル・時系列データの前処理⽅法〜平滑化 (スムージング) と微分〜
明治大学 理⼯学部 応用化学科
データ化学⼯学研究室 ⾦⼦ 弘昌

スペクトルデータの特徴
波⻑ (波数) が近いと、吸光度 (強度) の値も似ている
ノイズが含まれる吸光度 (強度) の極大値 (ピーク) 以外のデータも重要

1

時系列データの特徴
時刻が近いと、プロセス変数の値も似ている
ノイズが含まれるプロセス変数の極大値・極小値以外のデータも重要
時間が経つとデータが増える

2

スペクトル・時系列データ
スペクトル・時系列データの特徴は似ている
回帰分析・クラス分類の推定性能を向上させるためのデータの前処理についても、同様の⽅法を適用できる

3

スペクトル・時系列データの前処理平滑化 (スムージング)• スペクトル・時系列データを “均す (ならす)” ことでノイズを低減する• やりすぎて極大値・極小値の情報が消えないように注意する
微分• スペクトル・時系列データの傾きを計算することで、⁃ ベースラインを補正する⁃ 新しいスペクトル情報を抽出する⁃ 時間変化を得る• 一次微分、二次微分、三次微分、・・・• 微分するとノイズが大きくなるので注意する

4

5

単純移動平均 (スペクトルデータ)ある波⻑ (波数) の前後 n 点での強度 (吸光度) の平均値を、平滑化後の値にする• 波⻑ごとに計算する• (2n+1) を 窓枠の数 と呼ぶ• 端っこの波⻑については、(2n+1) 点とれないこともある
強度(吸光度)
平均値(2n+1) 点︓窓枠
波⻑ (波数)6

単純移動平均 (時系列データ)
現在時刻の値を含めて、過去 n 点でのプロセス変数の平均値を、平滑化後の値にする (予測するときは 前後点 をとれないため)• 時刻ごとに計算する• n を 窓枠の数 と呼ぶ• 初期時刻付近については、n 点とれないこともある
プロセス変数平均値

n 点︓窓枠
現在経過時間線形加重移動平均 (スペクトルデータ)7ある波⻑ (波数) の前後 n 点での強度 (吸光度) について、対象の波⻑から離れるにつれて、線形に重みが小さくなる加重平均の値を、平滑化後の値にする• (2n+1) を 窓枠の数 と呼ぶ
ある波⻑ i における強度を xi とし、平滑化後の値を xS,i とすると、

xi − n + 2 xi − n +1 + ⋯ + ( n − 1) xi −1 + nxi + ( n − 1) xi +1 + ⋯ + 2 xi + n −1 + xi + nxS,i =1 + 2 + ⋯ + ( n − 1) + n + ( n − 1) + ⋯ + 2 + 1

線形加重移動平均 (時系列データ)
現在時刻の値を含めて、過去 n 点でのプロセス変数の値について、現在時刻から離れるにつれて、線形に重みが小さくなる加重平均の値を、平滑化後の値にする• (2n+1) を 窓枠の数 と呼ぶ
ある時刻 t におけるプロセス変数の値を xt とし、平滑化後の値を xS,t とすると、∑ {( n − j + 1) x }nxS,t =

t − j +1

j =1n

∑ ( n − j + 1)
j =1

8

指数加重移動平均 (スペクトルデータ)ある波⻑ (波数) の前後 n 点での強度 (吸光度) について、対象の波⻑から離れるにつれて、指数関数的に重みが小さくなる加重平均の値を、平滑化後の値にする• 波⻑からある程度離れると、重みはほぼ 0 になるため、窓枠をある程度大きくしておけば、細かい数字は気にしなくてよいある波⻑ i における強度を xi とし、平滑化後の値を xS,i とすると、⋯ + α 2 xi − 2 + α xi −1 + xi + α xi +1 + α 2 xi + 2 + ⋯xS,i =⋯ + α 2 + α +1+ α + α 2 +⋯α を 平滑化係数 とよぶ

9指数加重移動平均 (時系列データ)
現在時刻の値を含めて、過去 n 点でのプロセス変数の値について、現在時刻から離れるにつれて、指数関数的に重みが小さくなる
加重平均の値を、平滑化後の値にする• 波⻑からある程度離れると、重みはほぼ 0 になるため、窓枠をある程度大きくしておけば、細かい数字は気にしなくてよいある時刻 t におけるプロセス変数の値を xt とし、平滑化後の値を xS,t とすると、{}

xS,t = α xt + (1 − α ) xt −1 + (1 − α ) xt − 2 +⋯α を 平滑化係数 とよぶ

210

微分
隣の波⻑・時刻における値との差分をとることで、一次微分一次微分の値について、隣の波⻑・時刻における値との差分をとることで、二次微分・・・

11Savitzky-Golay (SG) 法 [1,2]12

データの平滑化と微分とを同時に⾏う⽅法• 窓枠のデータを多項式で近似して、多項式の計算値を平滑化後の値とする• 多項式の微分係数を微分後の値とする⁃ 波⻑や時刻ごとに計算
スペクトル解析の分野における前処理の⽅法として一般的
時系列データに用いられる例はあまりないが、効果は確認済み [3,4][1] A. Savitzky, M.J.E. Golay, Anal. Chem. 36, 1627-1639, 1964.
[2] 吉村 季織, ⾼柳 正夫, Journal of Computer Chemistry, Japan, 11, 149-158, 2012[3] H. Kaneko, K. Funatsu, Ind. Eng. Chem. Res., 54, 12630-12638, 2015.
[4] H. Kaneko, K. Funatsu, J. Chem. Eng. Jpn., 50, 422-429, 2017

13332.52.522吸光度

強度

SG法の例

1.5
1元のスペクトル0.5011001150

12001250
波長 [nm]

1.51SG法後0.501100

13000.04

4x 101150

SG (2次微分)

2吸光度

吸光度

0.010-0.01

1300-30.030.02

12001250
波長 [nm]0-2

SG (1次微分)-0.02-0.03
11001150

12001250
波長 [nm]1300-411001150

12001250
波長 [nm]1300

14SG法 (スペクトルデータ)
x = t の多項式
= a2 t2 + a1t + a0x:
強度(例)

窓枠の数
t : 波⻑
多項式の次数
窓枠の数を事前に決めなければならない

15SG法 (時系列データ)
x = t の多項式
= a2 t2 + a1t + a0x:
プロセス
変数(例)

窓枠の数
現在
多項式の次数
窓枠の数

t : 経過時間を事前に決めなければならない16

手法・ハイパーパラメータ・微分次数はどうする︖
４つの手法とハイパーパラメータの値の候補• 単純移動平均︓窓枠の数 (5, 11, 21, 31, …, 201)
• 線形加重移動平均︓窓枠の数 (5, 11, 21, 31, …, 201)
• 指数加重移動平均︓平滑化係数 (0.01, 0.02, …, 1)• SG法︓ 多項式の次数 (1, 2, 3, 4)
窓枠の数 (5, 11, 21, 31, …, 201)
微分次数 (場合によってはその組み合わせ)をどのように決めるか︖① モデルの検証により選択する② ノイズの正規分布性により選択する① モデルの検証による選択
各手法・各ハイパーパラメータの値・各微分係数の値で、回帰分析・クラス分類のモデルの検証を⾏い、最も検証結果のよい組み合わせを選択する• たとえば、⁃ クロスバリデーション推定値の r2 が最も大きい組み合わせ⁃ バリデーションデータの r2 が最も大きい組み合わせ• モデルの検証︓http://datachemeng.com/modelvalidation/17

① モデルの検証による選択 特徴

18メリット• モデルの検証の仕⽅によっては、推定性能の⾼いモデルを構築できる
手法・ハイパーパラメータの値・微分係数 を選択可能
デメリット• 教師ありデータが必要• モデリングを何回も⾏わなくてはならない (時間がかかる)

② ノイズの正規分布性による選択

19

平滑化前後の値を引くことで、平滑化によって “均(なら)された”ノイズの値を計算できる
ノイズは正規分布であると仮定すると、平滑化によって減少したノイズの分布も正規分布に従う必要がある
コルモゴロフ–スミルノフ検定などの正規分布性の検定により、ノイズが正規分布に従う手法・ハイパーパラメータの組み合わせを選択選択された手法・ハイパーパラメータの組の中で、標準偏差が最も大きい ( = ノイズが最も減少した) 組を選択
詳しくは下の論⽂を参照のこと
H. Kaneko, K. Funatsu, J. Chem. Eng. Jpn., 50, 422-429, 2017

② ノイズの正規分布性による選択 特徴
メリット• 教師データ不要• モデリング不要 (時間がかからない)デメリット• 微分次数は選択できない• 選択の際、モデルの推定性能は考慮されていない

20