클라우드컴퓨팅
빅데이터 분석의 경제성을 제공해준 결정적 기술, 대용량 제이터를 신속, 저렴하게 처리 가능
비즈니스 모델
플랫폼형 비즈니스 모델 다른 이해관계자들이 보완적인 상품, 서비스를 제공하는 생태계를 구축하고자 하는 비즈니스 모델
가치사슬형 비즈니스 모델 기업이 부가가치를 생산하는 과정인 가치사슬을 통합/세분화하여 시장 상황에 빠르게 대응할 수 있는 비즈니스 모델
대리인형 비즈니스 모델 거래 사이트가 직접 거래하지 않고 공급자와 수요자들이 자유롭게 거래할 수 있도록 서비스하는 비즈니스 모델
상거래형 비즈니스 다양한 공급자와 수요자들이 만나는 상거래 사이트를 운영하는 비즈니스 모델
딥러닝 관련 분석기법
1. 인공신경망(Artificial Neural Networks, ANN)
- 여러 계층(layer)으로 구성된 노드(node)들이 입력 데이터를 처리하여 출력값을 도출하는 기법입니다.
- 각 노드는 특정 가중치(weight)를 적용하여 계산을 수행하며, 기본적인 딥러닝 모델입니다.
2. 합성곱 신경망(Convolutional Neural Networks, CNN)
- 주로 이미지나 비디오 데이터를 분석하는 데 사용됩니다.
- 필터(커널)를 통해 특징을 추출하고, 공간적 구조를 고려한 분석이 가능해 패턴 인식에 뛰어납니다.
3. 순환 신경망(Recurrent Neural Networks, RNN)
- 시계열 데이터나 자연어 처리(NLP)에서 많이 사용됩니다.
- 이전의 상태를 메모리에 저장하고 다음 계산에 반영하는 방식으로, 연속적인 데이터 분석에 적합합니다.
4. 장단기 메모리(Long Short-Term Memory, LSTM)
- RNN의 한계를 극복하기 위해 고안된 모델
- 장기적인 의존성(long-term dependencies)을 효과적으로 처리할 수 있어 긴 시간 순서 데이터를 분석할 때 유리
5. 변환기(Transformers)
- 자연어 처리와 같은 분야에서 중요한 역할을 하는 기법
- 기존의 RNN과 달리 병렬 처리로 학습이 가능하며, BERT, GPT 같은 모델이 대표적
6. 자동 인코더(Autoencoders)
- 데이터를 효율적으로 압축하고 중요한 특징만 추출해내는 비지도 학습 기법
- 데이터 차원 축소나 노이즈 제거 등에 사용됩니다.
지도학습 관련 분석 기법
1. 선형 회귀(Linear Regression)
- 독립 변수와 종속 변수 간의 선형 관계를 기반으로 데이터를 예측하는 기법
- 연속적인 값을 예측할 때 사용
2. 로지스틱 회귀(Logistic Regression)
- 분류 문제에 사용되며, 결과가 특정 범주(예: 이진 분류에서 0 또는 1)로 나타나도록 확률을 출력하는 모델
- 주로 이진 분류(binary classification)에서 사용
3. 결정 트리(Decision Tree)
- 데이터를 분할하여 트리 구조로 예측을 수행하는 기법
- 분류와 회귀 모두에서 사용할 수 있으며, 해석이 직관적이라는 장점
4. 랜덤 포레스트(Random Forest)
- 여러 개의 결정 트리를 만들고, 그 결과를 결합하여 최종 예측을 하는 앙상블 학습 방법
- 과적합을 방지하고 성능을 높이는 데 유리
5. 서포트 벡터 머신(Support Vector Machine, SVM)
- 데이터를 고차원 공간으로 변환한 후, 두 클래스 간의 경계(초평면)를 찾아내는 분류 알고리즘
- 분류 문제에서 우수한 성능을 보입니다.
6. k-최근접 이웃(k-Nearest Neighbors, k-NN)
- 새로운 데이터가 주어졌을 때, 가장 가까운 k개의 이웃 데이터 포인트를 찾아 그들의 레이블을 기반으로 예측하는 방법
- 단순하지만 계산 비용이 큰 경우가 있습니다.
7. 나이브 베이즈(Naive Bayes)
- 베이즈 정리를 기반으로 한 분류 알고리즘으로, 각 특징이 독립적이라는 가정
- 주로 텍스트 분류와 같은 문제에 사용됩니다.
8. 신경망(Neural Networks)
- 입력 데이터와 출력 데이터 사이의 복잡한 패턴을 학습할 수 있는 알고리즘입니다.
- 심층 신경망(Deep Neural Networks, DNN)으로 확장하면 딥러닝 기법이 됩니다.
암묵지와 형식지의 상호작용(공포연애)
1. 암묵지(Implicit/Tacit Knowledge)
- 경험과 직관에서 얻어지는 지식으로, 명확하게 문서화되거나 언어로 표현되지 않은 지식을 의미합니다.
- 예를 들어, 장인의 손재주나 숙련된 기술자의 노하우가 여기에 해당됩니다.
2. 형식지(Explicit Knowledge)
- 쉽게 문서화되거나 공유할 수 있는 지식으로, 명확하게 표현된 지식입니다.
- 매뉴얼, 보고서, 책과 같은 형식으로 기록된 정보가 여기에 속합니다.
1. 공통화(Socialization)
- 암묵지 → 암묵지
- 개인 간의 경험을 공유하여 암묵지를 전달하는 과정입니다. 주로 대면 상호작용을 통해 이루어지며, 언어로 설명되지 않은 직관적 지식이 전수됩니다.
- 예시: 숙련된 장인이 견습생에게 작업을 보여주고, 견습생이 이를 관찰하고 따라 하는 경우.
2. 표출화(Externalization)
- 암묵지 → 형식지
- 암묵적인 지식을 언어나 문서, 모델 등으로 명확히 표현하여 형식지로 변환하는 과정입니다. 경험이나 직관을 구체적인 형태로 밖으로 표출해냅니다.
- 예시: 전문가가 자신의 경험을 문서로 작성하거나, 토론 중에 아이디어를 설명하는 것.
3. 연결화(Combination)
- 형식지 → 형식지
- 이미 존재하는 형식적인 지식을 결합하여 새로운 지식을 만드는 과정입니다. 여러 형식지(문서, 데이터, 보고서 등)를 모아서 재구성하거나 새로운 통찰을 도출합니다.
- 예시: 여러 논문이나 보고서를 참고하여 새로운 연구 보고서를 작성하는 것.
4. 내면화(Internalization)
- 형식지 → 암묵지
- 형식화된 지식을 개인이 학습하고, 이를 자신의 암묵지로 내재화하는 과정입니다. 형식지를 이해하고 이를 바탕으로 새로운 경험을 쌓아 자기 것으로 만드는 단계입니다.
- 예시: 매뉴얼을 읽고 이해한 뒤, 실제 작업에서 이를 적용해 숙련되는 과정.
특징을 보여주고 고르는 문제
1. 계층형 DBMS (Hierarchical DBMS)
- 구조: 트리 구조(계층적 구조)를 사용하여 데이터를 표현합니다. 데이터가 부모-자식 관계로 연결되며, 각 부모 노드는 여러 자식 노드를 가질 수 있지만, 각 자식 노드는 하나의 부모만 가질 수 있습니다.
- 특징:
- 빠른 데이터 액세스가 가능하지만, 구조가 고정되어 있어 유연성이 떨어집니다.
- 데이터를 삽입하거나 삭제할 때 계층적 관계를 유지하는 것이 어려울 수 있습니다.
- 예시: 초기 메인프레임에서 사용되던 IBM의 IMS DBMS가 계층형 구조를 따릅니다.
2. 객체지향 DBMS (Object-Oriented DBMS)
- 구조: 객체 지향 프로그래밍 개념을 적용하여 데이터를 관리합니다. 데이터와 해당 데이터를 처리하는 메서드가 함께 저장되는 객체 형태로 표현됩니다.
- 특징:
- 데이터 모델링에서 객체 지향 개념(상속, 다형성, 캡슐화 등)을 사용할 수 있습니다.
- 복잡한 데이터 구조를 쉽게 표현할 수 있어, 멀티미디어 데이터나 복잡한 관계를 가진 데이터를 처리하기에 적합합니다.
- 객체 데이터베이스는 객체지향 프로그래밍 언어(C++, Java 등)와 통합하여 쉽게 사용할 수 있습니다.
- 예시: ObjectDB, db4o 같은 DBMS가 객체지향 DBMS에 속합니다.
3. 네트워크형 DBMS (Network DBMS)
- 구조: 데이터를 그래프 구조로 관리합니다. 즉, 한 데이터가 여러 부모와 자식 노드를 가질 수 있어 더 복잡한 관계를 나타낼 수 있습니다. 부모-자식 관계에 얽매이지 않고 더 유연한 데이터 관계를 제공합니다.
- 특징:
- 계층형 DBMS보다 더 복잡한 관계를 표현할 수 있으며, 다대다 관계를 지원합니다.
- 데이터 구조가 복잡해질 수 있지만, 여러 경로로 데이터를 탐색할 수 있어 성능이 우수할 수 있습니다.
- 하지만 구조가 복잡해질수록 데이터베이스 관리가 어려워질 수 있습니다.
- 예시: 네트워크 모델을 따르는 대표적인 DBMS는 CODASYL DBMS입니다.
4. 분산형 DBMS (Distributed DBMS)
- 구조: 여러 노드(서버)에 분산된 데이터베이스를 하나의 논리적 시스템으로 관리하는 시스템입니다. 물리적으로 여러 장소에 데이터가 분산되어 있지만, 사용자에게는 단일 데이터베이스처럼 보입니다.
- 특징:
- 데이터가 여러 위치에 분산되어 있어 시스템 성능과 가용성이 향상될 수 있습니다.
- 네트워크 문제나 동기화 이슈가 발생할 수 있지만, 적절히 처리하면 신뢰성과 확장성이 뛰어납니다.
- 중앙 집중형 시스템에 비해 데이터를 복제하고 동기화하는 비용이 추가로 들 수 있습니다.
- 예시: Google의 Bigtable, Apache Cassandra, Amazon DynamoDB 같은 시스템들이 분산형 DBMS에 속합니다.
빅데이터 플랫폼의 역할
대규모 데이터의 수집, 저장, 처리, 분석을 통합적으로 관리하고 지원하는 기술 인프라를 제공하는 것입니다. 빅데이터 플랫폼은 다양한 데이터 소스로부터 데이터를 수집하고, 이를 효율적으로 관리하며, 실시간 분석과 예측을 가능하게 함으로써 조직이 데이터 기반 의사결정을 할 수 있도록 돕습니다.
빅데이터 플랫폼의 주요 역할
- 데이터 수집 및 통합
- 다양한 형태의 데이터를 수집하고 통합하는 기능을 제공합니다.
- 정형 데이터(Structured Data), 비정형 데이터(Unstructured Data), 반정형 데이터(Semi-Structured Data) 등을 포함하며, 데이터의 출처는 웹 로그, 센서, 소셜 미디어, 비디오, 텍스트 등 다양합니다.
- 플랫폼은 실시간 데이터 스트리밍(예: Apache Kafka)이나 대량의 배치 처리(예: Hadoop)를 지원하여 데이터를 빠르게 수집하고 처리합니다.
- 데이터 저장 및 관리
- 빅데이터는 일반적인 데이터베이스에 비해 규모가 크고 복잡한 구조를 가집니다. 플랫폼은 이 데이터를 효율적으로 저장할 수 있는 분산 저장 시스템(예: HDFS, Amazon S3)을 제공합니다.
- 데이터 호수(Data Lake)와 같은 구조를 통해 원시 데이터를 가공하지 않은 상태로 저장하고, 필요할 때 데이터를 분석할 수 있습니다.
- 확장성이 뛰어나며, 데이터 증가에 따라 저장 용량을 유연하게 조정할 수 있습니다.
- 데이터 처리 및 분석
- 플랫폼은 대규모 데이터를 처리할 수 있는 기술(예: Apache Spark, Flink)을 제공하여 데이터를 빠르고 효율적으로 분석할 수 있게 합니다.
- 배치 처리(Batch Processing)와 실시간 처리(Real-Time Processing) 모두 지원하며, 데이터를 빠르게 분석하여 실시간 의사결정을 내릴 수 있도록 도와줍니다.
- 데이터 정제, 변환, 집계와 같은 데이터 처리 작업을 자동화하여 데이터의 품질을 높입니다.
- 데이터 분석 및 시각화
- 빅데이터 분석 도구와의 통합을 통해 머신러닝, 데이터 마이닝, 예측 분석을 지원합니다. 사용자는 데이터를 분석해 패턴을 발견하고, 예측 모델을 생성할 수 있습니다.
- 다양한 시각화 도구(예: Tableau, Power BI)를 통해 데이터를 쉽게 이해할 수 있도록 차트, 그래프 등으로 시각화합니다. 이러한 시각화는 데이터 기반 인사이트를 얻는 데 도움을 줍니다.
- 데이터 보안 및 관리
- 빅데이터 플랫폼은 민감한 데이터를 보호하기 위해 강력한 보안 기능을 제공합니다. 데이터 암호화, 사용자 인증, 접근 제어 등 보안 정책을 통해 데이터를 안전하게 관리할 수 있습니다.
- 데이터에 대한 접근 권한을 설정하고, 규제 준수(예: GDPR)를 위해 데이터를 체계적으로 관리합니다.
- 데이터 기반 의사결정 지원
- 빅데이터 플랫폼은 실시간 데이터 분석을 통해 **데이터 기반 의사결정(Data-Driven Decision Making)**을 가능하게 합니다.
- 기업은 플랫폼에서 제공하는 데이터를 통해 시장 트렌드를 예측하고, 고객 행동을 분석하며, 운영 최적화 및 비용 절감을 실현할 수 있습니다.
- 확장성과 유연성 제공
- 플랫폼은 데이터 양이 증가할 때 확장 가능한 인프라를 제공합니다. 클라우드 기반 빅데이터 플랫폼은 사용자가 필요에 따라 자원을 동적으로 확장하거나 축소할 수 있게 합니다.
- 새로운 분석 도구나 기술을 쉽게 통합할 수 있어 빠르게 변화하는 기술 환경에 대응할 수 있습니다.
데이터베이스
1. 관계형 데이터베이스 (Relational Database, RDB)
- 구조: 데이터를 테이블(표) 형태로 저장하며, 행(레코드)과 열(필드)로 구성됩니다.
- 특징: SQL 사용, 데이터 무결성 보장.
- 예시: MySQL, PostgreSQL, Oracle, Microsoft SQL Server
2. NoSQL 데이터베이스
- 구조: 비정형 데이터나 반정형 데이터를 처리하는 데이터베이스로, 데이터 모델링 방식이 다양합니다.
- 특징: 유연한 스키마, 대규모 데이터 처리에 적합.
- 유형:
- 키-값(Key-Value) 스토어: Redis, Amazon DynamoDB
- 문서 지향 데이터베이스: MongoDB, Couchbase
- 컬럼 패밀리 데이터베이스: Apache Cassandra, HBase
- 그래프 데이터베이스: Neo4j, Amazon Neptune
라이브러리
1. Keras
- 개요: Keras는 Python 기반의 오픈 소스 딥러닝 라이브러리
- 용도: 기본적인 딥러닝 모델부터 복잡한 신경망까지 다양한 모델을 구현하는 데 사용됩니다.
- 예시: CNN(Convolutional Neural Network), RNN(Recurrent Neural Network) 모델 구현에 자주 사용됨.
2. Caffe
- 개요: Caffe는 UC Berkeley의 Berkeley Vision and Learning Center(BVLC)에서 개발된 C++기반의 딥러닝 프레임워크로, 특히 컴퓨터 비전 분야에서 인기가 높습니다.
- 용도: 주로 이미지 분류, 객체 탐지 및 세분화(Segmentation)와 같은 비전 관련 작업에 많이 사용됩니다.
- 예시: Google의 Inception 모델이나 ResNet과 같은 유명한 CNN 구조 구현에 사용됨.
3. DeepLearning4j
- 개요: DeepLearning4j는 Java로 개발된 오픈 소스 딥러닝 프레임워크로, JVM(Java Virtual Machine) 기반의 환경에서 사용할 수 있습니다.
- 용도: 주로 기업 환경에서 대규모 데이터 처리와 배포가 필요한 경우에 적합합니다.
- 예시: 금융 서비스, 헬스케어 등에서 데이터 분석 및 예측 모델 구축에 사용됨.
4. Torch
- 개요: Torch는 Lua 기반의 오픈 소스 머신러닝 라이브러리로, 딥러닝 모델 구현을 위한 다양한 기능을 제공합니다. 최근에는 PyTorch라는 Python 버전이 많이 사용됩니다.
- 용도: 주로 연구 및 개발 환경에서 사용되며, 복잡한 딥러닝 모델을 신속하게 구현하는 데 강점을 보입니다.
- 예시: 자연어 처리, 이미지 처리 등 다양한 분야에서 사용되며, Facebook의 AI 연구팀에서도 활용됨.
'ADSP 데이터분석준전문가' 카테고리의 다른 글
ADSP 1과목 데이터의 이해(데이터의 가치와 역할) 요약정리 (3) | 2024.10.24 |
---|---|
ADSP 1과목 데이터의 이해(데이터와 정보) 요약정리 (1) | 2024.10.24 |