본문 바로가기

파이썬111

Get / Post 방식 1. 기본개념 : get 과 post 는 HTTP 프로토콜을 통해서 서버에 어떤 값을 전달 할 때 사용하는 방식의 종류. 즉, 어떻게 전달하나의 차이.2. 기본차이 : URL에 파라미터 값으로 데이터를 전달하면 Get방식, Post 방식은 URL에 파라미터 정보가 보이지 않는다. 그 이유는 Request Body에 포함되어 전달되기 때문에 파라미터 노출이 되지 않음.3. GET 방식이 속도면에서 더 좋음 4. GET 방식은 조회, 검색 시 많이 사용 5. GET 방식은 캐시가 남아있고 브라우저의 히스토리에 파라미터 정보가 저장되어서 좋지 않을수있음6. POST 방식이 보안면에서 더 좋음7. POST 방식은 입력(생성), 수정(변경), 삭제 시 많이 사용 8. POST 방식은 값을 숨겨서 전달할 수 있음... 2024. 5. 7.
영화리뷰 : 감정분석 1. 라이브러리 및 데이터 호출#라이브러리import tensorflow as tf# 모델 구성 라이브러리# Embedding 레이어: 텍스트 데이터의 임베딩을 처리. 각 단어를 고정된 크기의 벡터로 매핑.# Bidirectional LSTM 레이어: LSTM 레이어를 양방향으로 사용하여 문맥을 이해하고 순서 정보를 고려.# Dense 레이어: 분류를 위한 완전 연결 레이어.# Dropout 레이어: 과적합을 방지하기 위해 랜덤으로 입력 유닛을 0으로 만듬.from tensorflow.keras.layers import Dense, LSTM, Embedding, Dropout, Bidirectionalfrom tensorflow.keras.models import Sequential#데이터 전처리 라이브.. 2024. 5. 3.
T : Template(템플릿) 1. 사용자에게 보이는 부분2. 웹 페이지의 골격 즉, HTML로 작성된 부분이라는 것을 의미3. Django만의 장점 템플릿 태그 { } 사용. { } 활용하여 조건문, 반복문, 모델의 변수처리 가능.  (1) 태그와 태그 사이 : { }  (2) 태그 내부 : {{ }}  (3) 태그 내부(속성) : "{{ }}"  사진목록 페이지 {% for photo in photos %} {{photo.title}} {{photo.author}}, {{photo.price}} .. 2024. 5. 3.
Models 생성 Django 모델(Models)란? □ 프로젝트에서 애플리케이션(App)을 생성하고, 앱(APP) 기능 별 여러 데이터 값들을 생성, 수정, 삭제, 저장등을 위한 데이터 관리를 위해 테이블 객체를 생성하는데 이를 위한 것이 모델(Models)임. □ 그래서 우리는 해당 모델을 사용하여 테이블을 생성하기전에 데이터를 어떻게 처리할지 고민해야함 □ 우리는 프로젝트 생성 후 관리자, 즉, 슈퍼유저(admin)를 만들기위해 기본 테이블이 필요하여 생성전에 유저 데이터들이 저장될 수 있는 테이블을 생성했음. python manage.py migrate □ 위 코드를 실행하여 프로젝트 생성시 필요한 기본적인 테이블과 앱들을 설치했으며, 설치된 앱들은 모두 환경설정폴더에 모두 저장되었고, 환경설정 폴더는 최상위 폴더.. 2024. 4. 13.
가상환경 설치 & 장고 설치+삭제 & 서버구동 + superuser 생성 1. cmd > 설치 파이썬 버전 확인 python 입력 2. 가상환경 구축 > 구축 가상환경 디렉토리 진입 > 활성화 > 장고설치 - 구축 1 : python -m venv 가상환경명 - 구축 2 : pip install vitualenv & vitual 가상환경명 3. 가상환경 디렉토리 이동 > Scripts 디렉토리 > activate.bat 실행 > 가상환경 안에서 pip install Django 4. 장고 버젼 확인 - python 파일 생성후 import Django & print(djongo.get_version()) - python -m django -- version 5. 가상환경 빠져나오기 : deactivate 6. 장고프레임워크 삭제 - md 디렉토리명 - rd 디렉토리명 - /s.. 2024. 4. 8.
타이타닉 생존자 예측 Machine Learning 구현 □ 개요 ○ 데이터전처리 - Null 처리 - 불필요한 속성 제거 - 인코딩 수행 ○ 모델학습 및 검증/예측/평가 - 결정트리, 랜덤포레스트, 로지스틱 획습 비교 - K 폴드 교차 검증 - Cross_val_score()와 GridSearchCV() 수행 □ 코드 ○ 데이터 불러오기 #라이브러리 import numpy as np import pandas as pd import matplotlib.pyplot as plt %matplotlib inline #matplolib이 그래프를 노트북 셀 아래에 인라인으로 바로 표시됨 import seaborn as sns #데이터 호출 titanic_df = pd.read_csv("./juData/train.csv") titanic_df.head() * 데이터 필.. 2024. 4. 6.
피처 스케일링(스탠다드 스케일러, 민맥스 스케일러) □ 피처 스케일링 ○ 표준화는 데이터의 피처 각각이 평균이 0이고 분산이 1인 가우시안 정규분포를 가진 값으로 변환하는 것 ○ 정규화는 서로다른 피처의 크기를 통일하기위해 크기를 변환해주는 것 - standardScaler : 평균이 0이고, 분산이 1인 정규 분포형태로 변환 (z score 변환) - MinMaxScaler : 데이터의 값을 0과 1사이의 범위 값으로 변환(음수값이 있으면 -1 ~ 1값으로 변환) *선형회귀, SVM 등은 스캐일링 기법등에 민감함 □ 코드 ○ 데이터 불러오기 및 평균, 분산 값 구하기 from sklearn.datasets import load_iris import pandas as pd iris = load_iris() iris_data = iris.data iris_.. 2024. 4. 6.
데이터 인코딩(레이블 인코딩, 원-핫 인코딩) □ 데이터 전처리 ○ 데이터클린징 ○ 결손값 처리(NULL/NaN처리) ○ 데이터인코딩(레이블,원핫인코딩) *머신러닝은 문자열을 취급하지않기 때문에 숫자열로 치환해야함 ○ 데이터스케일링 ○ 범위 척도를 맞추는것 ○ 이상치 제거 ○ Feature 선택, 추출 및 가공 □ 데이터 인코딩 : 머신러닝 알고리즘은 문자열 데이터 속성을 입력 받지 않으며 모든 데이터는 숫자형으로 표현되야함 ○ 레이블(Lable) 인코딩 - LabelEncoder 클래스 - fit(), transform() 이용 #데이터 인코딩 : 레이블 인코딩 from sklearn.preprocessing import LabelEncoder items = ["TV","냉장고","전자랜지","컴퓨터","선풍기","선풍기","믹서","믹서"] # .. 2024. 4. 6.
비지도학습 : K-means(평균) 알고리즘 □ K-means(평균) 알고리즘 ○ 평균값이 클러스터 중심에 위치하기 때문에 클러스터 중심 또는 센트로이드라고 부름 ○ 무작위로 k개의 클러스터 중심을 정함 ○ 각 샘플에서 가장 가까운 클러스터 중심을 찾아 해당 클러스터의 클러스터의 샘플로 지정 ○ 클러스터에 속한 샘플의 평균값으로 클러스터 중심을 변경 ○ 클러스터 중심에 변화가 없을때까지 2번으로 돌아가 반복 □ 코드 **비지도학습이라 fit 과정에서 타겟데이터를 사용하지 않음. ○ 데이터 로드 #데이터 로드 import numpy as np fruits = np.load("C:/dPython/fruits_300.npy") fruits_2d = fruits.reshape(-1,100*100) #차원죽소를 통한 2차원 변경 for 모델훈련을 위해 fr.. 2024. 4. 6.