導航:首頁 > 凈水問答 > 協同過濾准確率

協同過濾准確率

發布時間:2021-12-09 11:21:36

❶ 基於用戶的的協同過濾演算法怎樣算準確率

協同過濾(Collaborative Filtering)的基本概念就是把這種推薦方式變成自動化的流程

協同過濾主要是以屬性或內興趣相近的用戶經驗容與建議作為提供個性化推薦的基礎。透過協同過濾,有助於搜集具有類似偏好或屬性的用戶,並將其意見提供給同一集群中的用戶作為參考,以滿足人們通常在決策之前參考他人意見的心態。

本人認為,協同過濾技術應包括如下幾方面:(1)一種比對和搜集每個用戶興趣偏好的過程;(2)它需要許多用戶的信息去預測個人的興趣偏好;(3)通過對用戶之間興趣偏好相關程度的統計去發展建議那些有相同興趣偏好的用戶。

❷ 推薦系統的准確率召回率f值 在多少

在信息檢索、統計分類、識別、預測、翻譯等領域,兩個最基本指標是准確率和召回率,用來評價結果的質量。准確率(Precision),又稱「精度」、「正確率」、「查准率」,表示在檢索到的所有文檔中,檢索到的相關文檔所佔的比例。召回率(Recall),又稱「查全率」,表示在所有相關文檔中,檢索到的相關文檔所佔的比率。兩者的公式為:准確率=檢索到的相關文檔數量/檢索到的所有文檔總數召回率=檢索到的相關文檔數量/系統中所有相關文檔的總數圖示如下:舉例來說:一個資料庫中有500個文檔,其中有50個文檔符合定義的問題。系統檢索到75個文檔,其中只有45個文檔符合定義的問題。准確率=45/75=60%召回率=45/50=90%若將所有文檔都檢索到,這些指標有何變化:准確率=50/500=10%召回率=50/50=100%可見,准確率和召回率是相互影響的,理想情況下肯定是兩者都高,但是一般情況下准確率高,召回率就低;召回率高,准確率就低;如果兩者都低,那肯定是什麼環節有問題了。比如,在檢索系統中,如果希望提高召回率,即希望的相關文檔被檢索到,就要放寬「檢索策略」,便會在檢索中伴隨出現一些不相關的結果,從而影響到准確率。如果希望提高准確率,即希望去除檢索結果中的不相關文檔時,就需要嚴格「檢索策略」,便會使一些相關文檔不能被檢索到,從而影響到召回率。針對不同目的,如果是做搜索,那就是優先提高召回率,在保證召回率的情況下,提升准確率;如果做疾病監測、反垃圾,則是優先提高准確率,保准確率的條件下,提升召回率。那麼,在兩者都要求高的情況下,如何綜合衡量准確率和召回率呢?一般使用F值。F-Measure是准確率(P)和召回率(R)的加權調和平均。公式為:當參數α=1時,就是最常見的F1,即可見F1綜合了P和R的結果,可用於綜合評價實驗結果的質量。

❸ 協同過濾怎麼計算召回率 准確率

協同過濾(Collaborative Filtering)的基本概念就是把這種推薦方式變成自動化的流程

協同過濾主要是以版屬性或興趣相近的用權戶經驗與建議作為提供個性化推薦的基礎。透過協同過濾,有助於搜集具有類似偏好或屬性的用戶,並將其意見提供給同一集群中的用戶作為參考,以滿足人們通常在決策之前參考他人意見的心態。

本人認為,協同過濾技術應包括如下幾方面:(1)一種比對和搜集每個用戶興趣偏好的過程;(2)它需要許多用戶的信息去預測個人的興趣偏好;(3)通過對用戶之間興趣偏好相關程度的統計去發展建議那些有相同興趣偏好的用戶。

❹ 推薦系統為什麼要分測試集和訓練集

在信息檢索、統計分類、識別、預測、翻譯等領域,兩個最基本指標是准確率和召回率,用來評價結果的質量。
准確率(Precision),又稱「精度」、「正確率」、「查准率」,表示在檢索到的所有文檔中,檢索到的相關文檔所佔的比例。
召回率(Recall),又稱「查全率」,表示在所有相關文檔中,檢索到的相關文檔所佔的比率。
兩者的公式為:
准確率 = 檢索到的相關文檔數量 / 檢索到的所有文檔總數
召回率 = 檢索到的相關文檔數量 / 系統中所有相關文檔的總數
圖示如下:

舉例來說:一個資料庫中有500個文檔,其中有50個文檔符合定義的問題。系統檢索到75個文檔,其中只有45個文檔符合定義的問題。
准確率 = 45 / 75 = 60%
召回率 = 45 / 50 = 90%
若將所有文檔都檢索到,這些指標有何變化:
准確率 = 50 / 500 = 10%
召回率 = 50 / 50 = 100%
可見,准確率和召回率是相互影響的,理想情況下肯定是兩者都高,但是一般情況下准確率高,召回率就低;召回率高,准確率就低;如果兩者都低,那肯定是什麼環節有問題了。
比如,在檢索系統中,如果希望提高召回率,即希望更多的相關文檔被檢索到,就要放寬「檢索策略」,便會在檢索中伴隨出現一些不相關的結果,從而影響到准確率。如果希望提高准確率,即希望去除檢索結果中的不相關文檔時,就需要嚴格「檢索策略」,便會使一些相關文檔不能被檢索到,從而影響到召回率。
針對不同目的,如果是做搜索,那就是優先提高召回率,在保證召回率的情況下,提升准確率;如果做疾病監測、反垃圾,則是優先提高准確率,保准確率的條件下,提升召回率。

那麼,在兩者都要求高的情況下,如何綜合衡量准確率和召回率呢?一般使用F值。
F-Measure是准確率(P)和召回率(R)的加權調和平均。公式為:

當參數α=1時,就是最常見的F1,即

可見F1綜合了P和R的結果,可用於綜合評價實驗結果的質量。

❺ 今日頭條是怎樣做到精準演算法推薦

今日頭條藉助個性化推薦提高用戶瀏覽新聞的時長,個性化推薦中最常用的演算法就是協同過濾演算法,包括基於物品的協同過濾和基於用戶的協同過濾。說成人話就是,與你同類的人喜歡什麼,就給你推什麼新聞,看了A新聞的人也瀏覽了B新聞,那麼就給你推薦B新聞。
同時,根據用戶的瀏覽軌跡和偏好,不斷更新迭代用戶的標簽(用戶畫像),提升推薦的准確率。
個性化推薦中比較難的就是冷啟動階段,無法判斷用戶的偏好,因為難以推薦能吸引用戶眼球的新聞。達觀數據採用的是多種策略來改善冷啟動用戶的推薦質量,最重要的一點就是需要秒級生成用戶畫像,快速完成冷熱轉換,確保用戶留存率。

❻ 常用的機器學習&數據挖掘知識(點)

常用的機器學習&數據挖掘知識(點)
Basis(基礎):MSE(Mean Square Error 均方誤差),
LMS(LeastMean Square 最小均方),
LSM(Least Square Methods 最小二乘法),
MLE(MaximumLikelihood Estimation最大似然估計),
QP(Quadratic Programming 二次規劃),
CP(Conditional Probability條件概率),
JP(Joint Probability 聯合概率),
MP(Marginal Probability邊緣概率),
Bayesian Formula(貝葉斯公式),
L1 /L2Regularization(L1/L2正則,
以及更多的,現在比較火的L2.5正則等),
GD(GradientDescent 梯度下降),
SGD(Stochastic Gradient Descent 隨機梯度下降),
Eigenvalue(特徵值),
Eigenvector(特徵向量),
QR-decomposition(QR分解),
Quantile (分位數),
Covariance(協方差矩陣)。
Common Distribution(常見分布):
Discrete Distribution(離散型分布):
BernoulliDistribution/Binomial(貝努利分布/二項分布),
Negative BinomialDistribution(負二項分布),
MultinomialDistribution(多項式分布),
Geometric Distribution(幾何分布),
HypergeometricDistribution(超幾何分布),
Poisson Distribution (泊松分布)。
Continuous Distribution (連續型分布):
UniformDistribution(均勻分布),
Normal Distribution /Guassian Distribution(正態分布/高斯分布),
ExponentialDistribution(指數分布),
Lognormal Distribution(對數正態分布),
GammaDistribution(Gamma分布),
Beta Distribution(Beta分布),
Dirichlet Distribution(狄利克雷分布),
Rayleigh Distribution(瑞利分布),
Cauchy Distribution(柯西分布),
Weibull Distribution (韋伯分布)。
Three Sampling Distribution(三大抽樣分布):
Chi-squarEdistribution(卡方分布),
t-distribution(t-distribution),
F-distribution(F-分布)。
Data Pre-processing(數據預處理):
Missing Value Imputation(缺失值填充),
Discretization(離散化),Mapping(映射),
Normalization(歸一化/標准化)。
Sampling(采樣):
Simple Random Sampling(簡單隨機采樣),
OfflineSampling(離線等可能K采樣),
Online Sampling(在線等可能K采樣),
Ratio-based Sampling(等比例隨機采樣),
Acceptance-RejectionSampling(接受-拒絕采樣),
Importance Sampling(重要性采樣),
MCMC(MarkovChain Monte Carlo 馬爾科夫蒙特卡羅采樣演算法:Metropolis-Hasting& Gibbs)。
Clustering(聚類):
K-Means,
K-Mediods,
二分K-Means,
FK-Means,
Canopy,
Spectral-KMeans(譜聚類),
GMM-EM(混合高斯模型-期望最大化演算法解決),
K-Pototypes,CLARANS(基於劃分),
BIRCH(基於層次),
CURE(基於層次),
DBSCAN(基於密度),
CLIQUE(基於密度和基於網格)。
Classification&Regression(分類&回歸):
LR(Linear Regression 線性回歸),
LR(LogisticRegression邏輯回歸),
SR(Softmax Regression 多分類邏輯回歸),
GLM(GeneralizedLinear Model 廣義線性模型),
RR(Ridge Regression 嶺回歸/L2正則最小二乘回歸),
LASSO(Least Absolute Shrinkage andSelectionator Operator L1正則最小二乘回歸),
RF(隨機森林),
DT(DecisionTree決策樹),
GBDT(Gradient BoostingDecision Tree 梯度下降決策樹),
CART(ClassificationAnd Regression Tree 分類回歸樹),
KNN(K-Nearest Neighbor K近鄰),
SVM(Support VectorMachine),
KF(KernelFunction 核函數PolynomialKernel Function 多項式核函、
Guassian KernelFunction 高斯核函數/Radial BasisFunction RBF徑向基函數、
String KernelFunction 字元串核函數)、
NB(Naive Bayes 樸素貝葉斯),BN(Bayesian Network/Bayesian Belief Network/ Belief Network 貝葉斯網路/貝葉斯信度網路/信念網路),
LDA(Linear Discriminant Analysis/FisherLinear Discriminant 線性判別分析/Fisher線性判別),
EL(Ensemble Learning集成學習Boosting,Bagging,Stacking),
AdaBoost(Adaptive Boosting 自適應增強),
MEM(MaximumEntropy Model最大熵模型)。
Effectiveness Evaluation(分類效果評估):
Confusion Matrix(混淆矩陣),
Precision(精確度),Recall(召回率),
Accuracy(准確率),F-score(F得分),
ROC Curve(ROC曲線),AUC(AUC面積),
LiftCurve(Lift曲線) ,KS Curve(KS曲線)。
PGM(Probabilistic Graphical Models概率圖模型):
BN(Bayesian Network/Bayesian Belief Network/ BeliefNetwork 貝葉斯網路/貝葉斯信度網路/信念網路),
MC(Markov Chain 馬爾科夫鏈),
HMM(HiddenMarkov Model 馬爾科夫模型),
MEMM(Maximum Entropy Markov Model 最大熵馬爾科夫模型),
CRF(ConditionalRandom Field 條件隨機場),
MRF(MarkovRandom Field 馬爾科夫隨機場)。
NN(Neural Network神經網路):
ANN(Artificial Neural Network 人工神經網路),
BP(Error BackPropagation 誤差反向傳播)。
Deep Learning(深度學習):
Auto-encoder(自動編碼器),
SAE(Stacked Auto-encoders堆疊自動編碼器,
Sparse Auto-encoders稀疏自動編碼器、
Denoising Auto-encoders去噪自動編碼器、
Contractive Auto-encoders 收縮自動編碼器),
RBM(RestrictedBoltzmann Machine 受限玻爾茲曼機),
DBN(Deep Belief Network 深度信念網路),
CNN(ConvolutionalNeural Network 卷積神經網路),
Word2Vec(詞向量學習模型)。
DimensionalityRection(降維):
LDA LinearDiscriminant Analysis/Fisher Linear Discriminant 線性判別分析/Fisher線性判別,
PCA(Principal Component Analysis 主成分分析),
ICA(IndependentComponent Analysis 獨立成分分析),
SVD(Singular Value Decomposition 奇異值分解),
FA(FactorAnalysis 因子分析法)。
Text Mining(文本挖掘):
VSM(Vector Space Model向量空間模型),
Word2Vec(詞向量學習模型),
TF(Term Frequency詞頻),
TF-IDF(Term Frequency-Inverse DocumentFrequency 詞頻-逆向文檔頻率),
MI(MutualInformation 互信息),
ECE(Expected Cross Entropy 期望交叉熵),
QEMI(二次信息熵),
IG(InformationGain 信息增益),
IGR(Information Gain Ratio 信息增益率),
Gini(基尼系數),
x2 Statistic(x2統計量),
TEW(TextEvidence Weight文本證據權),
OR(Odds Ratio 優勢率),
N-Gram Model,
LSA(Latent Semantic Analysis 潛在語義分析),
PLSA(ProbabilisticLatent Semantic Analysis 基於概率的潛在語義分析),
LDA(Latent DirichletAllocation 潛在狄利克雷模型)。
Association Mining(關聯挖掘):
Apriori,
FP-growth(Frequency Pattern Tree Growth 頻繁模式樹生長演算法),
AprioriAll,
Spade。
Recommendation Engine(推薦引擎):
DBR(Demographic-based Recommendation 基於人口統計學的推薦),
CBR(Context-basedRecommendation 基於內容的推薦),
CF(Collaborative Filtering協同過濾),
UCF(User-basedCollaborative Filtering Recommendation 基於用戶的協同過濾推薦),
ICF(Item-basedCollaborative Filtering Recommendation 基於項目的協同過濾推薦)。
Similarity Measure&Distance Measure(相似性與距離度量):
Euclidean Distance(歐式距離),
ManhattanDistance(曼哈頓距離),
Chebyshev Distance(切比雪夫距離),
MinkowskiDistance(閔可夫斯基距離),
Standardized Euclidean Distance(標准化歐氏距離),
MahalanobisDistance(馬氏距離),
Cos(Cosine 餘弦),
HammingDistance/Edit Distance(漢明距離/編輯距離),
JaccardDistance(傑卡德距離),
Correlation Coefficient Distance(相關系數距離),
InformationEntropy(信息熵),
KL(Kullback-Leibler Divergence KL散度/Relative Entropy 相對熵)。
Optimization(最優化):
Non-constrainedOptimization(無約束優化):
Cyclic VariableMethods(變數輪換法),
Pattern Search Methods(模式搜索法),
VariableSimplex Methods(可變單純形法),
Gradient Descent Methods(梯度下降法),
Newton Methods(牛頓法),
Quasi-NewtonMethods(擬牛頓法),
Conjugate Gradient Methods(共軛梯度法)。
ConstrainedOptimization(有約束優化):
Approximation Programming Methods(近似規劃法),
FeasibleDirection Methods(可行方向法),
Penalty Function Methods(罰函數法),
Multiplier Methods(乘子法)。
Heuristic Algorithm(啟發式演算法),
SA(SimulatedAnnealing,
模擬退火演算法),
GA(genetic algorithm遺傳演算法)。
Feature Selection(特徵選擇演算法):
Mutual Information(互信息),
DocumentFrequence(文檔頻率),
Information Gain(信息增益),
Chi-squared Test(卡方檢驗),
Gini(基尼系數)。
Outlier Detection(異常點檢測演算法):
Statistic-based(基於統計),
Distance-based(基於距離),
Density-based(基於密度),
Clustering-based(基於聚類)。
Learning to Rank(基於學習的排序):
Pointwise:McRank;
Pairwise:RankingSVM,RankNet,Frank,RankBoost;
Listwise:AdaRank,SoftRank,LamdaMART。
Tool(工具):
MPI,Hadoop生態圈,Spark,BSP,Weka,Mahout,Scikit-learn,PyBrain…
以及一些具體的業務場景與case等。

❼ 如何使用Spark ALS實現協同過濾

1.背景
協同過濾(collaborative filtering)是推薦系統常用的一種方法。cf的主要思想就是找出物品相似度高的歸為一類進行推薦。cf又分為icf和ucf。icf指的是item collaborative filtering,是將商品進行分析推薦。同理ucf的u指的是user,他是找出知趣相似的人,進行推薦。通常來講icf的准確率可能會高一些,通過這次參加天貓大數據比賽,我覺得只有在數據量非常龐大的時候才適合用cf,如果數據量很小,cf的准確率會非常可憐。博主在比賽s1階段,大概只有幾萬條數據的時候,嘗試了icf,准確率不到百分之一。。。。。
2.常用方法
cf的常用方法有三種,分別是歐式距離法、皮爾遜相關系數法、餘弦相似度法。
測試矩陣,行表示三名用戶,列表示三個品牌,對品牌的喜愛度按照1~5增加。
(1)歐氏距離法
就是計算每兩個點的距離,比如Nike和Sony的相似度。數值越小,表示相似的越高。
[python] view plain print?在CODE上查看代碼片派生到我的代碼片
def OsDistance(vector1, vector2):
sqDiffVector = vector1-vector2
sqDiffVector=sqDiffVector**2
sqDistances = sqDiffVector.sum()
distance = sqDistances**0.5
return distance
(2)皮爾遜相關系數
兩個變數之間的相關系數越高,從一個變數去預測另一個變數的精確度就越高,這是因為相關系數越高,就意味著這兩個變數的共變部分越多,所以從其中一個變數的變化就可越多地獲知另一個變數的變化。如果兩個變數之間的相關系數為1或-1,那麼你完全可由變數X去獲知變數Y的值。
· 當相關系數為0時,X和Y兩變數無關系。
· 當X的值增大,Y也增大,正相關關系,相關系數在0.00與1.00之間
· 當X的值減小,Y也減小,正相關關系,相關系數在0.00與1.00之間
· 當X的值增大,Y減小,負相關關系,相關系數在-1.00與0.00之間
當X的值減小,Y增大,負相關關系,相關系數在-1.00與0.00之間
相關系數的絕對值越大,相關性越強,相關系數越接近於1和-1,相關度越強,相關系數越接近於0,相關度越弱。
clip_image003
在Python中用函數corrcoef實現,具體方法見http//infosec.pku.e.cn/~lz/doc/Numpy_Example_List.htm
(3)餘弦相似度
通過測量兩個向量內積空間的夾角的餘弦值來度量它們之間的相似性。0度角的餘弦值是1,而其他任何角度的
餘弦值都不大於1;並且其最小值是-1。從而兩個向量之間的角度的餘弦值確定兩個向量是否大致指向相同的方向。兩
個向量有相同的指向時,餘弦相似度的值為1;兩個向量夾角為90°時,餘弦相似度的值為0;兩個向量指向完全相
反的方向時,餘弦相似度的值為-1。在比較過程中,向量的規模大小不予考慮,僅僅考慮到向量的指向方向。餘弦相
似度通常用於兩個向量的夾角小於90°之內,因此餘弦相似度的值為0到1之間。
\mathbf{a}\cdot\mathbf{b}=\left\|\mathbf{a}\right\|\left\|\mathbf{b}\right\|\cos\theta
[python] view plain print?在CODE上查看代碼片派生到我的代碼片
def cosSim(inA,inB):
num = float(inA.T*inB)
denom = la.norm(inA)*la.norm(inB)
return 0.5+0.5*(num/denom)

❽ 常用的機器學習&數據挖掘知識點

常用的機器學習&數據挖掘知識點
Basis(基礎):
MSE(Mean Square Error 均方誤差),LMS(LeastMean Square 最小均方),LSM(Least Square Methods 最小二乘法),MLE(MaximumLikelihood Estimation最大似然估計),QP(Quadratic Programming 二次規劃), CP(Conditional Probability條件概率),JP(Joint Probability 聯合概率),MP(Marginal Probability邊緣概率),Bayesian Formula(貝葉斯公式),L1 /L2Regularization(L1/L2正則,以及更多的,現在比較火的L2.5正則等),GD(GradientDescent 梯度下降),SGD(Stochastic Gradient Descent 隨機梯度下降),Eigenvalue(特徵值),Eigenvector(特徵向量),QR-decomposition(QR分解),Quantile (分位數),Covariance(協方差矩陣)。
Common Distribution(常見分布):
Discrete Distribution(離散型分布):BernoulliDistribution/Binomial(貝努利分布/二項分布),Negative BinomialDistribution(負二項分布),MultinomialDistribution(多項式分布),Geometric Distribution(幾何分布),HypergeometricDistribution(超幾何分布),Poisson Distribution (泊松分布)
Continuous Distribution (連續型分布):UniformDistribution(均勻分布),Normal Distribution /Guassian Distribution(正態分布/高斯分布),ExponentialDistribution(指數分布),Lognormal Distribution(對數正態分布),GammaDistribution(Gamma分布),Beta Distribution(Beta分布),Dirichlet Distribution(狄利克雷分布),Rayleigh Distribution(瑞利分布),Cauchy Distribution(柯西分布),Weibull Distribution (韋伯分布)
Three Sampling Distribution(三大抽樣分布):Chi-squareDistribution(卡方分布),t-distribution(t-distribution),F-distribution(F-分布)
Data Pre-processing(數據預處理):
Missing Value Imputation(缺失值填充),Discretization(離散化),Mapping(映射),Normalization(歸一化/標准化)。
Sampling(采樣):
Simple Random Sampling(簡單隨機采樣),OfflineSampling(離線等可能K采樣),Online Sampling(在線等可能K采樣),Ratio-based Sampling(等比例隨機采樣),Acceptance-RejectionSampling(接受-拒絕采樣),Importance Sampling(重要性采樣),MCMC(MarkovChain Monte Carlo 馬爾科夫蒙特卡羅采樣演算法:Metropolis-Hasting& Gibbs)。
Clustering(聚類):
K-Means,K-Mediods,二分K-Means,FK-Means,Canopy,Spectral-KMeans(譜聚類),GMM-EM(混合高斯模型-期望最大化演算法解決),K-Pototypes,CLARANS(基於劃分),BIRCH(基於層次),CURE(基於層次),DBSCAN(基於密度),CLIQUE(基於密度和基於網格)
Classification&Regression(分類&回歸):
LR(Linear Regression 線性回歸),LR(LogisticRegression邏輯回歸),SR(Softmax Regression 多分類邏輯回歸),GLM(GeneralizedLinear Model 廣義線性模型),RR(Ridge Regression 嶺回歸/L2正則最小二乘回歸),LASSO(Least Absolute Shrinkage andSelectionator Operator L1正則最小二乘回歸), RF(隨機森林),DT(DecisionTree決策樹),GBDT(Gradient BoostingDecision Tree 梯度下降決策樹),CART(ClassificationAnd Regression Tree 分類回歸樹),KNN(K-Nearest Neighbor K近鄰),SVM(Support VectorMachine),KF(KernelFunction 核函數PolynomialKernel Function 多項式核函數、Guassian KernelFunction 高斯核函數/Radial BasisFunction RBF徑向基函數、String KernelFunction 字元串核函數)、 NB(Naive Bayes 樸素貝葉斯),BN(Bayesian Network/Bayesian Belief Network/ Belief Network 貝葉斯網路/貝葉斯信度網路/信念網路),LDA(Linear Discriminant Analysis/FisherLinear Discriminant 線性判別分析/Fisher線性判別),EL(Ensemble Learning集成學習Boosting,Bagging,Stacking),AdaBoost(Adaptive Boosting 自適應增強),MEM(MaximumEntropy Model最大熵模型)
Effectiveness Evaluation(分類效果評估):
Confusion Matrix(混淆矩陣),Precision(精確度),Recall(召回率),Accuracy(准確率),F-score(F得分),ROC Curve(ROC曲線),AUC(AUC面積),LiftCurve(Lift曲線) ,KS Curve(KS曲線)。
PGM(Probabilistic Graphical Models概率圖模型):
BN(Bayesian Network/Bayesian Belief Network/ BeliefNetwork 貝葉斯網路/貝葉斯信度網路/信念網路),MC(Markov Chain 馬爾科夫鏈),HMM(HiddenMarkov Model 馬爾科夫模型),MEMM(Maximum Entropy Markov Model 最大熵馬爾科夫模型),CRF(ConditionalRandom Field 條件隨機場),MRF(MarkovRandom Field 馬爾科夫隨機場)。
NN(Neural Network神經網路):
ANN(Artificial Neural Network 人工神經網路),BP(Error BackPropagation 誤差反向傳播)
Deep Learning(深度學習):
Auto-encoder(自動編碼器),SAE(Stacked Auto-encoders堆疊自動編碼器:Sparse Auto-encoders稀疏自動編碼器、Denoising Auto-encoders去噪自動編碼器、Contractive Auto-encoders 收縮自動編碼器),RBM(RestrictedBoltzmann Machine 受限玻爾茲曼機),DBN(Deep Belief Network 深度信念網路),CNN(ConvolutionalNeural Network 卷積神經網路),Word2Vec(詞向量學習模型)。
DimensionalityRection(降維):
LDA LinearDiscriminant Analysis/Fisher Linear Discriminant 線性判別分析/Fisher線性判別,PCA(Principal Component Analysis 主成分分析),ICA(IndependentComponent Analysis 獨立成分分析),SVD(Singular Value Decomposition 奇異值分解),FA(FactorAnalysis 因子分析法)。
Text Mining(文本挖掘):
VSM(Vector Space Model向量空間模型),Word2Vec(詞向量學習模型),TF(Term Frequency詞頻),TF-IDF(Term Frequency-Inverse DocumentFrequency 詞頻-逆向文檔頻率),MI(MutualInformation 互信息),ECE(Expected Cross Entropy 期望交叉熵),QEMI(二次信息熵),IG(InformationGain 信息增益),IGR(Information Gain Ratio 信息增益率),Gini(基尼系數),x2 Statistic(x2統計量),TEW(TextEvidence Weight文本證據權),OR(Odds Ratio 優勢率),N-Gram Model,LSA(Latent Semantic Analysis 潛在語義分析),PLSA(ProbabilisticLatent Semantic Analysis 基於概率的潛在語義分析),LDA(Latent DirichletAllocation 潛在狄利克雷模型)
Association Mining(關聯挖掘):
Apriori,FP-growth(Frequency Pattern Tree Growth 頻繁模式樹生長演算法),AprioriAll,Spade。
Recommendation Engine(推薦引擎):
DBR(Demographic-based Recommendation 基於人口統計學的推薦),CBR(Context-basedRecommendation 基於內容的推薦),CF(Collaborative Filtering協同過濾),UCF(User-basedCollaborative Filtering Recommendation 基於用戶的協同過濾推薦),ICF(Item-basedCollaborative Filtering Recommendation 基於項目的協同過濾推薦)。
Similarity Measure&Distance Measure(相似性與距離度量):
Euclidean Distance(歐式距離),ManhattanDistance(曼哈頓距離),Chebyshev Distance(切比雪夫距離),MinkowskiDistance(閔可夫斯基距離),Standardized Euclidean Distance(標准化歐氏距離),MahalanobisDistance(馬氏距離),Cos(Cosine 餘弦),HammingDistance/Edit Distance(漢明距離/編輯距離),JaccardDistance(傑卡德距離),Correlation Coefficient Distance(相關系數距離),InformationEntropy(信息熵),KL(Kullback-Leibler Divergence KL散度/Relative Entropy 相對熵)。
Optimization(最優化):
Non-constrainedOptimization(無約束優化):Cyclic VariableMethods(變數輪換法),Pattern Search Methods(模式搜索法),VariableSimplex Methods(可變單純形法),Gradient Descent Methods(梯度下降法),Newton Methods(牛頓法),Quasi-NewtonMethods(擬牛頓法),Conjugate Gradient Methods(共軛梯度法)。
ConstrainedOptimization(有約束優化):Approximation Programming Methods(近似規劃法),FeasibleDirection Methods(可行方向法),Penalty Function Methods(罰函數法),Multiplier Methods(乘子法)。
Heuristic Algorithm(啟發式演算法),SA(SimulatedAnnealing,模擬退火演算法),GA(genetic algorithm遺傳演算法)
Feature Selection(特徵選擇演算法):
Mutual Information(互信息),DocumentFrequence(文檔頻率),Information Gain(信息增益),Chi-squared Test(卡方檢驗),Gini(基尼系數)。
Outlier Detection(異常點檢測演算法):
Statistic-based(基於統計),Distance-based(基於距離),Density-based(基於密度),Clustering-based(基於聚類)。
Learning to Rank(基於學習的排序):
Pointwise:McRank;
Pairwise:RankingSVM,RankNet,Frank,RankBoost;
Listwise:AdaRank,SoftRank,LamdaMART;
Tool(工具):
MPI,Hadoop生態圈,Spark,BSP,Weka,Mahout,Scikit-learn,PyBrain…

❾ 推薦演算法如何提前劃分製造同類目日誌

做推薦演算法的質量工作將近一年,這一年嘗試了很多東西,踩了不少坑,也對推薦的評測工作稍微有了些自己的心得,現在分享出來,希望能和做這塊工作的同學一起交流、探討,也歡迎多拍磚,多提意見。

推薦系統

目前推薦技術的應用已經非常較普及了,新聞、商品、問答、音樂,幾乎都會用到推薦演算法來為你呈現內容。下面是淘寶、知乎、微博三個app的推薦模型,可以看到推薦都在非常重要的位置。

在介紹推薦演算法評測之前,我先簡單說下推薦系統,這里我以商品為例,簡單描述下推流程,讓大家更明白一些,一般推薦主要包含以下步驟:
召回->打分排序->透出

召回

召回階段通常的手段是協同過濾比較場景的i2i,u2i等這種x2x(有興趣可以看下我寫的基於itembase的推薦),也有使用embedding的方式通過向量之間的距離進行召回。以i2i為例,假如現在要針對我推薦一個商品,那麼首先要找到我感興趣的物品 ,這些數據是通過我的歷史行為來進行獲取,比如拿到我最近一段時間內的點擊、加購、收藏、購買的物品,將這些商品做為trigger進行召回,協同演算法的具體就不再這里敘述了,有興趣可以看下鏈接,最終我們按照協同過濾演算法算出商品之間的相似分值,然後按照一定數量進行截斷,因為這里截斷也是依靠分數來進行的,所以一般這一步也稱粗排。這樣召回截斷就完成了。

打分

召回完商品後,我們需要對這些商品進行再一次的精排,這里需要用模型來預估ctr,一般情況下LR、GBDT、FM用的比較多,這里深度網路相對用的少,主要為了考慮到性能,尤其是rt,因為絕大部分的精排都是需要實時預測的,所有對耗時有一定的要求。繼續說下模型預測的步驟,首先針對召回的商品進行特徵的補充,例如該商品的一級類目、葉子類目(一級類目代表比較,葉子類目代表最細分的類目)、被多少用戶購買等,然後再加入人的特徵,例如性別、年齡、收入、對類目的偏好等,然後將這些信息做為feature,用模型進行預測,然後根據模型預測的結果進行排序,輸出。

模型

打分過程中的模型是需要提前訓練和部署,訓練集的來源就是用戶的實時行為加上用戶和商品的特徵。feature的構成是用戶的特徵和商品的特徵,label則是用戶是否點擊了該商品。

質量方案

接下來說下如何保證這塊的質量。由於推薦系統最終對用戶需要提供實時的服務化,因此免不了有工程端的技術需要一起配合。因此我這塊主要分為兩個維度來開展,一方面是工程端的質量保證,一方面是演算法側的質量保證。

工程端質量

這一塊可以將演算法當成一個黑盒子,只把他當成一個有結果返回的介面。針對這方面前人已經有了豐富的經驗,我們可以做介面的單元測試和冒煙測試,另外就是壓測,在預估的qps下看rt是否滿足業務方的要求,load是否過大,超時和錯誤的比例是否符合一定的預期。這里就不細說了,重點說說第二部分。

演算法端質量

這里我再進行細分一下,分為三部分介紹:演算法數據、演算法模型、演算法效果;

演算法數據:

大家都知道演算法在做訓練前數據的處理部分非常的重要,有興趣可以看下特徵工程相關的內容,數據的來源,特徵的構造,數據抽取、加工整個的過程都有可能會出現錯誤,而且數據一般都是存儲在分布式系統資料庫里,因此需要藉助類似hive這樣的工具將sql轉換成MapRece的任務去進行離線的計算,離線任務的產出通常會耗費不少的時間,而對於一些日更新的模型通過對數據對產出時間有一定的要求。因此數據這塊最主要的保證點為:數據本身的質量,和數據的產出時間。數據本身的質量一般可以通過數據大小的整體抖動,以及關鍵欄位是否為空,主鍵是否重復,做法比較簡單可以通過簡單sql或者udf來完成,然後藉助工程能力做到預警、檢查、出報表等。

演算法模型:

模型的本身在迭代過程中也是需要關注的,不過通常演算法同學的訓練優化也是參考這些指標,所以我們也可以把這幾個指標做為模型本身好壞的評估。具體為:准確率、召回率、AUC。

演算法效果:

那麼這個演算法推薦出的效果究竟好不好呢,這個是一個非常主觀的事情,每個人的感受也不是一樣的,但是我們仍然要衡量它的好壞,這里我參考業內學者的推薦書籍以及自己的一些摸索,總結出下面一些方法,供大家參考。

人工評測:

顧名思義,邀請一幫人來對你的推薦系統的結果進行評測。這里想法來自於我在做翻譯評測時期的經驗,首先這個成本比較高,另外就是參雜了人的主觀性非常的高,翻譯的好壞我們可以通過制定一些細致的規則來進行約束,但是推薦的好壞我們卻不好制定詳細的規則,另外就是推薦之前的用戶行為如何模擬,如何讓評測者進行感知,這些都是比較難的,並且和基準的對比也不是很好做,所以這里不是很推薦用這個方法,但是還是要提一下。

指標評估:

指標化推薦結果,也就是將推薦的結果用不同的指標來進行說明,通過這些指標,你可以更加的了解你的推薦系統,部分指標不一定越高越好,但是你需要讓它保持在一定的范圍內。說到具體的例子的時候,我會提一下。下面我們看下這些指標。

覆蓋率

定義:
推薦系統能夠推薦出來的「商品/類目」占「總商品/類目」集合的比例。假設系統的用戶集合為U,推薦系統給每個用戶推薦一個長度為N的物品列表R(u) ,總物品為N。那麼:
覆蓋率 = ΣR(u)N
Σ
R
(
u
)
N

意義:
描述推薦結系統對物品長尾發掘能力;
舉個例子,淘寶上商品千千萬萬,推薦系統能否保證讓新的一些商品有足夠的機會曝光出去呢?還是有些商品永遠都無法得到推薦曝光的機會。這個指標反應的就是這個情況,顯然物品的覆蓋率是達不到100%的,但是我們可以看類目的覆蓋率來進行衡量,假設全網所有的一級大類目一共2千個(和全網上億的物品相比非常的少),那麼推薦系統一天之內推薦出去的商品對應的一級類目,這個就是我們要衡量的標准。如果覆蓋率

閱讀全文

與協同過濾准確率相關的資料

熱點內容
ro反滲透如何計算產水量 瀏覽:865
鮁魚圈開發區污水處理廠二期 瀏覽:891
遼寧車站飲水機加盟利潤怎麼樣 瀏覽:271
鑄鐵壺去水垢 瀏覽:44
純水機廢水什麼時候產生 瀏覽:377
加油兩千空氣濾芯燈亮怎麼回事 瀏覽:606
三角牌凈水器一直響怎麼辦 瀏覽:868
樹脂粘接橋修復的缺點 瀏覽:744
自來水過濾器如何安裝 瀏覽:490
樹脂硅元素含量多少 瀏覽:305
教你自製污水過濾器簡易有效 瀏覽:672
污水池膜密封方案 瀏覽:53
巴中印刷污水處理什麼價格 瀏覽:253
純凈水反滲透膜哪裡便宜 瀏覽:184
凈化器凈化水速度慢怎麼解決 瀏覽:905
超濾精度數值 瀏覽:293
小型污水處理竣工報告 瀏覽:94
過濾器不能應用到 瀏覽:422
水壺裡面的水垢怎麼清理干凈 瀏覽:647
酚醛環氧樹脂耐多少溫度 瀏覽:336