목록데이터 마이닝 (12)
개발자 끄적끄적
- 인공신경망(artificial neural networks)으로도 불리는 신경망(neural networks)모형은 분류와 예측을 위해 사용되는 모형이다 - 신경망은 노의 뉴련들이 상호작용하고 경험을 통해 배우는 생물학적 활동을 모형화 한 것이다 - 신경망은 인간 전문가가 배우는 방식을 흉내 낸다 신경망의 학습 및 기억 특성들은 인간의 학습과 기억의 특성을 닮앗고 특정사건으로부터 일반화하는 능력도 또한 갖고 잇다 - 일반적으로 신경망의 가장 큰 장점은 높은 예측 성과에 있다 신경망의 구조는 다른 분류모형에서는 불가능한 입력변수와 출력변수 사이의 매우 복잡한 관계를 파악한다 - 입력정보를 복잡하고 변경이 용이한(flexible)신경망 "모델"과 결합 - 신경망 모델의 "계수"는 반복 과정(iterati..
- 새로운 레코드를 '분류'하거나 '예측'할 때 사용 - 분류되어야 할 주어진 레코드에서 근접(유사) 레코드를 찾는다(k개를 선정) - "근접(nearby)"은 비슷한 예측변수 값을 가진 레코드를 뜻한다 - 근접한 레코드들("neighbor")이 주로 속한 클래스(우세한 클래스)로 해당 레코드의 클래스를 결정한다 - 특징 - 데이터에 근거한 추론 - 데이터에 대한 어떠한 가정도 없다 - 소속 클래스와 예측변수들간의 관계에 대한 가정이 없다(비모수적 : nonparametric) - 레코드들간의 유사성은 예측변수들로부터 얻는다 - 가장 많이 쓰이는 근접 측정방법은 '유클리드 거리'이다 - 예측변수의 척도를 균등하게 하기 위해 '표준화' - 새로운 레코드를 표준화 할 때는 '학습데이터의 평균과 표준편차'사용..
- 다중 : 예측변수가 여러개 - 정량적인 종속변수(목표번수, 출력변수 또는 반응변수) Y와 예측변수(설명변수, 독립변수, 입력변수, 회귀변수, 공변량)인 X1, X2, ..., Xp 사이의 선형관계를 적합하기 위해 사용 - 다중 선형 회귀분석은 분석대상에서 다음과 같은 관계가 있다고 가정 Y(outcome) = B(0) + B(1)x(1) + B(2)x(2) +... + B(p)x(p) + ε - B(0) : constant, B(1),...B(p) : coefficients, x(1),...,x(p) : predictors, ε : error(noise) - We assume a linear relationship between predictors and outcome - Data are used t..
- 사회연결망(Social Network) - 개체(개인, 조직, 혹은 webpage)간의 관계를 표현한 상회적 관계 구조 - 개체는 노드로 그들 간의 관계는 에지(링크)로 표현 - SNA는 노드의 관계성을 중심으로 구조를 분석 - 시각화, 노드의 특성, 네트워크 특성, 연결 예측 - 6개의 노드와 노드를 연결하는 선으로 구성 - 무방향 네트워크 #build a dataframe that defines the edges and use to build the graph df = pd.DataFrame([ ("Dave", "Jenny"), ("Peter", "Jenny"), ("John", "Jenny"), ("Dave, "Petter"), ("Dave", "John"), ("Peter", "Sam"), (..
- 사회연결망(Social Network) - 개체(개인, 조직, 혹은 webpage)간의 관계를 표현한 상회적 관계 구조 - 개체는 노드로 그들 간의 관계는 에지(링크)로 표현 - SNA는 노드의 관계성을 중심으로 구조를 분석 - 시각화, 노드의 특성, 네트워크 특성, 연결 예측 - 6개의 노드와 노드를 연결하는 선으로 구성 - 무방향 네트워크 G = nx.from_pandas_edgelist(df, 'from', 'to', create_using=nx.DiGraph()) //Digraph : 방향 그래프 //from : 소스, to : 타겟 nx.fraw(G, with_labels=True, node_color='lightblue', node_size=1600) - Edge weight(thickne..
- 목표 - 데이터 세트에 대한 통찰력을 생성할 목적으로 비슷한(동질적) 레코드들의 그룹(군집)형성 - 비슷한 고객 그룹으로 '시장을 세분화하는 데' 사용된다 - characterize the clusters useful for the aims of the analysis - marketing strategy is tailored for each segment - 원소 주기율표 : Mendeleev - 생물 종 분류 - 주식 포트폴리오 그룹화 : balanced portforlios - 경제 구조분석을 위한 회사 그룹화 - 육군 군복 크기 : 20 sizes with 5 measurements - 마케팅 : 고객 정보를 이용한 시장 세분화 - 인터넷 검색엔진 : 사용자들이 검색한 검색어를 군집화하여 검색..
- 콘텐츠의 증가 - 콘텐츠의 증가로 인하여 사용자가 원하는 콘텐츠를 선택하기가 어려워짐 - 사용자의 패턴이나 구매 내역을 분석해서 사용자 취향에 맞는 콘텐츠를 필터링하여 자동으로 제공하는 것이 요구된다 - 적용분야 - 고품질의 추천 필요 - 인터넷 쇼핑몰에서의 상품 추천(상품, 도서, 영화) - 웹 환경에서의 웹 사이트, 웹 페이지 추천, SNS상의 추천 - 구글, YouTube, Facebook, LinkedIn, 포털사이트 - 각 사람에 맞는 추천을 해주기 위해서는 아래와 같이 여러 가지 정보들을 고려해야 한다 - 개인화된 추천을 제공하기 위해 고려할 수 있는 정보들 - 사용자의 인구통계학적 속성 정보(Demographic features) : 나이, 성별 주소 등 - 콘텐츠의 속성 정보(Conte..
어떤 클래스가 더 중요할 때 많은 경우에 하나의 클래스 멤버들을 찾는 게 더 중요할 수 있다(클래스의 중요성이 불균등한 경우 성능평가) - 세금 사기 - 신용 부도 - 판촉 행사물에 대한 응답 - 전자 네트워크 침입 감지 - 비행지연 예측 이러한 경우에, 전체 정확도가 낮아지더라도 좀 더 관심을 갖는 중요한 클래스를 더 잘 찾도록 해주는 평가 척도가 필요하고, 그러한 척도들의 균형을 맞추는 기준값 설정이 중요 - 만약 “C1”이 중요한 클래스라면 (C1, C2) - 민감도(Sensitivity )= “C1” 클래스가 정확하게 분류될 확률, 즉 중요 집단의 소속 레코드를 정확하게 판별하는 능력=𝑛_1,1∕〖(𝑛_1,1+𝑛_1,2)〗 - 특이도(Specificity )= “C2” 클래스가 정확하게 분류될 확..
- 나이브 규칙(Naive Rule) - 예측 변수의 정보를 무시하고 모든 레코드를 빈도가 자주 발생하는 우세한(Prevalent)클래스의 일원으로 분류 혹은 평균값으로 예측 - 때때로 벤치마크로 사용된다 - 분류기의 성능이 나이브 규칙을 적용한 결과보다 우수하기를 희망 - ex : (수치형) 예측변수는 무시하고 결과변수의 평균값을 사용, R-square - 예외 - 가치가 높지만 희귀한 결과를 내는 것을 찾는 것이 목표일 때, 나이브 규칙보다 더 나쁘게 함으로써 성능이 더 좋을 수 있다 - 분류기는 학습 데이터로부터 구축 - 학습과 검증과 성능상 큰 차이는 과적합을 암시 - 정확도(Accurancy) = 1-err - 클래스가 많다면, 오분류율은 다음과 같다 - (잘못 분류된 레코드의 총합)/(전체 레..
- 파이썬은 들여쓰기가 매우 중요하다 - if문 다음에 '실행할 문장'은 if문 다음 줄에서 들여쓰기를 해서 작성 - 들여쓰기를 할 때는 Tab보다 Space Bar를 눌러 4칸정도 들여쓰기 권장 - 대화형 모드에서는 '실행할 문장' 모두 끝나고 Enter 2번 눌러야 if문이 끝나는 것으로 간주 ex) a = 99 if a >>hungry = True >>>if hungry : ... print("i'm hungry") ... i'm hungry >>>hungry = False >>>if hungry : print("i'm hungry") ... ... else : print("i'm not hungry") print("i'm sleepy") ... i'm not hungry i'm sleepy - i..
정의 - 의미 있는 패턴이나 법칙을 찾기 위해 다량의 데이터를 탐구하거나 분석하는 과정 - 대량의 데이터로부터 그 안에 숨어있는(implicit) 새롭고(previously unkown), 가치있고(non-trivial), 의사결정에 유용한(potentially useful)정보를 찾는 작업 목적 - Business - 소비자를 더 잘 이해함으로써 판매량과 이윤 그리고 회사의 가치와 경쟁력을 높이는 것 - 새로운 서비스 창출 데이터마이닝 - 데이터로부터 비즈니스에 관련 있는 중요한 정보/함의를 유도하는 과정 - 다량의 데이터를 분석하기 위한 일련의 강력한 알고리즘/모델들 배경 - 다량의 데이터를 생성(Internal, Mobile, IoT(Internet of Things 사물인터넷), POS, GPS ..
>python --version #아나콘다에 포함되어 있는 파이썬의 버전 확인 >conda --version #아나콘다 버전 확인 >conda update -n base conda #콘다 자체 업그레이드 > conda update --all #설치된 파이썬 팩키지를 모두 최신으로 업데이트 - 기본 데이터형 : 정수형, 실수형, 불형(True or False), 문자열, 리스트(배열+구조체) 튜플(읽기만 가능한 리스트), 딕셔너리(사전, Map, HashTable), 집합 등 - Python에서 1) 자료형 #type을 이용하면 자료형을 볼 수 있다 >>>type(10) >>type(2.718) >>>type("hello") 2) 변수 선언(메모리 할당을 받는다) #변수 선언할 때 자료형을 명시하지 않는다..