用戶體驗(yàn)數(shù)據(jù)的多維度處理:PC A法及碎石圖

0 評論 11864 瀏覽 26 收藏 14 分鐘

無關(guān)乎算法原理,本文將從用戶體驗(yàn)的角度,著重分析多維度數(shù)據(jù)處理的降維方法:主成分分析法(PC A)

主成分分析法(PC A):類似SUS,該方法能夠?qū)⒅T多因子如(滿意度,可用性,簡易性等多指標(biāo)轉(zhuǎn)化成低維度數(shù)據(jù),以數(shù)字或圖表的形式直觀呈現(xiàn)),并介紹反映維度數(shù)量與誤差性關(guān)系的圖表–碎石圖及其算法(基于PC A)。

前文我們提到了用戶體驗(yàn)數(shù)據(jù)化的廣泛例子–系統(tǒng)可用性量表SUS,但是在實(shí)際用戶體驗(yàn)研究過程中,不光是可用性測量,還涉及易用性,滿意度等等其他維度的考量,甚至有些原始數(shù)據(jù)可能連有哪些維度都是不清晰的,需要研究人員來進(jìn)行判斷。在這種情況下,基于個人經(jīng)驗(yàn)的判斷已經(jīng)無法適應(yīng),我們需要借助計(jì)算機(jī)與統(tǒng)計(jì)學(xué)知識來讀懂?dāng)?shù)據(jù)以支持產(chǎn)品決策。

筆者并不是理學(xué)出身,但基于實(shí)際作業(yè)的需要,自學(xué)了相關(guān)課程,感觸頗深。如果有線性代數(shù)和統(tǒng)計(jì)學(xué)背景自然是最好的,但是如果不具備,也完全沒問題。對于這些方法,如果以產(chǎn)品經(jīng)理的標(biāo)準(zhǔn),我們最需要是使用好這些方法,創(chuàng)造價值,所以不用擔(dān)心。本文將避開算法原理,而重點(diǎn)分析設(shè)計(jì)邏輯和應(yīng)用場景。

主成分分析法(PC A)設(shè)計(jì)邏輯

回顧一下之前的系統(tǒng)可用性量表SUS(詳情請看《淺析用戶體驗(yàn)數(shù)據(jù)化》),它本質(zhì)上是通過投影的方式,將原本兩個維度的數(shù)據(jù)(可用性與易用性)轉(zhuǎn)化在單個軸上。在多維度數(shù)據(jù)處理中,其核心也是如此也是將:多維度空間的數(shù)據(jù)通過投影的方式轉(zhuǎn)化在低緯度中。

線性代數(shù)告訴我們,如果是單純的降維,有無數(shù)種方式可以進(jìn)行,難的是在降維過程中,保持原有數(shù)據(jù)的特征也就是相關(guān)性。若兩個因子如可用性,易用性是強(qiáng)相關(guān)且是線性相關(guān),先假設(shè)可用性越高,易用性越高,那么降低維度后,數(shù)據(jù)集也應(yīng)當(dāng)存在這樣的特性,甚至能夠保持當(dāng)可用性提高了X%時,易用性也會提高相應(yīng)的程度。

這里需要注意:數(shù)據(jù)降維之后一定會損失一定的信息,這沒辦法避免。PC A做的就是盡量保留主要特征而減弱冗雜信息,所采用的方式是通過讓各個原始數(shù)據(jù)在轉(zhuǎn)化之后,相距盡量大,也就是差異性最明顯。

這里先舉一個簡單例子。比如我們分別給5個產(chǎn)品做了SUS測試得到了每個產(chǎn)品的可用性,易用性指標(biāo),我們將其表示在二維圖上。

之后我們在將這個兩維數(shù)據(jù)降成一維的。就是找一條軸,然后得到各個產(chǎn)品指標(biāo)在這個軸上的投影,且滿足投影之后的差異性最大。

例如產(chǎn)品A(1,2)和產(chǎn)品B(1,0)的關(guān)系就保留在了這條軸上。但如果我們投影在了y軸,A和B就重疊了,就無法比較出A和B哪個更優(yōu),即喪失了易用性的比較。而PC A算法保留了這個特性,我們通過處理后的數(shù)據(jù)可以方便的比較各個產(chǎn)品的優(yōu)劣。

理論上原本有幾個維度的數(shù)據(jù),就有幾個特征向量。各個特征向量之間正交。也就是說明,通過特征向量轉(zhuǎn)換后的維度之間是相互獨(dú)立的。詳細(xì)的會在后面的實(shí)例中說明。

這里需要特別指出,PC A方法不適合用于高階相關(guān)性的數(shù)據(jù),而適合用于線性相關(guān)。但對于一般的智能產(chǎn)品領(lǐng)域,或App,網(wǎng)頁等互聯(lián)網(wǎng)產(chǎn)品,社會學(xué)研究等,PC A已經(jīng)能應(yīng)對絕大部分情況了。

PC A實(shí)際案例分析

我將以一個實(shí)際的作業(yè)來分析PC A的使用方法和注意點(diǎn)。(筆者是用 Matlab 寫的程序)。當(dāng)然,最重要的不是程序而是理解PC A是怎么回事。先附上代碼。

%data 為輸入的數(shù)據(jù)集,行表示項(xiàng)目,項(xiàng)目之間是并行的例如產(chǎn)品1,產(chǎn)品2或者用戶1,用戶2,
%各列表示描述項(xiàng)目的維度比如,易用性,可用性,滿意度等
data = shishen;

% PCA Template to data

% n 為測量的項(xiàng)目數(shù)量,p則表示描述的維度數(shù)量
[n,p] = size(data);

% PC A運(yùn)算過程,這里就不再介紹,有興趣可以參考《Exploratory Data Analysis with MATLAB》 。我這里將原數(shù)據(jù)集其降成一維。

datac = data – repmat(sum(data)/n,n,1);
covm = cov(datac);
[eigvec,eigval] = eig(covm);
eigval = diag(eigval);
eigval = flipud(eigval);
eigvec = eigvec(:,p:-1:1);
pervar = 100*cumsum(eigval)/sum(eigval);
g =zeros(1,p);
for k = 1:p
for i = k:p
g(k) = g(k) + 1/i;
end
end
g = g/p;
propvar = eigval/sum(eigval);
avgeig = mean(eigval);
ind = find(eigval > avgeig);
l=length(ind);

%P 控制轉(zhuǎn)換成幾個維度,若需要轉(zhuǎn)換成X維,則p= eigvec(:,1:x);
P = eigvec(:,1:1);
%dataP 即是最后我們得到的降維之后的數(shù)據(jù)集
dataP = datac*P;

原數(shù)據(jù)說明

這里我們收集了80位用戶在使用某款A(yù)pp時候,在各個任務(wù)環(huán)節(jié)上使用的時間和整體任務(wù)失敗率,以此得到用戶在這款產(chǎn)品上的易用性數(shù)值。在以同樣的方式進(jìn)行對競品的分析,以處理后的數(shù)據(jù)進(jìn)行比較,期望得到有哪些環(huán)節(jié)是關(guān)鍵并且需要改進(jìn),產(chǎn)品優(yōu)勢等其他重要結(jié)論。

數(shù)據(jù)需要具有線性相關(guān)性

線性相關(guān)是保證我們可以找到投影基準(zhǔn)的根本,詳細(xì)的可以參考線性代數(shù)等相關(guān)知識。我這里指出一個小技巧,在前期數(shù)據(jù)收集的時候,可以盡量將數(shù)據(jù)好和壞變化統(tǒng)一。例如上述的例子,我們認(rèn)為在任務(wù)上的耗時越長,表示產(chǎn)品越差。因此使用項(xiàng)目失敗率做指標(biāo)而不是項(xiàng)目成功率,因?yàn)槭÷试礁弑硎井a(chǎn)品越差,而成功率越高表示產(chǎn)品越好和前面的數(shù)據(jù)變化相反了。通過這樣的處理,PC A算法得到的差異性會更加明顯。

PC A處理結(jié)果及其意義

將以上數(shù)據(jù)集,用PC A方法降維后,我們得到以下數(shù)據(jù)集,將這5維的數(shù)據(jù)轉(zhuǎn)化成只有一個維度,經(jīng)過與元數(shù)據(jù)的比較和轉(zhuǎn)換基的數(shù)值,我們發(fā)現(xiàn)這個分?jǐn)?shù)是易用性維度上的比較。

通過分析這個單純的數(shù)據(jù)表格,我們至少可以得到以下結(jié)論

  1. 該App具有一定學(xué)習(xí)成本,新手導(dǎo)引需要改進(jìn),項(xiàng)目分布差值廣泛
  2. 該App在易用性上存在很大改進(jìn)空間

在中間過程中,我們得到了以下附屬的結(jié)果

轉(zhuǎn)化矩陣P

轉(zhuǎn)換矩陣p=[0.0535;-0.9984;-0.015;0.0011;9.9375e-05]。(最大特征向量)。這就是降維轉(zhuǎn)換公式,我們之后再其他產(chǎn)品分析中,用相同的轉(zhuǎn)換矩陣降維就能夠像系統(tǒng)可用性量表(SUS)一樣進(jìn)行直觀的比較分析了。

那么差值是否具有意義?答案是有意義,這里的差值是可以再次進(jìn)行運(yùn)算的。因?yàn)檗D(zhuǎn)化方程是一致的,所投影的空間也是一致的,可行性單位也是固定的。但是需要注意,經(jīng)過轉(zhuǎn)換后的數(shù)據(jù)集是無法再還原到原先的數(shù)據(jù)集的。因此我們雖然能夠比出可行性高低,但是在轉(zhuǎn)換到具體的項(xiàng)目上還需要原來數(shù)據(jù)的處理。

比如我們在這個項(xiàng)目過程中,通過對最高易用性數(shù)值與最低數(shù)值原數(shù)據(jù)集的比較,可以得到各個項(xiàng)目的差異大小。例如得到24號用戶達(dá)到的易用性數(shù)值最高,16號用戶易用性最小。然后再原數(shù)據(jù)中尋找,得到哥哥項(xiàng)目的差是【26,-384,9,-5,0.05】,結(jié)合轉(zhuǎn)換矩陣p,我們可以窺視到以下信息:

  1. 任務(wù)1與任務(wù)2在設(shè)計(jì)上存在沖突,若用戶項(xiàng)目A上耗時時間短則在項(xiàng)目B上花費(fèi)的時間就長。理由是:兩者轉(zhuǎn)換值為負(fù)相關(guān)。
  2. 任務(wù)2,任務(wù)1是關(guān)鍵任務(wù),需要在下一版本中著重設(shè)計(jì)。項(xiàng)目3,4影響不大,非關(guān)鍵任務(wù),用戶犯錯率基本穩(wěn)定。理由是:任務(wù)1的1s對應(yīng)的數(shù)值是0.0535的數(shù)值變化而任務(wù)2中的1s對應(yīng)的是-0.9984的數(shù)值變化。兩者對于最后的分?jǐn)?shù)的貢獻(xiàn)是不一致的。

數(shù)據(jù)維度-碎石圖

但是以上的轉(zhuǎn)換后的數(shù)據(jù)有多少可信度呢?理論上,所降維度越低則損失的信息越多。那么如何判斷應(yīng)該降低到幾維空間中呢?判斷方式就是通過轉(zhuǎn)換矩陣(特征向量)的長度。特征向量長就意味著,在這個維度(例如上述的可用性)上的變化明顯,相反,若特征值短就意味著,在這個維度上,數(shù)據(jù)基本沒有差異性因此沒有分析價值(大家都一樣)。先附上程序。

figure, plot(1:length(eigval),eigval,’ko-‘)
title(‘Scree Plot’)
xlabel(‘Eigenvalue Index – k’)
ylabel(‘Eigenvalue’)

由此看到,這個數(shù)據(jù)集中只存在一個維度上的變化,這就是主要成分。因此降維之后的信息是具有可信度的,保留了原數(shù)據(jù)70%~95%的信息。(記住就好)

通過碎石圖,我們可以快速的明白數(shù)據(jù)中有哪些維度需要進(jìn)行分析。這個k就是碎石圖中的拐點(diǎn),代表了數(shù)據(jù)需要降低到k維空間中,以保留主要信息。

后記

對于產(chǎn)品經(jīng)理或者非數(shù)據(jù)挖掘從業(yè)者,了解PC A算法將會使你的分析更加精準(zhǔn)有效,使結(jié)論更具有說服力,作為初期的用戶研究綽綽有余。但本文也只是從用戶體驗(yàn)這個側(cè)面展示了這個算法的運(yùn)用。

通過PC A算法我們可以分析出(不止于此)

  1. 項(xiàng)目之間的相關(guān)性(沖突還是互利)
  2. 項(xiàng)目之間的重要層級和所影響的維度
  3. 產(chǎn)品主要維度的構(gòu)成

這些問題憑借簡單的直方圖等和肉眼是很難察覺的。因此,毫無疑問,一個掌握數(shù)據(jù)分析的產(chǎn)品經(jīng)理所能看到的問題必將更加深刻和現(xiàn)實(shí)。

參考文獻(xiàn):

《Exploratory Data Analysis with MATLAB》 Wendy L. Martinez, Angel Martinez, Jeffrey Solka

 

本文由 @kieran 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!