如何寫好策略——因子篇(二):因子是否越多越好?
在這個模型裡的18個因子,難以衡量每個因子的作用。目前有一套shap包,對黑箱有一定的解釋性。這個解釋原理比較簡單,按照新增該因子的順序觀察結果變化。比如新增該因子前和新增因子後,模型輸出結果的變化是否發生了變化,結果對模型的敏感度或者貢獻度有什麼影響,這個可以評判因子對預測值起到了拉高還是降低的作用,進而計算shap值作為評估。BigQuant以後逐步地把這個功能加進來,形成標準化、模組化的產品功能。
同時,可以參考一下相關的研報。例如華泰證券有對黑箱模型的解釋: Shap包應用、因子之間的相互作用。但對於線性模型,多個因子之間只有保持一定的正交性,才能保證因子之間互相起作用,這就是逐步迴歸法或正交化法。正交化研報上有4種方法,最終目的就是去掉因子之間的一個相關性,然後提高他們整體的解釋性。
如果因子之間的資料沒有處理好,組合難以匹配。例如均勻分佈的因子和正態分佈的因子,兩者疊加會降低正態分佈的因子效果。由於均勻分佈的因子存在,資料經常要做標準化正交化,目的是把分佈從偏態分佈掰回來,或者從肥尾分佈掰回來。線性模型可以通過標準化之後具有一定的可比性,然後把它的分佈轉換成近似正態,這樣所有的模型獨立分佈,可以進行模型的疊加。通過這種方式,逐步疊加1~2個因子,評判每一個新加入因子是否提升了整體解釋性。這個過程是比較透明的,但是對於黑箱的機器演算法來說,這個因子到底起什麼作用呢?
剛剛提到的shap包,可以深入研究這個包的應用。shap包類似對每個樣本打分並且每一條打分都有記錄,可以判斷因子在樣本中是提升預測值還是降低預測值,通過這種方式可以進行更全面的進行因子評估。
詳細可戳以下視訊:
BigQuant AI量化專家 Meetup(update:1203)
相關文章
- oracle index 聚集因子OracleIndex
- 多因子模型模型
- 聚簇因子的理解
- 【譯】十二因子應用(四)
- 主成分與因子分析
- ORACLE 聚簇因子優化Oracle優化
- HJ6 質數因子
- 多因子認證是什麼意思?與雙因子認證有什麼區別?
- 在R語言中,因子是什麼R語言
- Ftj aRTTy因子計算最佳實踐
- 企業文化因子模型(轉載)模型
- 【LeetCode(Java) - 254】因子的組合LeetCodeJava
- java求一個整數的最小因子Java
- Find Terrorists(素數篩選+素因子分解)Error
- 雷達氣象學(7)——反射率因子圖分析(氣象回波篇)反射
- C語言學習之求各因子之和C語言
- 直方圖、基數、選擇性、群集因子直方圖
- HDU44979 GCD and LCM (素因子分解+計數)GC
- HDU 5317 RGCDQ (素因子分解+預處理)GC
- 質數判斷、質因子分解、質數篩
- Linux 下如何為登入和 sudo 設定雙因子認證Linux
- 在 Fedora 上為 SSH 設定雙因子驗證
- 聚簇因子和執行計劃的聯絡
- hihocoder1165 益智遊戲 (最多因子)遊戲
- DBA_INDEXES.CLUSTERING_FACTOR 索引的群集因子初探Index索引
- 如何寫好一篇技術文章?
- sql server 索引闡述系列七 索引填充因子與碎片SQLServer索引
- 學習SVM(五)理解線性SVM的鬆弛因子
- 手把手教你實現法瑪三因子模型模型
- 淺談索引系列之聚簇因子(clustering_factor)索引
- DBA_INDEXES.CLUSTERING_FACTOR 索引的群集因子初探(原)Index索引
- clustering factor索引聚簇因子和執行計劃索引
- CodeForces - 463E Caisa and Tree (dfs+素因子分解)AI
- 增補部落格 第二十四篇 python 正整數的因子展開式Python
- 如何寫好一篇技術型文件?
- 感悟篇:如何寫好函式式程式碼函式
- 2019-2023年官方二氧化碳排放因子
- 藍橋杯 演算法訓練 素因子去重(Java)演算法Java