<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>kim_haesol.log</title>
        <link>https://velog.io/</link>
        <description>문과생 데이터사이언티스트되기 프로젝트</description>
        <lastBuildDate>Sun, 24 Jul 2022 04:39:04 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>kim_haesol.log</title>
            <url>https://velog.velcdn.com/images/kim_haesol/profile/42344ddf-a09d-4854-bace-1ce7eca2c468/image.PNG</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. kim_haesol.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/kim_haesol" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Transformer ]]></title>
            <link>https://velog.io/@kim_haesol/Transformer</link>
            <guid>https://velog.io/@kim_haesol/Transformer</guid>
            <pubDate>Sun, 24 Jul 2022 04:39:04 GMT</pubDate>
            <description><![CDATA[<h1 id="transformer란">Transformer란?</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/8be376a5-8316-44a2-aca8-d25e749779a0/image.PNG" alt=""></p>
<p>입력 방법이 병렬처리가 되어 있다 =&gt; 성능을 높일 수 있다.</p>
<h3 id="성능-향상하는-방법">성능 향상하는 방법</h3>
<ol>
<li>skip connection</li>
<li>layer nomalization</li>
</ol>
<h2 id="특징">특징</h2>
<ol>
<li>기계번역 task에서 기존의 연구들보다 성능적으로 우수</li>
<li>병렬적으로 처리가 가능한 모델 -&gt; time complexity 감소</li>
<li>이후에 사용되는 bert, gpt 모델에서 일반화에 강점이 있다는 것이 확인</li>
</ol>
<h1 id="positional-encoding">positional encoding</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/c09d833a-c673-4714-a34c-10bdf3b1f916/image.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[GPT 기초 설명]]></title>
            <link>https://velog.io/@kim_haesol/GPT-%EA%B8%B0%EC%B4%88-%EC%84%A4%EB%AA%85</link>
            <guid>https://velog.io/@kim_haesol/GPT-%EA%B8%B0%EC%B4%88-%EC%84%A4%EB%AA%85</guid>
            <pubDate>Sun, 24 Jul 2022 04:34:28 GMT</pubDate>
            <description><![CDATA[<h1 id="gpt를-사용하는-이유">GPT를 사용하는 이유</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/9733f0b7-431b-4907-b69a-5a732c1dd92f/image.PNG" alt=""></p>
<h1 id="자연어-데이터의-특징">자연어 데이터의 특징</h1>
<h2 id="tabular-dataset">tabular dataset</h2>
<ul>
<li>각각의 데이터 샘플들이 구성하고 있는 features는 독립적</li>
</ul>
<h2 id="이미지">이미지</h2>
<ul>
<li>이미지 안의 의미있는 정보는 위치에 무관</li>
<li>convolution 연산은 위치에 무관한 지역적인 정보를 추출하기 좋은 연산 </li>
</ul>
<h2 id="반연-자연어-데이터의-경우">반연 자연어 데이터의 경우</h2>
<ul>
<li>문장을 구성하고 있는 단어들의 위치가 변해서는 안됨</li>
<li>단어들 간의 관계가 중요하고 하나의 단어만 바뀌거나 추가되어도 전혀 다른 의미를 가질 수 있음</li>
</ul>
<h3 id="summary">summary</h3>
<ul>
<li>GPT를 구성하고 있는 모델은 TRANSFORMER에서 가져온 것이다.</li>
<li>bert, gpt의 경우 특히 자연어 데이터에 특화된 프레임워크이다.</li>
<li>자연어 데이터는 단어와 단어들 사이의 순서와 관계가 중요하다,</li>
<li>문장이 갖고 있는 문맥을 알고리즘이 이해할 수 있게 하는 것이 어렵다.</li>
</ul>
<h1 id="자연어-처리-task">자연어 처리 task</h1>
<p>하나의 문장을 여러 개로 나누고 나눈 토큰들의 결합분포로 문장에 대해서 확률을 계산</p>
<p>p(W) = p(w1, w2, w3)</p>
<h1 id="기존연구">기존연구</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/5dd5f592-3f3d-41df-b9d8-048cc29dfb59/image.PNG" alt="">
문장은 순서를 가지고 있으니, 문장의 처음부터 끝까지 순서대로 입력을 받아서 최종적으로 벡터를 생성하자</p>
<h2 id="rnns">RNNs</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/56779bc6-cdab-4e9e-a0c3-d820eec4d2a3/image.PNG" alt=""></p>
<p>단점</p>
<ul>
<li>중요한 단어들이 처음 부분에 있다면 정보를 잃어 버리지 않을까?</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - radar 제조 공정]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-radar-%EC%A0%9C%EC%A1%B0-%EA%B3%B5%EC%A0%95</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-radar-%EC%A0%9C%EC%A1%B0-%EA%B3%B5%EC%A0%95</guid>
            <pubDate>Sun, 24 Jul 2022 04:18:25 GMT</pubDate>
            <description><![CDATA[<h1 id="roa">ROA</h1>
<p>rear occupant alert
차량 내에 장착하여 후석 승객 유무를 감지</p>
<p>in-cabin 모니터링 시스템에서는 카메라, 압력 센서, 초음파, 레이더 등 여러가지 센서 기술들이 사용하고 있다.</p>
<h1 id="sbr">SBR</h1>
<p>5명의 탑승자 위치를 정확하게 파악하는 기술 </p>
<h1 id="레이더-공정-예시">레이더 공정 예시</h1>
<h2 id="1-ict">1. ICT</h2>
<p>PCB의 테스트 포인트를 통해 SMT ( SURFACE MOUNT TECHNOLOGY) 된 각 부품의 RLC값을 확인하여 불량을 검출</p>
<h2 id="2-fw-down-펌웨어-다운로드">2. F/W down (펌웨어 다운로드)</h2>
<p>레이더 제품의 메모리에 펌웨어를 넣는 공정</p>
<h2 id="3-dc-test">3. DC Test</h2>
<p>모듈이 제대로 동작하는지 입력 전원을 넣어 기본 기능을 확인</p>
<h2 id="4-routing">4. routing</h2>
<p>커팅 방법에 따라 레이저/ 브레이드 방식
정밀한 가공 이물질 유입 방지 ic의 데미지를 주는 공정에는 레이저 공정을 이용</p>
<h2 id="5-tim--thermal-interface-material-">5. TIM ( thermal interface material )</h2>
<p>도면 면적, 도포량에 따라 발열 성능에 영향을 미치는 주요 공정</p>
<h2 id="6-press-fit">6. press-Fit</h2>
<p>케이스 혹은 커넥터에 있는 PIN과 PCB를 연결하는 공정</p>
<h2 id="7-screw-체결">7. SCREW 체결</h2>
<p>주요 관리 포인트 : SCREW 높이, 토크</p>
<h2 id="8-sealant-도포">8. SEALANT 도포</h2>
<p>케이스 밀폐를 위해 진행하는 공정</p>
<h2 id="9-calibration-eol">9. CALIBRATION EOL</h2>
<p>공정 및 부품 특성을 반영하여 제품 성능에 영향이 없는지 최종 점검</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/8bc5a59b-a157-46bf-863f-adc1bb16c2e7/image.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - 자율주행의 메가 트렌드와 센서]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%EC%9E%90%EC%9C%A8%EC%A3%BC%ED%96%89%EC%9D%98-%EB%A9%94%EA%B0%80-%ED%8A%B8%EB%A0%8C%EB%93%9C%EC%99%80-%EC%84%BC%EC%84%9C</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%EC%9E%90%EC%9C%A8%EC%A3%BC%ED%96%89%EC%9D%98-%EB%A9%94%EA%B0%80-%ED%8A%B8%EB%A0%8C%EB%93%9C%EC%99%80-%EC%84%BC%EC%84%9C</guid>
            <pubDate>Thu, 21 Jul 2022 10:21:15 GMT</pubDate>
            <description><![CDATA[<h1 id="case">case</h1>
<p>미래 모빌리티 메가 트렌드의 핵심 키워드
C : connectivity
A : autonomous
S : shared
E : electrification</p>
<pre><code>- 때로는 ACE라고 부름
- A : autonomous driving
- C : connectivity
- E : electrification</code></pre><p>A = 운전자 개입없이 스스로 안전하게 주행이 가능한 자율주행 고도화
C = 고도화된 연결형 자율주행을 통한 탑승자의 안전 및 교통관리 효과성 극대화
E = 높은 에너지 효율성 기반 1회 충전으로 최대 주행거리 확보</p>
<h1 id="센서-pod">센서 pod</h1>
<p>카메라, 레이더, 라이다 등 인지를 위한 센서들의 일체형 통합 모듈</p>
<h1 id="자율주행-센서-방향">자율주행 센서 방향</h1>
<h2 id="camera">camera</h2>
<ul>
<li>장거리 및 인식률 개선을 위한 고화소화/픽셀 사이즈 소형화 / 저조도 개선</li>
<li>고온 동작의 품질 확보를 위한 lens / housing 구조 최적화</li>
</ul>
<h2 id="radar">radar</h2>
<ul>
<li>고해상도 4D imaging radar 구현을 위한 안테나 및 신호처리 S/W 기술 발전</li>
<li>perception SW 고도화로 사물의 형상구분 및 상황예측까지 성능 발전</li>
</ul>
<h2 id="lidar">lidar</h2>
<ul>
<li>ADAS용 lidar는 차량신뢰성, 디자인, cost 우선 순위로 진화</li>
</ul>
<h1 id="센서-pod-성장할-것">센서 pod 성장할 것</h1>
<p>센서 integration validation 효율성</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/b6bfb38e-2cd8-4ac3-a93c-ffbb3e95a479/image.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - causal effect identification]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-causal-effect-identification</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-causal-effect-identification</guid>
            <pubDate>Wed, 20 Jul 2022 11:40:34 GMT</pubDate>
            <description><![CDATA[<h1 id="인과-효과-계산하는-방법">인과 효과 계산하는 방법</h1>
<ol>
<li>Query</li>
<li>causal diagram</li>
<li>data</li>
</ol>
<p>-&gt; causal inference engine  인과추론 알고리즘을 통해서 계산한다.</p>
<h1 id="adjustment-formular">adjustment formular</h1>
<p>인과 효과를 구하는 식 </p>
<h1 id="back-door">back-door</h1>
<p>더 일반화한 방식
<img src="https://velog.velcdn.com/images/kim_haesol/post/5a11eb3f-a194-41cb-81fc-0caf5f4013d2/image.PNG" alt=""></p>
<p>x와 y의 전체 상관성은 두 가지, 직접 연결 관계 그리고  교란 변수에 의한 연결 관계 
    - 데이터에 나타나는 상관성에서 교란에 의한 상관성을 제거하고자 하는 것</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/e31c7e3e-5019-4173-b4f8-b3479eea5023/image.PNG" alt=""></p>
<p>어떤 규칙에 의해 조건부 독립만족 -&gt; 확률을 다른 확률로 변경시킬 수 있다</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - causality]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-causality</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-causality</guid>
            <pubDate>Wed, 20 Jul 2022 11:06:56 GMT</pubDate>
            <description><![CDATA[<h2 id="causal-decision-making">causal decision making</h2>
<p>효율적으로 환경과 인터렉션 하는 것을 연구</p>
<p>causal effect - causal discovery - causal decision making
서로를 돕는 역할 </p>
<h3 id="베이지안-네트워크">베이지안 네트워크</h3>
<p>확률적 그래피컬 모델에 대한 기본적 지식</p>
<h1 id="인과성에-대한-소개와-인과적-추론을-하기-위한-기본-개념">인과성에 대한 소개와 인과적 추론을 하기 위한 기본 개념</h1>
<blockquote>
<p>인과성이란? 하나의 어떤 무엇인가가 다른 무엇을 생성함에 있어 영향을 미치는 것</p>
</blockquote>
<h2 id="ai-데이터사이언스와-인과성은-무슨-관계일까">AI, 데이터사이언스와 인과성은 무슨 관계일까?</h2>
<ol>
<li><p>강화학습 : 주어진 환경에서 어떤 행동을 취할지 학습
 환경에 변화를 줘서 원하는 상태로 변화시키는 인과관계로 해석 가능하다.</p>
</li>
<li><p>기계학습 : 데이터의 상관성 학습</p>
</li>
<li><p>데이터사이언스 : 풀고자하는 질문에 따라 다르겠지만 데이터를 수집하고 그것을 처리하고 분석하고, 이 결과를 어떻게 커뮤니케이트할 것인가하는 많은 부분에서 상관성과 인과성을 모두 복합적으로 고려한다.</p>
</li>
</ol>
<h1 id="인과계층">인과계층</h1>
<h2 id="level-1-관측-계층">level 1. 관측 계층</h2>
<p>이를 통해 시스템을 구성하고 있는 어떤 변수들의 상관성을 알 수 있다. 
    - 단순하게 비교하는 것들이 level 1의 목적</p>
<h2 id="level-2-실험-계층">level 2. 실험 계층</h2>
<p>주어져 있는 연구를 하고자하는 시스템을 중재라고 하는데 중재를 함으로써 나오는 결과에 관심</p>
<h2 id="level-3-반사실적-계층">level 3. 반사실적 계층</h2>
<p>관측값과 실험에 의한 값을 동시에 고려하는 계층.</p>
<h3 id="simpsons-paradox">simpson;s paradox</h3>
<p>인과계층의 레벨1과 레벨2를 구별하는 예시 
    - 신장결석 환자 &gt; 환자를 진찰, 처방 &gt; 처방에 따른 결과 리포트 &gt; 헬스케어 데이터 </p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/0cc3737d-1d00-4345-847b-3aea73038107/image.PNG" alt=""></p>
<p>인과적인 분석을 하기 위해서는 주어진 데이터뿐만 아니라 각 변수들이 가지는 인과적 관계에 대한 자세한 이해가 필요하다는 것. 그리고 변수들 간의 인과적 관계가 다르게 도출될 수도 있다는 것</p>
<h1 id="데이터를-분석하고자-할-때-고려해야하는-두-가지">데이터를 분석하고자 할 때 고려해야하는 두 가지!</h1>
<ol>
<li>주어진 데이터가 상관성을 지니고 있는지 아니면 인과성을 지니고 있는지</li>
<li>우리가 알고자 하는 그 질문이 그냥 단순히 조건부 확률같은 상관성에 관한 것인지, 인과성에 관한 것인지</li>
</ol>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/d8c090ed-4474-4e91-bbbb-652066ecb00b/image.PNG" alt=""></p>
<h1 id="계층을-넘나드는-추론을-하는-방법">계층을 넘나드는 추론을 하는 방법</h1>
<p>black box system
<img src="https://velog.velcdn.com/images/kim_haesol/post/3167e205-d118-46bf-a881-c04626bd4990/image.PNG" alt=""></p>
<h1 id="structural-causal-models">structural causal models</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/2aecaa4a-e608-4907-8a6b-6a54b5ae91d1/image.PNG" alt=""></p>
<blockquote>
<p>인과추론을 할 때에는 우리가 주어진 데이터가 있고 이 데이터는 상관성만을 지니고 있고 그리고 우리는 causal diagram이라는 것을 가정으로써 갖게 되는데 결국은 우리가 원하는 causal effect라는 것을 계산하기 위해서는 이 causal diagram에 내포되어 있는 모든 정보를 이용을 해서 인과 효과를 계산해야한다. </p>
</blockquote>
]]></description>
        </item>
        <item>
            <title><![CDATA[영상 데이터의 속성]]></title>
            <link>https://velog.io/@kim_haesol/%EC%98%81%EC%83%81-%EB%8D%B0%EC%9D%B4%ED%84%B0%EC%9D%98-%EC%86%8D%EC%84%B1</link>
            <guid>https://velog.io/@kim_haesol/%EC%98%81%EC%83%81-%EB%8D%B0%EC%9D%B4%ED%84%B0%EC%9D%98-%EC%86%8D%EC%84%B1</guid>
            <pubDate>Mon, 18 Jul 2022 12:58:26 GMT</pubDate>
            <description><![CDATA[<p>openCV는 영상 데이터를 numpy.ndarray로 표현
<img src="https://velog.velcdn.com/images/kim_haesol/post/d723b914-edb1-42fd-a650-4ea575b56b53/image.PNG" alt=""></p>
<h1 id="opencv-영상-데이터-자료형과-numpy-자료형-비교">openCV 영상 데이터 자료형과 numpy 자료형 비교</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/35becd92-d892-4d9c-9901-52aaa1f70e45/image.PNG" alt=""></p>
<p>일반적으로 첫번째 줄의 표시를 주로 사용한다.
cv2.CV_16F는 딥러닝에서 많이 사용된다.</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/e9e25add-0f3b-4eac-b882-5f7e714b062d/image.PNG" alt="">
숫자 3은 3차원을 의미한다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - 설명 가능한 AI
: Explainable AI(XAI)]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%EC%84%A4%EB%AA%85-%EA%B0%80%EB%8A%A5%ED%95%9C-AI-Explainable-AIXAI</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%EC%84%A4%EB%AA%85-%EA%B0%80%EB%8A%A5%ED%95%9C-AI-Explainable-AIXAI</guid>
            <pubDate>Sun, 17 Jul 2022 04:08:18 GMT</pubDate>
            <description><![CDATA[<p>딥러닝 학습의 한계점: 대용량 학습 데이터로 부터 학습하는 모델 구조 - 점점 더 복잡해지고 이해하기 어려워짐.</p>
<h2 id="xai-기법">XAI 기법</h2>
<ul>
<li>모델 &amp; 데이터셋의 오류 색출</li>
<li>모델이 얼마나 편향되어 있는지 확인 가능</li>
</ul>
<h1 id="xai">XAI</h1>
<p>사람이 모델을 쓸 때 그 동작을 이해하고 신뢰할 수 있게 해주는 기계 학습 기술</p>
<h2 id="xai-분류하는-방법">XAI 분류하는 방법</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/f23885e9-471f-4285-86a8-77881eab7510/image.PNG" alt="">
<img src="https://velog.velcdn.com/images/kim_haesol/post/c5d247c2-9445-4552-89a2-a312b1613341/image.PNG" alt=""></p>
<pre><code>- intrincsic: 모델의 복잡도를 훈련하기 이전부터 설명하기 용이하도록 제안한 뒤 학습을 시켜서 그 후 학습된 모델을 가지고 설명하는 방법
- post-hoc: 임의 모델의 훈련이 끝난 뒤에 이 방법을 적용해서 그 모델의 행동을 설명하는 방법</code></pre><h3 id="simple-gradient-method">simple gradient method</h3>
<p>입력에 대한 모델의 gradient로 설명을 제공</p>
<blockquote>
<p>gradient라는 것이 각 픽셀의 값이 조금 바뀌었을 때 이 함수의 출력 값이 얼마나 빨리 변하는지를 구하는 값</p>
</blockquote>
<p>단점: 구한 설명들이 매우 noisy할 수 있다!</p>
<h2 id="smoothgrad">smoothgrad</h2>
<p>a simple method to address the noisy gradients</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/7d5dcd92-404a-4427-a70e-a2890107eee1/image.PNG" alt=""></p>
<h1 id="cap--class-activation-map">CAP ( CLASS ACTIVATION MAP)</h1>
<p>saliency map 기반의 설명 가능 방법</p>
<ul>
<li>global average pooling이라는 특정한 레이어를 만들고 그것을 활용하여 설명을 제공하는 방법</li>
</ul>
<p>GAP레이어는 각 activation map의 모든 activation들의 평균을 내는 연산을 뜻한다.</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/2911ee08-b11f-4b81-a7ef-13e57c3395b7/image.PNG" alt=""></p>
<blockquote>
<p>어떤 activation map에 activation이 크게 된다는 것은 map이 주어진 입력과 관련이 많다는 뜻이고 또한 그것을 결합하는 w가 크다는 것도 최종 분류에 큰 영향을 주는 activation이라는 뜻이므로 그것을 결합하면 입력에 대한 예측을 잘 설명하는 방식이 되는 것.</p>
</blockquote>
<ul>
<li>GAP-FC model
<img src="https://velog.velcdn.com/images/kim_haesol/post/7d12fe58-0934-4509-93e9-38188cfd2ba4/image.PNG" alt="">
클래스 c에 대한 아웃풋 y를 구하는 방식</li>
</ul>
<h2 id="cam의-응용분야">CAM의 응용분야</h2>
<ul>
<li>OBJECT DETECTION</li>
<li>Semantic segmentation</li>
</ul>
<h2 id="장단점">장단점</h2>
<h3 id="strngth">strngth</h3>
<ul>
<li>it clearly shows what objects the model is looking at</li>
</ul>
<h3 id="weakness">weakness</h3>
<ul>
<li>model-specitic : it can be applied only to models with limited architerture</li>
<li>it can only be obtained at the last convolutional layer and this makes the interpretation resolution coarse</li>
</ul>
<h1 id="grad-cam">Grad-CAM</h1>
<p>CAM의 단점을 극복하기 위한</p>
<p>CAM을 gradient 정보를 활용해서 확장한 설명 방법
<img src="https://velog.velcdn.com/images/kim_haesol/post/cacca636-d589-4884-a689-645c1923f002/image.PNG" alt=""></p>
<p>global average pooling 없는 모델에도 activation을 결합하는 방식을 보완</p>
<blockquote>
<p>어떤 w가 특정 모델 구조를 가지고 학습된 w를 사용하는 것이 아니라 어느 activation map에서도 그 activation map의 gradient를 구한 다음에 그것의 global average pooling값으로 w를 적용한다는 뜻</p>
</blockquote>
<p>학습된 모델이 제대로 학습하고 있는지 또는 이 모델의 예측에 편향성이 존재하지 않는지도 알아낼 수도 있다.</p>
<h2 id="장단점-1">장단점</h2>
<h3 id="strngth-1">strngth</h3>
<ul>
<li>model agnostic : can be applied to various output models<h3 id="weakness-1">weakness</h3>
</li>
<li>average gradient sometimes is not accurate</li>
</ul>
<p>gradient 값이 크다는 것은 해당 activation에 대한 출력 값의 민감도가 크다는 말이지만 그것이 반드시 그 activation이 최종 결과를 게산하는 데 있어서 중요도를 정확히 반영하지는 않는 뜻</p>
<h1 id="pertubation-based">pertubation-based</h1>
<p>입력 데이터를 조금씩 바꾸면서 그에 대한 출력을 보고, 그변화에 기반해서 설명</p>
<h2 id="lime">LIME</h2>
<p>어떤 분류기가 딥러닝 모델처럼 매우 복잡한 비선형적 특징을 가지고 있더라도 주언진 데이터 포인트들에 대해서는 아주 LOCAL하게는 다 선형적인 모델로 근사화가 가능하다는 관찰에서 출발하고 있다.</p>
<blockquote>
<p>주어진 데이터를 조금씩 교란해 가면서 그 교란된 입력 데이터를 모델에 여러 번 통과시킴으로써 나오는 출력을 보고 이렇게 나온 입출력 pair들을 간단한 성형 모델로 근사함으로써 설명을 얻어내는 방법</p>
</blockquote>
<h3 id="black-box">Black-box</h3>
<p>딥러닝 모델뿐 아니라 주어진 입력과 그에 대한 출력만 얻을 수 있다면 어떤 모델에 대해서도 다 적용할 수 있는 설명 방법</p>
<h3 id="단점">단점</h3>
<ul>
<li>computationally expensive</li>
<li>hard to apply to certain kind of models</li>
<li>when the underlying model is still locally non-linear
모델의 구조를 알지 못하는 black-box방법이 어쩔 수 없이 가지게 되는 한계</li>
</ul>
<h2 id="rise">RISE</h2>
<p>lime과 비슷하게 여러번 입력을 perturb해서 설명을 구하는 방법</p>
<blockquote>
<p>여러 개의 랜덤 마스킹이 되어 있는 입력에 대한 출력 스코어를 구하고 그 스코어 그러니깐 확률들을 이용해서 이 마스크들을 가중치를 둬서 평균을 냈을 때 나오는 것이 설명 map인 것</p>
</blockquote>
<h2 id="xai-1">XAI</h2>
<p>주어진 모델이 어떤 training set으로부터 학습한 것이므로 그 데이터셋에 있는 training image들의 함수라고 볼 수 있고 각 테스트 이미지를 분류하는데 가장 큰 영향을 미친 training image가 해당 분류에 대한 설명이라고 제공을 하는 것 </p>
<ul>
<li>influence function</li>
</ul>
<h1 id="평가-방법">평가 방법</h1>
<h2 id="1--xai-방법들이-만들어낸-설명을-보고-비교-평가">1.  XAI 방법들이 만들어낸 설명을 보고 비교 평가</h2>
<p>ex) AMT test</p>
<h2 id="2-human-annotation">2. human annotation</h2>
<p>some metrices employ human annotations as a ground truth and compare them wuth interpretation</p>
<ul>
<li><p>pointing game</p>
<pre><code>  - bounding box를 활용해서 평가하는 방법
  - 각 이미지마다 가장 정확도가 높은 픽셀을 활용</code></pre></li>
<li><p>weakly supervised semantic segmentation</p>
<pre><code>  - 어떤 이미지에 대해서 classification label만 주어져 있을 때 그것을 활용하여 픽셀별로 객체의 label을 예측하는 semantic segmentation을 수행하는 방법</code></pre></li>
</ul>
<blockquote>
<p>weakly supervised라고 하는 이유?<br>: 픽셀별로 정답 label이 다 주어져 있지 않기 때문이다. </p>
</blockquote>
<h3 id="lou--intersection-over-union">loU ( intersection over union)</h3>
<p>정답 map과 이렇게 만들어낸 segmentation map이 얼마나 겹치는지를 평가하는 metric</p>
<h2 id="3-pixel-perturbation">3. pixel perturbation</h2>
<ul>
<li>AOPC (area over the MORF pertubation Curve )<ul>
<li>주어진 이미지에 대해서 각각의 XAI기법이 설명을 제공하면 그 제공한 설명의 중요도 순서대로 각 픽셀들을 정렬할 수 있을 것이고 그 순서대로 픽셀을 교란하였을 때 과연 원래 예측한 분류 스코어 값이 얼마나 빨리 바뀌는지를 측정하는 것</li>
</ul>
</li>
</ul>
<h3 id="insertion-and-deletion">insertion and deletion</h3>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/c1529d3e-bc56-4012-8509-d87e9202fa47/image.PNG" alt=""></p>
<h2 id="roar-remove-and-retrain">ROAR (remove and retrain)</h2>
<p>ROAR removes some portion of pixels in train data in the order of high interpretation values of the original model, and retrains a new model</p>
<h3 id="장단점-2">장단점</h3>
<p>장점
    - 조금 더 객관적이고 정확한 평가를 할 수 있다
단점
    - 픽셀을 지우고 나서 매번 재학습해야한다</p>
<h1 id="xai-신뢰성-확인하는-방법">XAI 신뢰성 확인하는 방법</h1>
<h2 id="sanity-checks">sanity checks</h2>
<p>interpretation = edge detector?</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - 전통기계학습과 딥러닝에서의 비지도학습]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%EC%A0%84%ED%86%B5%EA%B8%B0%EA%B3%84%ED%95%99%EC%8A%B5%EA%B3%BC-%EB%94%A5%EB%9F%AC%EB%8B%9D%EC%97%90%EC%84%9C%EC%9D%98-%EB%B9%84%EC%A7%80%EB%8F%84%ED%95%99%EC%8A%B5</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%EC%A0%84%ED%86%B5%EA%B8%B0%EA%B3%84%ED%95%99%EC%8A%B5%EA%B3%BC-%EB%94%A5%EB%9F%AC%EB%8B%9D%EC%97%90%EC%84%9C%EC%9D%98-%EB%B9%84%EC%A7%80%EB%8F%84%ED%95%99%EC%8A%B5</guid>
            <pubDate>Thu, 14 Jul 2022 06:06:11 GMT</pubDate>
            <description><![CDATA[<h1 id="k-means-clustering">k-means clustering</h1>
<p>데이터를 몇 개의 클러스터로 나누어서 비교적 비슷한 특징을 가지는 각각의 클러스터로 모으는 것을 목표</p>
<h1 id="pca">PCA</h1>
<p>디멘션을 줄이기 위한 기법</p>
<ul>
<li>EIGENVALUE DECOMPOSITION과 동일한 방식</li>
</ul>
<h1 id="전통적-머신러닝">전통적 머신러닝</h1>
<ol>
<li>low dimensional data</li>
<li>simple concepts</li>
<li>reliable- cluster validation is a must</li>
</ol>
<h3 id="cluster-validation">cluster validation</h3>
<p>숫자적으로 의미가 있는지 꼭 확인 필요</p>
<blockquote>
</blockquote>
<p>전통적 머신러닝에서의 unsupervised learning
상당히 좋은 문제나 연구가 많이 진행이 되긴 했지만, 실제 엡에 사용하기에 걱정이 되는 상황</p>
<h1 id="deep-learning">deep learning</h1>
<p>딥러닝의 기원
<img src="https://velog.velcdn.com/images/kim_haesol/post/f0b00e68-70c6-4c6c-952b-a6f741ddd38a/image.PNG" alt="">
perceptron 같이 단순한 알고리즘을 쓸 때는 데이터 자체의 정보라는 것은 perceptron 같은 단순한 알고리즘으로 좋은 성능을 바로 내기가 어렵기 때문에 raw 데이터(input 데이터) 에서 인간이 가공을 해서 hand cordweight를 통과시키든지 프로그램을 만들어서 그걸 통과시키든지 인간이 수작업을 통해서 중요한 정보들을 잘 정리해주고 이를 충분히 간단한 정보를 중간 layer에 넣어주면, 맨 위에 부분에 있는 perceptron 알고리즘이 좋은 일을 할 수 있다.</p>
<h2 id="feature-engineering">feature engineering</h2>
<p>필드에서 푸는 문제들에 중요</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/4ffdf9d9-d463-4beb-beb8-73575aa4524d/image.PNG" alt="">
인간이 하는 것이 아닌 알고리즘이 스스로 중요한 정보를 스스로 잘 정리를 해서 y라는 정보를 다시 뽑아내는데 큰 어려움 없이, 마지막에는 linear layer만 집어넣어도 linear한 방식으로 뽑아내는 것이 딥러닝</p>
<h1 id="feature-engineering-vs-representation-learning">feature engineering vs representation learning</h1>
<p>feature engineering</p>
<ul>
<li>by human</li>
<li>domain knowledge &amp; creativity</li>
<li>brainstorming</li>
</ul>
<p>representation learning</p>
<ul>
<li>by machine</li>
<li>deep learning knowledge &amp; coding skill</li>
<li>trial and error</li>
</ul>
<h1 id="high-dimensional-data">high dimensional data</h1>
<ul>
<li>difficult concepts<ul>
<li>not well understood, but surpringly good performance</li>
</ul>
</li>
<li>deep learning<ul>
<li>unsupervised represntation learning</li>
</ul>
</li>
</ul>
<h1 id="representation">REPRESENTATION</h1>
<p>어떤 X라는 개념이 있을 때, 수학적인 기호로 표현하는 RULE들</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[RNN include LSTM]]></title>
            <link>https://velog.io/@kim_haesol/RNN-include-LSTM</link>
            <guid>https://velog.io/@kim_haesol/RNN-include-LSTM</guid>
            <pubDate>Thu, 14 Jul 2022 04:47:41 GMT</pubDate>
            <description><![CDATA[<h1 id="simple-rnn">simple RNN</h1>
<p>순환신경망
    - 활설화 신호가 입력에서 출력으로 한 방향으로 흐르는 피드포워드 신경망
    - 순환 신경망은 뒤쪽으로 연결하는 순환 연결이 있음
    - 순서가 있는 데이터를 입력으로 받고 
    - 변화하는 입력에 대한 출력을 얻음</p>
<h2 id="메모리셀">메모리셀</h2>
<p>순환 뉴런의 출력은 이전 시간의 모든 입력에 대한 함수이므로 이를 메모리 형태라고 말할 수 있음
타임스텝에 걸쳐서 어떤 상태를 보존하는 신경망의 구성 요소를 메모리셀</p>
<h1 id="sequence--to---vector-형태">sequence- to - vector 형태</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/2a9b880f-49c6-4fa6-bc4b-655ee453f841/image.PNG" alt=""></p>
<p>출력을 시퀀스가 아니라 벡터로 출력</p>
<h1 id="인코더-디코더">인코더-디코더</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/9bddc9dc-4df7-42b8-99d2-22d68e36a18e/image.PNG" alt=""></p>
<h2 id="rnn의-한-셀의-모양">RNN의 한 셀의 모양</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/8153702f-df56-4ee8-9b82-7a1a88495353/image.PNG" alt=""></p>
<h2 id="simpe-rnn의-단점">simpe RNN의 단점</h2>
<ol>
<li>입력 데이터가 길어지면 학습 능력이 떨어진다.( LONG-TERM DEPENDENCY 문제)</li>
<li>현재의 답을 얻기 위해 과거의 정보에 의존해야 하는 RNN이지만, 과거 시점이 현재와 너무 멀어지면 문제를 풀기 어렵다.</li>
</ol>
<h1 id="lstm">LSTM</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/596eca49-1b10-48f7-b44f-c309014df930/image.PNG" alt=""></p>
<h2 id="cell-state">cell state</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/94b56ae5-b2df-4732-b60a-8b5c54186d34/image.PNG" alt="">
LSTM의 핵심 아이디어이다!</p>
<p>cell state를 제어하는 gate</p>
<h3 id="forget-gate">forget gate</h3>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/737dcdb9-3ffb-45df-92ac-b6d954601592/image.PNG" alt=""></p>
<h3 id="input-gate">input gate</h3>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/c14b927e-023a-458c-992e-922f805af7ba/image.PNG" alt=""></p>
<h3 id="update-cell-state">update cell state</h3>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/e381007c-3e31-4ed5-9f67-17011e05dd87/image.PNG" alt=""></p>
<h3 id="output-gate">output gate</h3>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/7471b2d3-1842-4c5b-ac51-cffbf58dd593/image.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - Ensemble Learning]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-Ensemble-Learning</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-Ensemble-Learning</guid>
            <pubDate>Wed, 13 Jul 2022 07:19:12 GMT</pubDate>
            <description><![CDATA[<h1 id="ensemble-learning">Ensemble Learning</h1>
<p>이미 사용하고 있거나 개발한 알고리즘의 간단한 확장</p>
<ul>
<li>Supervised learning task에서 성능을 올릴 수 있는 방법</li>
</ul>
<p>Ensemble = 함께, 동시에, 한꺼번에 협력하여라는 의미</p>
<blockquote>
<p>머신러닝에서 알고리즘의 종류에 상관 없이 서로 다르거나, 같은 매커니즘으로 동작하는 다양한 머신러닝 모델을 묶어 함께 사용하는 방식</p>
</blockquote>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/42a0ad38-59d8-48d7-8543-f1c51e21ccf0/image.PNG" alt=""></p>
<h2 id="장점">장점:</h2>
<h3 id="1-예측-성능을-안정적으로-향상">1. 예측 성능을 안정적으로 향상</h3>
<p>다양한 여러 개의 model의 결정으로 최종 예측 결과를 제공을 하기 때문에 noise 등으로부터 보다 안정적</p>
<h3 id="2-쉽게-구현이-가능">2. 쉽게 구현이 가능</h3>
<p>여러개의 model을 학습하고 거의 직접적으로 연합하여 적용을 하기 때문에 간편하게 사용을 할 수가 있다.</p>
<h3 id="3-모델-파라미터의-튜닝이-많이-필요없다">3. 모델 파라미터의 튜닝이 많이 필요없다</h3>
<h1 id="bagging--boosting">bagging &amp; boosting</h1>
<h2 id="bagging">bagging</h2>
<ul>
<li>학습 과정에서 training sample을 랜덤하게 나누어 선택해 학습</li>
</ul>
<p>보다 lowervariance의 안정적인 성능을 제공하는데 유용한 방법</p>
<h3 id="bootstrapping">Bootstrapping</h3>
<p>다수의 sample data set을 생성해서 학습하는 방식</p>
<ul>
<li>같은 model을 사용한다면 model parameter가 서로 달라져야 할 것이기 때문에 sample을 random하게 선택해야할 것. but!! 서로 다른 model이라면 어차피 서로 다른 model형태로 다르게 동작하기 때문에 같은 sample을 이용해도 될 것</li>
</ul>
<h3 id="boosting">Boosting</h3>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/59b523e9-0dce-4a9d-b7a8-b8acb3095a4c/image.PNG" alt=""></p>
<p>사용된 결과가 연속적으로 다음 클래스에 사용된다.</p>
<blockquote>
<p>weak classifie
: Bias가 높은 classifier - strong classifier에 비해서 성능이 낮아서 혼자서는 무엇을 하기 어려운 모델</p>
</blockquote>
<h1 id="random-forest">Random Forest</h1>
<p>bagging과 boosting을 활용하는 대표적인 알고리즘</p>
<ul>
<li>improving decision tree<ul>
<li>by bagging -&gt; random forest</li>
<li>by boosting -&gt; gradient boosting machine as generalized adaboost</li>
</ul>
</li>
</ul>
<h1 id="model-성능을-평가-evaluation하는-방식">model 성능을 평가 evaluation하는 방식</h1>
<h2 id="accuracy-측정">accuracy 측정</h2>
<p>model의 정확도
<img src="https://velog.velcdn.com/images/kim_haesol/post/390c3518-e996-4b98-b2ed-bc3f33819f04/image.PNG" alt=""></p>
<h2 id="confusion-matrix">confusion matrix</h2>
<p>각 경우에 대해 오차가 얼마 있었는지 표현하는 방법</p>
<h2 id="roc-curve">ROC curve</h2>
<p>서로 다른 classifier의 성능을 측정하는데 사용하는 커브
왼쪽으로 휘어질 수록 성능이 좋다.</p>
<h2 id="recall">recall</h2>
<p>본래 내가 가진 실제 Positive 중에서 얼마나 내 알고리즘이 진짜를 잘 찾았는지의 비율을 의미</p>
<h2 id="f1-스코어">F1 스코어</h2>
<p>Precision과 Recall의 조화평균이 F1 스코어</p>
<h2 id="precision-recall-curve">Precision-Recall Curve</h2>
<p> x축은 Recall이 되고, y축은 Precision이 된다. 그리고 그 아래의 면적이 ACU-PR이 된다</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[오토인코더]]></title>
            <link>https://velog.io/@kim_haesol/%EC%98%A4%ED%86%A0%EC%9D%B8%EC%BD%94%EB%8D%94</link>
            <guid>https://velog.io/@kim_haesol/%EC%98%A4%ED%86%A0%EC%9D%B8%EC%BD%94%EB%8D%94</guid>
            <pubDate>Wed, 06 Jul 2022 13:08:27 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/kim_haesol/post/08f180a4-c252-432d-8ee2-fa313314ae49/image.PNG" alt=""></p>
<ul>
<li>자기 자신을 출력으로 나오게 한다.<ul>
<li>자기 자신이 비교 대상</li>
</ul>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/62305526-011a-423f-9b62-78f68b7b6ac6/image.PNG" alt=""></p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/bd01fd2f-7d9f-4ecf-a3ff-a92cd90b778c/image.PNG" alt="">
<img src="https://velog.velcdn.com/images/kim_haesol/post/0bb1483c-2c61-4f89-b16f-b8750f8d246b/image.PNG" alt="">
<img src="https://velog.velcdn.com/images/kim_haesol/post/2139635c-2d8a-4bf1-af60-35ab4cc5989c/image.PNG" alt=""></p>
<p>train_x, train_x를 fit한 걸로 보아 train_x가 입출력하게 학습시키고 있다.</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/310df8a1-08ff-4713-b029-a86ac5384907/image.PNG" alt=""></p>
<p>그럼 결과 역시 자기 자신이 나온다는 것을 의미한다.</p>
<h2 id="cnn을-활용해보기">CNN을 활용해보기</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/102abcdf-2868-46fb-8f6e-cfe9a1314d24/image.PNG" alt=""></p>
<p>DANSE 64 부분이 특성, code라고 할 수 있다.</p>
<h1 id="t-sne">t-SNE</h1>
<ul>
<li>고차원의 벡터를 저차원으로 옮겨서 시각화에 도움을 주는 방법</li>
<li>t Stochastic Nearest Neghbor</li>
<li>k-Means가 각 클러스터를 계산하기 위한 단위로 중심과 각 데이터의 거리를 측정한다면</li>
<li>t-SNE는 각 데이터의 유사도를 정의하고 원래 공간에서의 0사도와 저차원 공간에서의 유사도가 비슷해지도록 학습시킴</li>
<li>유사도가 수학적으로 확률로 표현</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - SL Foundation]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-SL-Foundation</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-SL-Foundation</guid>
            <pubDate>Wed, 06 Jul 2022 01:16:29 GMT</pubDate>
            <description><![CDATA[<h1 id="machine-learning">Machine Learning</h1>
<p>DATA로부터 내재된 패턴을 학습하는 과정</p>
<h2 id="supervised-learning--labelde-data">SUPERVISED LEARNING ( LABELDE DATA)</h2>
<h3 id="regression--classification의-차이점">regression &amp; classification의 차이점</h3>
<p>출력이 연속 변수인지 이산변수인지에 따라서 구분</p>
<h2 id="learning-pipeline">learning pipeline</h2>
<p>sl 머신러닝은 model output과 정답과의 차이인 error를 통해서 그 error를 줄여가면서 학습이 진행</p>
<h1 id="단계">단계</h1>
<p>feature selection, model selection, optimization 과정을 거치게 된다.</p>
<h2 id="model-selection">model selection</h2>
<ul>
<li>풀고자 하는 문제에 가장 적합한 model을 선택하는 과정</li>
</ul>
<h3 id="model-generalization">model generalization</h3>
<p>머신러닝은 그 자체로 data의 결핍으로 인한 불확실성을 포함하고 있다.</p>
<ul>
<li>model이 학습 과정에서 우리가 관찰을 하지 못한 sample에 대해서도 바로 우수한 성능을 제공을 할 수가 있어야 한다.</li>
</ul>
<h1 id="error">error</h1>
<p>에러는 각 샘플 별로 pointwise로 계산
label에서 y는 정답</p>
<p>대표적인 에러셋은 squared error
    - model 출력과 정답과의 차이를 제곱하여 계산</p>
<p>binary error
    - 내부의 logic을 판별하여 맞으면 0 틀리면 1인 함수</p>
<p>data sample에서 발생하는 모든 sample들의 pointwise error를 합쳐서 overall error를 계산 : loss function &amp; cost function</p>
<h2 id="e-train">E train</h2>
<p>model을 주어진 data set에 맞추어 학습하는데 사용하는 error</p>
<ul>
<li>주어진 sample에서 model parameter를 최적화하도록 사용</li>
</ul>
<h2 id="e-test">E test</h2>
<p>전체 data set에서 일부 sample을 따로 빼서 test sample을 정의
이 sample에서 나타나는 error가 E test</p>
<h1 id="성공적인-목표">성공적인 목표</h1>
<ol>
<li>E test == E train<ul>
<li>failure: overfitting -&gt; high variance</li>
<li>cure : regularizetion, more data</li>
</ul>
</li>
<li>E train == 0 <ul>
<li>failure : underfitting -&gt; high bias</li>
<li>cure : optimization, more complex model</li>
</ul>
</li>
</ol>
<h1 id="model-정확도를-높이는-방법">model 정확도를 높이는 방법</h1>
<ol>
<li>bias를 낮춘다.</li>
<li>model 일반성</li>
<li>variance를 낮춘다.</li>
</ol>
<ul>
<li>서로 상반된 해결책이 필요 Trade off</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - 신뢰성 분포와 신뢰성 척도]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%EC%8B%A0%EB%A2%B0%EC%84%B1-%EB%B6%84%ED%8F%AC%EC%99%80-%EC%8B%A0%EB%A2%B0%EC%84%B1-%EC%B2%99%EB%8F%84</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%EC%8B%A0%EB%A2%B0%EC%84%B1-%EB%B6%84%ED%8F%AC%EC%99%80-%EC%8B%A0%EB%A2%B0%EC%84%B1-%EC%B2%99%EB%8F%84</guid>
            <pubDate>Mon, 04 Jul 2022 13:00:26 GMT</pubDate>
            <description><![CDATA[<h1 id="지수분포">지수분포</h1>
<p>시간 t에 관계없이 원래의 평균 수명과 동일. 즉, 지수분포를 따르는 제품은 작동하는 동안에는 늘 새것과 같음.</p>
<ul>
<li>이러한 성질을 망각성이라고 함.</li>
</ul>
<h1 id="지수분포의-무기억성">지수분포의 무기억성</h1>
<p>이산형에서 기하분포가 무기억성을 갖는 것처럼 연속형 분포에서는 지수분포가 무기억성을 가짐</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/fbb782c8-0e5b-4e41-984b-a83d4713b259/image.PNG" alt=""></p>
<h2 id="relation-to-the-poisson-process">relation to the Poisson process</h2>
<p>지수분포는 일반적으로 사건이 1건 발생하는데 걸리는 시간에 대한 분포로 사용</p>
<pre><code>- 포아송분포 : 발생 빈도에 따라 단위시간동안 발생하는 시간의 수가 확률변수
- 지수분포 : 발생빈도에 따라 1개의 사건이 발생하는데 걸리는 시간이 확률 변수</code></pre><h2 id="theorem">theorem</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/8ffc3aea-a39a-409f-86d5-42015711fd08/image.PNG" alt=""></p>
<h1 id="지수분포의-장점-및-사용">지수분포의 장점 및 사용</h1>
<p>Drenick의 정리 : 여러 개의 다른 형태의 부품으로 구성되어 만들어진 복잡한 기기나 시스템의 수명 분포는 비교적 넓은 조건하에서 근사적으로 지수분포를 따름.
수학적으로 다루기 쉬우며, 전기 및 전자부품 고장의 모형화에 많이 사용됨.</p>
<h1 id="감마-분포">감마 분포</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/8290a8d7-e6ba-430c-936d-e769ecd05e14/image.PNG" alt=""></p>
<h1 id="와이블-분포">와이블 분포</h1>
<p>확률변수 X가 다음의 확률밀도함수를 가질 때, 와이블분포를 따른다.</p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/4ef1628e-8a89-4d1f-96af-175d734063a4/image.PNG" alt=""></p>
<h2 id="특징">특징</h2>
<ul>
<li>신뢰성 데이터 분석에 가장 널리 사용되는 분포</li>
<li>형상모수에 의해 분포의 형태가 달라지고 다른 분포로 변환</li>
</ul>
<h2 id="최약연결의-법칙">최약연결의 법칙</h2>
<ul>
<li>독립적이고 동일한 분포를 따르는 여러 개의 비음의 확률변수들이 있을때, 이 중 최소한 확률변수의 분포는 와이블분포를 따르게 된다.</li>
</ul>
<h2 id="적용-사례">적용 사례</h2>
<ul>
<li>기계 부품, 주요 고장 메커니즘이 화확 반응일 경우</li>
</ul>
<h2 id="지수분포와-와이블분포의-차이점">지수분포와 와이블분포의 차이점</h2>
<ul>
<li>지수분포는 어셈블리와 시스템의 수명분포를 나타내는데 주로 사용</li>
<li>와이블분포는 부품의 수명분포</li>
</ul>
<h1 id="정규분포">정규분포</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/a7cd7522-55d0-4154-9a66-71b2b1707868/image.PNG" alt=""></p>
<p>정규분포의 PDF는 중심이 υ이고, 좌우대칭인 종 모양의 형태를 가짐</p>
<p>n이 충분히 크다면 표본 평균 근사적 정규 분포</p>
<h1 id="대수정규분포">대수정규분포</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/d9956d00-f317-4131-9bdb-a35c56287bd5/image.PNG" alt=""></p>
<h2 id="definition">Definition</h2>
<ul>
<li>다양한 형태의 분포를 표현할 수 있기 때문에 고장데이터 등을 모형화하는 경험적 모형으로 폭넓게 사용됨.</li>
<li>곱셈형 충격의 누적효과로 인해 고장이 발생하는 현상에 대해서 대수정규분포가 유도됨을 보일 수 있음.</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[Pytorch MNIST 활용해보기]]></title>
            <link>https://velog.io/@kim_haesol/Pytorch-MNIST-%ED%99%9C%EC%9A%A9%ED%95%B4%EB%B3%B4%EA%B8%B0</link>
            <guid>https://velog.io/@kim_haesol/Pytorch-MNIST-%ED%99%9C%EC%9A%A9%ED%95%B4%EB%B3%B4%EA%B8%B0</guid>
            <pubDate>Mon, 04 Jul 2022 12:48:35 GMT</pubDate>
            <description><![CDATA[<p>파이토치, matplotlib를 활용해야한다.</p>
<h2 id="필요한-모듈을-불러와보자">필요한 모듈을 불러와보자!</h2>
<pre><code>import torch
import torch.nn as nn
import torch.nn.functional as F 
import torch.optim as optim
from torchvision import datasets, transforms
from matplotlib import pyplot as plt
%matplotlib inline</code></pre><h2 id="cuda가-가능하면-cuda-아니면-cpu-설정">cuda가 가능하면 cuda 아니면 cpu 설정</h2>
<pre><code>is_cuda = torch.cuda.is_available()
device = torch.device(&#39;cuda&#39; if is_cuda else &#39;cpu&#39;)

print(&#39;current cuda device is&#39;, device)</code></pre><p>current cuda device is cuda
현재 cuda가 가능하다고 뜬다.</p>
<h2 id="피라미터-설정">피라미터 설정</h2>
<pre><code>batch_size = 50
learning_rate = 0.0001
epoch_num = 15</code></pre><h2 id="mnist-데이터-불러오기">mnist 데이터 불러오기</h2>
<pre><code>train_data = datasets.MNIST(root = &#39;./data&#39;,
                            train = True,
                            download= True,
                            transform = transforms.ToTensor())
test_data = datasets.MNIST(root = &#39;./data&#39;,
                           train = False,
                           transform = transforms.ToTensor())

print(&#39;number of traing data:&#39;,len(train_data))
print(&#39;number of test data:&#39;, len(test_data))</code></pre><pre><code>image, label = train_data[0]

plt.imshow(image.squeeze().numpy(), cmap =&#39;gray&#39;)
plt.title(&#39;label: %s&#39; % label)
plt.show()</code></pre><p><img src="https://velog.velcdn.com/images/kim_haesol/post/d56cc18a-0d7f-4b2f-84d1-870e82cdd1a7/image.PNG" alt=""></p>
<h2 id="미니-배치-구성">미니 배치 구성</h2>
<pre><code>train_loader = torch.utils.data.DataLoader(dataset = train_data,
                                            batch_size = batch_size, shuffle = True)
test_loader = torch.utils.data.DataLoader(dataset = test_data,
                                          batch_size = batch_size, shuffle = True)

first_batch = train_loader.__iter__().__next__()</code></pre><pre><code>class CNN(nn.Module):
    def __init__(self):
        super(CNN, self).__init__()
        self.conv1 = nn.Conv2d(1,32,3,1,padding=&#39;same&#39;)
        self.conv2 = nn.Conv2d(32,64,3,1,padding=&#39;same&#39;)
        self.dropout = nn.Dropout2d(0.25)
        self.fc1 = nn.Linear(3136,1000) # 7*7*64=3436
        self.fc2 = nn.Linear(1000,10)

    def forward(self,x):
        x = self.conv1(x)
        x = F.relu(x)
        x = F.max_pool2d(x,2)
        x = self.conv2(x)
        x = F.relu(x)
        x = F.max_pool2d(x,2)
        x = self.dropout(x)
        x = torch.flatten(x,1)
        x = self.fc1(x)
        x = F.relu(x)
        x = self.fc2(x)
        output = F.log_softmax(x, dim=1)
        return output</code></pre><pre><code>model = CNN().to(device)
optimizer = optim.Adam(model.parameters(), lr = learning_rate)
criterison = nn.CrossEntropyLoss()</code></pre><pre><code>model.train()
i = 1
for epoch in range(epoch_num):
    for data, target in train_loader:
        data = data.to(device)
        target = target.to(device)
        optimizer.zero_grad()
        output = model(data)
        loss = criterison(output, target)
        loss.backward()
        optimizer.step()
        if i % 1000 == 0:
            print(&#39;train step: {}\t loss: {:.3f}&#39;.format(i, loss.item()))

        i += 1</code></pre><p>train step: 1000     loss: 0.048
train step: 2000     loss: 0.128
train step: 3000     loss: 0.013
train step: 4000     loss: 0.065
train step: 5000     loss: 0.049
train step: 6000     loss: 0.029
train step: 7000     loss: 0.156
train step: 8000     loss: 0.031
train step: 9000     loss: 0.010
train step: 10000     loss: 0.007
train step: 11000     loss: 0.018
train step: 12000     loss: 0.010
train step: 13000     loss: 0.001
train step: 14000     loss: 0.122
train step: 15000     loss: 0.003
train step: 16000     loss: 0.000
train step: 17000     loss: 0.003
train step: 18000     loss: 0.000</p>
<p>train step별 loss의 값을 볼 수 있다.</p>
<pre><code>model.eval()
correct = 0
for data, target in test_loader:
    data = data.to(device)
    target = target.to(device)
    output = model(data)
    prediction = output.data.max(1)[1]
    correct += prediction.eq(target.data).sum()

print(&#39;test set : accuracy:{:.2f}%&#39;.format(100. * correct / len(test_loader.dataset)))</code></pre><p>test set : accuracy:99.24%</p>
<p>accuracy가 99%까지 나온다,,!!</p>
<hr>
<p>이렇게 해서 jupyter notebook에서 pytorch MNIST 데이터를 가지고 데이터 분석을 해보았다.!</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - 신뢰성 개념과 중요성]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%EC%8B%A0%EB%A2%B0%EC%84%B1-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%A4%91%EC%9A%94%EC%84%B1</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%EC%8B%A0%EB%A2%B0%EC%84%B1-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%A4%91%EC%9A%94%EC%84%B1</guid>
            <pubDate>Mon, 04 Jul 2022 07:17:08 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/kim_haesol/post/fc864d7c-c634-4e8b-91ae-62a3c6e9b75e/image.png" alt=""></p>
<p>커뮤니티를 보니깐,,강의 내용을 캡처하면 안된다고 되어 있다..으아 그래서 앞으로는 부수적인 사진 자료를 참고할 수 없을 것 같다.!아쉽구만</p>
<hr>
<h1 id="신뢰성의-정의">신뢰성의 정의</h1>
<p>주어진 작동 환경에서 주어진 시간 동안 시스템이 고유의 기능을 수행할 확률
<img src="https://velog.velcdn.com/images/kim_haesol/post/6ce66694-9206-4f4f-b3a5-b1cac05abbe4/image.PNG" alt="">[출처: 산업자원부기술표준원]</p>
<p>품질의 분포 : 이형분포, 정규 분포
신뢰성의 분포 : 지수분포, 와이블 분포, 대수정규 분포</p>
<h1 id="신뢰성-분석의-필요성">신뢰성 분석의 필요성</h1>
<h2 id="고장의-원인">고장의 원인</h2>
<h3 id="취약한-설계">취약한 설계</h3>
<p>제품이 초기부터 취약하게 설계되었거나 설계 오류 내지 부적합한 설계로 인한 고장의 원인</p>
<h3 id="과부하">과부하</h3>
<p>제품이 사용되는 과정에서 설계된 강도로는 견딜 수 없을 정도의 부하가 가해지도록 하는 고장의 원인</p>
<h3 id="강도와-부하의-산포">강도와 부하의 산포</h3>
<p>강도가 부하보다 더 높게 설계되었다고 하더라도 생산 혹은 사용 과정에서 강도 및 부하에 산포가 발생하여 부하가 강도보다 크게 되는 고장 원인</p>
<h3 id="마모">마모</h3>
<p>초기에 충분한 강도로 설계된 제품이 사용에 따라 마모되어 고장을 유발하게 되는 원인</p>
<h3 id="시간-매커니즘">시간 매커니즘</h3>
<p>배터리의 방전, 장시간 고온 노출 및 인장 부하에 의한 변형 등 시간의 경과에 따라 발생하는 고장 원인</p>
<h3 id="잠재된-오작동">잠재된 오작동</h3>
<p>모두 정상의 부품으로 제대로 조립된 제품이 특정 순서나 패턴으로 동작시킬 경우에만 발생하는 고장 원인</p>
<h3 id="오류">오류</h3>
<p>설계 오류, 소프트웨어 코딩 오류 등 각종 오류에 기안된 고장 원인</p>
<h1 id="신뢰성-척도">신뢰성 척도</h1>
<ol>
<li>신뢰도</li>
<li>순간 고장율</li>
<li>평균 고장율</li>
<li>평균 고장시간</li>
<li>평균 고장간격</li>
<li>보전도 <ul>
<li>고장난 시스템이 주어진 조건 하에서 규정된        시간 내에 수리 완료할 확률</li>
</ul>
</li>
<li>가용도</li>
</ol>
<h1 id="신뢰성-데이터">신뢰성 데이터</h1>
<h2 id="수명데이터">수명데이터</h2>
<ul>
<li>의도된 기능을 제대로 수행하고 있거나 고장인지의 여부로 판정</li>
<li>가속수명시험</li>
</ul>
<h2 id="성능데이터">성능데이터</h2>
<ul>
<li>시간 경과에 따른 제품의 성능을 측정</li>
<li>가속열화 시험</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - 스마트 품질 경영]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%EC%8A%A4%EB%A7%88%ED%8A%B8-%ED%92%88%EC%A7%88-%EA%B2%BD%EC%98%81</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%EC%8A%A4%EB%A7%88%ED%8A%B8-%ED%92%88%EC%A7%88-%EA%B2%BD%EC%98%81</guid>
            <pubDate>Mon, 04 Jul 2022 06:07:46 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/kim_haesol/post/d690f0f0-38d4-464c-b90c-80a3ebce3ff3/image.PNG" alt=""></p>
<h1 id="품질-40과-스마트-품질-경영">품질 4.0과 스마트 품질 경영</h1>
<h2 id="전사적-품질-관리">전사적 품질 관리</h2>
<p>소비자들의 요구사항 증가 -&gt; 많은 기업들은 여전히 전통적인 방식의 품질 관리 및 경영기법에 머물러 있다.</p>
<ul>
<li>제품 복잡도 및 다양성 증가, 제품주기 단축, 세계화 및 규제 변화 등은 효과적인 품질경영 수행을 어렵게 만드는 요인들</li>
</ul>
<h2 id="품질-40">품질 4.0</h2>
<p>ICT 융합을 통해 종전의 사후검사 및 보증에서 벗어나 사전에 수집, 분석된 빅데이터를 활용하여 선제적 불량예지 및 보전 중심으로 진화된 품질 경영시스템</p>
<ul>
<li>사물 인터넷, 빅데이터 분석 기술 등이 결합된 신개념</li>
</ul>
<h3 id="스마트-공장">스마트 공장</h3>
<p>환경을 고려하고 안전성을 확보하면서 빠르고 역동적인 시장 변화에 대하여 능동적으로 대응할 수 있는 지능형 디지털 시스템</p>
<ul>
<li><p>디지털 변환은 통신기술을 비롯한 디지털 기술을 활용하여 사회와 개인, 그리고 기업을 변화시키는 총제적 활동</p>
</li>
<li><p>사물인터넷을 중심으로 더욱 발전</p>
</li>
<li><p>실시간 데이터를 이용하여 혁신적으로 공정이나 비즈니스 최적화를 도출해 나가는 경영활동</p>
</li>
</ul>
<h1 id="품질관리-개선-영역">품질관리 개선 영역</h1>
<h2 id="예방적-품질-관리">예방적 품질 관리</h2>
<ul>
<li>제품 개발부터 시장 출시에 이르는 전 과정 상에서 제품의 품질을 보장하기 위해 설계된 프로세스</li>
<li>최고의 품질을 이루기 위해서는 가치사슬의 첫단계인 개념정의 및 제품설계부터 품질관리가 시작되어야 함</li>
</ul>
<h2 id="반응적-품질-관리">반응적 품질 관리</h2>
<ul>
<li>제품 판매 이후의 품질관리</li>
<li>고장 및 수리 처리 시간 : KPI
신속하게 처리해야 된다.</li>
</ul>
<h1 id="빅데이터">빅데이터</h1>
<h2 id="크기">크기</h2>
<ul>
<li>기존 시스템에서는 이미 개량보전 및 에방보전 이력, 품질관련 이벤트 등 대량의 거래 데이터를 보유</li>
<li>향후 IOT를 기반으로 설비, 디바이스 등으로부터 대량의 데이터가 시스템에 유입 될 것</li>
</ul>
<h2 id="다양성">다양성</h2>
<ul>
<li>기존의 정형 데이터뿐만 아니라 센서 및 텍스트 데이터 등 비정형 데이터 등 다양한 형태의 데이터가 존재</li>
</ul>
<h2 id="속도">속도</h2>
<h2 id="정확성">정확성</h2>
<h1 id="analytics">ANALYTICS</h1>
<h2 id="설명적-애널리틱스">설명적 애널리틱스</h2>
<p>데이터로부터 과거에 무엇이 발생했는지를 분석하기 위한 기법</p>
<ul>
<li>상관관계를 모니터링하고 분석</li>
</ul>
<h2 id="진단적-애널리틱스">진단적 애널리틱스</h2>
<p>과거의 축적된 데이터를 바탕으로 인과관계를 찾아내어 왜 특정 품질관리 이벤트가 발생했는지를 밝히기 위한 분석기법</p>
<h2 id="예측적-애널리틱스">예측적 애널리틱스</h2>
<p>통계학적 모델들을 활용하여 미래에 어떠한 사건이 어느 정도의 확률로 발색할 지를 예측하는 분석긱법</p>
<ul>
<li>머신러닝이 주로 쓰인다.<h2 id="처방적-혹은-규범적-애널리틱스">처방적 혹은 규범적 애널리틱스</h2>
예측되는 이벤트를 위해 무엇을 하면 좋을지를 처방하는 것</li>
</ul>
<h1 id="스마트-품질경영-혁신방안">스마트 품질경영 혁신방안</h1>
<h2 id="1-실시간-커뮤니티-피드백을-제공하는-방안">1. 실시간 커뮤니티 피드백을 제공하는 방안</h2>
<h2 id="2-원격진단-및-유지-보수">2. 원격진단 및 유지 보수</h2>
<ul>
<li>원격 진단 기술은 센서들을 활용하여 근본 원인분석을 수행하고 사물인터넷을 기반으로 여러 설비의 센서 피드백을 결합하여 새로운 형태의 설비데이터를 확보</li>
<li>원격 진단을 통한 데이터를 기반으로 고객이 문제가 있음을 인식하기 이전에 품질문제를 해결하는 데 활용할 수 있다면 서비스 품질을 크게 향상</li>
</ul>
<h2 id="3-고도화된-공급망-품질관리">3. 고도화된 공급망 품질관리</h2>
<ul>
<li>공급업체 성과지표와 공장 및 공급양 수준의 사고 데이터 등 주요 데이터들을 적극적으로 취득하는 것이 중요</li>
<li>지능형 알고리즘이나 애널리틱스는 사례기반 추론 뿐만 아니라 경험적 방법을 활용하여 지속적으로 데이터를 분석</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers - SPC의 필요성과 개념]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-SPC%EC%9D%98-%ED%95%84%EC%9A%94%EC%84%B1%EA%B3%BC-%EA%B0%9C%EB%85%90</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-SPC%EC%9D%98-%ED%95%84%EC%9A%94%EC%84%B1%EA%B3%BC-%EA%B0%9C%EB%85%90</guid>
            <pubDate>Mon, 04 Jul 2022 01:42:50 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/kim_haesol/post/4f668984-643e-4b0f-8f24-1200252ddc4f/image.PNG" alt=""></p>
<h1 id="spc의-정의">SPC의 정의</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/797705e9-e9e5-4060-a891-378276d17eeb/image.PNG" alt=""></p>
<h1 id="spc의-장점과-단점">SPC의 장점과 단점</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/f741e786-3ec2-4f6c-9664-7c80464259fc/image.PNG" alt=""></p>
<h1 id="spc의-적-품질변동">SPC의 적: 품질변동</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/025cc7c5-28a2-40a3-b4a4-1bf5e03e88e1/image.PNG" alt=""></p>
<h1 id="개선하는-방법">개선하는 방법</h1>
<h2 id="해결해야-할-문제의-개선방향-파악">해결해야 할 문제의 개선방향 파악</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/81f7aac6-3284-4a44-b00c-6be20d4cc1d3/image.PNG" alt=""></p>
<h2 id="변동원인의-개선과-관리도">변동원인의 개선과 관리도</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/bedecff8-0f56-450c-9906-e41f31fe43e2/image.PNG" alt=""></p>
<h1 id="품질개선도구qc-7가지-도구">품질개선도구(QC) 7가지 도구</h1>
<p>품질은 4M, 재료, 장비, 작업방법, 작업자를 대상으로 지속적인 개선이 요구</p>
<ul>
<li><p>적은 데이터로부터 가능한 한 신뢰성이 높은 객관적인 정보를 얻는데 가장 유효한 수단</p>
</li>
<li><p>품질 관리를 하는데 있어서 가장 필수적인 통계적 방법</p>
<ul>
<li>파레토 차트</li>
<li>특성요인도</li>
<li>체크시트</li>
<li>히스토그램</li>
<li>산점도</li>
<li>그래프</li>
<li>관리도</li>
</ul>
</li>
</ul>
<h2 id="qc-7-tool의-용도">QC 7 TOOL의 용도</h2>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/a9d1f0ce-4204-4a6b-896b-fb2fbc49bda8/image.PNG" alt=""></p>
<h2 id="qc-7-tool의-특징">QC 7 TOOL의 특징</h2>
<ol>
<li>쉽게 작성</li>
<li>쉬운 이해</li>
<li>누구나 사용가능</li>
<li>넓은 적용 범위</li>
<li>높은 유용성</li>
</ol>
<h4 id="특성-요인도">특성 요인도</h4>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/63353b2e-2615-468a-81ac-f5ce5587c5e9/image.PNG" alt="">
크게 4M으로 나눈다</p>
<h4 id="히스토그램">히스토그램</h4>
<p>전체 데이터의 분포상태 파악
<img src="https://velog.velcdn.com/images/kim_haesol/post/4a184078-0393-43e3-8e10-e6a3f7706cc8/image.PNG" alt="">
1번 그림이 정규분포를 따르고 있고 공정의 중심이 잘 맞추어져 있다고 볼 수 있다.</p>
<h4 id="산점도">산점도</h4>
<p>결과와 원인사이의 관계가 어느 정도인지 대략적으로 파악하는데 이용
<img src="https://velog.velcdn.com/images/kim_haesol/post/b36d6e68-5f51-4eb9-aab2-5e04449bc986/image.PNG" alt=""></p>
<h4 id="관리도">관리도</h4>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/11d6932c-81cc-4c0a-aafb-384721ba0a92/image.PNG" alt=""></p>
<h5 id="관리도의-분류">관리도의 분류</h5>
<p>관리 대상의 데이터 특성에 따라서 계량형과 계수형 구분</p>
<ul>
<li>계량형 관리도<ul>
<li>연속형 측정데이터 기반</li>
</ul>
</li>
<li>계수형 관리도<ul>
<li>이산형 품질특성치를 관리하기 위한 관리도</li>
</ul>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/b480324d-2265-4ac4-b0bb-f2a02473fc06/image.PNG" alt=""></p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/c5e2b495-4629-4806-ae82-fcfbd369577b/image.PNG" alt=""></p>
<h4 id="작성방법">작성방법</h4>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/971537a1-2a93-412a-9441-b4a985e5bc77/image.PNG" alt=""></p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/8628249d-2bfb-4bf9-b047-906f851f1e72/image.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[LG AImers- 품질 및 품질비용]]></title>
            <link>https://velog.io/@kim_haesol/LG-AImers-%ED%92%88%EC%A7%88-%EB%B0%8F-%ED%92%88%EC%A7%88%EB%B9%84%EC%9A%A9</link>
            <guid>https://velog.io/@kim_haesol/LG-AImers-%ED%92%88%EC%A7%88-%EB%B0%8F-%ED%92%88%EC%A7%88%EB%B9%84%EC%9A%A9</guid>
            <pubDate>Mon, 04 Jul 2022 01:12:20 GMT</pubDate>
            <description><![CDATA[<p>우연히 지원한 LG의 새프로그램에 합격하여 LG 수업을 듣게 되었다.</p>
<hr>
<h1 id="품질">품질</h1>
<h2 id="품질의-개념">품질의 개념</h2>
<ul>
<li>전통적 품질관리에서의 품질 : &quot;규격에 부합하는 것&quot;<h3 id="품질을-보는-5가지-관점">품질을 보는 5가지 관점</h3>
</li>
</ul>
<ol>
<li><p>선험적 관점</p>
<ul>
<li>품질을 정의할 수는 없더라도 무엇인지 고객이 인지</li>
</ul>
</li>
<li><p>제품 관점</p>
<ul>
<li>바람직한 성분이나 속성의 함량 차이가 곧 품질의 차이</li>
</ul>
</li>
<li><p>사용자 관점</p>
<ul>
<li>용도 적합성</li>
</ul>
</li>
<li><p>제조 관점</p>
<ul>
<li>요구사항에 부합되는 정도</li>
</ul>
</li>
<li><p>가치 관점</p>
<ul>
<li>품질은 실제 용도와 판매가격의 최적 상태</li>
</ul>
</li>
</ol>
<h1 id="품질의-구성요소">품질의 구성요소</h1>
<ol>
<li>제품 특징<ul>
<li>시장점유율의 확대나 보다 높은 가격을 통하여 주로 &#39;판매수익의 증대&#39;에 기여하는 요소</li>
</ul>
</li>
<li>무결함<ul>
<li>재작업, 폐기처분 고객불만 등의 감소를 통한 &#39;원가절감&#39;에 기여하는 요소</li>
</ul>
</li>
</ol>
<h1 id="품질의-유형">품질의 유형</h1>
<ol>
<li>요구 품질<ul>
<li>제품, 서비스를 사용하는 사람의 입장에서 요구하는 품질</li>
<li>정량적인 수치로 측정하거나 규정할 수 없는 추상적 개념의 품질</li>
</ul>
</li>
<li>설계품질<ul>
<li>기업의 품질방침 및 장비, 시설, 기능, 인력 등의 제조역량을 고려하여 추상적 요구품질을 구체적으로 설계도면 등에 명문화한 품질<h3 id="주요-고려사항">주요 고려사항</h3>
</li>
</ul>
<ol>
<li>고객의 요구품질을 구체화하는 기술수단.</li>
<li>비용 - 시장에 판매할 가격과 제품생산에 필요한 비용을 고려하여 회사의 품질방침에 맞는 설계방침을 결정해야함.</li>
</ol>
</li>
</ol>
<h1 id="품질의-8가지-차원">품질의 8가지 차원</h1>
<ol>
<li>성능 - 제품의 기본적 운용특성</li>
<li>특징 - 성능의 부차적,보완적 특성</li>
<li>신뢰성 - 사용환경에 규정된 기간동안 고장없이 작동될 성능</li>
<li>적합성 - 설정된 표준이나 규격에 부합되는 정도</li>
<li>내구성 - 제품의 사용수명</li>
<li>서비스성 - 수리 용이성과 신속성</li>
<li>심미성 - 제품의 외관, 느낌, 소리 등과 같은 선호도 특성</li>
<li>인지품질 - 관고,이미지 등에 의해 형성된 지각품질</li>
</ol>
<h1 id="품질로-인한-상승효과">품질로 인한 상승효과</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/1b09076d-2745-4a82-9b35-a9b3c6a7e946/image.PNG" alt=""></p>
<h1 id="품질-비용의-영향">품질 비용의 영향</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/c79d02ff-8588-4d19-91cb-b9562d53beb6/image.PNG" alt=""></p>
<h1 id="품질비용의-종류">품질비용의 종류</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/238681eb-704c-4ba0-943d-e726216d02fb/image.PNG" alt=""></p>
<h2 id="예방비용">예방비용</h2>
<ul>
<li>처음부터 불량이 발생하지 않도록 하는 데 소요되는 비용</li>
<li>품질계획 비용, 검사 및 시험계획 비용, 공정관리 비용, 설계, 검토 비용 등</li>
</ul>
<h2 id="평가비용">평가비용</h2>
<ul>
<li>소정의 품질 수준을 유지하는 데 드는 비용</li>
<li>공정검사 비용, 수입검사 비용, 완제품 검사비용, 검사 및 시험장비 유지 및 보수 등</li>
</ul>
<h1 id="품질비용의-새로운-개념">품질비용의 새로운 개념</h1>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/10bff83a-3cd1-41ab-82d2-e026376ce356/image.PNG" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[DeepLearning Scratch]]></title>
            <link>https://velog.io/@kim_haesol/DeepLearning-Scratch</link>
            <guid>https://velog.io/@kim_haesol/DeepLearning-Scratch</guid>
            <pubDate>Thu, 30 Jun 2022 07:06:03 GMT</pubDate>
            <description><![CDATA[<pre><code>import numpy as np

X = np.array([
    [0,0,1],
    [0,1,1],
    [1,0,1],
    [1,1,1]
])</code></pre><pre><code>def sigmoid(x):
    return 1.0 / (1.0 + np.exp(-x))</code></pre><pre><code>W = 2*np.random.random((1,3)) -1
W</code></pre><p>array([[-0.35626925, -0.54131108,  0.80274536]])
확인할 수 있다.가중치를 랜덤하게 선택했기에
원래는 학습이 완료된 가중치를 사용해야 한다.</p>
<h2 id="추론-결과">추론 결과</h2>
<pre><code>n=4
for k in range(n):
    x = X[k, :].T
    v = np.matmul(w,x)
    y = sigmoid(v)

    print(v)</code></pre><p>값을 확인할 수 있었다.
하지만 문제!!</p>
<p><em><strong>랜덤하게 잡았기 때문에 추론 결과는 아무런 의미가 없거나 틀렸다</strong></em></p>
<p><img src="https://velog.velcdn.com/images/kim_haesol/post/6b06a51e-27bf-45ff-abaf-031623e0f23a/image.PNG" alt=""></p>
<h2 id="이제-가중치가-정답을-맞추도록-학습을-시켜야-한다">이제 가중치가 정답을 맞추도록 학습을 시켜야 한다.</h2>
<pre><code>D = np.array([
    [0],[0],[1],[1]
])</code></pre><p>그래서 우선 정답을 먼저 입력해주자</p>
<pre><code>def calc_output(W,x):
    v = np.matmul(w,x)
    y = sigmoid(v)

    return y</code></pre><h2 id="오차율-계산">오차율 계산</h2>
<pre><code>def calc_error(d,y):
    e = d-y
    delta = y*(1-y) * e

    return delta</code></pre><pre><code>def delta_GD(W,X,D,alpha):
    for k in range(4):
        x = X[k,:].T
        d=D[k]

        y = calc_output(W,x)
        delta = calc_error(d,y)

        dW = alpha*delta*x
        W = W+dW
    return W</code></pre><p><img src="https://velog.velcdn.com/images/kim_haesol/post/ab3151c8-9b94-4c57-8826-3bd434f40c9e/image.PNG" alt="">
<img src="https://velog.velcdn.com/images/kim_haesol/post/7f48a06c-3cfd-4288-b89b-006c59c1c2ad/image.PNG" alt=""><img src="https://velog.velcdn.com/images/kim_haesol/post/ca553bb2-2827-4ec2-a3f6-f6dcf3eb4729/image.PNG" alt="">
<img src="https://velog.velcdn.com/images/kim_haesol/post/af7e9e12-87fa-4708-ad51-f40027070eda/image.PNG" alt=""></p>
<p>그림과 같이 학습을 시키도록 할 것이다.</p>
<pre><code>W =2*np.random.random((1,3))-1

alpha = 0.9
for epoch in range(10000):
    W = delta_GD(W,X,D,alpha)
    print(W)</code></pre><p>이렇게 하면 결과가 너무 많이 나와서,,몇개만 적어보자면</p>
<p>[[ 21.87266777 -26.76735849 -60.37668481]]
[[ 21.94403079 -26.85096037 -60.56602104]]
[[ 22.01539381 -26.93456225 -60.75535728]]
[[ 22.08675684 -27.01816413 -60.94469351]]
[[ 22.15811986 -27.10176601 -61.13402975]]
[[ 22.22948288 -27.18536789 -61.32336599]]
[[ 22.3008459  -27.26896977 -61.51270222]]
[[ 22.37220893 -27.35257165 -61.70203846]]
[[ 22.44357195 -27.43617353 -61.8913747 ]]
[[ 22.51493497 -27.51977541 -62.08071093]]</p>
<p>등의 결과가 만개 나온다.</p>
<pre><code>N=4
for k in range(N):
    x = X[k, :].T
    v = np.matmul(W,x)
    y = sigmoid(v)

    print(v)

w</code></pre><p>결과 확인 [0.01020176] [0.00829464] [0.99324188] [0.99168508]</p>
<h1 id="xor을-활용해서-더-알아보기">XOR을 활용해서 더 알아보기</h1>
<pre><code>X = np.array([
    [0,0,1],
    [0,1,1],
    [1,0,1],
    [1,1,1]
])

D= np.array([
    [0],[1],[1],[0]
])

W = 2*np.random.random((1,3)) -1</code></pre><pre><code>alpha = 0.9
for epoch in range(1000):
    W = delta_GD(W,X,D,alpha)</code></pre><pre><code>N = 4
for k in range(N):
    x = X[k,:].T
    v = np.matmul(W,x)
    y = sigmoid(v)

    print(y)</code></pre><p>[9.87437471e-68]
[1.17742856e-88]
[2.1557588e-113]
[2.57054453e-134]</p>
<pre><code>def calc_output(W1,W2,x):
    v1 = np.matmul(W1,x)
    y1 = sigmoid(v1)
    v = np.matmul(W2,y1)
    y = sigmoid(v)

    return y,y1</code></pre><h2 id="출력층의-델타-계산">출력층의 델타 계산</h2>
<pre><code>def calc_delta(d,y):
    e = d-y
    delta = y*(1 - y) * e

    return delta</code></pre><h2 id="은닉층의-델타-계산">은닉층의 델타 계산</h2>
<pre><code>def calc_delta1(W2,delta,y1):
    e1 = np.matmul(W2.T, delta)
    delta1 = y1 * (1-y1) * e1

    return delta1</code></pre><h2 id="역전파-코드">역전파 코드</h2>
<pre><code>def backprop_XOR(W1, W2, X, D, alpha):
    for k in range(4):
        x = X[k, :].T
        d = D[k]

        y, y1 = calc_output(W1, W2, x)
        delta = calc_delta(d,y)
        delta1 = calc_delta1(W2,delta, y1)

        dW1 = (alpha * delta1).reshape(4, 1) * x.reshape(1, 3)
        W1 = W1 +dW1

        dW2 = alpha * delta * y1
        W2 = W2 +dW2

    return W1, W2,</code></pre><pre><code>X = np.array([
    [0,0,1],
    [0,1,1],
    [1,0,1],
    [1,1,1]
])

D= np.array([
    [0],[1],[1],[0]
])

W1 = 2 * np.random.random((4,3)) - 1
W2 = 2 * np.random.random((1,4)) - 1

alpha =0.9
for epoch in range(1000):
    W1, W2 = backprop_XOR(W1, W2 ,X, D, alpha)</code></pre><p>이제 결과를 다시 확인해보자</p>
<pre><code>N = 4
for k in range(N):
    x = X[k,:].T
    v1 = np.matmul(W1,x)
    y1 = sigmoid(v1)
    v = np.matmul(W2,y1)
    y = sigmoid(v)

    print(y)</code></pre><p>이렇게 하면 결과가 0, 1, 1, 0 이 나오는 것을 확일할 수 있다.</p>
]]></description>
        </item>
    </channel>
</rss>