개인적으로 Raft 알고리즘에 대해 알아볼 일이 생겼다

Raft알고리즘은 Paxos 알고리즘의 기존의 잘못된 점을 고쳐 발전시킨 알고리즘이라고 한다. 그렇다면 과연 Paxos Raft 알고리즘이 속해 있는 합의 알고리즘이 무엇인지 알아보겠다.

합의 알고리즘은 분산 시스템의 결함 허용 방식의 하나이다.
이는 결함이 있는 분산 시스템이 합의된 하나의 제안을 공유할 있도록 설계되어 있다.

 

분산 컴퓨팅 시스템과 다수 Agent 시스템의 기본적인 문제점은 잘못된 프로세스가 존재하에 시스템의 안정성을 달성하는 것이다. 이것은 자주 프로세스들을 몇몇 데이터(컴퓨터 계산중 필요한) 수락하기 위해 필요하다.

예를 들어 합의 어플리케이션은 데이터베이스에 트랜잭션 커밋 여부, 인증된 리더(State machine replication Atomic broadcasts) 수락하기 위해 포함한다..


현실에서 어플리케이션들은 include clock synchronization, PageRank, opinion formation, power smart grids, state estimation, control of UAVs, load balancing등이 포함되어진다.

 

 

합의 문제는 다수의 프로세스를 하나의 데이터 값으로 묶는 약속이 필요하다.

몇몇 프로세스들은 실패 또는 믿을수 없는 다른 방향으로 수도 있고 그래서 합의 프로토콜들은 반드시 fault tolerant or resilient(탄력적이어야하고, 실패 결함이 있어야 한다).

프로세스들은 반드시 어디가에서 4개의 그들의 후보값을 넣고 다른 하나와 의사소통하고 하나의 합의 값으로 수락한다.

합의 문제는 멀티 클러스터 시스템을 제어하기위한 기본적인 문제이다. 

어쨌든 하나 또는 다수 실패 프로세스들은 만약 합의가 도달하지 못하거나 잘못 도달하도록  비뚤어지게 한다.

 

약속들은 합의문제를 해결이 되도록 그려진다. 제한된 숫자의 Faulty 프로세스들과 거래하도록 디자인 되어진다.

이러한 약속들은 반드시 개의 요구사항이 만족 되어야 한다.

예를 들어 하찮은 프로토콜은 모든 프로세스의 출력 바이너리 값을 가지게 될것이다.

1.    이것은 유용하지 않고 요구사항이 출력은 이와 같이 수정되어지면 어떠한 입력과도 반드시 의존하게된다.

이것은 출력값의 합의 프로토콜은 반드시 몇몇 프로세스의 입력값이다. 다른 요구사항은 프로세스는 결정 할지도 모른다.

 오류  발생하지 않는 경우 올바른 프로세스실행 불린다. 실패를 중단합의 프로토콜  내성  다음과 같은 속성을 만족해야한다
종료
모든 올바른 프로세스가 어떤 값을 결정한다.
효력
모든 프로세스가동일한  v  제안 하는 경우 , 모든 과정은 정확한 V  결정한다.
청렴
모든 올바른 과정은 대부분 하나의 값으로 결정 하고, 어떤  v  결정하면 , 다음에 v 일부 프로세스에 의해 제안 되어 있어야합니다.
협정
모든 정확한 프로세스  동일한 값에 동의해야한다 .
 

이러한 프로세스의 동의하는 과정을 합의라 한다.

Posted by MIDDLE
,

기계 학습이란?

일반적으로 기계학습은 컴퓨터가 경험, 예, 유추를 통해 학습할 수 있게 하는 적응 메커니즘과 관련이 있다. 학습 능력은 시간이 흐르면서 지능형 시스템의 성능을 개선한다. 기계 학습 메커니즘은 적응형 시스템의 기초로 형성한다. 기계학습에서 가장 많이 알려진 접근법은 인공 신경망(artificial neural network)과 유전 알고리즘(genetic algorithm)이다. 이 장에서는 신경망에만 집중한다.


신경망이란 무엇인가?

신경망은 인간의 뇌를 기반으로 한 추론 모델로 정의할 수 있다. 인간의 뇌는 조밀하게 서로 연결된 신경세포의 집합으로 이루어져있는데, 이 신경세포는 뉴런(neuron)이라는 기본적인 정보 처리 단위이다. 인간의 뇌는 100억개의 뉴런과 각 뉴런을 연결하는 6조개의 연결부위, 즉 시냅스(synapse)의 집합체다. 여러개의 뉴런을 동시에 사용함으로써 인간의 뇌는 현존하는 어떤 컴퓨터보다 빠르게 그 기능을 수행할 수 있다.

복잡한 전기 화학 반응은 신호를 한쪽 뉴런에서 다른쪽 ㄴ런으로 전파한다. 시냅스에서 나온 화학물질은 세포체의 전위에 변화를 일으킨다. 전위가 임계치(threshold 또는 임계값(threshold value))에 이르면 전기 파동인 활동 전위(action potential)가 축색 돌기를 통해 내려 보내진다. 그 파동은 퍼져나가다가 마침내 시냅스에 도달하고, 시냅스의 전위를 증가시키거나 감소시킨다. 그러나 가장 흥미로운 발견은 신경망이 적응성을 나타낸다는점이다. 뉴런들 사이의 연결강도는 자극패턴에 반응하여 장기적인 변화를 나타낸다. 또한 뉴런은 다른 뉴런과 새롭게 연결할 수 있다. 어떤 때는 뉴런의 집합체가 이쪽에서 저쪽으로 통채로 이동할 수도 있다. 이러한 메커니즘은 인간의 뇌에서 일나는 학습의 기초를 형성한다.


인간의 뇌는 매우 복잡하고, 비선형적이며, 변렬적인 정보 처리 시스템으로 생각할 수 잇다. 정보는 신경망의 특정위치가 아니라 신경망 전체에 동시에 저장되고 처리된다. 즉 신경망에서는 데이터 저장과 처리가 일부지역이 아니라 전체에 이루어진다.


적응성에 따라 잘못된 답으로 이끄는 뉴런들 사이의 연결은 약화되는 반면, 올바른 답으로 이끄는 연결은 강화된다. 그 결과, 신경망에 경험을 통한 학습 능력이 생긴다.


생물학적인 신경망에서 학습은 기초적이고 필수적인 특성이다. 쉽고 자연스러운 학습 방법 때문에 컴퓨터도 생물학적인 신경망을 모방하도록 학습할 수 있다.


오늘날의 인공 신경망(ANN, Artificial Neural Network)이 인간의 뇌를 흉내낸 정도가 비록 종이비행기로 초음속 항공기를 흉내낸 수준에 불과하다 해도 이는 크게 진일보한 것이다. ANN에는 '학습' 능력이 있다. 즉 성능을 개선하는 데 경험을 활용한다. 표본이 충분히 주어지면 ANN은 아직 발견하지 못한 사실을 일반화할 수 있다.  손을 쓴 글씨를 인식할 수 있고, 인간의 대화에서 단어를 판별해낼 수 있으며, 공항의 폭발물을 탐지할 수 있다. 또한 ANN은 전문가가 인식해내지 못한 패턴을 찾아낼 수도 있다. 예를들어, 체이스 맨하탄 은행에서는 도난당한 신용카드들의 사용내역을 검사하기위해 인공신경망을 사용했으며, 가장 의심스러운 매출이 $40~$80 정도의 여성구두라는 점을 발견해냈다.


인공신경망은 뇌를 어떻게 모델링 하는가?

인공신경망은 뉴런이라고 하는 아주 단순하지만 내부적으로 매우 복잡하게 연결된 여러 프로세서로 이루어져 있다. 이는 생물학적인 뇌의 뉴런과 유사하다. 뉴런은 이쪽뉴런에서 저쪽뉴런으로 신호가 지나가는 가중치가 있는 링크들로 연결되어 있다. 각각의 뉴런에서 저쪽 뉴런으로 신호가 지나가는 가중치가 있는 링크들로 연결되어 있다. 각각의 뉴런은 연결을 통해 여러 입력 신호를 받지만, 출력 신호는 오직 하나만 만든다. 출력신호는 뉴런에서 나가는 연결( 생물학적으로는 축색돌기에 해당을 통해 전달 된다. 나가는 연결은 같은 신호를 전달하는 여러가지 순서대로 퍼져나간다.( 신호하나가 가지들 사이에서 나뉘지않는다.) 나가는 가지들은 신경망 내 다른 뉴런의 입력과 연결된다. 


인공 신경망은 어떻게 '학습'하는가?

뉴런은 링크(link)로 연결되어 있고, 각 링크에는 그와 연관된 수치적인 가중치(numercial weight)가 있다. 가중치는 ANN에서 장기 기억을 위한 기본적인 수단으로, 각 뉴런 입력 강도, 즉 중요도를 표현한다. 신경망은 가중치를 반복적으로 조정하여 학습한다.




Posted by MIDDLE
,

IT의 일상화가 이뤄지는 스마트 시대에는 소셜, 사물, 라이프로그 데이터등이 결합되며 '빅데이터'의 영향력이 증대


5년 이내에 데이터의 폭발적 증가로 인한 혼돈과 잠재적인 가능성이 공존하는 '빅데이터(Big Data) 시대'가 도래

차세대 이슈로 빅데이터가 떠오르는 이유

1.ICT 주도권이 데이터로 이동

ICT ( Information & Communication Technology) 컴퓨터, 더 나아가 정보를 접근하고 저장하고 전송하고 조작할 수 있게하는 필수적인 전사적 소프트웨어미들웨어, 스토리지, 오디오 비주얼 시스템을 강조하는 용어이다

1. ICT 주도권이 데이터로 이동

2. 공간, 시간, 관계, 세상을 담는 데이터

3. 미래 경쟁력과 가치 창출의 원천


스마트 사회를 여는 열쇠, 빅데이터로의 변화

빅데이터 시대에는 데이터가 IT에서 분리된 독립적인 주체로 발전하며 IT의 주도권이 인프라, 기술, SW에서 데이터로 전이

- 스마트 시대에는 데이터의 저장-검색-관리-공유-분석-추론의 전체적인 과정이 업그레이드되며 정보화 시대와 차별적으로 성장


최근 빅데이터가 이슈가 되자 데이터 분석의 중요성에 대한 인식과 다양한 데이터 마이닝 기법은 새롭게 재조명

- 수집된 데이터에서 유용한 정보를 찾아내는 데이터 마이닝은 혁명적인 신기술로 평가되고 있으나 기대보다 실제 효과는 저조

- 그러나 데이터 생성과 유통속도가 빨라지며 데이터의 절대적인 양이 많아지자 의미있는 정보를 발견할 가능성이 높아짐.



분류 

 현재(AS - IS)

융합지식기반(TO-BE)

활용

변화

 데이터개방

웹기반 인터페이스 

 원본/분석/가시화 3계층

 이슈접근

후집계/원인 파악하는 사후대책반

 실시간 이슈 탐지를 통한 선대응적 기획반

 활용형태

 부처별 수직적 활용

 범부처/민간 수평적 분석

 주체

 업무 운영 담당자

분석, 기획 담당자 

분석

변화

 분석대상

정형화된 DB데이터 

정형데이터 + SNS, 질문등의 비정형 데이터 

 규모

 기가 ~ 테라바이트급

페타 ~ 제타 바이트급 

 분석범위

 단일 저장소(Silo)

 다중 저장소

 적용시간

 일괄(batch) 처리

인타임 처리 

 데이터

 저장 후 분석

 흐름(on-the-fly)분석



숨겨진 정보를 채굴하는 디지털 시대의 마이닝

디지털 시대에는 쌓여있는 데이터속에서 유용하고, 가치있는 정보를 찾기위한 노력이 끊임없이 진행 중

- 실생활 속에서 축적되는 다양한 유형의 데이터가 증가할 수록 데이터의 활용가치는 무한히 상승

-마이닝 기법은 기업의 의사결정, 마케팅, 고객관리 뿐만아니라 금융, 의학, 교육, 환경 등의 분야에서 혁신적으로 적용

< 데이터를 기반으로한 마이닝(mining) 기법들>


구 분

내 용 

데이터 마이닝

(Data Minig)

- 대용량의 데이터, 데이터베이스등에서 감춰진 지식, 기대하지 못했던 경향, 새로운 규칙 등의 유용한 정보를 발견하는 과정

- 데이터 마이닝을 통해 정보의 연관성( 순차 패턴, 유사성 등) 을 파악함으로써 가치있는 정보를 만들어 의사결정에 적용 

텍스트 마이닝

(Text Minig) 

-자연어로 구성된 비정형 텍스트 데이터에서 패턴 또는 관계를 추출하여 가치와 의미있는 정보를 찾아내는 마이닝 기법

- 텍스트 마이닝은 사람들이 말하는 언어를 이해할 수 있는 자연어처리(Natural Language Processing) 기술에 기반함 

웹 마이닝

(Web Minig) 

- 인터넷 상에서 수집된 정보를 데이터 마이닝 방법으로 분석 통합하는 기법

-웹 마이닝은 콘텐츠 마이닝( 웹 검색, 수집 데이터), 구조 마이닝(웹 사이트 구조), 활용 마이닝(사용자 이용형태) 등으로 세분화

소셜 분석,

소셜 마이닝

(Social Mining) 

- 소셜 미디어에 올라오는 글과 사용자를 분석해 소비자의 흐름이나 패턴등을 분석하고, 판매나 홍보에 적용

- 마케팅 분야뿐만 아니라 사회의 흐름과 트렌드, 여론 변화 추이를 읽어내는 소셜 미디어 시대의 새로운 마이닝 기법 

 현실마이닝

(Reality Minig)

-사람들의 행동 패턴을 예측하기 위해 사회적 행동과 관련된 정보를 기기(휴대폰, GPS 등)을 통해 얻고 분석하는 기법

-휴대폰 등 모바일 기기들을 통해 현실에서 발생하는 정보 기반으로 인간관계와 행동 양태등을 추론 


* 데이터 마이닝은 기업의 비즈니스 전략외에도 컴퓨터 과학이나 통계적관점으로 활용되어 부가가치가 높은 정보를 창출

- 국방 분야 (테러 위협 분석등), 의료분야 ( 질병진단 및 유전자 분석등), 에너지 분야( 전력수요 예측및 자원탐사 등)에서 활용

- IBM의 왓슨(Watson), 애플의 시리(Siri)처럼 사람의 말을 이해하고, 대안을 제시하는 인공지능 분야에서도 데이터는 필수 요소



숨겨진 정보를 채굴하는 디지털 시대의 마이닝

* 기업들은 수많은 고객, 업무, 거래 데이터를 활용하여 발 빠른 의사 결정, 미래 수요 예측, 경영 성과 관리에 기여하는 BI 전략 도입

- BI(Business Intelligence)는 의사 결정에 필요한 데이터를 수집, 저장, 처리, 분석하는 일련의 기술과 응용 시스템

 대용량 데이터의 저장소인 DW(Data Warehouse), 데이터 질의 및 보고 도구, 데이터 마이닝, 비즈니스 성과관리 등의 요소로 구성

- 고객관계관리(CRM)도 고객의 행동이나 평가를 분석하여 예측에 기반한 맞춤형 마케팅, 고객 니즈 대응, 신뢰도 향상에 기여


데이터 마이닝에서 ' 빅데이터 마이닝'으로

* 맥락 이해와 추론이 기반이 되는 인공지능형 서비스, 상황 인식 서비스, 개인 맞춤 서비스의 발전


- 사용자의 개인 정보나 상황 정보, 환경 정보, 위치 정보 등과 수많은 경우의 데이터를 결합하여 개인 특화 서비스 제공 가능

- 대용량 데이터 분석을 활용한 인지, 지각 결정을 제공하는 자율 시스템이 점차 확대 될것으로 예상

데이터의 과거 - 현재 - 미래

저장           >  검색     > 관리  > 공유    > 분석     > 추론

데이터베이스 > 검색엔진 > KMS > Web2.0 > 빅데이터 > 상황인식


빅데이터의 주요 특성과 요소

* 스마트 시대 주요 패러다임 선도를 위해서는 빅데이터의 활용이 핵심이며, 그 수준이 경쟁력과 성패를 좌우

- 성공적이고 차별화된 빅데이터 활용 전략의 수립은 빅데이터의 특성과 요소를 잘 이해하는 것에서 시작

- 대용량 데이터 분석을 활한 인지, 지각, 결정을 제공하는 자율 시스템이 점차 확대될것으로 예상

* 빅데이터의 특성은 일반적으로 3V* 



Posted by MIDDLE
,