본문 바로가기

분류 전체보기

(139)
[ML] 선형 회귀 Linear Regression k-최근접 이웃 회귀의 한계 가장 가까운 샘플을 찾아 타깃을 평균하므로 새로운 샘플이 훈련 세트의 범위를 벗어나면 엉뚱한 값을 예측 가능 선형 회귀 비교적 간단하고 성능이 뛰어나기 때문에 널리 사용되는 대표적인 회귀 알고리즘 특성이 하나인 경우 어떤 직선을 학습하는 알고리즘 # 선형 회귀 from sklearn.linear_model import LinearRegression lr = LinearRegression() # 선형 회귀 모델 훈련 lr.fit(X_train, y_train) # 50cm 농어에 대해 예측 lr.predict([[50]]) print(lr.coef_, lr.intercept_) coef_ : 기울기 intercept_ : 절편 학습한 직선 그리기 # 학습한 직선 그리기 plt...
[ML] K-최근접 이웃 회귀 k-최근접 이웃 회귀 예측하려는 샘플에 가장 가까운 샘플 k개를 선택 이웃 샘플의 수치를 사용해 새로운 샘플 x의 타깃을 예측 -> 이웃 수치들의 평균을 구해서 예측 Reshape numpy의 reshape() 메소드 : 배열의 크기를 바꿀 수 있음 test_array = test_array.reshape(2,2) : (2,2) 크기로 배열 바꾸기 2차원 배열로 바꾸기 크기에 -1을 지정하면 나머지 원소 개수로 모두 채운다 ex ) 첫 번째 크기를 나머지 원소 개수로 채우고, 두번째 크기를 1로 하려면 train_input.reshape(-1,1) 결정계수(R2) 각 샘플의 타깃과 예측한 값의 차이를 제곱하여 더함, 그다음 타깃과 타깃 평균의 차이를 제곱하여 더한 값으로 나눔 타깃의 평균 정도를 예측하는..
[Kafka] Kafka에서 생성된 데이터를 일정한 시간 단위로 mysql 테이블에 저장하기 Topic 1 from kafka import KafkaProducer import numpy as np from time import time,sleep import os import json producer = KafkaProducer(bootstrap_servers = 'localhost:9092', value_serializer = lambda v: json.dumps(v).encode('utf-8')) count = 0 while True: producer.send('topic1',value=np.random.normal()) sleep(.5) count += 1 if count % 10 ==0: print("topic1 producer......") # for data in temp: # pr..
[Kafka] json 데이터 처리하기 1. json 파일 준비 data.json { "p1": [ {"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}, {"id": 3, "name": "Charlie"} ], "p2": [ {"id": 4, "name": "David"}, {"id": 5, "name": "Emma"}, {"id": 6, "name": "Frank"} ], "p3": [ {"id": 7, "name": "Grace"}, {"id": 8, "name": "Henry"}, {"id": 9, "name": "Ivy"} ] } 이 json 데이터를 Producer가 토픽으로 전달하고 Consumer를 통해 받을 것이다. 2. Topic 생성 # KafkaAdminClient : 클러스터와 ..
[Kafka] mysql과 연동하여 Producer, Consumer 실행 1. 사용할 module install !pip install kafka-python !pip install pymysql 2. Topic 생성 from kafka import KafkaProducer, KafkaConsumer from kafka.admin import KafkaAdminClient, NewTopic import json import pymysql # create topic def create_topics(topics, bootstrap_servers = 'localhost:9092'): admin_client = KafkaAdminClient(bootstrap_servers=bootstrap_servers) # 새로운 토픽 리스트 생성 topic_list = [ NewTopic(top..
[Kafka] python으로 Kafka 실행하기 1. Producer 생성 Kafka 라이브러리 설치 # 카프카 라이브러리 설치 !pip install kafka-python Topic이 읽을 파일 생성 1부터 1000까지 숫자들이 들어있는 파일을 생성한다. # 토픽이 읽을 파일을 생성 with open('new-topic.txt', 'w') as f: for i in range(1,1001): f.write(str(i) + '\n') Producer 생성 # 프로듀서 생성(토픽으로 데이터를 전송) from kafka import KafkaProducer import json import time from csv import reader class MessageProducer: def __init__(self,broker,topic): self.bro..
[Kafka] Apache Kafka 설치, 서버 실행, Producer, Consumer 생성 https://kafka.apache.org/downloads Apache Kafka Apache Kafka: A Distributed Streaming Platform. kafka.apache.org 가장 안정적인 버전 설치하기 : 2.5.0 -> 자바 1.8과 잘 맞는다 Kafka heap 사이즈 조정 [root@localhost kafka]# export KAFKA_HEAP_OPTS="-Xmx400m -Xms400m" 서버 설정 [root@localhost kafka]# gedit config/server.properties listeners=PLAINTEXT://:9092 주석 해제 Zookeeper 실행 [root@localhost kafka]# bin/zookeeper-server-start...
[Hadoop] cctv 공공데이터 MapReduce로 분석하기 https://www.data.go.kr/data/15013094/standard.do 전국CCTV표준데이터 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase www.data.go.kr 1. Java로 MapReduce 프로그램 작성 CctvMapper.java package com.bigdata.cctv; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Mapper; import java.io.IOException..