第三章 研究模型與方法
第三節 互動式推論演算法
30
就會將相片分享社群軟體的屬性當作下一階段新的查詢條件,藉由這個動作希望能找 出使用者隱含的需求,推薦最符合需求的雲端服務軟體。
31
圖 8 相似度評估
Step 2: Similarity evaluation
for i=1 to n
for j= 1 to m if ( {} )
(Standardization) = ;
end if;
next j;
sim( = comp( , )* (Standardization), as
next I;
三、第一階段推薦
第三步驟為第一階段推薦,如圖 9 所示,是藉由使用者所勾選之查詢條件與輸入 的目標權重計算出的目標相似度,再用同樣的算法計算個案庫內的個案相似度做比較,
當相似度高於使用者所輸入之門檻值,就會推薦給使用者。
圖 9 第一階段推薦
Step 3: Recommendation case generation
for i=1 to n
if ( sim( threshold )
sug-case = ++;
p++;
end if;
next i;
32
四、例外推論
假設使用者所輸入的門檻值太低,會造成系統推薦個案數過多,當資訊量過於龐 大就會造成發散,不易從中選出較符合需求之個案,為了避免這種狀況,iCSR 系統 在第二階段含以上的推薦結果,均會自動將門檻值設為 90,避免這種資訊發散的情 況產生,如圖 10 所示。
圖 10 例外推論
Step 4: Exception administration
If ( Threshold<90 )
Threshold =90
end if
五、使用者與系統間的互動式推論
第五步驟為使用者與系統間的互動式推論為 iCSR 之特色,主要是透過每一階段 列出之清單給使用者勾選個案,透過使用者所勾選之個案去分析,前一階段所勾選之 個案,透過推論機制分析後,就會產生新的查詢條件,而這新的查詢條件就會被當作 下一階段的查詢條件,列出新的個案給使用者,藉此反覆勾選個案的互動,希望能找 出更適之個案給使用者,如圖 11 所示。
33
圖 11 使用者與系統間的互動式推論
Step 5: interactive reasoning between decision maker and iCSR
show user sug-case set;
for i=1 to p
if ( .check=true)
sel-case= ++;
q++
end if;
next i;
六、目標條件修正和完成推論
第六步驟為目標條件修正和完成推論,如圖 12 所示,當完成推論過程後,按下 結束按鈕,就會將對於軟體更詳細的說明顯示在畫面上。而目標條件修正在系統中是 非常重要的,主要是在使用者勾選個案時,透過推薦機制去計算這些已勾選個案的屬 性值,這時推論機制會利用投票法來決定下一階段的查詢條件,計算出來後,系統會 使用新的值,s 當目標條件去計算相似度。簡單來說就是前一階段所勾選的個案,透 過推論機制的分析,就會變成下一階段的查詢條件,藉此找出使用者所隱含的需求。
圖 12 為修正查詢條件演算法。當使用者確定要更進一步做推薦時,就會呼叫查詢條 件修正演算法。
34
圖 12 目標條件修正和完成推論
Step 6: Target condition revision and reasoning completed
if ( inter-flag = true) & (k m)
T=Agg_fet(sel_case, T);
go step 2;
else
show user sug-case set;
reasoning completed;
end if;
圖 13 修正查詢條件演算法
Agg-fet function algorithm
Agg-fet (sel-case, T)
{
if iL_ColumnSum > true_num / 2 ) &
elseif ((iL_ColumnSum < true_num / 2)&
End f
next j;
35