【BitTiger讀書會(huì)】·第十四期《FundamentalsofDeepLearning》(深度學(xué)習(xí)基礎(chǔ))

【BitTiger讀書會(huì)簡(jiǎn)介】

BitTiger讀書會(huì),以書會(huì)友。以報(bào)告方式,加強(qiáng)組織表達(dá)力听怕;以討論方式,激蕩思考判斷力虑绵,期能擴(kuò)充知識(shí)領(lǐng)域尿瞭,養(yǎng)成讀書習(xí)慣。

每周一本好書翅睛,一年閱讀50本書声搁,集眾智,挑好書捕发,留精華內(nèi)容疏旨,創(chuàng)優(yōu)質(zhì)社群。

BitTiger讀書會(huì)扎酷,歡迎您的加入檐涝!

在上一期的活動(dòng)中,盧開顏和我們一起分享了《像外行一樣思考法挨,像專家一樣實(shí)踐——科研成功之道》這本書谁榜。在即將到來(lái)的第十四期中,我們將與Li Yuhan一起讀《Fundamentals of Deep Learning 》(深度學(xué)習(xí)基礎(chǔ))這本書凡纳,感受深度學(xué)習(xí)的魅力窃植。


【分享書籍】

圖片發(fā)自簡(jiǎn)書App

【書籍介紹】

隨著2000年以來(lái)神經(jīng)網(wǎng)絡(luò)的重新振作,深度學(xué)習(xí)成為一個(gè)非臣雒樱活躍的研究領(lǐng)域巷怜,并且為現(xiàn)代機(jī)器學(xué)習(xí)鋪平了道路。本書實(shí)用性很強(qiáng)暴氏,作者提供了很多實(shí)例以及清晰的解釋延塑,以幫助讀者領(lǐng)會(huì)這個(gè)復(fù)雜領(lǐng)域中的基本概念。


【嘉賓介紹】

Li Yuhan答渔, 現(xiàn)就職于某跨國(guó)投資銀行任軟件工程師关带。


【電子書下載】

FundamentalofDeepLearningNotes


【加入讀書會(huì)】

獲取BitTiger讀書會(huì)系列讀書分享信息,請(qǐng)?zhí)砑游⑿臝D: saraincs研儒,備注“讀書”加入BitTiger讀書會(huì)活動(dòng)群

圖片發(fā)自簡(jiǎn)書App

【分享文稿】

Fundamentals of Deep Learning

作者介紹:

Nikhil Buduma: confounder and chief scientist at Remedy. Attended MIT

Nick Locascio: deep learning consultant for Fortune-500 corps. Attended MIT

本書簡(jiǎn)介:

隨著2000年以來(lái)神經(jīng)網(wǎng)絡(luò)的重新振作豫缨,深度學(xué)習(xí)成為一個(gè)非常活躍的研究領(lǐng)域端朵,并且為現(xiàn)代機(jī)器學(xué)習(xí)鋪平了道路好芭。本書實(shí)用性很強(qiáng),作者提供了很多實(shí)例以及清晰的解釋冲呢,以幫助讀者領(lǐng)會(huì)這個(gè)復(fù)雜領(lǐng)域中的基本概念舍败。

本書大概內(nèi)容:

介紹機(jī)器學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的基本概念。

學(xué)習(xí)如何訓(xùn)練feed-forward神經(jīng)網(wǎng)絡(luò)

運(yùn)用TensorFlow建立一個(gè)神經(jīng)網(wǎng)絡(luò)

建立神經(jīng)網(wǎng)絡(luò)來(lái)分析復(fù)雜圖像

運(yùn)用自編碼器

對(duì)語(yǔ)言的序列分析

深度強(qiáng)化學(xué)習(xí)的基本知識(shí)

Prerequisites:

基本的積分敬拓,矩陣和Python 編程知識(shí)邻薯,線性代數(shù)

代碼:https://github.com/darksigma/Fundamentals-of-Deep-Learning-Book


第一章 神經(jīng)網(wǎng)絡(luò)

傳統(tǒng)計(jì)算機(jī)在行的兩件事:1. 數(shù)學(xué)計(jì)算 ; 2. 遵循指令

但是如何讓計(jì)算機(jī)識(shí)別手寫數(shù)字乘凸?

如何讓計(jì)算機(jī)識(shí)別下圖是6還是0厕诡?

很多類似的識(shí)別問(wèn)題都?xì)w類于object recognition, , 語(yǔ)音識(shí)別,自動(dòng)翻譯等等营勤。

回顧一下人類學(xué)習(xí)的歷史: 我們小時(shí)候認(rèn)識(shí)小狗并不是通過(guò)去測(cè)量小狗的鼻子或外形來(lái)確定這個(gè)物體是小狗灵嫌,而是通過(guò)很多實(shí)例并不斷被糾正來(lái)最終認(rèn)識(shí)小狗。我們的大腦建立一個(gè)模型葛作,這個(gè)模型在我們成長(zhǎng)中不斷take我們感官的輸入寿羞,然后做猜測(cè);如果猜測(cè)被父母證實(shí)了赂蠢,那么模型被加強(qiáng)绪穆。

Deep Learning是machine learning的一個(gè)subset。 Machine learning里虱岂,我們不給計(jì)算機(jī)大量的rules來(lái)識(shí)別玖院,而是通過(guò)給一個(gè)可以評(píng)估實(shí)例的模型,遇到錯(cuò)誤判斷的時(shí)候用一個(gè)small set of 指令去修改模型第岖, 然后經(jīng)過(guò)時(shí)間司恳,這個(gè)模型能夠精準(zhǔn)的解決問(wèn)題。

如果用公式來(lái)表達(dá):

a function h (x, θ) x: 向量

問(wèn)題來(lái)了:為什么deep learning或者machine learning里我們要用到矩陣绍傲,線性代數(shù)扔傅,數(shù)理統(tǒng)計(jì)這些?烫饼?尤其是矩陣運(yùn)算猎塞?為什么?杠纵?

概念:linear perceptron

神經(jīng)元:一粒米大小的腦組織包含超過(guò)10000個(gè)神經(jīng)元荠耽。

生物神經(jīng)元結(jié)構(gòu)圖:(科學(xué)家們由此得到機(jī)器學(xué)習(xí)的啟發(fā))

1943年提出的人工神經(jīng)網(wǎng)絡(luò)模型:

vector x = [x1 x2 … xn] : 輸入

w = [w1 w2 … wn]: 加權(quán)值

y = f (x?w)+ b , b: 偏差

思路重點(diǎn):神經(jīng)元的活動(dòng)是一系列矩陣操作。

Feed-Forward 神經(jīng)元網(wǎng)絡(luò)

特點(diǎn):

同層之間沒(méi)有神經(jīng)元鏈接比藻。低層向高層鏈接铝量。每層不一定要有相同數(shù)目的神經(jīng)元倘屹。輸入和輸出都用矢量來(lái)表示。Hidden layer常常比輸入層的神經(jīng)元要少慢叨。

第二章 訓(xùn)練Feed-Forward神經(jīng)網(wǎng)絡(luò)

問(wèn)題: 我們?nèi)绾蝸?lái)確定參數(shù)纽匙,以及參數(shù)的加權(quán)值?

回答:通過(guò)“訓(xùn)練” (training)

給神經(jīng)網(wǎng)絡(luò)大量的訓(xùn)練實(shí)例拍谐,循環(huán)性的修改加權(quán)值以最小化錯(cuò)誤烛缔。

例子:

任務(wù):通過(guò)一個(gè)模型確定一頓飯要花多少錢。

輸入變量:每頓飯包括漢堡轩拨,薯?xiàng)l和蘇打水践瓷,每頓飯的總價(jià)格

目標(biāo):我們希望給模型輸入足夠的例子后,模型能預(yù)測(cè)每頓飯的價(jià)格亡蓉。

如何評(píng)價(jià)模型:

t(i): 真實(shí)的答案晕翠,y(i): 神經(jīng)網(wǎng)絡(luò)產(chǎn)生的值,E越小越好砍濒,當(dāng)E=0的時(shí)候崖面,模型產(chǎn)生精準(zhǔn)的預(yù)測(cè)。

梯度下降 (Gradient Descent)

模型所需的數(shù)據(jù):

第三章 神經(jīng)網(wǎng)絡(luò)在TensorFlow里的運(yùn)用

什么是TensorFlow?

Google 2015年發(fā)布的Python深度學(xué)習(xí)開源庫(kù)梯影。

TensorFlow與其他開源庫(kù)的比較

Theano: University of Montreal. 需要搭建特殊的深度學(xué)習(xí)架構(gòu)巫员。比較復(fù)雜。主要面向research

Torch: Facebook AI Research, written in Lua甲棍。語(yǔ)言不夠popular简识,對(duì)于初學(xué)者來(lái)說(shuō)有一定難度。

TensorFlow:Python感猛, interface干凈簡(jiǎn)潔易懂七扰,面向production。

接下來(lái)講如何安裝TensorFlow陪白。

裝完之后颈走,建立TensorFlow的變量。這些變量用于建立模型咱士。這些變量是in-memory buffers, 包含tensors, 必須在圖第一次調(diào)用之前顯式初始化立由。每次迭代后我們可以使用梯度方法去修改變量。我們可以把變量的值存到disk上以便以后使用序厉。

例子:

weights = tf.Variable(tf.random_normal([300, 200], stddev=0.5),

name=“weights”)

tf.random_normal: 用正態(tài)分布初始化一個(gè)tensor

stddev=0.5: 標(biāo)準(zhǔn)偏差0.5

300X200:連接1層300 個(gè)神經(jīng)元到1層200個(gè)神經(jīng)元

Name=”weights”: unique identifier

建議一個(gè)不可訓(xùn)練的變量:

weights = tf.Variable(tf.random_normal([300, 200], stddev=0.5),

name=“weights”, trainable=False)

初始化一個(gè)變量的3個(gè)操作:

tf.initialize_all_variables(),會(huì)觸發(fā)所有 tf.assign 的操作.

TensorBoard:圖像化锐膜,可用于debugging

本章總結(jié):主要介紹了如何安裝TensorFlow, 舉例說(shuō)明了如果建立變量模型,以及multiple layers. 還介紹了如果enable GPU弛房, CPU計(jì)算道盏。

第四章 梯度下降

全局最小點(diǎn)

局部最小點(diǎn)

AdaGrad 算法:積累歷史梯度。 在凸優(yōu)化背景中,AdaGrad算法具有一些令人滿意的理論性質(zhì)荷逞。

RMSProp算法:修改AdaGrad以在非凸設(shè)定下效果更好媒咳,改變梯度積累為指數(shù)加權(quán)的移動(dòng)平均。目前是深度學(xué)習(xí)從業(yè)者經(jīng)常采用的優(yōu)化方法之一种远。

Adam:另一種學(xué)習(xí)率自適應(yīng)優(yōu)化算法涩澡。可看作RMSProp和動(dòng)量結(jié)合的變種院促。

第五章 卷積神經(jīng)網(wǎng)絡(luò)

如何讓計(jì)算機(jī)識(shí)別一張人臉?傳統(tǒng)方法靠像素識(shí)別行不通斧抱。

ImageNet比賽中常拓,Alex Krizhevsky 靠卷積神經(jīng)網(wǎng)絡(luò)取得了優(yōu)異的成績(jī)。

卷積網(wǎng)絡(luò)是一種專門用來(lái)處理具有類似網(wǎng)絡(luò)結(jié)構(gòu)的數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)辉浦。例如時(shí)間序列數(shù)據(jù)和圖像數(shù)據(jù)弄抬。卷積是一種特殊的線性運(yùn)算。

卷積運(yùn)算通過(guò)三個(gè)重要的思想來(lái)幫助改進(jìn)機(jī)器學(xué)習(xí)系統(tǒng): 稀疏交互宪郊,參數(shù)共享掂恕,等變表示。

稀疏交互:例如處理圖像時(shí)弛槐,輸入的圖像可能包含成千上萬(wàn)個(gè)像素點(diǎn)懊亡,但是我們可以通過(guò)只占用幾十到上百個(gè)像素點(diǎn)的kernel來(lái)檢測(cè)一些小的有意思的特征,例如圖像的邊緣乎串。

參數(shù)共享:在一個(gè)模型的多個(gè)函數(shù)中使用相同的參數(shù)店枣。

本章末,作者舉了一個(gè)實(shí)例:對(duì)一個(gè)32X32像素的小狗圖像運(yùn)用卷積網(wǎng)絡(luò)來(lái)做識(shí)別叹誉。值得自己試試鸯两。

第六章 嵌入的表示學(xué)習(xí)

表示學(xué)習(xí):有很多任務(wù),我們很難知道提取哪些特征长豁。解決這個(gè)問(wèn)題的途徑之一就是使用機(jī)器學(xué)習(xí)來(lái)發(fā)掘表示本身钧唐,而不僅僅把表示映射到輸出。表示學(xué)習(xí)算法只需要幾分鐘就可以為簡(jiǎn)單的任務(wù)發(fā)現(xiàn)一個(gè)很好的特征集匠襟。手動(dòng)為一個(gè)復(fù)雜的任務(wù)設(shè)計(jì)特征需要耗費(fèi)大量的人工時(shí)間和精力钝侠。

表示學(xué)習(xí)算法的典型例子是自編碼器。自編碼器是由一個(gè)編碼器函數(shù)個(gè)一個(gè)解碼器函數(shù)組合而成酸舍。編碼器函數(shù)將輸入數(shù)據(jù)轉(zhuǎn)換成一種不同的表示机错,解碼函數(shù)將這個(gè)新的表示轉(zhuǎn)換到原來(lái)的形式。

一個(gè)好的自編碼器:輸入數(shù)據(jù)結(jié)果編碼器和解碼器后能保留盡可能多的信息父腕,同時(shí)希望新的表示有各種好的特性弱匪。

降噪自動(dòng)編碼器:接受損壞數(shù)據(jù)作為輸入,并訓(xùn)練來(lái)預(yù)測(cè)原始末被損壞數(shù)據(jù)作為輸出的自編碼器。

傳統(tǒng)的自編碼器最小化以下目標(biāo):

降噪自編碼器最小化 是被某種噪聲損壞的x 副本萧诫。因此降噪自編碼器必須撤銷這些損壞斥难,而不是簡(jiǎn)單地復(fù)制輸入。

可解釋性:機(jī)器學(xué)習(xí)模型的一個(gè)重要特性

本章末用word2Vec Framework 結(jié)合TensorFlow舉例說(shuō)明了Skip-Gram模型帘饶。

第七章 序列分析模型

RNN: Recurrent neural network 循環(huán)神經(jīng)網(wǎng)絡(luò)哑诊,是一類用于處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)。循環(huán)layer包含循環(huán)鏈接及刻,也就是說(shuō)镀裤,神經(jīng)元之間的鏈接在同一layer里。

循壞神經(jīng)網(wǎng)絡(luò)中一些重要的設(shè)計(jì)模式:

每個(gè)時(shí)間步都有輸出缴饭,并且隱藏單元之間有循環(huán)鏈接的循環(huán)網(wǎng)絡(luò)

每個(gè)時(shí)間步都產(chǎn)生一個(gè)輸出暑劝,只有當(dāng)前時(shí)刻的輸出到下個(gè)時(shí)刻的隱藏單元之間有循環(huán)鏈接的循環(huán)網(wǎng)絡(luò)

隱藏單元之間存在循環(huán)鏈接,但讀取整個(gè)序列后產(chǎn)生單個(gè)輸出的循環(huán)網(wǎng)絡(luò)

第八章 記憶神經(jīng)網(wǎng)絡(luò)

神經(jīng)網(wǎng)絡(luò)圖靈機(jī): Neural Turing Machine, or NTM, 2014 年Graves提出一種新的神經(jīng)架構(gòu)颗搂,包含了controller neural network (通常是RNN)和外部存儲(chǔ)器担猛,相當(dāng)于人腦工作記憶。下圖顯示了當(dāng)前的計(jì)算機(jī)結(jié)構(gòu)和NTM的架構(gòu)對(duì)比丢氢。左邊是計(jì)算機(jī)架構(gòu)傅联,右邊是NTM。

DNC: Differentiable neural computer, 改善NTM疚察。 與NTM相似蒸走,DNC包括一個(gè)controller,還有外部存儲(chǔ)貌嫡。 外部存儲(chǔ)包括N words of size W, M=N x W载碌。

第九章 深度強(qiáng)化學(xué)習(xí)

DQN:Deep Q-Network 是第一個(gè)large-scale 成功的加強(qiáng)學(xué)習(xí)的application.

強(qiáng)化學(xué)習(xí)的構(gòu)架:包括一個(gè)環(huán)境,一個(gè)actor衅枫, 一個(gè)反饋信號(hào)嫁艇。Actor選擇在環(huán)境中take an action, 如何選擇action – 根據(jù)policy。

馬爾可夫決策過(guò)程 (Markov Decision Processes MDP)

S: 有限的可能狀態(tài)集合

A: 有限的actions集合

P (r, s|′ s, a):狀態(tài)轉(zhuǎn)移方程

R:反饋函數(shù)

例子:藍(lán)色圓圈:環(huán)境中的狀態(tài)弦撩;紅色方塊:actions步咪。藍(lán)線:狀態(tài)轉(zhuǎn)移。藍(lán)線上的數(shù)字:轉(zhuǎn)移的概率益楼。綠線數(shù)字: reward猾漫。

Deep Recurrent Q-Networks (DRQN)

Asynchronous advantage actor-critic (A3C): 2016年提出的對(duì)深度強(qiáng)化學(xué)習(xí)的新的方法。

UNsupervised REinforcement and Auxiliary Learning (UNREAL): 對(duì)A3C 的一個(gè)改進(jìn)感凤。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末悯周,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子陪竿,更是在濱河造成了極大的恐慌禽翼,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異闰挡,居然都是意外死亡锐墙,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門长酗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)溪北,“玉大人,你說(shuō)我怎么就攤上這事夺脾≈Γ” “怎么了?”我有些...
    開封第一講書人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵咧叭,是天一觀的道長(zhǎng)蚀乔。 經(jīng)常有香客問(wèn)我,道長(zhǎng)佳簸,這世上最難降的妖魔是什么乙墙? 我笑而不...
    開封第一講書人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任颖变,我火速辦了婚禮生均,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘腥刹。我一直安慰自己马胧,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開白布衔峰。 她就那樣靜靜地躺著佩脊,像睡著了一般。 火紅的嫁衣襯著肌膚如雪垫卤。 梳的紋絲不亂的頭發(fā)上威彰,一...
    開封第一講書人閱讀 51,624評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音穴肘,去河邊找鬼歇盼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛评抚,可吹牛的內(nèi)容都是我干的豹缀。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼慨代,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼邢笙!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起侍匙,我...
    開封第一講書人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤氮惯,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體筐骇,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡债鸡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了铛纬。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片厌均。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖告唆,靈堂內(nèi)的尸體忽然破棺而出棺弊,到底是詐尸還是另有隱情,我是刑警寧澤擒悬,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布模她,位于F島的核電站,受9級(jí)特大地震影響懂牧,放射性物質(zhì)發(fā)生泄漏侈净。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一僧凤、第九天 我趴在偏房一處隱蔽的房頂上張望畜侦。 院中可真熱鬧,春花似錦躯保、人聲如沸旋膳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)验懊。三九已至,卻和暖如春尸变,著一層夾襖步出監(jiān)牢的瞬間义图,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工召烂, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留碱工,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓骑晶,卻偏偏與公主長(zhǎng)得像痛垛,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子桶蛔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 機(jī)器學(xué)習(xí)(Machine Learning)&深度學(xué)習(xí)(Deep Learning)資料(Chapter 1) 注...
    Albert陳凱閱讀 22,254評(píng)論 9 476
  • 回顧2017 有過(guò)偏執(zhí)匙头,有過(guò)自負(fù) 有過(guò)幼稚,有過(guò)迷茫 歷經(jīng)一些事情后仔雷,心懷感恩 展望2018 務(wù)實(shí)(接地氣) 更了...
    噠噠luada閱讀 179評(píng)論 0 0
  • 冬日暖陽(yáng)里的輕歌蔓延蹂析,扶著黑色冷峻的移動(dòng)桌舔示,手指在鍵盤上移動(dòng),忽覺(jué)這時(shí)光的奢侈电抚。連日來(lái)的焦慮和徒勞無(wú)功的奔波惕稻,卸下...
    兩忘生閱讀 350評(píng)論 0 0
  • 如果你的心是柔軟的 就能感受到風(fēng)吹拂在林間的溫柔 能看到水面上的漣漪在悠悠波動(dòng) 如果你的心是柔軟的 一定想抹平母親...
    弓文銳閱讀 170評(píng)論 0 3
  • 蕭璇的室友九尚失戀俺祠,于是,拽著蕭璇去公園湖邊喝酒借帘。蕭璇是那種一喝醉酒就特別安靜的人蜘渣,于是,抱著酒瓶把頭搭在九尚...
    若珩閱讀 448評(píng)論 1 0