个人项目的最佳数据分析技术/模型

时间:2015-10-14 16:05:51

标签: machine-learning analytics data-analysis

我不确定如何说出这一点,如果格式错误,我很抱歉,但我正试图找到一个能够自己解决这个问题的基础。

我正在尝试为"髋关节手术患者的一组数据开发预测算法"看起来像是:

Readmission Time | Symptom Code | Symptom Note    |  Related
               6 |         2334 | swelling in hip |     Yes       
              12 |         1324 | anxiety         |     Maybe       
               8 |         2334 | swelling in hip |     Yes       
              30 |         1111 | Headaches       |     No
               3 |         7934 | easily bruising |     Yes  

对于上下文,医生可以确定是否给出了#34;症状代码"与"髋关节置换手术相关"发生在X天前。我的数据集中有大约200个与此格式匹配的条目,我的目标是能够匹配给定集合中的结果以及预测"相关"中的新结果。基于新输入的列(具有关于预测结果的确定性统计)。例如:

Input:  20 | 2334 | swelling in hip
Output: Yes (90% confidence)

我对数据分析和机器学习非常陌生,所以我真的只想获得一些要查找的内容或从哪里开始我的研究。我想有一个最佳的功能/模型可以处理这个问题,但正如我所说,我对这个主题非常新,所以我不知道从哪里开始。由于我的数据集相对较小,我正在寻找一种技术,如果可能的话,这种技术很容易被训练

我真的很感激任何帮助和指导从哪里开始。

2 个答案:

答案 0 :(得分:2)

根据您的数据片段,它看起来像一个多类别的分类问题(3级是Yes,Maybe或No)。

您的列(旁边related)将是您的功能,可以简化为数字表示。例如:

对于症状注释功能,您可以使用如下所示的映射:

Swelling in hip = 1
Anxiety = 2
Swelling = 3
Easily Bruised = 4

显然,如果您在此列中有明确的症状,这可以起作用。机器学习算法通常与数字一起使用,因此您的功能将从原始数据提取为数字形式。完成后,您可以将数据提供给分类算法。朴素贝叶斯算法是一个很好的起点。

Scikit学习(如果你可以使用python)有一个关于3class分类任务的一个很好的介绍性例子,其中所有的功能都是数字。它试图根据萼片长度,萼片宽度,花瓣长度和花瓣宽度对不同类型的鸢尾花进行分类。

可以在此处找到完整的教程:Supervised learning: predicting an output variable from high-dimensional observations

获取额外数据是否可行?如果是,我会建议你得到更多。 200个实例非常小,可能无法正确表示要素空间。此外,将数据拆分为training and test set将进一步减少培训时使用的数量将非常有用。您也可以选择K-Folds Cross validation

总结:导航到该scikit-learn页面,尝试花卉分类示例。一旦你熟悉了环境;您的数据需要一些清理和功能提取。您需要回答诸如Readmission TimeSymptom Code的含义之类的问题?这些值是否在指定范围内具有special内部含义,或者它们只是像id一样分配的随机数。

答案 1 :(得分:0)

我建议您将数据转换为ARFF格式,然后将其与Weka一起使用。 Weka是一个包含许多机器学习算法的程序,你可以试验它,它还有一个非常简单的用户界面,所以对初学者有好处!一旦找到了运行良好的算法,就可以保存训练好的模型并用它来预测新实例!