중간고사 정리

중간고사 힌트 - 20문제 중 객관식 9문제 , 주관식 11문제

빅데이터 패러다임

데이터 종류

빅데이터 처리

  1. 데이터 수집 : 크롤링, 스크래핑, 센서, API, 로그파일 등
  2. 데이터 전처리 : 정제, 구조화, 결측치 및 이상치 제거, 스케일링, 정규화
  3. 데이터 저장 : 분산파일 시스템, NoSQL DB 이용
  4. 데이터 분석 : 통계적, 기계 학습, 딥 러닝 등
  5. 대용량 데이터 처리 도구 : Hadoop, Apache Spark, Apache Flink와 같은 도구
  6. 데이터 시각화 :

MQTT"Message Queuing Telemetry Transport"

``

판다스

시리즈

데이터프레임

MQTT 구현

MQTT 개요

Message Queue Telemetry Transport

IoT기기용 M2M 프로토콜

TCP/IP 방식으로 작동

메모리 용향이 적어도 가능하며 통신 부하가 적다

허브와 스포크 방식 토폴로지을 사용 중심인 허브에는 브로커가 있고, 각각의 스포크에는 센서나 디바이스가 온다

MQTT에서 네트워크에 접속하는 디바이스를 클라이언트, 중심에서 데이터ㄹ의 송수신을 관장하는ㄴ 서버는 MQTT 브로커라고 한다.

토픽(데이터 이름)과 페이로드(데이터 내용) < 이거를 브로커에 송신

ESP8266에서 와이파이는 아래 두가지 모드를 지원

AP 모드 : ESP8266 중심으로 다른기기 네트워크에 접속하는 것 STA 모드 : ESP8266이 이미 구성되어 있는 네트워크에 접속

Mosquitto

대표적인 MQTT 브로커

모스퀴토 설정 파일 - mosquitto.conf

allow_anonymous false` # 익명 사용자 차단
password_file /etc/mosquitto/passwd  # 사용자 이름, 암호를 저장한 파일 경로
mosquitto_passwd -c /etc/mosquitto/passwd <username> # 
acl_file /etc/mosquitto/aclfile # ACL(Access Control List)

# TLS/SSL 사용
listener 8883
cafile /etc/mosquitto/ca.crt
certfile /etc/mosquitto/server.crt
keyfile /etc/mosquitto/server.key

Node-RED

시각적 프로그래밍 도구로서, 인터넷을 사물과 서비스를 연결하는 IoT (Internet of Things) 프로젝트와 자동화 작업을 간단하게 구축할 수 있도록 도와주는 오픈 소스 플로우 기반 통합 플랫폼

기말 시험문제 키워드

크롤링

웹에서 데이터를 수집하는 작업 크로러 또는 스파이더라는 프로그램 사용

import urllib.request # 웹과 통신할 수 있는 라이브러리

군집화

비지도해서 1차 검증 후 이게 확실하다하면 라벨링을 걸어서 지도학습

아니면 지도학습을 하기 전에 준지도학습을 하여 검증을 할 수도 있음

비지도 학습은 상용화하기에는 무리가 있다.

데이터 상태나 분야의 특성에 맞추어 비지도 > 준지도 > 지도로 학습을 진행하는 것이 좋음

K-means

k개의 중심점을 임의 위치로 잡고 중심점을 기준으로 가까이 있는 데이터를 확인한 뒤 그들과의 거리(유클리드 거리)와 제곱을 사용하여 평균 지점으로 이동하는 방식

엘보 방법

왜곡: 클러스터의 중심점과 클러스터 내의 데이터 거리 차이의 제곱의 합 클러스터의 개수 k의 변화에 따른 왜곡의 변화를 그래프로그려보면 그래프가 꺾이는 지점인 엘보가 나타나는데 그 지점의 k를 최적화 k로 선택

실루엣 분석

클러스터 안에서 데이터가 얼마나 조밀하게 있는지 응집력: 같은 클러스터 안에서 데이터가 얼마나 조밀하게 있는지 분리도: 다른 클러스터의 데이터가 얼마나 떨어져 있는지