반응형

분류 전체보기 199

[Optimization] 최적화 알고리즘 :: GA(Genetic Algorithm, 유전 알고리즘)란? GA 예시, R로 GA 구현하기

제조 공정에서 최적화란? 딥러닝을 공부한 사람이라면 최적화(Optimization)이라는 단어를 많이 들어보았을 것이다. 딥러닝에서 모델을 학습하는 과정에서 Cost function 값을 최소화 시키기 위한 Weight들의 최적 조합을 찾아가는 과정을 최적화라 표현한다. 가장 대표적인 알고리즘으로 GD(Gradien Decent), Adam, Momentum 등이 있다. 제조 공정에서도 최고 품질의 제품을 개발하거나, 원가를 절감을 위한 의사결정 과정에서 최적화 알고리즘이 요구된다. 예를 들어, ① 공정 수율을 최대화 하기 위한 공정 운전 조건(ex 4개의 온도 조합) 최적화나 ② 원가 절감을 위해 품질에 영향을 주지 않는 선에서 셀 전압을 낮추기 위한 최적 셀 전압 조합 찾기 등이 있다. 예시 ① 을 ..

AI/Optimization 2022.01.12

[R] XIA(eXplainable AI) 패키지 중 DALEX로 변수 중요도 뽑기(classification)

지난 포스팅에서 XAI와 DALEX 패키지에 대해 간단히 소개하고, Regression 문제에서 DALEX 패키지로 변수 중요도 뽑는 방법과 그 원리를 알아보았다. 2021.11.15 - [AI/잡지식] - [R] XIA(eXplainable AI) 패키지 중 DALEX로 변수 중요도 뽑기 [R] XIA(eXplainable AI) 패키지 중 DALEX로 변수 중요도 뽑기 DALEX :: Variable Importance Measures in R Deep Learning 모델을 Black Box 라 부르곤 한다. 설명이 가능한 Linear Regression과 같은 모델과 달리 layer가 많고 weight가 많아 모델에 대한 설명이 어렵기 때문.. leedakyeong.tistory.com 이번에는 ..

AI/잡지식 2021.11.15 (2)

[R] XIA(eXplainable AI) 패키지 중 DALEX로 변수 중요도 뽑기

DALEX :: Variable Importance Measures in R Deep Learning 모델을 Black Box 라 부르곤 한다. 설명이 가능한 Linear Regression과 같은 모델과 달리 layer가 많고 weight가 많아 모델에 대한 설명이 어렵기 때문이다. 이런 Black Box 모델들을 설명하고자 하는 needs가 꾸준히 있어왔고, 이를 XAI 혹은 eXplainable AI라 부른다. R과 Python에서 이런 XAI가 가능한 패키지들을 몇가지 제공하고 있는데, 다음과 같다. 이 중 R에서 DALEX 패키지를 활용해서 Regression 문제와 Classification 문제를 나누어 변수 중요도 뽑는 방법을 소개하고자 한다. Regression과 Classificatio..

AI/잡지식 2021.11.15

[Markdown] Jupyter notebook tab like r markdown(widgets)

주피터 노트북에서 tab 만들기 R 마크다운에서는 tabset으로 내용을 나누어 깔끔하게 만드는 것이 가능했다. 주피터 노트북에서도 widget으로 해당 기능을 구현할 수 있는데, 그 방법을 알아보고자 한다. 최종 Output은 다음과 같다. First, Second 두 개의 Tab을 만들고, 각각에 histogram 이미지를 넣어주었다. 먼저 필요한 Library를 import 한다. ipywidgets의 widgets 가 핵심이다. import matplotlib.pyplot as plt import pandas as pd import ipywidgets as widgets import numpy as np 다음으로, 그래프를 그려 줄 예시 데이터를 만든다. data1 = pd.DataFrame(np..

Python/MarkDown 2021.09.14

[Python pandas] Fill time interval by group :: 비어있는 시간 채우고, group별 직전값으로 NA 채우기

공정 TAG 데이터를 처리하다보면, 데이터가 수집되지 않아, 비어있는 시간을 채워야 하는 경우가 있다. 특히, Group 별로 사이사이 비어있는 시간을 채우는 방법을 설명하고자 한다. 최종 결과는 다음과 같다. DATE에 분 단위로 비어있는 row를 채우고, 그 값은 Group별 직전 시점의 값으로 채운다. 1. Library pandas와 numpy를 불러온다. import pandas as pd import numpy as np 2. Create Data 실습에 사용할 데이터를 만들어준다. 나중에 Group별로 직전값으로 채워주기 위해 A와 B로 이루어진 Group 컬럼과, 값을 나타내는 value, 시간을 나타내는 DATE로 만들었다. data = pd.DataFrame({'Group':['A','..

[Pandas] Line, Scatter, Box, Histogram, Density, Bar, Pie Plot :: add Hline, Vline, Plot Customizing, by Group

판다스 데이터 프레임으로 여러가지 그래프를 그리고, Customizing 하는 방법에 대해 알아보겠다. 1. Import Library matplotlib 와 seaborn을 활용한다. import matplotlib.pyplot as plt import seaborn as sns import numpy as np import pandas as pd import random 2. Create Sample Data Set 50개의 random 한 데이터를 만들어 준다. group별로 그래프를 customizing 하기 위해 A, B, C로 이루어진 'group' 컬럼도 생성한다. data = pd.DataFrame({"x":np.random.rand(50), "y":np.random.rand(50), "z..

Python/Plot 2021.06.21

RaPP(Novelty Detection with Reconstruction along Projection Pathway) 구현 :: Tensorflow, mnist

2020년 4월에 ICLR 개재된 RaPP를 Tensorflow로 구현해보았다. 논문 링크 : https://openreview.net/forum?id=HkgeGeBYDB RaPP: Novelty Detection with Reconstruction along Projection Pathway A new methodology for novelty detection by utilizing hidden space activation values obtained from a deep autoencoder. openreview.net 참고 링크 : https://makinarocks.github.io/rapp/ RaPP - Novelty Detection with Reconstruction along Proje..

AI/Anomaly Detection 2021.06.21 (5)

[Markdown] Jupyter Notebook :: 주피터 노트북 마크다운 정리

주피터 노트북에서 마크다운을 활용하는 여러가지 기능들을 소개하고자 한다. 마크다운이란? 먼저, 마크다운이란 일반 텍스트 문서의 양식을 편집하는 문법으로, HTML의 형태로 변환이 가능하다. 마크다운은 HTML과 아주 깊게 연관되어 있어, 웹 프로그래밍 중 HTML 문법을 알고 있다면 더욱 다양한 활용이 가능하다. 1. 마크다운 사용하기 주피터 노트북에서 마크다운을 사용하려면 먼저, Code Cell 에서 Markdown Cell 로 변경해 주어야 한다. 변경하는 방법은 다음과 같다. 1. esc + m 2. Cell -> Cell Type -> Markdown 첫 번째 방법은 단축키를 활용하는 방법으로, 마크다운 셀로 변경하고자 하는 셀을 클릭 후, esc로 커서를 없애주고, m을 눌러 마크다운 셀로 변..

Python/MarkDown 2021.06.15 (1)

[Python] matplotlib 으로 pandas data 그래프 그리기 :: multiple plots, Customizing Figure Layouts, scatter, boxplot

최종적으로 다음과 같이 group별로 Scatter 혹은 boxplot의 색상도 다르고, layout이 자유분방한 그래프를 그릴 것이다. 데이터는 numpy와 pandas를 활용하고, scatter와 boxplot은 matplotlib을 활용하며, Layout은 matplotlib의 gridspec를 활용한다. 1. Import Library 위에서 언급했듯, numpy, pandas, matplotlib 등 필요한 라이브러리를 불러온다. import numpy as np import pandas as pd import matplotlib.pyplot as plt from matplotlib import gridspec 2. Create Data Set x와 y, group으로 이루어진 50개의 data..

Python/Plot 2021.06.10

Deep Learning for Time Series Forecasting (kaggle 코드 리뷰)

2021.05.24 - [통계 지식/시계열자료 분석] - 시계열 분해란?(Time Series Decomposition) :: 시계열 분석이란? 시계열 데이터란? 추세(Trend), 순환(Cycle), 계절성(Seasonal), 불규칙 요소(Random, Residual) 시계열 분해란?(Time Series Decomposition) :: 시계열 분석이란? 시계열 데이터란? 추세(Trend), 순환(Cycle), 시계열 데이터란? 시간에 순차적으로 관측한 값들의 집합이며, 예측 모델에서 시간을 변수로 사용하는 특징이 있다. 시계열 데이터 분석이란? 과거 데이터의 패턴을 분석하여 미래의 값을 예측 leedakyeong.tistory.com 2021.05.24 - [통계 지식/시계열자료 분석] - ARIM..

AI/시계열자료 분석 2021.05.27 (2)
반응형