日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 小说人物分析_Python文章相关性分析---金庸武侠小说分析

發布時間:2023/12/15 python 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 小说人物分析_Python文章相关性分析---金庸武侠小说分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近常聽同事提及相關性分析,正巧看到這個google的開源庫,并把相關操作與調試結果記錄下來。

小說集可以百度《金庸小說全集 14部》全(TXT)作者:金庸 下載下來。

需要整理好格式,門派和武功名稱之間需要有換行符,留意刪除掉最后一行的空白區域。

下載完成后可以用自己習慣的工具或程序做相應調整,因語料內容太長,博客里面不允許"堆砌",所以沒復制上來,有需要的可以再聯系。

with open('names.txt') as f:

data= [line.strip() for line in f.readlines()]

novels = data[::2]

names= data[1::2]

novel_names= {k: v.split() for k, v inzip(novels, names)}

//可以在這里打印下看是不是都讀取過

//開始分詞并加載for _, names in novel_names.items():#.iteritems():(Python2的舊寫法)

for name innames:

jieba.add_word(name)

with open("kongfu.txt",encoding='UTF-8') as f:

kungfu_names=[line.strip()for line inf.readlines()]

with open("bangs.txt") as f:

bang_names=[line.strip()for line inf.readlines()]for name inkungfu_names:

jieba.add_word(name)for name inbang_names:

jieba.add_word(name)

novels = ["書劍恩仇錄","天龍八部","碧血劍","越女劍","飛狐外傳","俠客行","射雕英雄傳","神雕俠侶","連城訣","鴛鴦刀","倚天屠龍記","白馬嘯西風","笑傲江湖","雪山飛狐","鹿鼎記"]

//你知道的:飛雪連天射白鹿,笑書神俠倚碧鴛

sentences =[]for novel innovels:

with open('{}.txt'.format(novel),encoding='UTF-8') as f:

data=[line.strip()for line inf.readlines()ifline.strip()]for line indata:

words=list(jieba.cut(line))

sentences.append(words)

model=gensim.models.Word2Vec(sentences,

size=200, #100

window=5,

min_count=5,

workers=4)

//便于使用的方法

defget_gongfu(a, b, c):

d, _ = model1.most_similar(positive=[c, b], negative=[a])[0]

print (c,d)

//使用舉例一

print ('-------------若黃蓉使出打狗棒法,郭靖會怎樣?-------------------------')

get_gongfu("黃蓉","打狗棒法","郭靖")

print ('-------------若黃蓉拿著打狗棒,郭靖又會拿啥?-------------------------')

get_gongfu("黃蓉","打狗棒","郭靖")

輸出結果:

-------------相關性:喬峰-------------------------

%% 虛竹 0.8226621747016907

%% 慕容復 0.809000551700592

%% 段正淳 0.808856725692749

%% 木婉清 0.7898266315460205

%% 童姥 0.7881260514259338

%% 袁承志 0.7863771915435791

%% 全冠清 0.7761101722717285

%% 謝煙客 0.7738543748855591

%% 俞蓮舟 0.7663788199424744

%% 陸菲青 0.7651679515838623

-------------相關性:阿朱-------------------------阿紫0.8502078056335449王語嫣0.8323276042938232木婉清0.8188427090644836方怡0.81195068359375鐘靈0.8042664527893066儀琳0.7905520796775818青青0.7837553024291992香香公主0.7774882316589355盈盈0.7765697836875916馬夫人0.7628135681152344

-------------相關性:降龍十八掌-------------------------打狗棒法0.9099119901657104太極拳0.8792168498039246空明拳0.8742830157279968絕招0.864672064781189一陽指0.8576483726501465蛤蟆功0.8443030714988708心法0.8419612646102905棒法0.840523362159729羅漢拳0.838168740272522小擒拿手0.8356980085372925

-------------若黃蓉使出打狗棒法,郭靖會怎樣?-------------------------郭靖 降龍十八掌-------------若黃蓉拿著打狗棒,郭靖又會拿啥?-------------------------郭靖 令旗

模型參數:

Python文章相關性分析---金庸武俠小說分析-----

sentences:可以是一個·ist,對于大語料集,建議使用BrownCorpus,Text8Corpus或·ineSentence構建。

sg: 用于設置訓練算法,默認為0,對應CBOW算法;sg=1則采用skip-gram算法。

size:是指特征向量的維度,默認為100。大的size需要更多的訓練數據,但是效果會更好. 推薦值為幾十到幾百。

window:表示當前詞與預測詞在一個句子中的最大距離是多少

alpha: 是學習速率

seed:用于隨機數發生器。與初始化詞向量有關。

min_count: 可以對字典做截斷. 詞頻少于min_count次數的單詞會被丟棄掉, 默認值為5

max_vocab_size: 設置詞向量構建期間的RAM限制。如果所有獨立單詞個數超過這個,則就消除掉其中最不頻繁的一個。每一千萬個單詞需要大約1GB的RAM。設置成None則沒有限制。

sample: 高頻詞匯的隨機降采樣的配置閾值,默認為1e-3,范圍是(0,1e-5)

workers參數控制訓練的并行數。

hs: 如果為1則會采用hierarchica·softmax技巧。如果設置為0(defau·t),則negative sampling會被使用。

negative: 如果>0,則會采用negativesamp·ing,用于設置多少個noise words

cbow_mean: 如果為0,則采用上下文詞向量的和,如果為1(defau·t)則采用均值。只有使用CBOW的時候才起作用。

hashfxn: hash函數來初始化權重。默認使用python的hash函數

iter: 迭代次數,默認為5

trim_rule: 用于設置詞匯表的整理規則,指定那些單詞要留下,哪些要被刪除。可以設置為None(min_count會被使用)或者一個接受()并返回RU·E_DISCARD,uti·s.RU·E_KEEP或者uti·s.RU·E_DEFAU·T的函數。

sorted_vocab: 如果為1(defau·t),則在分配word index 的時候會先對單詞基于頻率降序排序。

batch_words:每一批的傳遞給線程的單詞的數量,默認為10000

最近常聽同事提及相關性分析,正巧看到這個google的開源庫,并把相關操作與調試結果記錄下來。

小說集可以百度《金庸小說全集 14部》全(TXT)作者:金庸 下載下來。

需要整理好格式,門派和武功名稱之間需要有換行符,留意刪除掉最后一行的空白區域。

下載完成后可以用自己習慣的工具或程序做相應調整,因語料內容太長,博客里面不允許"堆砌",所以沒復制上來,有需要的可以再聯系。

備注:首先百度到《金庸小說全集 14部》全(TXT)作者:金庸 下載下來,然后讀取內容,另:以上模型每次都訓練了,

總結

以上是生活随笔為你收集整理的python 小说人物分析_Python文章相关性分析---金庸武侠小说分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。