PYTHON 72

RandomForest 다중 출력 알고리즘

MultiOutputClassifier : 다중 분류 알고리즘 - 하나의 데이터를 여러 속성으로 분류하고 싶을 때 사용 from sklearn.datasets import make_classification from sklearn.multioutput import MultiOutputClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.utils import shuffle import numpy as np X, y_11 = make_classification(n_samples=10, n_features=20, n_informative=14, n_classes=3, random_state=1) y_2 = shuffle(y1,..

DeepL API 사용하여 번역 코드 생성

설치 pip install deepl 기본 코드 - 텍스트만 넣어서 번역하는 경우와 파일 전체를 번역하는 경우 두 가지 예시 코드 입니다. 텍스트 번역 def text_translation(): auth_key = "deepl API키" translator = deepl.Translator(auth_key) message = 'Dạo này bạn học tiếng Việt không?' result = translator.translate_text(message, target_lang="KO") return result.text 파일 전체 번역 ex 1) def file_context(file_path): with open(file_path, 'r',encoding='UTF8') as f: # file..

PYTHON/번역기 2024.02.29

Googletrans 사용하여 번역 코드 생성

설치 - pip install googletrans로 설치하면 오류 발생 -> 아래 코드 사용하여 설치 pip install googletrans==4.0.0-rc1 googletrans - 무료 파이썬 라이브러리 - google translate ajax api - 기본 도메인 : Google 번역 Google 번역 사용 중인 브라우저에서는 음성 입력이 지원되지 않습니다. translate.google.co.kr - unlimited 라고 되어있으나 하루 할당량이 있음 (정확하진 않으나 50만자로 예상하고 있음) 기본 코드 # -*- coding: utf-8 -*- from googletrans import Translator import pandas as pd import re from datetim..

PYTHON/번역기 2024.02.29

GPT 기본 코드 공유

설치 openai를 설치하지 않은 상태라면 설치하고 코드 실행하시기 바랍니다. (pip install openai로 하면 AttributeError 등의 오류가 뜰 수 있다. 오류 뜨면 uninstall하고 특정 버전(0.28.1)으로 재설치하기) pip install openai==0.28.1 기본 코드 # -*- coding: utf-8 -*- import pandas as pd import openai import os import time import fitz openai.api_key = 'GPT API키' def get_completion(prompt,model="gpt-3.5-turbo"): messages = [{"role": "user", "content": prompt}] respons..

PYTHON/GPT 2024.02.29

Precision, Recall, F1 Score

정밀도(Precision) : True라고 분류한 것 중에서 실제 True인 것의 비율 날씨 예측 모델이 맑다로 예측했는데, 실제 날씨가 맑았는지를 살펴보는 지표 재현율(Recall) : 실제 True인 것 중에서 모델이 True라고 예측한 것의 비율 실제 날씨가 맑은 날 중에서 모델이 맑다고 예측한 비율 실제 정답(data)의 입장에서 정답을 정답이라고 맞춘 경우 F1 Score : Precision과 Recall의 조화평균

LSTM(Long Short-Term Memory)

▶ 전통적인 RNN의 이러한 단점을 보완한 RNN의 일종 ▶ 은닉층의 메모리 셀에 입력 게이트, 망각 게이트, 출력 게이트를 추가하여 불필요한 기억을 지우고, 기억해야할 것들을 정합니다. ▶ LSTM은 은닉 상태(hidden state)를 계산하는 식이 전통적인 RNN보다 조금 더 복잡해졌으며 셀 상태(cell state)라는 값을 추가하였습니다. ▶ 긴 시퀀스(문장의 길이)의 입력을 처리하는데 탁월한 성능을 보입니다. ▶ 각 게이트는 삭제 게이트, 입력 게이트, 출력 게이트라고 부르며 이 3개의 게이트에는 공통적으로 시그모이드 함수가 존재 ▶ 시그모이드 함수를 지나면 0과 1사이의 값이 나오게 되는데 이 값들을 가지고 게이트를 조절 ▶ 입력 게이트 : 현재 정보를 기억하기 위한 게이트 ▶ 삭제 게이트 ..

PYTHON/자연어 2022.04.12

TF-IDF(Term Frequency-Inverse Document Frequency)

▶ 단어 빈도-역 문서 빈도 ▶ 단어의 빈도와 역 문서 빈도(문서의 빈도에 특정 식을 취함)를 사용하여 DTM 내의 각 단어들마다 중요한 정도를 가중치로 주는 방법 ▶ 우선 DTM을 만든 후, TF-IDF 가중치를 부여 ▶ 주로 문서의 유사도를 구하는 작업, 검색 시스템에서 검색 결과의 중요도를 정하는 작업, 문서 내에서 특정 단어의 중요도를 구하는 작업 등에 쓰일 수 있습니다. (1) tf(d,t) : 특정 문서 d에서의 특정 단어 t의 등장 횟수. (2) df(t) : 특정 단어 t가 등장한 문서의 수. (3) idf(d, t) : df(t)에 반비례하는 수. DF의 역수, 여러 문서에서 등장한 단어의 가중치를 낮추는 역할 ▶ TF-IDF는 모든 문서에서 자주 등장하는 단어는 중요도가 낮다고 판단하며..

PYTHON/자연어 2022.03.16

Bag of Words(BoW)

▶ 국소 표현에(Local Representation)에 속하며, 단어의 빈도수를 카운트(Count)하여 단어를 수치화하는 단어 표현 방법 ▶ 단어들의 순서는 전혀 고려하지 않고, 단어들의 출현 빈도(frequency)에만 집중하는 텍스트 데이터의 수치화 표현 방법 ▶ BoW를 만드는 과정을 이렇게 두 가지 과정으로 생각해보겠습니다. (1) 각 단어에 고유한 정수 인덱스를 부여합니다. # 단어 집합 생성. (2) 각 인덱스의 위치에 단어 토큰의 등장 횟수를 기록한 벡터를 만듭니다.

PYTHON/자연어 2022.03.16

pivot_table()

피벗테이블은 데이터 요약화 도구로써 하나 이상의 키로 수집해서 어떤 키는 로우에, 어떤 키는 컬럼에 나열해서 데이터를 정렬한다. ▶ 인덱스 여러개 지정 ▶ 특정 value만 지정 value를 피봇테이블로 합친 경우, 평균치가 기본이 된다. 여기에 합계를 사용하려면 aggfunc 옵션을 사용해서 np.sum을 사용하면 된다. ▶ aggfunc 옵션 사용 ▶ 빈 칸이 나타나면 NaN으로 두지 말고 fill_value옵션을 이용해서 0으로 채웁니다. pd.pivot_table(df, index=[ 'Rep','Manager','Product'], values = ['Price', 'Quantity'], aggfunc = [np.sum, np.mean], fill_value=0, margins=True) ☞ m..

PYTHON 2022.03.01