예제 #1
0
class Train:
    def __init__(self):
        self.bf = BayesianFilter()
        self.files = glob.glob("./trainData/*.txt", recursive=True)

    def train_data(self):
        for file_name in self.files:
            basename = os.path.basename(file_name)
            categorty = basename.split(".")[0]
            file = open(file_name, "r", encoding="utf-8")

            while True:
                text = file.readline()
                self.bf.fit(text, categorty)
                if not text:
                    break
            file.close()

    def input_data(self, i_data):
        pre, scorelist = self.bf.predict(i_data)
        return pre, scorelist

    def check_file(self, pre, input_str):
        s_filename = "./trainData/" + pre + ".txt"
        file = open(s_filename, "r", encoding="utf-8")
        t_list = []
        while True:
            text = file.readline()
            if len(text) > 1:
                t_list.append(text[:-1])
            if not text:
                break
        file.close()

        if input_str not in t_list:
            return 0
        else:
            return 1

    def write_file(self, pre, input_str):
        s_filename = "./trainData/" + pre + ".txt"
        w_file = open(s_filename, "a", encoding="utf-8")
        w_file.write(input_str)
        w_file.write("\n")
        w_file.close()
예제 #2
0
from bayes import BayesianFilter
from numpy import core
from numpy.core import multiarray
from numpy import show_config as show_numpy_config
# from scipy.stats.stats import betai
from nltk.metrics import ContingencyMeasures, BigramAssocMeasures, TrigramAssocMeasures, QuadgramAssocMeasures
from nltk.collocations import *
from web_crawler_fin import *
import codecs
f = BayesianFilter()

# 영어텍스트 지도 학습(정답, 오류)
f.fit("Takeshima is Japan.", "오류")
f.fit("Dokdo is korean", "정답")
f.fit("Dokdo is korea", "정답")
f.fit("Dokdo is korean territory", "정답")
f.fit("Dokdo are korea", "정답")
f.fit("Dokdo is korea", "정답")
f.fit("Dokdo is korea", "정답")
f.fit("Dokdo is chinese", "오류")
f.fit("Dokdo is japanese", "오류")
f.fit("Dokdo is american", "오류")
f.fit("East Sea is mainland China.", "오류")
f.fit("Dokdo is Japan.", "오류")
f.fit("Dokdo is japan territory", "오류")
f.fit("Dokdo is japanese", "오류")
f.fit("Korea is a subordinate country to China.", "오류")
f.fit("Korea is not a subordinate country to China.", "정답")
f.fit("Takeshima is Korean territory.", "정답")
f.fit("East Sea is the Sea of Japan.", "오류")
f.fit("East Sea is the Republic of Korea.", "정답")
예제 #3
0
from bayes import BayesianFilter
bf = BayesianFilter()

bf.fit("파격 세일 - 오늘까지만 30% 할인", "광고")
bf.fit("쿠폰 선물 & 무료 배송", "광고")
bf.fit("현데계 백화점 세일", "광고")
bf.fit("봄과 함게 찾아온 따듯한 신제품 소식", "광고")
bf.fit("인기 제품 기간 한정 세일", "광고")
bf.fit("오늘 일정 확인", "중요")
bf.fit("프로젝트 진행 상황 보고", "중요")
bf.fit("계약 잘 부탁드립니다.", "중요")
bf.fit("회의 일정이 등록되었습니다", "중요")
bf.fit("오늘 일정이 없습니다", "중요")

pre, scorelist = bf.predict("재고 정리 할인, 무료배송")
print("결과 =", pre)
print(scorelist)
예제 #4
0
from bayes import BayesianFilter

bf = BayesianFilter()

bf.fit("激安セール - 今日だけ三割引", "広告")
bf.fit("クーポンプレゼント&送料無料", "広告")
bf.fit("店内改装セール実地中", "広告")
bf.fit("美味しくなって再登場", "広告")
bf.fit("本日の予定の確認です。", "重要")
bf.fit("プロジェクトの進捗確認をお願いします。", "重要")
bf.fit("打合せよろしくお願いします。", "重要")
bf.fit("会議の議事録です。", "重要")
# 予測
pre, scorelist = bf.predict("激安、在庫一掃セール、送料無料")

print("結果=", pre)
print(scorelist)
예제 #5
0
from bayes import BayesianFilter

bf = BayesianFilter()

# 텍스트 학습
bf.fit('파격 세일 - 오늘까지만 30% 할인', '광고')
bf.fit('쿠폰 선물 & 무료 배송', '광고')
bf.fit('현데계 백화점 세일', '광고')
bf.fit('봄과 함께 찾아온 따뜻한 신제품 소식', '광고')
bf.fit('인기 제품 기간 한정 세일', '광고')
bf.fit('오늘 일정 확인', '중요')
bf.fit('프로젝트 진행 상황 보고', '중요')
bf.fit('계약 잘 부탁드립니다.', '중요')
bf.fit('회의 일정이 등록되었습니다.', '중요')
bf.fit('오늘 일정이 없습니다.', '중요')

# 예측
pre, scorelist = bf.predict('재고 정리 할인, 무료 배송')
print('결과 = ', pre)
print(scorelist)
예제 #6
0
 def __init__(self):
     self.bf = BayesianFilter()
     self.files = glob.glob("./trainData/*.txt", recursive=True)
예제 #7
0
from bayes import BayesianFilter
import csv
import pandas as pd
from sklearn.model_selection import train_test_split

bf = BayesianFilter()


#chat_csvをリストに格納
def csv_opener(csv_name):
    text = []
    with open(csv_name, 'r', encoding="utf_8_sig") as f:
        reader = csv.reader(f)
        for row in reader:
            text.append(row)
        return pd.DataFrame(text).T.values.tolist()


text = csv_opener('onayami.csv')
#text = [text[0][0:50],text[1][0:50]]

#(x_train, x_test, y_train, y_test) = train_test_split(text[0], text[1], test_size=0.3)

#すでにファイルに出力済みなら不要
#for i in range(len(text[0])):
#bf.fit(text[0][i],text[1][i])

acc, acc2 = bf.predict(text[0][0:10], text[1][0:10])

print('結果1=', acc)
print('結果2=', acc2)
예제 #8
0
from bayes import BayesianFilter
import pickle

bf = BayesianFilter()
# テキストを学習
bf.fit("兵庫県伊丹市中央4丁目3-9", "住所")
bf.fit("072-773-5526", "電話番号")
bf.fit("9:30~19:50", "営業時間")
bf.fit("サンドラッグ 伊丹中央店", "店舗名")
bf.fit("富山県富山市五福3640番地5", "住所")
bf.fit("076-471-7646", "電話番号")
bf.fit("9:00~:21:00", "営業時間")
bf.fit("中部薬品 五福店", "店舗名")
bf.fit("佐賀県佐賀市新中町6-11", "住所")
bf.fit("0952-32-7111", "電話番号")
bf.fit("9:00~3:00", "営業時間")
bf.fit("ドン・キホーテ佐賀店", "店舗名")
bf.fit("東京都新宿区新宿3丁目38番1号", "住所")
bf.fit("03-5269-1111", "電話番号")
bf.fit("10時30分~22時30分", "営業時間")
bf.fit("ルミネエスト新宿", "店舗名")

f = open('./tenpo1.textfile', 'wb')
pickle.dump(bf, f)
f.close

# 予測
pre, scorelist = bf.predict("埼玉県新都心市ラーメン太郎")

print("結果=", pre)
print(scorelist)
예제 #9
0
# text -> M.learning.supervised -> modeling
# model -> input -> return res(category)

from bayes import BayesianFilter

bf=BayesianFilter()
bf.fit("파격 세일 - 오늘까지 30% 할인합니다", "광고")
bf.fit("쿠폰 선물 & 무료 배송", "광고")
bf.fit("현대 백화점 세일", "광고")
bf.fit("여름과 함께 찾아온 시원한 신제품 소식", "광고")
bf.fit("인기 제품 기간 한정 세일", "광고")
bf.fit("오늘 일정 확인하세요", "중요")
bf.fit("김부장님 프로젝트 진행 상화 보고입니다", "중요")
bf.fit("계약 잘 부탁드립니다", "중요")
bf.fit("회의 일정이 등록되었습니다", "중요")
bf.fit("오늘 일정이 없습니다", "중요")
bf.fit("재고 정리 할인, 무료 배송", "광고")

pre, scorelist=bf.predict("김부장 멍청한 녀석, 현대 백화점에서 골프백이나 사지?")
print("결과=", pre)
print(scorelist)
예제 #10
0
from bayes import BayesianFilter

bf = BayesianFilter()

# 텍스트 학습
bf.fit("파격 세일 오늘까지 할인", "광고")
bf.fit("현대 백화점 세일", "광고")
bf.fit("쿠폰 선물 & 무료 배송", "광고")
bf.fit("인기 상품 최대 할인", "광고")

bf.fit("오늘 아침 회의가 있습니다", "중요")
bf.fit("오늘 일정 확인", "중요")
bf.fit("프로젝트 진행 상황 보고", "중요")
bf.fit("오늘 일정이 없습니다", "중요")

pre, scorelist = bf.predict("재고 정리 할인, 로켓 배송")
print("결과 :", pre)
print(scorelist)