學習筆記CB004 提問 檢索 回答 NLPIR

2021-09-21 05:32:37 字數 2275 閱讀 4485

聊天機械人,提問、檢索、回答。

海量文字知識表示,網路文字資源獲取、機器學習方法、大規模語義計算和推理、知識表示體系、知識庫構建。問句解析,中文分詞、詞性標註、實體標註、概念類別標註、句法分析、語義分析、邏輯結構標註、指代消解、關聯關係標註、問句分類、答案類別確定。答案生成過濾,候選答案抽取、關係推演、吻哈程度判斷、雜訊過濾。

聊天機械人技術型別。基於檢索技術,資訊檢索,簡單易實現,無法從句法關係和語義關係給出答案,無法推理問題。基於模式匹配技術,把問題往梳理好的模式匹配,推理簡單,模式涵蓋不全。基於自然語言理解技術,把淺層分析加句法分析、語義分析。基於統計翻譯模型技術,把問句疑問詞留出來,和候選答案資源匹配。

問句解析。哈工大ltp(語言技術平台)、博森科技、jieba分詞、中科院張華平博士nlpir漢語分詞系統。

# coding:utf-8

import sys

import importlib

importlib.reload(sys)

import pynlpir

pynlpir.open()

# s = '聊天機械人到底該怎麼做呢?'

s = '海洋是如何形成的'

# 分詞 分析功能全開啟 不使用英文

segments = pynlpir.segment(s, pos_names='all', pos_english=false)

for segment in segments:

print(segment[0], 't', segment[1])

key_words = pynlpir.get_key_words(s, weighted=true)

for key_word in key_words:

print(key_word[0], 't', key_word[1])

pynlpir.close()

segment 切詞,返回tuple(token, pos),token切詞,pos 語言屬性。呼叫segment方法,指定pos_names引數'all' 、'child' 、'parent',預設parent 表示獲取詞性最頂級詞性。child 表示獲取詞性最具體資訊。all 表示獲取詞性相關所有詞性資訊,從頂級詞性到該詞性路徑。

詞性分類表。nlpir 源** /pynlpir/pos_map.py,全部詞性分類及其子類別:

pos_map = ),

'ns': ('地名', 'toponym', ),

'nt': ('機構團體名', 'organization/group name'),

'nz': ('其它專名', 'other proper noun'),

'nl': ('名詞性慣用語', 'noun phrase'),

'ng': ('名詞性語素', 'noun morpheme'),

}),'t': ('時間詞', 'time word', ),

's': ('處所詞', 'locative word'),

'f': ('方位詞', 'noun of locality'),

'v': ('動詞', 'verb', ),

'a': ('形容詞', 'adjective', ),

'b': ('區別詞', 'distinguishing word', ),

'z': ('狀態詞', 'status word'),

'r': ('代詞', 'pronoun', ),

'ry': ('疑問代詞', 'interrogative pronoun', ),

'rg': ('代詞性語素', 'pronoun morpheme'),

}),'m': ('數詞', 'numeral', ),

'q': ('量詞', 'classifier', ),

'd': ('副詞', 'adverb'),

'p': ('介詞', 'preposition', ),

'c': ('連詞', 'conjunction', ),

'u': ('助詞', 'particle', ),

'e': ('嘆詞', 'interjection'),

'y': ('語氣詞', 'modal particle'),

'o': ('擬聲詞', 'onomatopoeia'),

'h': ('字首', 'prefix'),

'k': ('字尾', 'suffix'),

'x': ('字串', 'string', ),

'w': ('標點符號', 'punctuation mark', ),

}

Perl學習筆記 004

matlab是matrix labrary的簡稱,是一款數學建模軟體,在自然語言處理中常常被用到。聽研究室的前輩說nlp中的聚類,分類以及矩陣分析等等常常用這個軟體進行研究。matlab中有許多關於自然語言處理的包。不過現在正在學習的初級階段,等到10月份的樣子再學習matlab吧。關於表示式中字串...

Python學習筆記004

0042020 7 7 python的比較操作符 左邊大於右邊 左邊大於等於右邊 左邊小於右邊 左邊小於等於右邊 左邊等於右邊 左邊不等於右邊 python條件分支語法 if條件 條件為真 true 執行的操作 else 條件為 false 執行的操作 python的while迴圈語法 while條...

Mysql學習筆記004

接著前面的寫 舉個栗子 我想給這些pet們過身日,我就要知道pet們的名字和他們的生日。我該怎麼辦?操作如下 select name,birth from pet mysql select name,birth from pet name birth whistler 1997 12 09 puff...