Python 및 머신 러닝으로 가짜 뉴스 탐지

우리는 일상 속에서 하루 종일 여러 매체를 통해 뉴스를 소비하지만, 때때로 어떤 것이 가짜이고 어떤 것이 진짜인지 판단하기 어려울 때가 있습니다. 우리가 소비하는 모든 뉴스가 진짜가 아닌 것은 아닙니다.

용어



-가짜 뉴스
선정적인 보도의 일종인 위조 뉴스는 거짓말일 수 있는 정보를 담고 있으며 대부분 웹 기반 미디어 및 기타 온라인 미디어를 통해 확산됩니다.
이것은 특정 종류의 생각을 조장하거나 강요하기 위해 또는 제품의 허위 판촉을 위해 정기적으로 수행되며 종종 정치적 계획으로 수행됩니다.

-Tfidf 벡터화기
TF(기간 빈도)
이것은 단어가 문서에 있는 횟수입니다. 큰 값은 단어가 다른 단어와 관련하여 여러 번 존재함을 의미합니다.

IDF(역 문서 빈도)
IDF는 전체 데이터 코퍼스에서 용어가 얼마나 중요한지에 대한 비율입니다.

프로젝트



가짜 뉴스와 진짜 뉴스를 감지합니다. sklearn을 사용하여 데이터 세트에 TfidfVectorizer를 구축합니다. 그런 다음 PassiveAggressive Classifier를 초기화하고 모델에 적합합니다. 결국 정확도 점수와 혼동 행렬은 모델이 얼마나 잘 작동하는지 알려줍니다.

수동공격적
Passive Aggressive 알고리즘은 온라인 학습 알고리즘입니다. 이러한 알고리즘은 올바른 분류 결과에 대해 수동적이며 오산, 업데이트 및 조정의 경우 공격적으로 변합니다. 대부분의 다른 알고리즘과 달리 수렴하지 않습니다.

데이터 분석



사용된 데이터 세트는 [(url)]에서 찾을 수 있습니다.

이 데이터 세트에는 4개의 열이 있습니다.
  • 이름없는
  • 제목
  • 텍스트
  • 라벨

  • 도서관




    import numpy as np
    import pandas as pd
    import itertools
    from sklearn.model_selection import train_test_split
    from sklearn.feature_extraction.text import TfidfVectorizer
    from sklearn.linear_model import PassiveAggressiveClassifier
    from sklearn.metrics import accuracy_score, confusion_matrix
    
    


    출력은 벡터 형식입니다.
    혼란_매트릭스(y_test,y_pred, 라벨=['가짜','진짜'])
    가짜=참 진짜=거짓

    프로젝트 코드 링크
    [( https://github.com/elsie-n/FakeNews/tree/main) ]

    좋은 웹페이지 즐겨찾기