| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- numpy
- dendrogram
- matplotlib
- 최댓값
- 최솟값
- Dictionary
- Machine Learning
- DataFrame
- pandas
- Python
- data
- IN
- len()
- sklearn
- string
- 덴드로그램
- wcss
- elbow method
- hierarchical_clustering
- del
- insert()
- list
- append()
- nan
- DataAccess
- 분류 결과표
- analizer
- function
- 반복문
- count()
- Today
- Total
목록Python/Machine Learning (20)
개발공부
저장하기 저장시 파일과 같은 경로에 저장된다. import joblib joblib.dump(저장할 변수 명, '저장할 파일 명.pkl') 불러오기 불러 왔을때는 변수에다가 넣고 사용하면 된다. import joblib 변수명 = joblib.load('경로/파일명.pkl')
협업필터링 (Collaborative Filtering) 사용자와 item 간의 rating을 이용해서 사용자끼리 유사도를 찾는 방식이다. 특정 사용자와 유사한 사용자들이 남긴 평점, 상품구매 이력등 행동양식 기반으로 예측해서 추천해준다. 그래서 item을 얼마나 좋아할 것인지를 수치적으로 예측한다. 아이템기반 협업필터링 (Item based collaborative filtering) 사용자가 아니라 아이템을 파라미터로 하여 협업필터링하는 방법이다. 이템 기반 협동적 필터링은 대부분의 사람들이 과거에 자신이 좋아했던 상품과 비슷한 상품이면 좋아하는 경향이 있고 반대로 싫어했었던 상품과 비슷한 상품이면 싫어하는 경향이 있다는 점을 기반으로 하고 있다. 이 필터링 방법은 고객이 선호도를 입력한 기존의 상품..
Prophet 시계열 예측 라이브러리 facebook의 데이터 사이언스 팀에서 출시한 오픈 소스 소프트웨어 예제 Prophet을 파이썬에서 사용하려면 from fbprophet import Prophet 를 선언해야한다. 그리고 datetime형식의 컬럼과 예측하고자하는 컬럼을 가져와야 한다. 아래의 데이터프레임을 예로 해보자. 그리고 각 컬럼은 ds와 y로 컬럼명을 바꿔줘야 한다. avocado_prophet_df.columns = ['ds', 'y'] avocado_prophet_df.head() 이제 이 데이터로 예측을 해보자. # 1. 변수로 만들고 prophet = Prophet() # 2. 기존의 데이터로 학습 시키기 prophet.fit(avocado_prophet_df) # 365일치를 예..
WordCloud wordcloud 라이브러리가 제공하고 많이 나온 단어를 시각화 할 수 있다. STOPWORDS 불용어라고 한다. 필요없는 단어를 지칭한다. 예제 아래와같은 리뷰 문자열이있다. from wordcloud import WordCloud, STOPWORDS import matplotlib.pyploy as plt my_stopwords = STOPWORDS # 불용어에 Alexa도 추가한다. my_stopwords.add('Alexa') # 배경색은 white 불용어는 my_stopwords wc = WordCloud(background_color='white', stopwords= my_stopwords) # 워드클라우드 생성 wc.generate(reviews) plt.imshow(wc..
CountVectorizing 카운터 벡터라이징 여러개의 문자열데이터에서 각 단어별로 쪼개 해당 단어가 몇개씩 나왔는지 계산해 변환해준다, 예제 from sklearn.feature_extraction.text import CountVectorizer sample_data = ['This is the first document', 'I loved them', 'This document is the second document', 'I am loving you', 'And this is the third one'] vec = CountVectorizer() #fit_transform() 함수를 사용해 sample_data의 문자열의 모든 단어에 대해 # 각 리스트요소마다 각 단어에 대해 몇개씩 있는지를 학..
구두점 제거 아래와 같은 테스트 문자열의 구두점을 제거해보자. Test = 'Here is a mini challenge, that will teach you how to remove stopwords and punctuations!' 파이썬의 string은 구두점을 제공해준다. import string string.punctuation 제거하는 코드는 다음과 같다. Test_punc_removed = [char for char in Test if char not in string.punctuation] Test_punc_removed_join = ''.join(Test_punc_removed) Test_punc_removed_join 그럼 아래와같은 결과를 얻는다. StopWords (불용어) 제거 ..
Grid Search 우리가 지정해준 잠재적 Parameter 들의 후보군 조합중에서 가장 최적의 조합을 찾아준다. sklearn 라이브러리에서 이를 제공해 주고 있어 쉽게 사용 가능하다. 예제 from sklearn.model_selection import GridSearchCV 우리는 Support Vector Machine 방식을 사용하겠다. # 파라미터의 조합으로 사용할 값들을 설정해준다. param_grid = { 'C' : [0.1, 1, 10, 100], 'kernel' : ['linear', 'rbf', 'poly'], 'gamma' : [1, 0.1, 0.01]} # estimator : classifier, regressor, pipeline 등 가능 # refit : True가 디폴트..
Hierachical Clustering 계층적 군집화 -계층적 트리 모형을 이용해 개별 개체들을 순차적, 계층적으로 유사한 개체 내지 그룹과 통합하여 군집화를 수행하는 알고리즘 - K-means Clustering과 달리 군집 수를 사전에 정하지 않아도 학습을 수행할 수 있다. - Dendrogram 이용 Dendrogram 덴드로그램 - 개체들이 결합되는 순서를 나타내는 트리형태의 구조 - 적절한 수준에서 트리를 자르면 전체 데이터를 몇개 군집으로 나눌 수 있게 된다. 예제 덴드로그램은 scipy 라이브러리를 이용해 그릴 수 있다. import scipy.cluster.hierarchy as sch plt.figure(figsize=(20,12)) # 전처리된 데이터 X에 대해 덴드로그램을 그리기 s..
K-Means 알고리즘 데이터를 K개의 군집으로 묶는 알고리즘이다. 각 군집의 평균(mean)을 확용해 K개의 군집으로 묶는다는 의미다. 여기서 평균이란 각 클러스터의 중심과 데이터들의 평균 거리를 의미한다. WCSS (Within Cluster Sum of Squares) 클러스터의 각 구성원과 해당 중심 사이의 거리 제곱의 합으로 정의된다. Elbow Method KMeans에 관한 군집수를 알 수 있다. 예제 sklearn라이브러리는 KMeans를 할 수 있는 함수를 제공한다. from sklearn.cluster import KMeans 데이터 X가 있다고 할 때 적절한 K 값을 찾기 위해 WCSS 값을 확인해야 한다. 따라서 for 문을 통해 k를 2부터 10까지 의 값을 넣어 학습해보고 그때의..
sklearn 라이브러리가 제공하는 스케일러나 인코더에는 fit(), fit_transform(), transform() 함수가 있다. fit() 데이터를 학습시키는 함수이다. 주어진 데이터를 가지고 학습을 한다. transform() fit() 함수로 학습시킨것에 기반하여 변환하는 함수이다. fit_transform() fit()과 transform()을 모두 하는 함수이다. 해당 스케일러나 인코더로 학습을 시키고 바로 변환을 하는 함수이다.