Python95 확률적경사하강법 □ 확률적경사하강법 □ 새로운 데이터가 추가될 때마다 새로운 모델을 생성/학습해야함 □ 기존의 모델과 모델 세팅등을 최대한 유지하면서 업데이트하는 최적화 방법. 알고리즘 모델은 아님. 즉, 훈련방법 또는 최적화 방법임 ○ 확률적경사하강법 : 훈련세트를 한번 모두 사용하는 과정 ○ 미니배치 경사하강법 : 여러개씩 꺼내기 ○ 배치경사 하강법 : 몽땅꺼내기 □ 에포크 : 훈련세트를 한번 모두 사용하는 과정 □ 손실함수는 0에 가까울수록 아주 큰음수가 되기 때문에 손실을 아주크게만들어 모델에 큰 영향을 끼침 □ 예제 ○ 데이터 호출 import pandas as pd fish = pd.read_csv("https://bit.ly/fish_data") fish.head() ○ 인풋, 타겟데이터 분리 #데이터전처리.. 2024. 3. 22. Numpy sort/argsort □ 기본적으로 오름차순 / 내림차순은 [::-1] □ np.sort(ndarray) : 인자로 들어온 행렬은 그대로 유지한 채 원 행렬의 정렬된 행렬 반환 □ ndarray.sort : 행렬 자체를 정렬한 형태로 변환하며 반환값은 None org_array = np.array([3,1,9,5]) print(org_array) print("\n") print("오름차순") sort_org_array = np.sort(org_array) print(sort_org_array) print("\n") print("내림차순") desc_sort_org_array = np.sort(org_array)[::-1] print(desc_sort_org_array) print("\n") org_array = np.arra.. 2024. 3. 14. 프로젝트 : 부산항만공사 서비스 제안관련 데이터분석-1 ㅁ 프로젝트 산출물 : https://busanportservice.streamlit.app/ Abstract Busan Port busanportservice.streamlit.app ㅁ항구별 체류시간관련 분석을 위한 데이터 크롤링 ○ 셀레니움 → 크롤링 활용 ○ 뷰티풀숲 → 크롤링 활용 ○ re → 전처리 활용 ○ pandas → 전처리 활용 from selenium import webdriver #Selenium의 웹 드라이버를 사용하기 위한 모듈을 임포트 from selenium.webdriver.common.by import By #Selenium에서 사용하는 By 클래스를 임포트합. 웹 요소를 검색하는데 사용. from selenium.webdriver.common.keys import Key.. 2024. 3. 11. Chat_gpt API 연동방법 □ https://openai.com/product 접속 □ API>Overview 클릭 ※ 계정이없다면 계정생성 후 로그인할 것 □ API>Overview 클릭 □ 기본적으로 처음 계정생성 후 로그인하면 3개월간 이용할수 있는 $5 가량의 크레딧을 준다고함. 따라서 로그인 후 아래 이미지와 같이 참고하여 잔여크레딧 확인. (작성자의 경우에는 3개월 뒤 크레딧이 소멸되어 $5 충전함) → 최소 충전금액 $5이며, 충전금액만큼 API를 활용할 수 있음 □ API 키 발급 □ API연동관련 코딩 및 ChatGpt 기능구현 #라이브러리 from openai import OpenAI #API키 입력 client = OpenAI( api_key="개인발급키" ) #대화가 끊기지 않도록 while True 사용 w.. 2024. 3. 10. Numpy 차원 * 배열 원소개수 확인 : 배열명.size * 배열 행과열 확인 : 배열명.shape * 배열 차원 확인 : 배열명.ndim * axis=0 행방향 * axis=1 열방향 □ 1차원 배열(axis = 0) : Vector = array # 배열 one_array_1 = np.array([1,2,3,4,5]) print(f"배열확인 : {one_array_1}") print(f"배열타입 : {type(one_array_1)}") print(f"배열행과열 : {one_array_1.shape}") print(f"배열차원 : {one_array_1.ndim}") #차원확인 print(f"배열원소개수 : {one_array_1.size}") #원소개수 확인 print('\n') one_array_2 = np.a.. 2024. 3. 6. Numpy Intro □ “Numerical Python” 의 약자로 대규모 다차원 배열과 □ 행렬 연산에 필요한 다양한 함수 제공 □ NumPy는 Pandas, Scikit-learn, Tensorflow등 데이터 사이언스 분야에서 사용되는 라이브러리들의 토대가 되는 라이브러리 □ 기본적으로 array 라는 단위로 데이터 관리하며, 행렬이라는 개념으로 생각하면 됨 ○ 배열(array) : 컴퓨터에서 일반적으로 사용하는 개념으로 수를 포함한 어떤 데이터의 묶음을 의미. ○ 벡터(vector) : 1차원으로 묶은 수를 수학에서 벡터(vector)라 부르며 행만 구성된 것을 행백터, 열만으로 구성된 것을 열벡터라 부름 ○ 행렬(matrix) : 2차원으로 묶은 수를 수학에서 행렬(matrix)이라 부르고, 우리가 알고있는 수많은.. 2024. 3. 6. 쿠팡 : 상품 검색결과 중 로켓배송인 상품 크롤링 □ 내용 ○ 쿠팡에서 특정 키워드에 따른 검색결과 상품 들 중 로켓배송이 되는 품목만 크롤링 ○ 특이사항 - 변수명 = .select('li[class=search-product') → li 태그 중 클래스명이 정확히 search-product 인 것을 앞 코드와 같이 표현 ▶ .select('li.search-product')과 같이 쓰면 아래 이미지와 같이 특정 클래스명이 들어간것을 모두 파악하여 처리해야할 변수 및 정확도가 떨어짐 - continue 문 : 조건이 True이면 아래 코드까지 진행, 조건이 False면 위로 올라가서 코드실행 #로켓뱃지 rocket_pd = i.select_one('.badge.rocket') if rocket_pd: continue #로켓벳지가 없다면 위로 올라가서 .. 2024. 2. 13. 임의 페이지 텍스트 크롤링 및 엑셀저장 □ 목적 : 게시판 타이틀과 각 타이틀별 댓글까지 크롤링, 전처리하여 엑셀로 깔끔하게 자동 저장 □ 활용 라이브러리 및 사용이유 import requests #크롤링 요청을 보낼 라이브러리 import openpyxl #엑셀 저장을 위해 사용 from bs4 import BeautifulSoup #크롤링 기능사용을 위해 호출한 라이브러리 from openpyxl.styles import Alignment, Font, colors, Border, Side #엑셀 데이터 디자인 효과를 위해 호출 □ 세부내용 ○ 특정 페이지 및 페이지의 게시글별 상세 페이지 데이터 크롤링 ○ 임의 사이트(개인수강하는 곳에서 지원하는 웹)에서 추출하고자하는 데이터를 +1개씩 증가하며 코딩 ○ 한개의 데이터 및 기능추가 시 함수.. 2024. 1. 30. 공공데이터 포탈 API □ 공공데이터 : https://www.data.go.kr/ 공공데이터 포털 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase www.data.go.kr □ 사전작업(회원가입 완료되었다고 가정) ① API 신청하고자할 데이터 조회/검색 ② 해당 데이터 상세보기 > 활용신청 클릭 ③ 신청승인이되면 요청한 데이터의 기술목록 다운 및 API 링크, 변수 등 파악 ④ 개인 인증키 파악 □ 사전작업 완료 후 postman에서 API링크와 인증키 입력 후 데이터 요청/수신 여부 확인 ○ 링크 및 인증키, 변수등을 잘 입력했다면 아래와 같이 수신된 데이터가 표시됨 * 작성자.. 2024. 1. 22. 이전 1 2 3 4 5 ··· 11 다음