我正在从事一个 ML 项目,并陷入了解决该问题的方法:
我有一个表(.csv 文件),在“文件”列中包含所有我的 .txt 文件 的列表,这些文件称为 BAM_xxxx,其中 xxxx 是数字和字母的组合。表格的所有其他列都是函数,即 function1, function2, function3,...., function30.
如果该函数存在于 .txt 文件中,则该单元格中的表格中有 1,如果没有,则为 0。它看起来像这样:
指数 | 文件 | 功能1 | 功能2 | ... | 功能30 |
---|---|---|---|---|---|
1 | BAM_123A.txt | 1 | 1 | ... | 0 |
2 | BAM_CD0X.txt | 0 | 1 | ... | 1 |
... | ... | ... | ... | ... | ... |
1000 | BAM_1A3B.txt | 1 | 1 | ... | 1 |
我想调查.txt文件的名称(即:xxxx)和文件中存在的函数之间是否存在关系。哪种 ML 算法最适合该任务?
我在考虑某种聚类(虽然还不知道聚类会是什么样子)比如随机森林,但我想首先我需要以某种方式从文件名创建特征。
感谢您的所有见解!
可能无法保证在文件名及其内容之间找到有意义的关系,因为这种关系可能很弱或不存在。如果 ML 算法没有提供令人满意的结果,您可能需要考虑替代方法或收集额外的数据来增强您的分析。
既然你想找到文件名特征和功能存在/不存在之间的关系,你可以使用以下ML算法:
监督学习:如果你有一个特定的功能,你想根据文件名特征来预测,你可以使用分类算法,如逻辑回归,随机森林或支持向量机(SVM)。
无监督学习: 如果您没有特定的预测函数,只想在数据中找到模式或分组,您可以使用像 K-Means、DBSCAN 或 Hierarchical Clustering 这样的聚类算法.
看看 python 模块scikit-learn.