5.皮爾遜距離分數

皮爾遜距離分數的本質就是兩個樣本之間的相關性係數,即相關性矩陣輔對角線上的元素。該分數介於-1到1之間,正表示正相關,負表示反相關,0表示不相關,絕對值越大表示相關性越強,越小表示相關性越弱。
/ 1 B \\
\\ B 1 /
代碼:ps.py
6.根據皮爾遜距離分數尋找相似用戶
用戶2 用戶3 用戶4
用戶1 0.1 -0.15 0.4
用戶1的相似用戶排列:用戶4>用戶2>用戶3
代碼:sim.py
7.根據相似用戶的評分和相似度生成推薦列表
用所有相似用戶的評分做關於相似度的加權平均數作為推薦依據,該平均數越大越優先推薦。
(相似用戶1的評分 x 相似用戶1的相似度 + 相似用戶2的評分 x 相似用戶2的相似度 + ...) / (相似用戶1的相似度 + 相似用戶2的相似度 + ...) -> 推薦指數
根據每部被推薦電影的推薦指數做降序排列。
代碼:rcm.py
二十五、自然語言處理(NLP)
聲音-------->文本------------->語義------->文本------->聲音
語音識別 自然語言處理 邏輯處理 語音合成
自然語言工具包:nltk
1.標記解析(分詞)
Hello, world !
代碼:tkn.py
2.詞幹提取
plays \\
player > play
playing /
代碼:stm.py
3.詞形還原
名字:複數->單數
動詞:分詞->原型
代碼:lmm.py
4.文本數字化
1)詞典:待處理的所有文檔中不同單詞的並集。
doc1: hello world
doc2: world population day
doc3: this world is beautiful
doc4: today is father day
hello world population day this is beautiful today father
2)詞頻(TF):詞典中每個單詞在特定文檔中出現的次數與該文檔總單詞數之比,即詞數/總詞數
doc1: 1/2 1/2 0 0 0 0 0 0 0
doc2: 0 1/3 1/3 1/3 0 0 0 0 0
doc3: 0 1/4 0 0 1/4 1/4 1/4 0 0
doc4: 0 0 0 1/4 0 1/4 0 1/4 1/4
3)逆文檔頻率(IDF):總文檔數/包含某個特定單詞的文檔數
4/1 4/3 4/1 4/2 4/1 4/2 4/1 4/1 4/1
4)詞頻逆文檔頻率(TF-IDF):詞典中每個單詞的權重,用每個單詞的詞頻乘以其逆文檔頻率,多得到矩陣被稱為詞袋矩陣。詞袋矩陣中的一行對應一個文檔,表示一個樣本,一列對應一個單詞,表示一個特徵,整個詞袋矩陣就是樣本矩陣。
代碼:bow.py
5.文本分類
詞典:單詞1 單詞2 單詞3 ... 單詞n 類別
文本1 a1 a2 a3 ... an 0 -> 銷售
文本2 b1 b2 b3 ... bn 1 -> 摩托車
文本3 c1 c2 c3 ... cn 2 -> 棒球
...
文本x x1 x2 x3 ... xn ?
代碼:tc.py
1 2 3 4 5 6
3 0 1 2 0 1 -> 7
6.性別識別
利用不同性別人的姓名所包含的特殊詞尾字符,訓練分類器,以此區分性別。
代碼:gndr.py
7.情感分析
代碼:sent.py
8.主題(核心詞)抽取
無監督學習模式中的特徵選擇。
利用隱含狄利克雷分佈模型,針對自然語言的概率模式所進行的定製化,選擇樣本中最具代表性的成分,並對其語義特徵的重要程度進行排名。
代碼:topic.py
二十六、音頻識別
1.音頻信號
空氣的震動->電壓/電流的震動->數字採樣->音頻文件
頻率決定聲音的高低和音色 \\ 聲場強度隨時間變化的函數
響度決定聲音的大小 /
語音識別的目的是要把聲音識別為文字,背景噪聲和嗓音的差別不是識別的目標,相反音節的發音更具標誌性,因此,通過傅里葉變換所得到頻率譜線更有價值,因其可以通過能量高低反映出噪聲和信源的差異,用它作為音頻的特徵值更有利於數學模型的建立。
代碼:sig.py
2.聲音合成
通過軟件代碼生成音頻採樣,將其保存為文件,或交由回放設備,即可合成聲音。
代碼:music.py
3.頻域特徵
梅爾頻率倒譜系數(MFCC)
音頻片段->矩陣,一行一個樣本,一列一個特徵。
代碼:mfcc.py
4.語音識別
代碼:spch.py
二十七、圖像識別
1.OpenCV,機器視覺工具包
代碼:basic.py
2.邊緣識別
代碼:edge.py
3.直方均衡
代碼:eq.py
閱讀更多 小悅 的文章