Algorithm J48与马尔可夫链的区别
我试图使用WekaSharp对C#和F#领域中不同算法的相对速率进行评估,我感兴趣的算法之一是马尔可夫链。我知道Weka有一个HMM应用程序,但我还没能将它实现到WekaSharp中,我想知道是否有办法修改J48算法以适应这个目的。我知道J48和一阶马尔可夫链之间有一些相似之处,但我正试图确定需要修改的内容,以及这是否合理。以下是在尹朱的WekaSharp中实现的J48:Algorithm J48与马尔可夫链的区别,algorithm,f#,weka,markov-chains,Algorithm,F#,Weka,Markov Chains,我试图使用WekaSharp对C#和F#领域中不同算法的相对速率进行评估,我感兴趣的算法之一是马尔可夫链。我知道Weka有一个HMM应用程序,但我还没能将它实现到WekaSharp中,我想知道是否有办法修改J48算法以适应这个目的。我知道J48和一阶马尔可夫链之间有一些相似之处,但我正试图确定需要修改的内容,以及这是否合理。以下是在尹朱的WekaSharp中实现的J48: type J48() = static member DefaultPara = "-C 0.25 -M 2"
type J48() =
static member DefaultPara = "-C 0.25 -M 2"
static member MakePara(?binarySplits, ?confidenceFactor, ?minNumObj, ?unpruned, ?useLaplace) =
let binarySplitsStr =
let b = match binarySplits with
| Some (v) -> v
| None -> false
if not b then "-B" else ""
let confidenceFactorStr =
let c = match confidenceFactor with
| Some (v) -> v
| None -> 0.25 // default confi
"-C " + c.ToString()
let minNumObjStr =
let m = match minNumObj with
| Some (v) -> v
| None -> 2
"-M " + m.ToString()
let unprunedStr =
let u = match unpruned with
| Some (v) -> v
| None -> false
if u then "-U" else ""
let useLaplaceStr =
let u = match useLaplace with
| Some (v) -> v
| None -> false
if u then "-A" else ""
binarySplitsStr + " " + confidenceFactorStr + " " + minNumObjStr + " " + unprunedStr + " " + useLaplaceStr
非常感谢。J48只是一个通过考虑每个属性(维度)的熵并将熵最大的属性作为当前子树的根来学习决策树的实现。该算法不需要加强 我猜马尔可夫链的意思是用于强化学习 你应该去看看 一个相关的问题是:
我认为J48是一种利用统计分布的统计分类器,但马尔可夫链是一种FSM,可以使用statistics@KhaledAKhunaifer你说的FSM是指有限状态机?@VitalijZadneprovskij是的,它是使用1D数组alpha作为起始状态来实现的,和Beta 2D阵列,用于在states@RedMassiveStar我认为J48的工作方式不同,但在预测应用中,马尔可夫链更好地利用Redux和动态规划来找到最佳预测。。虽然J48可以调整以预测