首先感谢作者的分享。希望作者除了讲解这些理论之外,能够把K均值聚类在实际交易中如何运用举例说明,如果没有相对应的例子,这篇或者作者的其他文章与教科书实际上就没有区别了。机器学习在很多领域都有运用。
如果作者能够更好的把这些机器学习理论结合MT5交易机制进行举例说明那就更好了。再次感谢作者的分享。
m_cols = Matrix.Cols(); n = Matrix.Rows(); //元素数 | 矩阵行数 InitialCentroids.Resize(m_clusters,m_cols); vector cluster_comb_v = {}; matrix cluster_comb_m = {}; vector rand_v = {}; for (ulong i=0; i<m_clusters; i++) { rand_v = Matrix.Row(i * m_clusters); InitialCentroids.Row(rand_v,i); } Print("Initial Centroids matrix\n",InitialCentroids);
嗨,Omega J Msigwa,感谢您非常有用的文章。
我是不是漏掉了什么? DMatrix?
我指的是文章中解释的 Matrix,因为这段代码是在函数
void CKMeans::KMeansClustering(const matrix &Matrix, matrix &clustered_matrix,int iterations = 10) { m_cols = Matrix.Cols(); n = Matrix.Rows(); //元素数 | 矩阵行数 InitialCentroids.Resize(m_clusters,m_cols); cluster_assign.Resize(n); clustered_matrix.Resize(m_clusters, m_clusters*n); clustered_matrix.Fill(NULL); vector cluster_comb_v = {}; matrix cluster_comb_m = {}; vector rand_v = {}; for (ulong i=0; i<m_clusters; i++) { rand_v = Matrix.Row(i * m_clusters); InitialCentroids.Row(rand_v,i); } Print("Initial Centroids matrix\n",InitialCentroids); .... rest of the code
新文章 数据科学与机器学习(第 09 部分):以 MQL5 平铺直叙 K-均值聚类已发布:
数据挖掘在数据科学家和交易者看来至关重要,因为很多时候,数据并非如我们想象的那么简单。 人类的肉眼无法理解数据集中的不显眼底层形态和关系,也许 K-means 算法可以帮助我们解决这个问题。 我们来发掘一下...
聚类分析是一项把一组对象进行分组的任务,按照这种方式,拥有相同属性的对象被放置在相同的群组(聚类)中。
如果您去商场,您会发现类似的物品放在一起吧? 有人进行了把它们分组的过程。 当数据集未分组时,聚类分析将像这样进行分组,把彼此之间更相似(在某种意义上)的数据值进行分组,而不是其它组(聚类)。
聚类分析本身不是一种特定的算法。 一般任务可以通过各种算法来解决,这些算法在对构成集群的理解方面存在显著差异。
作者:Omega J Msigwa