1. 程式人生 > >中文幽默語料庫構建與計算專案(幽默等級識別,幽默型別識別,隱喻型別識別,隱喻情緒識別)

中文幽默語料庫構建與計算專案(幽默等級識別,幽默型別識別,隱喻型別識別,隱喻情緒識別)

ChineseHumorSentiment

chinese Humor Detection or Computation based on corpus and nlp methods, 基於語料庫與NLP方法的中文幽默計算與檢測專案
專案地址:https://github.com/liuhuanyong/ChineseHumorSentiment

專案介紹

幽默多指令人發笑的品質或者具有發笑的能力,它是一種特殊的語言表達方式,是生活中活躍氣氛、化解尷尬的重要元素。近年來隨著人工智慧的快速發展,如何利用計算機技術識別和生成幽默逐漸稱為自然語言處理領域研究熱點之一,即幽默計算。幽默計算旨在賦予計算機識別、生成幽默的能力,它涉及資訊科學、認知語言學、心理學等多個學科的交叉,在人類語言的理解乃至世界文化的交流方面,都具有重要的理論和應用價值。
幽默無處不在,計算機若能夠理解各種幽默形式,將會極大程度地提高人機互動系統的效能。
本專案將從中文的幽默性出發,嘗試完成以下兩個目標:
1)建立起一箇中文幽默文字語料庫。
2)幽默計算模型的構建包括:
幽默等級識別模型
幽默型別識別模型
隱喻型別識別模型
隱喻情緒識別模型

image

中文幽默文字語料庫的構建

程式主目錄:BuildCorpus
語料收集:BuildCorpus/corpus_spider.py
語料整理:BuildCorpus/collect_news.py
相聲小品語料:對話集,BuildCorpus/dialog

語料簡介

數量:6032個劇本、也稱話題集, 352834條對話
對話舉例:

'''
    應聘男:各位同事大家好!
    應聘女甲:歡迎大家來指導!
    應聘女乙:不管節目好不好!
    傻子:我用力過猛了,就變成這樣了!
    應聘男:你拉褲子了?
    傻子:不是!、、、我使用我的洪荒之力,扶了一個跌倒的大媽!結果,就只剩下一條褲衩了!
    應聘男:哦!難怪呢!土豪啊!敢吃青島大蝦,敢扶大爺大媽!有錢就是任性啊!這逼裝的我給滿風!(2016網路火爆熱詞)
    應聘男:這你就不懂了吧?把傻子叫來,不是顯得咱聰明瞭嗎?咱不是有墊背的了嗎?
    應聘女:哎!對呀!、、、還是你聰明!
    應聘男:那還用說!、、、、、、傻子,來!一會見了人家考官啊!一定要叫“女神”
    傻子:這次你們不騙我?
    應聘女乙:哎呀!這次不騙你!走啦,應聘去!
    傻子:好的!
    考官:哦!進來坐下吧!
    考官:就你這樣子,還龍的傳人啊?
    傻子:我是、、、恐龍的傳人。
    傻子:哦!你們X經理說了“女人裡面的神經病,就叫女神”
    考官:你、、、你這人是不是傻啊?
    傻子:我才不傻呢!要說傻,孫悟空才是千古第一傻人!
    傻子:他在蟠桃園裡把七仙女定住,他媽的,那傻叉竟然去吃桃了!傻的都不可原諒了!這要是我、、、、、(欲言又止)
    考官:這要是你!你會怎樣啊?
    傻子:這要是我,我一定偷他一顆桃樹種回家,以後就不用買桃了!
'''

中文幽默計算模型

模型思想:採用四層雙向lstm進行網路搭建,給出一個初步的baseline.以下是訓練實際情況.

模型 訓練集 測試集 訓練集準確率 測試集準確率 備註
幽默等級 6436 1610 0.8891 0.6137 5分類
幽默型別 5938 1460 0.9357 0.7096 3分類
隱喻類別 3515 879 0.9166 0.8089 2分類
隱喻情緒 2904 726 0.8134 0.5399 7分類

總結

1,一直在想如何更多地從社會語言學的角度去進行自然語言處理的研究和探索工作,幽默計算可以是其中一個,本專案是對該想法的一個實現.
2,本專案完成了幽默語料庫的構建工作,並使用基本的雙向lstm模型,訓練了四個模型,準確率還有很大優化空間
3,本專案後期將逐步加入Attention等機制,對現有模型基礎進行更新,嘗試是否可以進一步提高準確性
4,本專案的受到大連理工大學資訊檢索實驗室工作的啟發.

any question?
請聯絡我:
郵箱:[email protected]
csdn:https://blog.csdn.net/lhy2014
我的自然語言處理專案: https://liuhuanyong.github.io/