系統(tǒng)推薦码撰,思考角度和對產(chǎn)品的認知

一、好的推薦系統(tǒng)

1. 什么是好的推薦系統(tǒng)——用戶視角

什么是推薦系統(tǒng)?

當你心理產(chǎn)生一個需求的時候个盆,能通過這個工具順利實現(xiàn)對這個需求的搜索脖岛,并獲得符合心理預期的產(chǎn)品列表,這個工具我們就稱之為——推薦系統(tǒng)颊亮。

例如在現(xiàn)實生活中我們經(jīng)常會用淘寶柴梆、京東、百度等產(chǎn)品终惑,人們通常會基于目的(例如買洗面奶绍在、洗發(fā)水、圖書)的情況下去搜索想要的產(chǎn)品;或是在需求不明確的情況下偿渡,期望外部能傳達符合自身內心需求的信息臼寄。

那么,什么樣的推薦系統(tǒng)是好的推薦系統(tǒng)呢溜宽?

1.1 用戶層面:對用戶真正有價值的推薦

1.1.1 符合用戶的預期

推薦結果精準吉拳,能較大概率的覆蓋用戶的需求;用戶搜索詞與推薦物品有較高的匹配度适揉,這里通常用召回率和準確率來衡量上述指標留攒。

召回率:正例在實際總的正例中被預測正確的概率

準確率:正例被預測正確的概率

1.1.2 讓用戶產(chǎn)生驚喜

在滿足精準性的情況下,推薦系統(tǒng)能挖掘人性需求嫉嘀,幫用戶拓展眼界探索未知炼邀,產(chǎn)生驚喜。

其體現(xiàn)在推薦結果的多樣性剪侮,物品間知識關聯(lián)性等拭宁。比如用戶搜索古典音樂類書籍,可以在列表中增加與此類型音樂相配的古典舞蹈票彪、茶藝等書籍.

另外红淡,推薦物品不能和用戶所購買物品物理綁定。比如用戶購買紅樓夢上降铸,系統(tǒng)推薦紅樓夢下在旱,這個推薦對用戶來說并不存在真正心理需求

1.2 系統(tǒng)層面:技術

對用戶而言,對推薦結果的預期推掸、反饋的時間桶蝎、推薦物品更新的頻率、系統(tǒng)容錯機制等谅畅,都會直接影響用戶體驗登渣。因此在系統(tǒng)層面,一個優(yōu)秀的推薦系統(tǒng)需具備但不限于:

強大抵御并處理噪聲數(shù)據(jù)(例如刷單產(chǎn)生的無效數(shù)據(jù))的能力

高效數(shù)據(jù)計算及傳輸能力

穩(wěn)定的存儲機制

算法的精準性

1.3 不斷完善與優(yōu)化

就像人一樣毡泻,只有不斷的學習胜茧,才能完善自身的知識體系以及對世界的認知,系統(tǒng)亦然仇味。

好的推薦系統(tǒng)一定具備自我學習的能力呻顽,通過建立反饋機制和用戶進行交互,從而不斷優(yōu)化對用戶群體的認知丹墨,最終能實現(xiàn)對用戶群體的精準聚類廊遍,為每類群體建立模型,物品精準投放贩挣。

1.4 讓用戶信服的推薦理由

好的推薦系統(tǒng)勢必會讓用戶產(chǎn)生強烈的信任與依賴感喉前,給用戶提供物品推薦的依據(jù)——推薦理由没酣。

推薦理由可以體現(xiàn)出系統(tǒng)是如何判斷物品進入用戶的興趣范圍的。常用的推薦理由大概分為以下四類:

熱門商品卵迂;推薦系統(tǒng)通常都會賦予部分熱門商品一定的權重裕便,由于感興趣的人基數(shù)非常大,所以系統(tǒng)判斷目標用戶感興趣的概率也較大

目標用戶的好友同時也喜歡此類物品

喜歡某類物品的用戶同時也喜歡這類物品

與某類物品內容有極大的關聯(lián)性狭握;這里關聯(lián)性可以逐步細化闪金,比如基于知識體系的推薦疯溺,即不同領域的匹配论颅,或同一領域的梯度匹配等

1.5 實現(xiàn)雙贏

好的推薦系統(tǒng)不僅能讓用戶找到目標物品,也能讓商家發(fā)現(xiàn)目標/潛在的用戶群體囱嫩,實現(xiàn)共贏恃疯。

2.什么是好的推薦系統(tǒng)——產(chǎn)品視角

推薦系統(tǒng)都會有一個明確的目的,無論是為了突破技術壁壘還是基于商業(yè)目的墨闲,最終都會根據(jù)目標今妄,通過特定的用戶行為數(shù)據(jù)來判斷成功與否。

比如對于電商平臺鸳碧,用戶關注盾鳞、點贊、收藏瞻离、加入購物車等操作腾仅,都可以在一定程度上衡量推薦結果的精準性,但并未達到此系統(tǒng)的最終目標——支付套利。

因此我們可以選與系統(tǒng)最終目標最匹配的用戶行為推励,也就是在這個過程中用戶付出代價最大的行為作為主要的判斷依據(jù),比如購買成功肉迫,對此行為賦予相對較大的權重验辞。

二、推薦系統(tǒng)架構

通過上面的介紹喊衫,大家應該對推薦系統(tǒng)有一個初步的認識了跌造,那么推薦系統(tǒng)是由哪幾部分構成呢,在這一部分族购,我將逐一解答壳贪。

大部分推薦系統(tǒng)都是由前臺展示頁面、后臺日志系統(tǒng)和推薦算法系統(tǒng)三部分構成联四。

1. 前臺展示頁面

前臺展示頁面是直觀展示給用戶的界面撑碴,通過UI與用戶交互,交互產(chǎn)生的用戶行為數(shù)據(jù)將存儲在后臺日志系統(tǒng)中朝墩,開發(fā)者根據(jù)推薦算法對日志系統(tǒng)中的數(shù)據(jù)進行處理及分析醉拓,最終生成推薦結果伟姐。

那么,交互產(chǎn)生的用戶行為數(shù)據(jù)包括哪些呢亿卤?

用戶自身基礎屬性愤兵;即性別、年齡排吴、學歷秆乳、職業(yè)、所在地等钻哩,通常來源于用戶注冊信息或是其他平臺數(shù)據(jù)屹堰。

用戶行為結果:產(chǎn)生的話題、搜索關鍵詞及反饋(評論/打分)等街氢。

每種類型的數(shù)據(jù)可以抽象為一種特征扯键,獲取方式可來源于目標網(wǎng)站或社交網(wǎng)絡。

2. 后臺日志系統(tǒng)

日志系統(tǒng)主要是用來記錄系統(tǒng)運行的軌跡珊肃,在記錄的同時荣刑,跟蹤分析錯誤,審計系統(tǒng)運行的流程伦乔。

日志記錄的內容通常分為兩大類厉亏,一是面向用戶,二是面向開發(fā)者烈和,這里我們更多關注第一類爱只。

用戶行為都會存儲在日志數(shù)據(jù)庫中,由于用戶產(chǎn)生的數(shù)據(jù)量巨大且速度快斥杜,為了保證數(shù)據(jù)傳輸?shù)姆€(wěn)定性虱颗,可以嵌入高吞吐量分布式消息系統(tǒng)——Kafka。

同時為了提高數(shù)據(jù)處理效率蔗喂,通常會設定日志內容邊界對檢測出的無效數(shù)據(jù)源(例如刷單數(shù)據(jù))先做過濾忘渔。當然經(jīng)過篩選后的數(shù)據(jù)也并非規(guī)整,這就需要對數(shù)據(jù)進行一定層級的分級分類和格式規(guī)范了缰儿。

比如用戶點擊行為畦粮,會生成相應的點擊日志,用戶的每次查詢會生成一個展示日志乖阵,與此同時會有一個并行的程序將歸并點擊日志與展示日志宣赔。

3. 推薦系統(tǒng)算法

有了前端展示后和后端數(shù)據(jù)之后,那么如何實現(xiàn)他倆的交互呢瞪浸,這中間需要一個連接的橋梁——推薦系統(tǒng)算法儒将。

推薦系統(tǒng)算法可以抽象為一個規(guī)則,只有把這個規(guī)則定義好对蒲,前端才知道哪些數(shù)據(jù)該展示并如何展示钩蚊,后端數(shù)據(jù)庫也知道哪些數(shù)據(jù)有價值贡翘。否則,如果將所有日志內容輸出砰逻,不僅會增大用戶信息檢索的困難鸣驱,系統(tǒng)也就失去了自身意義。

總的來說蝠咆,推薦系統(tǒng)的實質就是一個用戶行為特征與物品特征匹配的過程踊东。

用戶端特征包含用戶自身、用戶行為和用戶行為結果三部分刚操;物品特征包含標簽闸翅、內容(關鍵詞)等。

推薦結果均是基于用戶特征及物品特征原始數(shù)據(jù)赡茸,在不同維度(時間缎脾、多樣性、流行度等)上占卧,根據(jù)用戶需求賦予權重并進行處理(篩選、排序等)后的結果联喘。即遵循用戶—特征—物品過程华蜒。當推薦系統(tǒng)生成初始結果后,在通過過濾豁遭、排名算法生成最終推薦結果和推薦理由叭喜。

推薦引擎可抽象成一種特征,每種特征對應成一種推薦策略蓖谢,結合不同用戶需求捂蕴,調整每個具體特征上所賦予的權重,最終生成特征物品-特征映射{item:Userfeature}闪幽,Userfeature為多個特征權重相加后的最終值啥辨。

三、常用推薦系統(tǒng)算法

1. 常用系統(tǒng)原理介紹

我們從推薦系統(tǒng)具體要解決什么問題以及如何解決問題來剖析原理盯腌。

首先溉知,推薦系統(tǒng)要解決的最核心的兩個關鍵點是:如何發(fā)現(xiàn)用戶感興趣的物品和如何確定物品之間的關系。其次腕够,每個問題分別如何解決呢级乍?

1.1 如何發(fā)現(xiàn)用戶感興趣的物品

1.1.1 用戶主動告訴系統(tǒng)對哪些類型感興趣

用戶自行選定感興趣的關鍵詞標簽,系統(tǒng)將找到與此標簽匹配的物品帚湘。

1.1.2 通過分析用戶行為數(shù)據(jù)

利用用戶在平臺的歷史瀏覽記錄獲取能代表用戶的關鍵詞玫荣,或導入社交數(shù)據(jù),獲取用戶好友列表大诸,從而基于用戶好友喜愛物品生成推薦列表捅厂。

1.2 如何確定物品與物品間的關系——相似度

相似度計算原理:所有相似度的計算都是基于矩陣的運算材诽。

1.2.1 基于內容(關鍵詞/標簽)

大部分物品都會多維度特征,通過特征從而實現(xiàn)與用戶的期望得以匹配恒傻,常用的是通過物品內容關鍵詞或是給物品打標簽的形式來匹配脸侥。

1.2.2 協(xié)同過濾

協(xié)同過濾也是推薦系統(tǒng)中常用的算法,其分為兩種盈厘,基于用戶和基于物品睁枕。

那什么是基于用戶呢?

就是找到和你相似的一個小群體沸手,小群體里面喜歡的東西都是你喜歡的外遇,你獲得的推薦結果就是這個小群體喜愛的物品集合。

那什么基于物品呢契吉?

基于用戶興趣交集計算物品間的相似度跳仿,即喜歡物品i的用戶有多少也喜歡物品j,通常用來表示物品間的相似度捐晶,同時結合用戶歷史行為生成推薦列表菲语;用戶的歷史行為對物品間的相似性也具有一定的貢獻度。

這樣看來惑灵,基于物品的推薦系統(tǒng)山上,更加個性化同時也一定程度上反映了用戶的興趣傳承。

2. 如何實現(xiàn)更加精準的分類

僅僅通過用戶間興趣交集生成推列表往往是不夠的英支,在內容佩憾、標簽的分類以及人群之間的關系上,如何進行深度挖掘干花?下面幾種方法提供了一些優(yōu)化思路妄帘。

2.1 混合推薦

在實際的案例中,單個的推薦模型大多都無法滿足預期池凄,所以通常從系統(tǒng)抡驼、算法、結果修赞、處理流程上采用不同的混合策略婶恼。

例如基于內容增強協(xié)同過濾(The content-boosted collaborative filtering recommender),此算法融合了協(xié)同過濾和基于內容的算法思想柏副,和基于內容或協(xié)同過濾的單個模型相比勾邦,它預測能達到比較高的精度,同時它也能解決了數(shù)據(jù)稀疏和冷啟動問題割择。

2.2 隱語義模型

2.2.1 隱語義概念

類似于協(xié)同過濾中基于物品的方法眷篇;在每個具體分類中,以用戶行為(興趣)作為物品權重的分配依據(jù)荔泳。

2.2.2 與協(xié)同過濾不同之處(優(yōu)化點):

物品可以有多個分類維度蕉饼;基于用戶行為決定每個類中物品的權重(eg:如果某類用戶群體都對某一物品特別感興趣虐杯,在這類中這個物品的權重就非常大)

分類粒度更加細化;比如關于《深入理解OpenCV》這本書原來被劃分為【計算機】類昧港,細化之后可以分為【圖像處理】類擎椰;

2.3 文本精準匹配

為量化文本間的關聯(lián)度,引入一個概念——TF-idf创肥,通過比對搜索關鍵詞與物品庫單個物品的關鍵詞或標簽的相似性达舒,從而生成推薦列表。

TF-idf值越大叹侄,說明相關性越大巩搏,反之;這里對TF-idf公式原理做簡要說明加強理解:

計算公式:TF-idf = f(t,d) x idf(t,D)

TF:頻率趾代;搜索詞在特定文檔中出現(xiàn)的頻率:

Idf:搜索詞在其他文檔中出現(xiàn)的次數(shù):

在文檔搜索中贯底,不僅要考慮搜索關鍵詞在目標文檔出現(xiàn)的頻率,也要考慮關鍵詞在其他文檔出現(xiàn)的頻率撒强。

如果搜索詞是大眾詞語禽捆,那么搜索的結果完全不具備參考價值,比如搜索詞為the尿褪;在idf公式中睦擂,分子為所有文檔的個數(shù),分母為包含這個關鍵詞的文檔個數(shù)杖玲,如果是大眾詞語,則:idf=0淘正,TF-idf=0摆马,物品(關鍵詞)間沒有相關性。

2.4 利用社交網(wǎng)絡數(shù)據(jù)

社交網(wǎng)絡中包含大量的用戶數(shù)據(jù)鸿吆,能更好的反映用戶間的關系囤采,用戶關系通常有三種:

互為好友(Facebook)

單向關注(Twitter)

興趣小組模式(豆瓣小組)

利用社交網(wǎng)絡數(shù)據(jù)進行推薦通常都將用戶間的熟悉程度和興趣相似度作為最主要的兩個判別指標。

用戶間熟悉程度惩淳,即通過用戶共同好友數(shù)量計算蕉毯;興趣相似度,即通過兩個用戶喜愛物品的重合度進行衡量思犁。

弊端:用戶數(shù)據(jù)量巨大代虾,數(shù)據(jù)庫讀取消耗時間太長。

優(yōu)化方法:

減少數(shù)據(jù)量激蹲;

重構數(shù)據(jù)庫棉磨;

2.5 時間特征

在日常生活中,物品迭代速度非逞瑁快乘瓤,人們的近期行為通常比遠期行為更加符合目前自身興趣需求环形,因此在系統(tǒng)滿足精準性的情況下,需要考慮推薦系統(tǒng)的時效性衙傀,根據(jù)不同推薦內容賦予時間權重抬吟。

例如新聞與經(jīng)典書籍,新聞更新頻繁具有較高的時效性统抬,而經(jīng)典書籍例如紅樓夢火本,社會對它的需求已經(jīng)處于平穩(wěn),因此時效性不高蓄喇。

如何將時間權重賦予物品:

物品的生命周期:物品生命周期的長短決定了物品的時效性发侵。一個物品隨著流行度的增長,在線時長(一個物品在某天被用戶產(chǎn)生過行為)也隨之增加妆偏,斜率越大說明具有較低的時效性生命周期較長(如wikipedia)刃鳄,斜率越小說明具有較高的時效性生命周期較短(如nytimes)。所以物品生命周期越長钱骂,與時間相關性越低叔锐。

人的興趣愛好會隨著時間而改變,不同階段所感興趣的物品差異較大见秽,時間相隔越久愉烙,用戶對物品產(chǎn)生的行為權重越低,近期行為賦予較高權重解取。

除此之外步责,不同物品推薦的時間點也是需要考慮因素之一,比如用戶在工作時間禀苦,盡可能推送與工作相關的資訊或資料蔓肯,與工作內容不相關的信息做降權,下班時間再適當調整權重振乏。

但是同時也要考慮不同崗位工作狀態(tài)存在不一致的情況蔗包,具體推送情況可以通過每個用戶大量的行為數(shù)據(jù)來判斷。

2.6 環(huán)境特征

環(huán)境特征通郴塾剩可以與時間特征配合调限。用戶在不同的時間與地點的需求差異可能會很大甚至完全不同,或是在特定的時間與地點误澳,對某種信息的需求會急速上升耻矮。

例如用戶在紐約旅游,關注點會大量集中在紐約的衣食住行脓匿,但如果這個時候推薦系統(tǒng)推薦的信息都是倫敦的淘钟,那么結果可想而知。

四、 實戰(zhàn)篇——如何維護用戶數(shù)據(jù)

當用戶數(shù)據(jù)量太大米母,例如引入社交網(wǎng)絡或是新聞實施推薦勾扭,此時如果每次更新都讀取一次數(shù)據(jù)庫,那么效率會大幅下降導致用戶體驗不佳铁瞒。

目前常用的有兩種方案:

1. 消息隊列

為每個用戶維護一個消息隊列妙色,里面包含用戶的基本屬性(如年齡、性別慧耍、職業(yè)等)身辨、喜愛的物品、朋友圈等芍碧。每當這個用戶產(chǎn)生新的動作(搜索)煌珊,系統(tǒng)將根據(jù)特定的規(guī)則,賦予消息隊列中每部分數(shù)據(jù)的權重泌豆。最終獲得推薦列表定庵。

這里科普一下什么是消息隊列。顧名思義踪危,就是把傳輸?shù)南⒎旁陉犃欣锸哒悖犃校梢猿橄鬄橐粋€容器贞远,所以消息隊列畴博,就是一個用作保存?zhèn)鬏斨械南⑷萜鳌?/p>

在這個基礎上,這個容器可以跨平臺蓝仲、語言提供可靠的俱病、持久的異步通訊機制。

可靠是指:有且只有一次袱结;有序庶艾。

異步是指:發(fā)送方和接收方可以不同時在線。

另外擎勘,通過消息隊列還能實現(xiàn)系統(tǒng)解耦,這使得各個系統(tǒng)間可以相對獨立運行颖榜。

2. 建立喜好詞關鍵表

在數(shù)據(jù)庫中棚饵,我們?yōu)槊總€用戶維護一個map,也就是建立“key-value”鍵值對掩完,key對應用戶喜好詞噪漾,value對應喜好程度。

每個新聞會有對應的關鍵詞和Tf-idf值且蓬。當用戶瀏覽一篇新聞時欣硼,系統(tǒng)會將這篇新聞的關鍵詞和Tf-idf值插入到用戶喜好此列表里。如果用戶瀏覽了包含與原有相同關鍵詞的新聞恶阴,Tf-idf值會自動相加并更新原有值诈胜。同時考慮數(shù)據(jù)庫存儲問題豹障,根據(jù)具體需求為關鍵詞量設定一個上限。

當然焦匈,除了存儲問題血公,這里還有一個新問題:用戶興趣是否會變化呢?

比如在某某手機的發(fā)布會前或是世界杯缓熟,用戶只在這段時間集中關注某一話題累魔,但之后可能完全不在意了,那么在喜好詞列表里够滑,如何體現(xiàn)用戶興趣遷移呢垦写?

這里引入一個新概念——衰減機制。每一個Tf-idf值乘上一個衰減因子彰触, 同時在喜好列表中設定一個閾值L梯投,當Tf-idf減少到小于L的時候,關鍵詞直接刪除渴析。

五晚伙、未來思考

一個人在群體中的重要性和影響力以及人與人之間一直是難以通過幾個參數(shù)或幾個模型就能判別的,它們均是一個不規(guī)則的非線性模型俭茧。

平臺數(shù)據(jù)對于深度挖掘人與人之間的關系來說其實是微不足道的咆疗,在現(xiàn)實生活中,人與人之間的關系本來就難以定論,存在著表層關系與深層關系柳刮。

表層關系具體是指社會賦予你們的關系掰烟,比如同事、上下屬迅皇、同學等,深層關系則是指你們除了是同事以外衙熔,可能私下里是有著相同的興趣愛好的朋友登颓。

表層關系通常可以用數(shù)據(jù)挖掘定義红氯,比如兩個人的通話記錄(這里不是指通話內容框咙,而是打電話的時間、時長等)痢甘、位置信息等喇嘱,但是外部信息數(shù)據(jù)通常會根據(jù)個人習慣而產(chǎn)生誤差。

其實塞栅,對推薦系統(tǒng)的理解等價于對人性的理解者铜;挖掘人與人的關系、人與物的關系、物與物的關系作烟。

除了人們主動表達的需求愉粤,我認為最重要的,其實是人性的欲望俗壹。所謂道生一科汗,一生二,三生萬物绷雏,萬物由道生出头滔,而欲望乃道的其中一個產(chǎn)物。所以欲望通常不會平白無故的產(chǎn)生涎显,欲望與欲望之間也不會毫無關聯(lián)坤检,個人的成長經(jīng)歷及生活環(huán)境造就了一個人的性格,讓他養(yǎng)成了一些習慣期吓。

習慣通常是有形無意識表達早歇,而欲望通常是無意識無形表達。我在想讨勤,是否把習慣與欲望結合起來箭跳,是否就是對人性的建模。大數(shù)據(jù)時代潭千,通過大量的用戶成長數(shù)據(jù)與環(huán)境數(shù)據(jù)或許可以適當挖掘其中規(guī)則谱姓,但更加深入的,其實是要推導因果的關系刨晴。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末屉来,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子狈癞,更是在濱河造成了極大的恐慌茄靠,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蝶桶,死亡現(xiàn)場離奇詭異慨绳,居然都是意外死亡,警方通過查閱死者的電腦和手機真竖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門儡蔓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人疼邀,你說我怎么就攤上這事≌傩猓” “怎么了旁振?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我拐袜,道長吉嚣,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任蹬铺,我火速辦了婚禮尝哆,結果婚禮上,老公的妹妹穿的比我還像新娘甜攀。我一直安慰自己秋泄,他們只是感情好,可當我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布规阀。 她就那樣靜靜地躺著恒序,像睡著了一般。 火紅的嫁衣襯著肌膚如雪谁撼。 梳的紋絲不亂的頭發(fā)上歧胁,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天,我揣著相機與錄音厉碟,去河邊找鬼喊巍。 笑死,一個胖子當著我的面吹牛箍鼓,可吹牛的內容都是我干的崭参。 我是一名探鬼主播,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼袄秩,長吁一口氣:“原來是場噩夢啊……” “哼阵翎!你這毒婦竟也來了?” 一聲冷哼從身側響起之剧,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤郭卫,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后背稼,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體贰军,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年蟹肘,在試婚紗的時候發(fā)現(xiàn)自己被綠了词疼。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡帘腹,死狀恐怖贰盗,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情阳欲,我是刑警寧澤舵盈,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布陋率,位于F島的核電站,受9級特大地震影響秽晚,放射性物質發(fā)生泄漏瓦糟。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一赴蝇、第九天 我趴在偏房一處隱蔽的房頂上張望菩浙。 院中可真熱鬧,春花似錦句伶、人聲如沸劲蜻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽斋竞。三九已至,卻和暖如春秃殉,著一層夾襖步出監(jiān)牢的瞬間坝初,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工钾军, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留鳄袍,地道東北人。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓吏恭,卻偏偏與公主長得像拗小,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子樱哼,可洞房花燭夜當晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內容