æç³»åããŒã¿ã«ç°åžžçºèŠããæç³»åç°åžžæ€ç¥ããšã¯ 2020.10.20 æ ªåŒäŒç€ŸLaboro.AIããªãŒãæ©æ¢°åŠç¿ãšã³ãžãã¢ãå€§å Ž åäº æŠãèŠ æ°æž©ãéæ°Žéãã¯ãããšããæ°è±¡ããŒã¿ã亀ééããŒã¿ãªã©ãæéã®å€åã«æ²¿ã£ãŠãŸãšããããæ
å ±ã¯ãæç³»åããŒã¿ãšåŒã°ããŸããæç³»åããŒã¿ã¯ãææãæéããšã®å€åãæããããäž»ã«çšããããŸãããããžãã¹ã·ãŒã³ã§ã¯ããããæç³»åæ
å ±ããã æããã ãã§ãªããæ¥æ¿ãªå€åãç°åžžãèµ·ããå Žåã«ãããå¯ç¥ããããå Žåã«ãã£ãŠã¯éç¥ãããããªä»çµã¿ãæ€èšããããšãéèŠãªãã€ã³ãã«ãªãã¯ãã§ãã ãã®ã³ã©ã ã§ã¯ãããããæç³»åããŒã¿ã«è¡šããç°åžžãæ€ç¥ããããã®ææ³ãæç³»åç°åžžæ€ç¥ãã®ç޹ä»ãšããšãã«SRæ³ãšåŒã°ããææ³ã®æè¡è§£èª¬ãããŠãããŸãã ç®ã次 ã» æç³»åç°åžžæ€ç¥ãšã¯ ã» Spectral ResidualïŒSRæ³ïŒ ã» SRæ³ã®æè¡æŠèŠ ãã» æè¡è§£èª¬ ãã» SRæ³ãç°åžžæ€ç¥ã«é©çšãã ãã» è«æèè
ãã¡ã®å·¥å€« ãã» SRæ³ã®ããŒã¿ãžã®é©çšäŸ ã» ãããããªããŒã¿ã«å¯ŸããŠã®SRæ³ã®é©çš ãã» æ€ç¥ã§ããã±ãŒã¹ ãã» æ€ç¥ã§ããªãã±ãŒã¹ ãã» ãã®ä»ã®ã±ãŒã¹ ã» ãŸãšã ã» åèæç® æç³»åç°åžžæ€ç¥ãšã¯ å®å®ããŠããæ ªäŸ¡ãæ¥å€ãããåããä¿ã£ãŠããæ©æ¢°ãæ¥ã«ããããªåãããã ãããäžå®éã ã£ãSNSã®æçš¿éãæ¿å¢ïŒçäžããŠããïŒãªã©ãããã€ããšéããã§è¡šããããããªæ¥æ¿ãªå€åã¯ãç§ãã¡ã®èº«ã®åãã§ããã°ãã°çºçããŸãã ãæç³»åç°åžžæ€ç¥ïŒTime Series Anomaly DetectionïŒãã¯ããã®åã®éããæç³»åäžã«äžŠã¹ããã倧éã®ããŒã¿ãããéåžžãšã¯ç°ãªãå€ãå€åãåããèŠã€ãåºãæè¡ã§ããäžã®æ ªäŸ¡ããŒã¿ãæ©æ¢°ã»ã³ãµãŒã®ããŒã¿ãSNSæçš¿ã®ãããªãã©ãã£ãã¯ããŒã¿ã¯ãã®ä»£è¡šçãªäŸã§ãããããŒã¿äžã«è¡šããæ¥æ¿ãªå€åãæããããšã¯ãããžãã¹äžã®å±æ©ç®¡çãå®å
šç®¡çã«çµã³ã€ãéèŠãªåãçµã¿ãšèšããã§ãããã ä»åã¯ããã®æç³»åç°åžžæ€ç¥ã®ææ³ã®äžã€ã§ãããSpectral ResidualïŒSRæ³ãšåŒã³ãŸãïŒãããã®ç ç©¶è«æ Time-Series Anomaly Detection Service at Microsoft ãããŒã¹ã«ããªãã玹ä»ããããšæããŸãããŸããå®éã«SRæ³ãçšããŠããŒã¿åæãè¡ããã©ã®ãããªããŒã¿ã ãšç°åžžãæ€ç¥ããããããŸãæ€ç¥ãã«ããã®ããšããããšãèŠãŠãããŸãã Spectral ResidualïŒSRæ³ïŒ SRæ³ã¯ãå®ã¯ããšããšç»åããŒã¿ã«å¯ŸããŠçšããããŠããææ³ã§ããç»åã®äžã«ãã人ãæããç¹åŸŽçãªç®æãã€ãŸãéç«ã£ãåŸåãããéšåãæããããã®æè¡ãšããŠSRæ³ãçšããããŸããïŒ åèæç® â ïŒ å
·äœçã«ã¯ãSRæ³ã§ã¯ïŒæ¬¡å
ã§è¡šçŸãããç»åããŒã¿ãããŒãªãšç©ºéïŒåšæ³¢æ°ã«å€æã»è¡šçŸãã空éïŒã§åŠçãè¡ãããšã§ãç¹åŸŽãæããŸããäžã®å³ã¯ãå
¥åãããç»åã€ã¡ãŒãžã«SRæ³ãé©çšãããã®ã§ããïŒÃïŒãïŒÃïŒãïŒÃïŒãïŒã€ã®ãã£ã«ã¿ãŒïŒlocal averageïŒã®å¹
ã§ã®çµæã瀺ããŠããŸããããããã§ãå®¶ã®ããäœçœ®ã匷調ãããŠããããšãããããŸãã ïŒåºå
žïŒ åèæç®â ïŒ ãã®SRæ³ãæç³»åããŒã¿ã«é©çšãããšããããšã¯ãäžæ¬¡å
ã®ããŒã¿ã«é©çšãããšããããšã§ããå
ã«çµæã瀺ããšä»¥äžã®ããã«ãªããŸããïŒæ¬¡å
ã®ç»åããŒã¿ãšåãããã«ãïŒæ¬¡å
ã®æç³»åããŒã¿ã§ãèµ€ç¹ã®éšåã®ç°åžžå€ã匷調ãããŠããããšãããããŸãã ïŒåºå
žïŒ åèæç®â¡ ïŒ SRæ³ã®æè¡æŠèР以äžããã¯ãSRæ³ã®è©³çްã«ã€ããŠãè«æ” Time-Series Anomaly Detection Service at Microsoft “ ã«åºã¥ããŠããã®æè¡çãªæŠèŠã解説ããŠãããŸãã SRæ³ã«ãã£ãŠç®åºãããå€ãsaliency mapãšåŒã³ãŸããSRæ³ã«ããç°åžžæ€ç¥ã¯ãæç³»åããŒã¿ã«å¯ŸããŠSRæ³ãé©çšããŠsaliency mapãç®åºããããŠsaliency mapãããéŸå€ä»¥äžã®ç¹ãanomalyïŒã¢ãããªãŒïŒç°åžžå€ïŒãšå€å®ãããã®ã§ãã å
·äœçã«ã¯ãæç³»åããŒã¿ããå®ç©ºéããŒã¿ãããŒãªãšç©ºéã«é£ã°ããããŒãªãšç©ºéäžã§âããåŠçâãããåŸã«ãå®ç©ºéã«éããŒãªãšå€æã§åŒãæ»ãææ³ã§ããâããåŠçâãšããã®ã¯ãäžã§èŠãããã«ãåšããšéãåšæ³¢æ°é åãéç«ããããšãããã®ã§ãããããããšã§å®ç©ºéã§ã®ç¹åŸŽçãªéšåãéç«ãããããšãã§ãããšèããããŠããŸãã åé¡èšå®ãšããŠäžæ¬¡å
ããŒã¿ã§èããå Žåã®æé ããæ¬¡ã«è§£èª¬ããŠãããŸãã æè¡è§£èª¬ \(\vec{x}\ =(x_1, x_2, \cdots, x_n)\)ãå®ç©ºéã®ãã¯ãã«ãšããŸãããããããŒãªãšå€æããããšã§ã\(\vec{f}\ =(f_1, f_2, \cdots, f_n)\)ãåŸãããŸããããããã®\(f_j\)ã¯è€çŽ æ°ã§ã\(f_j = r_j \exp(i \theta_j) (r_j, \theta_j \in \mathbb{R})\)ãšè¡šçŸããŸãããããŠãçµ¶å¯Ÿå€æåã§ãã\(r_j\)ã倿ããŠ\(f’_j = r’_j exp(i \theta_j) (râ_j, \theta_j \in \mathbb{R})\)ãæ°ãã«äœæããŸãïŒ\(r’_j\)ãç®åºããåŒã¯åŸè¿°ïŒã\(\vec{f’} \ = (f’_1, f’_2, \cdots, f’_n)\)ã«å¯ŸããŠéããŒãªãšå€æãè¡ããå®ç©ºéã«åŒãæ»ãããã¯ãã«\(\vec{x’} \ = (x’_1, x’_2, \cdots, x’_n)\)ã«å¯ŸããŠçµ¶å¯Ÿå€æåãåãåºãã\(\vec{S} \ = (\|x’_1\|, \|x’_2\|, \cdots, \|x’_n\|)\)ãsailency mapãšåŒã³ãŸããsaliency map ã¯ãäžã§æžãããšããã\(\vec{x}\)ã®äººéãèŠãŠãç¹åŸŽçã ãªãŒããšæããç¹ãéç«ããããã®ã§ããããã§ã\(\log{r’_j}\)ã¯ã\(\log{r_j}\)ã«å¯ŸããŠçŽè¿ã®å¹³åãåŒãããã®ã§ãæ°åŒã§è¡šçŸãããšã\(\log{r’_j} =\log{r_j} – \frac{1}{q}\sum_{i=1}^{q}{\log{r_{j+1-i}}}\)ã§ãã\(q\)ã¯ãã€ããŒãã©ã¡ãŒã¿ãŒã§ãlocal average ãç®åºããéã«äœ¿çšããããŒã¿æ°ã§ãã ãã®æé ããŸãšãããšã次ã®ããã«ãªããŸãã 1. ããŒãªãšå€æ ã» \(\mathcal{F}:\vec{x}\ = (x_1, x_2, \cdots, x_n) \mapsto \vec{f}\ = (f_1, f_2, \cdots, f_n)\) ã» \(f_j = r_j \exp(i \theta_j) (r_j, \theta_j \in \mathbb{R})\) 2. ããŒãªãšç©ºéã§ã®åŠç ã» \(\vec{f}\ = (f_1, f_2, \cdots, f_n) \mapsto \vec{f’}\ = (f’_1, f’_2, \cdots, f’_n)\) ã» \(f’_j = r’_j exp(i \theta_j) (râ_j, \theta_j \in \mathbb{R})\) ã» \(\log{r’_j} =\log{r_j} – \frac{1}{q}\sum_{i=1}^{q}{\log{r_{j+1-i}}}\) 3. éããŒãªãšå€æ ã» \(\mathcal{F}^{-1}:\vec{f’}\ = (f’_1, f’_2, \cdots, f’_n) \mapsto \vec{x’}\ = (x’_1, x’_2, \cdots, x’_n)\) ã» \(\vec{S}\ = (\|x’_1\|, \|x’_2\|, \cdots, \|x’_n\|)\) ã» \(\vec{S}\) : saliency map ãªãã \(f’_j = exp(i \theta_j)\) ãšããŠsaliency map ãæ±ããããŒãžã§ã³ãååšããŠãããã»ãŒåãsaliency map ãåŸãããããšãç¥ãããŠããŸãïŒ åèæç®â¢ ïŒãèšç®è² è·çã«ã¯ã\(f’_j = exp(i \theta_j)\)ã®æ¹ã軜ããè«æã§ã¯ã\(f’_j = r’_j exp(i \theta_j) (râ_j, \theta_j \in \mathbb{R})\) ã®æ¹ãçšããŠããŸãã SRæ³ãç°åžžæ€ç¥ã«é©çšãã äžã®æé ã§æ±ãã saliency map ã«å¯ŸããŠã¹ã³ã¢ãç®åºããanomalyãå€å®ããŸããå
·äœçã«ã¯ãSRã®ã¹ã³ã¢ã \(\frac{S_i – \overline{S_i}}{\overline{S_i}}\) ãšå®çŸ©ãããã®å€ãéŸå€\(\tau\) ãè¶
ããå Žåã«anomalyãšå€å®ããŸããããã§\(S_i\) 㯠\(x_i\) ãšåãäœçœ®ã«å¯Ÿå¿ãã saliency map ã§ã\(\overline{S_i} = \frac{1}{z}\sum_{j=1}^{z}{S_{i+1-j}}\) ã§ãã\(\tau\) ã¯anomalyå€å®ã®éŸå€ã§ã\(z\) ã¯local average ãç®åºããéã«äœ¿çšããããŒã¿æ°ã§ãã è«æèè
ãã¡ã®å·¥å€« 詳ããæ¹ãªããåç¥ã®ãšããã§ãããããŒãªãšå€æã¯ããŒã¿ç«¯ã®åœ±é¿ã匷ãåããŸããSRæ³ã§ãããŒã¿ç«¯ã®åœ±é¿ãåããŠããŸãã端ã®saliency mapã«æå³ããªãããŒã¯ãåºãåŸåããããŸããäžã®å³ã¯ãå·Šãæç³»åããŒã¿ã§ãå³ããã®ããŒã¿ã«SRæ³ãé©çšãããã®ã§ããå
ã
ã®æç³»åããŒã¿ã§ã¯ç¹ã«ç°åžžããªãã£ã端ããsaliency map ã§ã¯äž¡ç«¯ã®å€ã倧ãããªã£ãŠããã®ãããããŸãã saliency map ã®ããŒã¿ç«¯ã®æå³ããªãããŒã¯ã®ã±ã¢ã®ããã«ãèè
ãã¡ã¯ä»¥äžã®ããã«å
ã
ã®æç³»åããŒã¿ã«å€ã远å ãã工倫ãè¡ã£ãŠããŸãã\(\vec{x} \ = (x_1, x_2, \cdots, x_n)\)ã«å¯ŸããŠãå³ç«¯ã«\(\kappa\)åã®ããŒã¿ã远å ããæ°ãã\(\vec{\hat{x}}\ = (x_1, x_2, \cdots, x_n, x_{n+1}, \cdots, , x_{n+\kappa})\)ãäœæããŸããããã§ã\(x_{n+1} = x_{n+2} = \cdots = x_{n+\kappa}\)ã§ãç®åºåŒã¯ä»¥äžã§ãã \(\overline{g}\ = \frac{1}{m}\sum_{i=1}^{m} g(x_n, x_{n-i})\) \(x_{n+1} = x_{n-m+1} + \overline{g} \cdot m\) ããã§\(g(x_i, x_j)\)ã¯åŸãã§ã \(g(x_i, x_j) = \frac{x_i – x_j}{i – j}\)ã§ãã \(\vec{\hat{x}} \)ã«å¯ŸããŠãsaliency map: \(\vec{\hat{S}}\ = (\hat{S}_1, \hat{S}_2, \cdots, \hat{S}_n, \cdots, \hat{S}_{n+\kappa})\)ãèšç®ãã\((\hat{S}_1, \hat{S}_2, \cdots, \hat{S}_n)\)ãåãåºããšãããŒã¿è£éãè¡ããªãã£ãå Žåããããã¬ã€ãªsaliency map ãååŸã§ããããšãå®éšçã«æããã«ãªã£ãŠããŸãã SRæ³ã®ããŒã¿ãžã®é©çšäŸ äžã«ç€ºããæç³»åããŒã¿ã«å¯ŸããŠãSRæ³ãçšããŠããŒã¿è£éãè¡ããªãã£ãå ŽåïŒ\(\kappa=0, m=0\)ïŒãããŒã¿è£éãè¡ãªã£ãå ŽåïŒ\(\kappa=5, m=5\)ïŒã®2éãã§ãsaliency mapãšscore ãç®åºããçµæãäžã®å³ã§ããäž¡è
ã§ãã®ä»ã®ãã€ããŒãã©ã¡ãŒã¿ãŒã¯å
±éã®ãã®ãçšããŠããã\(\log{râ_i}\)ãæ±ããéã®local average ã®å¹
\(q\)ã¯3, scoreãæ±ããéã®local average ã®å¹
\(z\)ã¯5ãšããŠããŸãããŸããçªå¹
ã¯ããŒã¿åºéãã®ãã®ãã€ãŸãå
šããŒã¿ãå«ãå¹
ãšããŠããŸãã ãã®å³ãããããããšã¯ã2ç¹ãããŸãã 1. anomalyç¹ã«å¯ŸããŠãsaliency mapã score ã®å€ã倧ãããªã£ãŠããŠãanomalyãæããããšãã§ããŠããã 2. ããŒã¿è£éã®æå¹æ§ã確èªã§ãããã€ãŸããããŒã¿è£éãè¡ã£ã\(\kappa=5, m=5\)ã§ã¯ãsaliency mapã®å³ç«¯ã®å€ã®ããŒã¯ãæ¶ããŠãããããã«ä»éãã圢ã§ãscoreã®å³ç«¯ã®ããŒã¯ãæ¶ããŠããã ïŒâ»saliency mapã®å·Šç«¯ã®ããŒã¯ãæ¶ãããå Žåã¯ãããŒã¿è£éã巊端ã«ãè¡ãã°è¯ãããã ããscore ãæ±ããåŠçã®æ§è³ªäžãscoreã®å·Šç«¯ã®ããŒã¯ã¯æ¶ããã®ã§ããŒã¿è£éãè¡ãå¿
èŠã¯ãªããïŒ ãããããªããŒã¿ã«å¯ŸããŠã®SRæ³ã®é©çš ä»åãYAHOO RESERCHã®æç³»åç°åžžæ€ç¥çšã®ããŒã¿ã»ããïŒ åèæç®â£ ïŒ ã®å
šããŒã¿ã«å¯ŸããŠSRæ³ã®é©çšã詊ã¿ãŸããããã®äžããããã€ãæç²ããŠãç°åžžãšããŠæ€ç¥ã§ããããªããŒã¿ã«ã©ã®ãããªåŸåããããã宿§çã«ææ¡ããŠã¿ãããšæããŸãã äžå³ã®èŠæ¹ïŒå段ã®ã ã»å·Šã®å³ã¯ãYAHOO ããŒã¿ã»ããã®æç³»åããŒã¿ã§ãé»äžžãanomalyãšããŠå®çŸ©ããããã® ã»äžå€®ã®å³ã¯ãsaliency mapããŒã¿ ã»å³ã®å³ã¯ãsaliency mapãæ±ããéã«\(f’_j = \exp(i \theta_j)\)ãšããããŒãžã§ã³ã§ã®saliency map å³ã®å³ã®saliency mapã®èšç®ã¯ãèšç®è² è·ã®èгç¹ãã軜éåãããã®ã§ãããäžå€®ã®ãã®ãšå€§ããéããªãããšãããããŸãã æ€ç¥ã§ããã±ãŒã¹ ã»åšèŸºã®ç¹ã«å¯ŸããŠãé£ã³åºããŠããã±ãŒã¹ æ€ç¥ã§ããªãã±ãŒã¹ ã»ãªã ããã«å€åããŠãããããªç°åžžç¹ãç°åžžç¹ãå±åšããã±ãŒã¹ t=500ã600ã«ããç°åžžç¹ãæ€åºã§ããŠããªã t = 900 ~1000 ã®ç°åžžç¹ïŒã®éåïŒãæ€ç¥ã§ããŠããªã ãã®ä»ã®ã±ãŒã¹ äžæ¹ãç®èŠã§ã¯ç°åžžã ãšæããªãç°åžžç¹ã®æ€ç¥ãSRæ³ã ãšã§ããã±ãŒã¹ããããŸãã t= 1000~1500ã«ããç°åžžç¹ã¯ç®èŠã§ã¯æ°ã¥ããªãããSRæ³ã ãšãããã ãŸãšã ä»åã¯ãæç³»åããŒã¿ããã®ç¹åŸŽãç°åžžãæ€åºããããã®æè¡ãæç³»åç°åžžæ€ç¥ã®ãã¡ãSRæ³ã解説ããŸããã SRæ³ã¯åäžã®éŸå€ãçšããŠããŸããããããæè»ãªåœ¢ã§ç°åžžæ€åºãè¡ãããšãç®æããSR-CNNãšããã¢ãã«ãéçºãããŠããŸããSR-CNNã¯ããã®ååã®éããSRã«CNNïŒConvolutional Neural NetworkïŒç³ã¿èŸŒã¿ãã¥ãŒã©ã«ãããã¯ãŒã¯ïŒãçµã¿åãããã¢ãã«ã§ãã SR-CNNã®ã¢ãŒããã¯ã㣠SR-CNNã«ã¯ãã¥ãŒãã³ã°ã®é£ãããªã©ããŸã 課é¡ãæããããéšåããããŸããã§ãããæç³»åç°åžžæ€ç¥ã®æè¡ã¯ãåé ã§ç޹ä»ããæ°è±¡ããŒã¿ãæ ªäŸ¡ãã»ã³ãµãŒé åãªã©ã ãã§ãªãããã®ã»ãå€ãã®ããžãã¹é åã§ã®æŽ»çšå¯èœæ§ããã€æè¡ã§ããä»åŸãŸããŸãã®æ¹åãšé²æ©ãé²ã¿ãæ§ã
ãªããžãã¹ã·ãŒã³ã§å°å
¥ãããŠããããšãæåŸ
ãããŸãã åèæç® â Saliency detection: A spectral residual approach â¡ Time-Series Anomaly Detection Service at Microsoft ⢠Spatio-temporal saliency detection using phase spectrum of quaternion Fourier transform â£YAHOO RESEARCHããŒã¿ã»ãã A Benchmark Dataset for Time Series Anomaly Detection ã³ã©ã å·çè
æ©æ¢°åŠç¿ãšã³ãžãã¢ãå€§å Ž åäº æ±äº¬å€§åŠå€§åŠé¢ å·¥åŠç³»ç ç©¶ç§ç©çå·¥åŠå°æ» å士åæèª²çšä¿®äºã修士ïŒå·¥åŠïŒãåšåŠäžã¯ãç©çã®ç¬¬äžåçèšç®ãçšããŠç©è³ªã®æ§è³ªã®ç ç©¶ãè¡ãã忥åŸã蚌åžäŒç€Ÿã®ã¯ãªã³ããšããŠéå©ã»çºæ¿ç³»ã®ããªããã£ãã®ãã©ã€ã·ã³ã°ã¢ãã«ã®äœæã»æ€èšŒããã³ãªã¹ã¯èšç®æ¥åãæ
åœããã®åŸãè»äž¡ããŒã¿ãçšããããŒã¿åææ¥åãšãµãŒãã¹äŒç»ã仮説æ€èšŒïŒPoCïŒã«åŸäºã2020幎2æããLaboro.AIã«åç»ã