AYSTORY
[필기] 빅데이터 기술 및 제도 본문
01. 빅데이터 분석 기획
Ch1. 빅데이터의 이해
빅데이터 플랫폼
- 빅데이터 수집 ~ 저장, 처리, 분석 등 전 과정을 통합적으로 제공하여 그 기술들 잘 사용할 수 있도록 준비된 환경
1. 등장배경
- 비즈니스 요구사항 변화
- 데이터 규모와 처리 복잡도 증가
- 데이터 구조 변화와 신속성 요구
- 데이터 분석 유연성 증대
- 다양한 방법론 → 텍스트, 음성, 이미지, 동영상 등 다양한 요소들의 분석이 가능
2. 기능
빅데이터 처리 과정에서 부하 발생은 불가피 → 빅데이터 플랫폼이 해소
- 컴퓨팅 부하 발생
- 연산과정에서 CPU, GPU, 메모리 등을 사용하며 부하 발생
- 빅데이터 플랫폼을 통한 GPU 성능 향상 및 클러스터에서의 효과적 자원 할당을 통해 부하 제어
- 클러스터? 여러 대의 컴퓨터들이 연결되어 하나의 시스템처럼 동작하는 컴퓨터들의 집합
- 저장 부하 발생
- 입력, 중간 가공, 출력 데이터 등 여러 단계에서 부하 발생
- 파일 시스템 개선, 메모리와 파일 시스템의 효과적 사용 및 DB 성능 향상으로 제어
- 네트워크 부하 발생
- 분산처리하고자 할 때 노드 간 통신 과정에서 부하 발생
- 대역폭의 효과적 분배 및 네트워크상에서 최단거리에 위치한 노드 탐색해 제어
3. 조건
- 서비스 사용자 측면
- 서비스 제공자 측면
4. 구조
- 소프트웨어 계층, 플랫폼 계층, 인프라스트럭처 계층의 3계층으로 구성
- 소프트웨어 계층
- 빅데이터 애플리케이션 구성
- 데이터 처리 및 분석과 이를 위한 데이터 수집, 정제
| 컴포넌트 | 설명 | |
| 데이터 처리 및 분석 엔진 | 데이터 처리하고 분석 | |
| 데이터 처리 및 분석 | 서비스에 따른 데이터 처리 및 분석 수행 | |
| 처리 및 분석 워크플로우 구성 | 데이터 처리 및 분석을 위한 워크플로우 구성 | |
| 데이터 표현 | 데이터 처리 및 분석 결과 표현 | |
| 데이터 수집 및 정제 모듈 | 빅데이터 분석 엔진을 위한 데이터 수집, 정제 | |
| 데이터 추출 | 원천 데이터에서 데이터 추출 | |
| 데이터 변환 | 원천 데이터에서 추출한 데이터 변환, 균질화 및 정제 | |
| 데이터 적재 | 변환된 데이터 → 데이터 웨어하우스로 적재 | |
| 서비스 관리 모듈 | 소프트웨어 계층에서 제공하는 서비스 관리 | |
| 사용자 관리 모듈 | 사용자 관리 | |
| 인증 및 접속 관리 | 사용자 별 인증 및 접속 관리 | |
| 사용자 서비스 관리 | 사용자별 서비스 관리 | |
| SLA 관리 | 사용자별 서비스 수준 협약(Service Level Agreement) 관리 | |
| 모니터링 모듈 | 플랫폼 및 인프라스트럭처 서비스 사용성과 성능 모니터링 | |
| 보안 모듈 | 소프트웨어 계층의 보안 관리 | |
- 플랫폼 계층
- 빅데이터 애플리케이션 실행하기 위한 플랫폼
- 작업 스케줄링이나 데이터 및 자원 할당과 관리, 프로파일링 등 수행
- 프로파일링? 속도 및 최적화에 중점, CPU와 메모리 사용량 및 실행 시간 등 추적
| 컴포넌트 | 설명 | |
| 사용자 요청 파싱 | 사용자가 요청만 내용 파싱 | |
| 작업 스케줄링 모듈 | 사용자 애플리케이션 실행 작업 스케줄링 | |
| 데이터 및 자원 할당 모듈 | 사용자 애플리케이션을 실행하는 데이터와 자원 할당 | |
| 초기 데이터 할당 | 사용자 애플리케이션을 실행하는 사용자 데이터 초기 할당 | |
| 데이터 재혈당 및 복제 | 동적인 상황을 고려하여 데이터 재할당 및 복제 | |
| 초기 자원 할당 | 사용자 애플리케이션을 실행하는 인프라스트럭처의 자원 초기 할당 | |
| 자원 재할당 및 스케일링 | 동적인 상황 고려 → 자원 재할당 및 스케일링 | |
| 프로파일링 모듈 | 자원 및 애플리케이션을 프로파일링 또는 시뮬레이션 | |
| 자원 프로파일링 | 인프라스트럭처 자원 할당 → 인프라스트럭처 자원 프로파일링 | |
| 애플리케이션 프로파일링 | 인프라스트럭처 자원 할당 → 사용자 애플리케이션 프로파일링 | |
| 애플리케이션 시뮬레이션 | 인프라스트럭처 자원 선택 및 구성 → 사용자 애플리케이션 시뮬레이션 | |
| 데이터 관리 모듈 | 사용자 데이터 관리 | |
| 자원 관리 모듈 | 인프라스트럭처 자원 관리 | |
| 서비스 관리 모듈 | 플랫폼 계층에서 제공하는 서비스 관리 | |
| 사용자 관리 모듈 | 사용자 관리 | |
| 인증 및 접속 관리 | 사용자별 인증과 접속 관리 | |
| 사용자 서비스 관리 | 사용자별 서비스 관리 | |
| SLA 관리 | 사용자별 서비스 수준 협약 관리 | |
| 모니터링 모듈 | 인프라스트럭처 서비스 가용성과 성능 모니터링 | |
| 보안 모듈 | 소프트웨어 계층의 보안 관리 | |
- 인프라스트럭처 계층
- 자원 배치와 스토리지 관리, 노드 및 네트워크 관리 등 → 빅데이터 처리와 분석에 필요한 자원 제공
| 컴포넌트 | 설명 | |
| 사용자 요청 파싱 | 사용자 요청 내용 파싱 | |
| 자원 배치 모듈 | 사용자에게 제공할 자원 배치 | |
| 초기 자원 배치 | 사용자에게 제공하는 자원 초기 배치 | |
| 자원 재배치 및 스케일링 | 동적인 상황 고려 → 자원 재배치 및 스케일링 | |
| 노드 관리 모듈 | 인프라스트럭처 내의 노드 관리 | |
| 데이터 관리 모듈 | 인프라스트럭처 내 스토리지 관리 | |
| 네트워크 관리 모듈 | 인프라스트럭처 내 네트워크 관리 | |
| 서비스 관리 모듈 | 인프라스트럭처 계층에서 제공하는 서비스 관리 | |
| 사용자 관리 모듈 | 사용자 관리 | |
| 인증 및 접속 관리 | 사용자별 인증과 접속 관리 | |
| 사용자 서비스 관리 | 사용자별 서비스 관리 | |
| SLA 관리 | 사용자별 서비스 수준 협약 관리 | |
| 모니터링 모듈 | 서비스 모니터링 | |
| 서비스 모니터링 | 서비스 가용성과 성능 모니터링 | |
| 자원 모니터링 | 노드, 스토리지, 네트워크 등 자원 가요성과 성능 모니터링 | |
| 보안 모듈 | 소프트웨어 계층의 보안 관리 | |
빅데이터 처리기술
1. 빅데이터 처리과정과 요소기술
데이터(생성) ▶ 수집 ▶ 저장(공유) ▶ 처리 ▶ 분석 ▶ 시각화
- 생성
- DB나 파일 관리 시스템과 같은 내부 데이터
- 인터넷으로 연결된 외부로부터 생성된 파일이나 데이터
- 수집
- 크롤링 → 데이터 원천으로부터 데이터 검색, 수집
- ETL → 소스 데이터로부터 추출, 변환, 적재
- 단순 수집 (X) + 검색 및 수집, 변환 과정 모두 포함
- 로그 수집기나, 센서 네트워크 및 Open API 등 활용
- 저장(공유)
- 병렬 DBMS나 하둡, NoSQL 등 다양한 기술 사용
- 하둡? 분산 파일 시스템과 분산 처리 시스템을 제공하는 아파치 소프트웨어 재단의 오픈 소스 프레임워크
- 시스템 간 데이터 서로 공유
- 병렬 DBMS나 하둡, NoSQL 등 다양한 기술 사용
- 처리
- 데이터 효과적으로 처리하는 기술 필요
- 분산 병렬 및 인메모리 방식으로 실시간 처리
- 인메모리? 디스크가 아닌 메인 메모리에 데이터 저장하는 기술
- 대표적으로 하둡의 맵리듀스 활용
- 분석
- 데이터 신속하고 정확 분석 → 비즈니스 기여
- 특정 분야 및 목적의 특성에 맞는 분석 기법 선택 중요
- 통계분석, 데이터 마이닝, 텍스트 마이닝, 기계학습 방법 등
- 시각화
2. 빅데이터 수집
- 크롤링
- 무수히 많은 컴퓨터 → 분산 저장되어 있는 문서 수집하여 검색 대상의 색인으로 포함시키는 기술
- 어느 부류의 기술을 얼마나 빨리 검색 대상에 포함시키는가로 우위 결정
- 로그 수집기
- 조직 내부에 있는 웹 서버나 시스템의 로그를 수집하는 SW
- 웹 로그나 트랜잭션 및 클릭 로그 등 각종 로그를 하나의 데이터로 수집
- 센서 네트워크
- 유비쿼터스 컴퓨팅 구현을 위한 초경량 저전력의 많은 센서들로 구성된 유무선 네트워크
- 센터를 통해 획득된 여러 정보 → 네트워크로 구성된 통합 환경 내에서 재구성 + 처리
- RSS Reader / Open API
- 데이터 생산, 공유 참여할 수 있는 환경인 웹 2.0 구현하는 기술
- 필요한 데이터 → 프로그래밍을 통해 수집
- ETL 프로세스
- 데이터 추출(Extract), 변환(Transform), 적재(Load)의 약어
- Extract: 원천 데이터로부터 적재하고자 하는 데이터 추출
- Transform: 추출 데이터 변환하고 균질화, 정제
- Load: 변환된 데이터 → 데이터 웨어하우스에 적재
- 다양한 원천 데이터 취합 → 추출하고 공통된 형식으로 변환하여 적재하는 과정
- 데이터 추출(Extract), 변환(Transform), 적재(Load)의 약어
3. 빅데이터 저장
- NoSQL (Not-only SQL)
- 전통적 관계형 DB와 다르게 데이터 모델을 단순화하여 설계된 비관계형 DB
- SQL 사용하지 않는 DBMS와 데이터 저장장치
- 기존의 RDBMS 트랜잭션 속성인 원자성, 일관성, 독립성, 지속성 유연하게 적용
- 데이터 업데이트 → 즉각적으로 가능한 데이터 저장소
- Cloudata, Hbase, Cassandra, MongoDB 등
- 공유 데이터 시스템 (Shared-data System)
- 일관성, 가용성, 분할 내성 중 최대 두 개의 속성만 보유 (CAP 이론)
- 분할 내성을 취하고 일관성과 가용성 중 하나 포기 → 일관성과 가용성을 모두 취하는 기존 RDBMS보다 높은 성능과 확장성 제공
- 병렬 데이터베이스 관리 시스템 (Parallel Database Management System)
- 다수의 마이크로프로세서 사용 → 여러 디스크에 질의, 갱신, 입출력 등 DB 처리를 동시에 수행
- 확장성 제공 → 작은 단위의 동작으로 트랜잭션 적용 필요
- VoltDB, SAP HANA, Vertica, Greenplum, Netzza
- 분산 파일 시스템
- 네트워크로 공유 → 여러 호스트 파일에 접근할 수 있는 파일 시스템
- 데이터 분산 → 저장하면 데이터 추출 및 가공 시 빠르게 처리
- GFS, HDFS, 아마존 S3 파일 시스템
- 네트워크 저장 시스템
- 이기종 데이터 저장 장치 → 하나의 데이터 서버에 연결 → 총괄적으로 데이터 저장 및 관리
- SAN, NAS(네트워크 결합 스토리지, 컴퓨터를 직접 연결 X, 근거리 통신 네트워크 → 데이터 주고 받음)
4. 빅데이터 처리
- 분산 시스템과 병렬 시스템
- 분산 시스템
- 네트워크 상 분산되어 있는 컴퓨터 → 단일 시스템인 것처럼 구동
- 분산 시스템에 속한 각 노드는 독립된 시스템
- 독립 컴퓨터 집합으로 만들었으나 마치 단일 시스템인 것처럼 수행
- 병렬 시스템
- 문제 해결을 위해 CPU 등의 자원을 데이터 버스나 지역 통신 시스템 등으로 연결하여 구동
- 분할된 작업 동시 처리 → 계산 속도 빠르게
- 분산 시스템
- 분산 병렬 컴퓨팅
- 다수의 독립된 컴퓨팅 자원을 네트워크상 연결 → 제어하는 미들웨어 이용 → 하나의 시스템으로 동작하게 하는 기술
- 미들웨어? 하드웨어나 프로토콜, 통신활경 등을 연결 → 응용 프로그램 간 원만한 통신이 이루어질 수 있게 하는 SW
- 다수의 독립된 컴퓨팅 자원을 네트워크상 연결 → 제어하는 미들웨어 이용 → 하나의 시스템으로 동작하게 하는 기술
병렬 DB 특징
- 분산 아키텍처
- 병렬 처리 / 고성능 처리
- 데이터 파티셔닝을 통한 데이터 병렬성
- 데이터 복제와 분산
(분산 병렬 컴퓨팅 시 고려사항)
| 문제 | 설명 |
| 전체 작업의 배분 문제 | - 전체 작업 잘 쪼개어 여러 개의 작은 작업으로 나눠야 함. |
| 각 프로세서에 계산된 중간 결과물을 프로세서 간 주고받는 문제 | - 효율적 통신은 성능과 직결 - 보통 단일 시스템은 전체 작업을 노드 수만큼 균등하게 나눔. - 이종 시스템: 컴퓨팅 능력에 따라 전체 작업 배분 - 노드 간 통신 최소화 기법 반영 → 자원을 좀 더 효율적으로 사용할 수 있어 성능 향상에 도움 |
| 서로 다른 프로세서 간 동기화 문제 | - 데이터 병렬 처리에서 동기적 방법을 사용 → 프로세서는 특정 계산이 끝나거나 특정 데이터를 넘겨받을 때까지 반드시 대기 - 동기적 방법의 경우 송신자는 수신자에게 데이터 받았다는 응답이 올 때까지 대기 - 비동기적 방법에서는 결과 메시지를 보낸 즉시 다음 작업을 계속ㅎ라 수 있음. - 비동기적 방법의 경우 프로세서는 기다릴 필요 X, 계산 과정이 적합한지 확인해야함. |
- 하둡 (Hadoop)
- 분산 처리 환경에서 대용량 데이터 처리 및 분석 지원하는 오픈 소스 SW 프레임워크
- 야후 최초 개발 → 아파치 소프트웨어 재단에서 프로젝트로 관리
- HDFS(하둡 분산파일시스템), Hbase(분산칼럼기반 DB), 맵리듀스(분산컴퓨팅 지원 프레임워크)로 구성
- 분산 파일 시스템을 통해 수 천대의 장비에 대용량 파일을 나누어 저자아 기능 제공
- 맵리듀스 이용 → 실시간 처리, 분석 가능
- 하둡의 부족한 기능 보완 → 하둡 에코시스템 → 다양한 솔루션 제공
- 아파치 스파크 (Apache Spark)
- 실시간 분산형 컴퓨팅 플랫폼
- In-Memory 방식 처리
- 하둡보다 빠른 처리 속도
- 스칼라 언어로 개발 → Java, R, Python도 지원
- 맵리듀스 (MapReduce)
- 구글에서 개발한 방대한 양의 데이터를 신속하게 처리하는 프로그래밍 모델
- 효과적 병렬 및 분산 처리 지원
- Runtime에서의 입력 데이터 분할, 작업 스케줄링, 노드 고장, 노드 간 데이터 전송 작업이 맵리듀스 처리 성능에 많은 영향
- 1단계: 입력 데이터 읽고 분할
- 2단계: 분할 데이터 할당 → 맵 작업 수행 → 중간 데이터 통합 및 재분할
- 3단계: 통합 및 재분할된 중간 데이터 셔플
- 셔플? n개의 데이터 순서를 무작위로 섞는 알고리즘
- 4단계: 셔플된 중간 데이터를 이용해 리듀스 작업 수행
- 5단계: 출력 데이터 생성, 맵리듀스 처리 종료

5. 빅데이터 분석
- 방법 종류
- 탐구 요인 분석 (EFA: Exploratory Factor Analysis)
- 데이터 간 상호 관계 파악하여 데이터 분석
- 확인 요인 분석 (CFA: Confirmatory Factor Analysis)
- 관찰된 변수들의 집합 요소 구조를 파악하기 위한 통계적 기법을 통해 데이터를 분석하는 방법
- 탐구 요인 분석 (EFA: Exploratory Factor Analysis)
- 데이터 분석 방법
- 분류
- 미리 알려진 클래스들로 구분되는 학습 데이터셋 학습시킴 → 새로 추가되는 데이터가 속할 만한 데이터 셋 찾는 지도학습 방법
- 군집화
- 특성이 비슷한 데이터 → 하나의 그룹으로 분류
- 분류와 달리 학습 데이터셋을 이용하지 않는 비지도 학습
- 기계학습
- 인공지능 분야 → 인간 학습 모델링
- 의사결정트리 등 기호적 학습과 신경망이나 유전 알고리즘 등 비기호적 학습, 베이지안이나 은닉 마코프 등 확률적 학습 등 다양한 기법
- 텍스트 마이닝
- 자연어 처리 기술 이용 → 인간의 언어로 쓰인 비정형 텍스트에서 유용한 정보 추출 / 다른 데이터와의 연관성 파악하기 위한 방법
- 분류나 군집화 등 빅데이터에 숨겨진 의미 있는 정보를 발견하는 데 사용
- 웹 마이닝
- 인터넷 수집 정보 → 데이터 마이닝 방법으로 분석
- 오피니언 마이닝
- 온라인의 다양한 뉴스와 소셜 미디어 코멘트 또는 사용자가 만든 콘텐츠 → 표현된 의견 추출, 분류, 이해
- 리얼리티 마이닝
- 휴대폰 등 기기 사용 → 인간관계와 행동 양태 등 추론
- 통화량, 통화 위치, 통화 상태, 통화 대상, 통화 내용 등을 분석하여 사용자의 인간관계나 행동 특성 찾아냄.
- 소셜 네트워크 분석
- 수학 그래프 이론 → 소셜 네트워크 서비스에서 네트워크 연결 구조와 강도 분석 → 사용자 명성 및 영향력 측정
- 감성 분석
- 문장 의미 파악 → 글의 내용에 긍정/부정, 좋음/나쁨 분류하거나 만족/불만족 강도 지수화
- 도출된 지수를 이용 → 고객의 감성 트렌드 시계열 분석, 고객의 감성 변화에 기업들이 신속하게 대응 및 부정적 의견의 확산 방지하는 데 활용
- 분류
빅데이터와 인공지능
1. 인공지능
- 인공지능과 기계학습 및 딥러닝 관계
- 기계학습은 인공지능의 연구 분야 중 하나로 인간의 학습 능력과 같은 기능을 축적된 데이터 활용 → 실현하고자 하는 기술 및 방법
- 딥러닝은 기계학습 방법 중 하나로 컴퓨터가 많은 데이터를 이용해 사람처럼 스스로 학습할 수 있도록 인공신경망 등의 기술을 이용
- 딥러닝의 특징
- 깊은 구조에 의해 엄청난 양의 데이터 학습
- 기계학습 종류
- 지도학습
- 학습 데이터로부터 하나의 함수를 유추해내기 위한 방법
- 학습 데이터는 일반적으로 입력 객체에 대한 속성을 벡터 형태로 포함하고 있으며 각각의 벡터에 대해 원하는 결과가 무엇인지 표시
- 유추된 함수 중 연속적인 값을 출력하는 것을 회귀분석
- 주어진 입력 벡터가 어떤 종류의 값인지 표시하는 것을 분류
- 지도 학습기가 하는 작업은 훈련 데이터로부터 주어진 데이터에 대해 예측하고자 하는 값을 올바로 추측
- 학습기는 알맞은 방법을 통하여 기존의 훈련 데이터로부터 나타나지 않던 상황까지도 일반화하여 처리
- 학습 데이터로부터 하나의 함수를 유추해내기 위한 방법
- 비지도학습
- 데이터가 어떻게 구성되었는지 알아내는 문제의 범주에 속함.
- 지도학습 혹은 강화학습과는 달리 입력값에 대한 목표치가 주어지지 X
- 통계의 밀도 추정과 깊은 연관, 데이터 주요 특징 요약 + 설명 가능
- 군집화, 독립성분분석 방법 등이 있음.
- 준지도학습
- 목표값이 표시된 데이터와 표시되지 않은 데이터 모두 학습에 사용
- 대개의 경우 사용되는 학습 데이터는 목표값이 표시된 데이터보다 표시되지 않은 데이터를 많이 갖고 있음.
- 두 개 이상의 학습기 각각이 예제를 통해 훈련되는 상호 훈련 방법 등이 있음.
- 목표값이 표시된 데이터와 표시되지 않은 데이터 모두 학습에 사용
- 강화학습
- 선택 가능한 행동들 중 보상을 최대화하는 행동 혹은 순서를 선택하는 방법
- 강화학습의 초점은 학습과정에서의 성능이며, 이는 탐색과 이용의 균형을 맞춤으로써 제고됨.
- 탐색과 이용의 균형 문제는 강화학습에서 가장 많이 연구된 문제로, 다중슬롯머신 문제와 유한한 마르코프 결정 과정 등에서 연구됨.
- 지도학습
- 기계학습 방법에 따른 인공지능 분야
- 지도학습
- 분류모형: 이미지 인식, 음성 인식, 신용평가 및 사기검출, 불량예측 및 원인발굴
- 회귀모형: 시세/가격/주가 예측, 강우량 예측
- 비지도학습
- 군집분석: 텍스트 토픽 분석, 고객 세그멘테이션
- 오토인코더: 이상징후 탐지, 노이즈 제거, 텍스트 벡터화
- 생성적 적대 신경망: 시뮬레이션 데이터 생성, 누락 데이터 생성, 패션 데이터 생성
- 강화학습
- 게임 플레이어 생성, 로봇 학습 알고리즘, 공급망 최적화
- 지도학습
2. 인공지능 데이터 학습의 진화
- 전이학습
- 기존의 학습된 모델의 지식을 새로운 문제에 적용 → 학습을 빠르고 효율적으로 수행
- 기존의 모델이 학습한 특성, 가중치, 표현 등을 새로운 모델에 전달 → 새로운 작업에 적용
- 주로 이미지, 언어, 텍스트 인식과 같이 지도학습 중 분류모형인 인식 문제에 활용 가능
- 인식 문제의 경우 데이터 표준화 가능 → 사전학습모형 입력형식에 맞출 수 있음.
- 전이학습 기반 사전학습모형
- 학습 데이터에 의한 인지능력을 갖춘 딥러닝 모형에 추가적 데이터 학습시키는 방식
- 데이터 학습량에 따라 점차 발전하는 것도 중요하지만, 응용력도 필수적
- 상대적으로 적은 양의 데이터로도 제한된 문제에 인공지능 적용이 가능
- 이미 학습된 사전학습모형도 데이터를 함축한 초보적 인공지능으로서 충분한 가치를 지닌 새로운 의미의 데이터라고 할 수 있음.
- 학습 데이터에 의한 인지능력을 갖춘 딥러닝 모형에 추가적 데이터 학습시키는 방식
- BERT
- 2008년 구글에서 발표한 언어인식 사전학습모형
- 확보된 언어 데이터의 추가 학습 → 신속한 학습이 가능
- 다층의 임베딩 구조 → 1억 2천개가 넘는 파라미터로 구성된 획기적 모형
- 256개까지 문자가 입력 → 768차원 숫자 벡터 생성
- 언어 인식 + 번역 + 챗봇의 Q&A 엔진
3. 빅데이터와 인공지능의 관계
애노테이션? 데이터상의 주석 작업으로 딥러닝과 같은 학습 알고리즘이 무엇을 학습행하는지 알려주는 표식 작업
- 학습 데이터의 애노테이션 작업
- 많은 데이터 확보 후 애노테이션을 통해 학습이 가능한 데이터로 가공하는 작업 필요
- 작업 특성상 많은 수작업 동반
- 애노테이션 작업을 위한 도구로써의 인공지능
- 경쟁 → 학습용 데이터에 대한 보안 및 애노테이션 결과에 대한 품질 요구수준 높아짐.
- 데이터 업로드 및 애노테이션 도구, 작업 모니터링을 위한 플랫폼 제공
4. 인공지능의 기술동향
- 기계학습 프레임워크 보급 확대
- 기계학습 프레임워크? 인터페이스와 라이브러리, 툴 등 기계학습 모형 개발을 쉽고 빠르게 하도록 지원
- 구글브레인이 개발 → 텐서플로우는 파이썬 기반 딥러닝 라이브러리로, 여러 CPU 및 GPU와 플랫폼에서 사용 가능
- 케라스는 딥러닝 신경망 구축을 위한 단순화된 인터페이스를 가진 라이브러리이며, 몇 줄의 코드만으로 딥러닝 모형 개발이 가능
- 케라스? 파이썬으로 작성된 오픈 소스 신경망 라이브러리
- 생성적 적대 신경망 (GAN: Generative Adversarial Networks)
- 두 개의 인공신경망으로 구성된 딥러닝 이미지 생성 알고리즘
- 생성자가 가짜 사례를 생성하면 감별자가 진위 판별하도록 구성 → 이들이 적대적 관계 속에서 공방전을 반복하도록 함.
- 가짜 사례의 정밀도를 점점 더 진짜 사례와 구별하기 어려운 수준으로 높이는 방식
- 주로 새로운 합성 이미지 생성하는 분석에 많이 적용되어 왔으나, 점차 다른 분야에 응용하는 사례가 늘고 있음.
- 오토인코더
- 라벨이 설정되어 있지 않은 학습 데이터로부터 더욱 효율적인 코드로 표현하도록 학습하는 신경망
- 입력 데이터 차원을 줄여 모형을 단순화시키기 위해 활용
- 설명 가능한 인공지능 (XAI: eXplainable AI)
- 결론 도출 과정에 대한 근거를 차트나 수치 또는 자연어 형태의 설명으로 제공
- 기존의 기계학습은 정확한 예측을 할 수 있도록 하는 방향으로 개발
- 기존 기계학습의 완성된 모형은 내부 구조가 매우 복잡하고 의미 이해하기 어려움. (블랙박스 모형)
- 기계학습 자동화 (AutoML)
- 기계학습의 전 과정을 자동화하는 것
- 세부적; 데이터 전처리, 변수 생성, 변수 선택, 알고리즘 선택, 하이퍼파라미터 최적화 등의 기능 수행
파라미터(매개변수)
어떤 시스템이나 함수의 특정한 성질을 나타내는 변수, 모델링에 의해 자동 결정
하이퍼파라미터
모델링할 때 사용자가 직접 세팅하는 값
- 거대 언어 모델 (LLM: Large Lanugage Model)
- 수십억 개 이상의 파라미터로 구성된 신경망 기반 학습 언어 모델
- 작동방식; 토큰화, 트랜스포머 모델, 프롬프트 3가지로 구분
- 토큰화: 자연어 처리의 일부로 일반 인간 언어를 저수준 기계 시스템이 이해할 수 있는 시퀀스로 변환하는 작업
- 트랜스포머 모델은 문장 속 단어와 같은 순차 데이터 내의 관계를 추적 → 맥락과 의미를 학습하는 신경망으로 텍스트와 음성을 거의 실시간으로 생성
- 프롬프트는 거대 언어 모델에 제공하는 정보로 더 정확한 프롬프트 제공하도록 다음 단어 더 잘 예측하고 정확한 문장 구성
5. 인공지능의 한계점과 발전방향
- 국내시장의 한계
- 국내 이해도 낮은 수준
- 인공지능 개발을 위해 데이터 확보 및 그 중요성에 대한 인식 부족
- 인공지능 미래
- 딥러닝의 재학습 및 전이학습 특성을 활용한 사전학습모형이 새로운 데이터 경제의 모습이 될 것
- 마스킹이나 라벨링 등의 애노테이션 작업을 통해 학습용 데이터를 가공하는 산업 확산
- 복잡한 BERT의 학습을 위한 구글 클라우드 서비스와 같은 확장 개념의 데이터 경제로 파생
개인정보 개요
1. 개인정보 정의와 판단기준
- 개인정보 정의
- 살아있는 개인에 관한 정보로서 개인을 알아볼 수 있는 정보
- 개인정보 판단기준
- '생존하는' '개인에 관한' 정보여야 함.
- '정보'의 내용, 형태 등은 제한 X
- 개인을 '알아볼 수 있는' 정보여야 함.
- 다른정보와 '쉽게 결합하여' 개인을 알아볼 수 있는 정보 포함.
2. 개인정보의 이전
- 개인정보가 다른 사람(제3자)에게 이전되거나 공동으로 처리하게 하는 것
- 개인정보 처리 위탁
- 개인정보처리자의 업무를 처리할 목적으로 제 3자에게 이전
- 개인정보 제3자 제공
- 해당 정보를 제공받는 자의 고유한 업무를 처리할 목적 및 이익을 위해 개인정보 이전
3. 개인정보 보호
- 개인정보 보호조치
- 빅데이터 개인정보보호 가이드라인 (방송통신위원회)
- 비식별화
- 투명성 확보
- 재식별 시 조치
- 민감정보 및 비밀정보 처리
- 기술적, 관리적 보호조치
- 개인정보 보호를 위한 고려사항
4. 개인정보보호 관련 법률
개인정보 법 · 제도
1. 개인정보보호법
- 개요
- 당사자의 동의 없는 개인정보 수집 및 활용하거나 제3자에게 제공하는 것 금지하는 등 개인정보보호를 강화한 내용을 담아 제정한 법률
- 개인정보 범위
- 개인정보의 처리 위탁
- 개인정보의 제3자 제공
- 개인정보 처리 위탁과 제3자 제공 판단 기준
- 비식별 개인정보의 이전
2. 정보통신망 이용촉진 및 정보보호 등에 관한 법률 (정보통신망법)
- 정보통신망법의 개요
- 개인정보 처리 위탁
3. 신용정보 이용 및 보호에 관한 법률 (신용정보보호법)
- 신용정보보호법 개요
- 신용정보 범위
- 개인신용정보
- 개인신용정보의 처리 위탁
- 개인신용정보의 제3자 제공
- 개인식별정보
4. 2020년 데이터 3법의 주요 개정 내용
데이터3법
- 개인정보 보호법
- 정보통신망 이용촉진 및 정보보호 등에 관한 법률
- 신용정보 이용 및 보호 관한 법률
- 개인정보보호법 주요 개정 내용
- 정보통신망법 주요 개정 내용
- 신용정보보호법 주요 개정 내용
5. 유럽 연합과 미국의 개인정보보호 체계
- 유럽 연합 (EU)
- 미국
개인정보 비식별화
1. 개인정보 비식별화 개요
- 비식별 정보: 정보의 집합물에 대해「개인정보 비식별 조치 가이드라인」에 따라 적정하게 '비식별 조치'된 정보
- 비식별 조치
- 개인을 식별할 수 있는 요소 → 전부 또는 일부 삭제 / 대체 → 개인을 알아볼 수 없도록 하는 조치
- 비식별 정보 활용
- 비식별 정보 보호
2. 개인정보 비식별화 조치 가이드라인
- 개인정보 비식별화 조치 가이드라인 추진배경
- 개인정보 비식별화 조치 가이드라인의 단계별 조치사항
- 사전 검토
- 개인정보에 해당하는지 여부 검토한 후, 개인정보가 아닌 것이 명백한 경우 법적 규제 없이 자유롭게 활용
- 데이터; 개인정보, 식별정보
- 비식별 조치
- 정보 집합물(데이터셋)에서 개인 식별 가능한 요소를 전부 또는 일부 삭제/대체 방법 활용, 개인을 알아볼 수 없도록 하는 조치
- 데이터; 가명, 총계, 삭제, 범주화, 마스킹
- 적정성 평가
- 다른 정보와 쉽게 결합하여 개인을 식별할 수 있는지 「비식별 조치 적정성 평가단」을 통해 평가
- 데이터; k-익명성, l-다양성, t-근접성
- k-익명성: 동일한 값을 가진 레코드를 k개 이상으로 하여 특정 개인을 식별할 확률 1/k로 함.
- l-다양성: 각 레코드는 최소 l개 이사으이 다양성을 가지도록 하여 동질성 또는 배경지식 등에 의한 추론 방지
- t-근접성: 전체 데이터 집합의 정보 분포와 특정 정보의 분포 차이를 l 이하로 하여 추론 방지
- 사후 관리
- 비식별 정보 안전조치, 재식별 가능성 모니터링 등 비식별 정보 활용 과정에서 재식별 방지를 위해 필요한 조치 수행
- 데이터; 관리적/기술적 보호조치
- 사전 검토
- 개인정보 비식별화 조치 가이드라인의 단계별 조치 기준
- 사전 검토 : 개인정보 해당 여부 검토
- 비식별 조치 : 비식별 조치기법 적용
- 적정성 평가 : k-익명성 모델 활용
- 사후 관리 : 비식별 정보 안전 조치 / 재식별 가능성 모니터링 / 비식별 정보 제공 및 위탁계약 시 준수사항
- 개인정보 비식별화 조치 가이드라인의 조치방법
- 가명 처리 : 개인정보 중 주요 식별 요소를 다른 값으로 대체
- 총계 처리 : 데이터 총합 값을 보여 주고 개별 값을 보여주지 않는 방법
- 데이터 삭제 : 데이터 공유나 개방 목적에 따라 데이터셋에 구성된 값 중 필요없는 값 또는 개인식별에 중요한 값을 삭제하는 방법
- 데이터 범주화 : 데이터 값을 범주의 값으로 변환 → 값 숨김
- 데이터 마스킹 : 개인을 식별하는 데 기여할 확률이 높은 주요 식별자 → 보이지 않도록 처리
가명정보 활용
1. 가명정보 개요
- 정의
- 가명처리; 활용하고자 하는 개인정보의 일부 삭제하거나 일부 또는 전부를 대체하는 등의 방법으로 처리하는 과정 → 이 산출물을 '가명정보'라고 함.
| 구분 | 설명 | 비고 |
| 개인정보 | - 특정 개인에 대한 정보 - 특정 개인을 알아볼 수 있게 하는 정보 |
정보주체로부터 사전에 개인정보 활용에 대한 구체적 동의를 받은 범위 내에서 활용 |
| 가명정보 | - 추가 정보 없이 특정 개인을 알아볼 수 없는 정보 | 사전 동의 없이 통계작성, 과학적 연구, 공익적 기록 보존 목적 등으로 활용 |
| 익명정보 | - 특정 개인을 알아볼 수 없도록 처리한 정보 | 개인정보 X, 제약 없이 활용 |
- 가명처리의 필요성
- 개인정보는 특정 개인에 대한 다양한 정보들이 포함 → 처리 활용 과정에서 특정 개인의 사생활 침해 등 여러 문제 발생 가능 → 개인정보 안전 활용 위해 특정 개인에 대한 정보들 노출되어 식별되지 않도록 기술적 조치 수행해야함.
- 가명처리 목적 및 대상
- 목적; 통계작성, 과학적 연구, 공익적 기록 보존
- 개인정보 처리자의 정당한 처리 범위 내에서 정보주체의 사전 동의 없이 처리 가능
2. 가명처리 절차
- 목적 설정 등 사전준비
- 위험성 검토
- 대상 선정; 목적 달성 위해 필요한 항목을 개인정보 파일에서 선정
- 위험성 검토; 가명처리 대상 데이터의 식별 위험성을 분석 및 평가
- 가명처리
- 항목별 가명처리 방법과 수준 먼저 정의하고, 이에 맞게 가명처리 수행
- 식별자와 준식별자에 대한 비식별화 수행
- 적정성 검토
- 안전한 관리
개인정보 활용
1. 데이터 수집의 위기 요인과 통제 방안
- 사생활 침해 → 위기 발생
- 동의에서 책임으로 강화하여 통제
2. 데이터 활용의 위기 요인과 통제 방안
- 책임원칙 훼손 → 위기 발생
- 결과 기반 책임 원칙 고수 → 통제
3. 데이터 처리의 위기 요인과 통제 방안
- 데이터 오용 → 위기 발생
- 알고리즘 접근을 허용 → 통제
'빅데이터분석기사' 카테고리의 다른 글
| [필기] 데이터 적재 및 저장 (0) | 2026.03.08 |
|---|---|
| [필기] 데이터 수집 및 전환 (0) | 2026.03.07 |
| [필기] 분석 작업 계획 (0) | 2026.03.07 |
| [필기] 분석 방안 수립 (0) | 2026.03.04 |
| [필기] 빅데이터의 개요 및 활용 (0) | 2026.02.12 |
