使用机器学习(或任何其他技术)识别图表中的模式? [英] Using Machine Learning (Or Any other Technique) to recognize Patterns in a Graph?

查看:128
本文介绍了使用机器学习(或任何其他技术)识别图表中的模式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要识别下图/示例中的模式:



图片链接



我需要星期一,Tues,周三认识到学生们花了很多时间学习40-55分钟。并且很少研究另一个日期等等。我可以使用机器学习来实现这一目标吗?或者是否有更简单有效的方法?

解决方案

我不是人工智能专家,但我会说AI不是必需的要解决这个问题,最有可能不是最快的方法。我会尝试这种方法:



想象一个立方体 - 轴X是星期几,轴Y是学习的时间,轴Z是频率发生(反映图中的大部分和很少)。



您将立方体实现为整数的三维数组,Y轴明显具有尺寸为7,对于X轴和Z轴,您可以选择一些对您来说合理的尺寸(X可能增加30分钟,每周一次,每周两次,......,每天Z的增量)。 br />


然后,您只需将相应索引处的整数增加一(最初为零)即可将样本点填入多维数据集。



最后,你可以通过移动一个窗口(一个较小的立方体)通过该立方体并在该窗口中总结整数来找到学习活动的浓度(最大值)。示例:假设您的立方体的尺寸为(X,Y,Z)= 6,7,7(步长为30分钟,周一至周日为6步,每周为1-7次)。 窗口立方体可以具有2,2,2的尺寸,并且您可以在3个嵌套的for循环中移动它通过立方体,每个循环增加一个坐标,从0,0,0开始。您总结了多维数据集中与窗口多维数据集重叠的整数值(这将需要一些更多嵌套的for循环),并将该值与该点的窗口多维数据集的坐标一起存储在其他一些结构中。完成后,您可以按总和对结果进行排序,然后得到结果。您可以尝试不同的窗口大小和形状(例如1,1,1或1,1,7或6,1,1的窗口或者你有什么)。



如果您尝试这个并且它适合您,请发表评论,我有兴趣了解它:)


图形图像是您实际拥有的作为输入(即,您有图像文件作为输入)?

或者您是否有用于生成图像的数据点?



如果您真的想了解机器学习和分类系统,请查看加州理工学院的免费,入门机器学习在线课程![^]

它不会给你代码,但你会学到很多关于如何自己做的事情!

如果你尝试上课,我建议使用Octave(一个免费的Matlab兼容系统)[^]练习和做作业。

I need to recognize a pattern in the following diagram/example:

Image Link

I need to recognize that students spend a lot of time studying for 40-55mins ON Monday, Tues, wed. And rarely studies on another date and so forth. Can I use Machine Learning to do this or is there an easier and efficient way?

解决方案

I'm no AI expert but I'd say AI isn't required to solve this and most probably wouldn't be the quickest way. I would try this approach:

Imagine a cube - axis X is the day of the week, axis Y is the time spent studying and axis Z is the frequency of that happening (reflecting the "mostly" and "rarely" in your graph).

You implement the cube as a 3-dimensional array of Integers, the Y axis obviously having a size of 7 and for the X and Z axis you choose some size that seems reasonable to you (maybe increments of 30 minutes for X and frequencies of once a week, twice a week, ..., every day for Z).

Then you simply fill in your sample points into the cube by incrementing the Integers at the according indices by one (initially zero).

Finally you can find concentrations (maxima) of studying-activity by "moving" a "window" (a smaller cube) through that cube and summing up the Integers in that window. Example: Let's say your cube has the dimensions of (X,Y,Z) = 6,7,7 (6 steps of 30 minutes, Monday through Sunday, 1-7 times per week). The "window-cube" could have the dimensions of 2,2,2 and you move it through the cube within 3 nested for-loops, each increasing one of the coordinates, starting at 0,0,0. You sum up the values of the Integers in the cube that overlap with the window-cube (which will require some more nested for-loops) and store that value in some other structure together with the coordinates of the window-cube at that point. When you're done, you sort the results by the sum and you have your results. You could experiment with different window-sizes and -shapes (e.g. a window of 1,1,1 or 1,1,7 or 6,1,1 or what have you).

If you try this and it worked for you, please drop a comment, I'd be interested to hear about it :)


Is the graph image what you actually have as input (i.e., you have image files as the input)?
Or do you have the data points that were used to generate the image(s)?

If you really want to learn about Machine Learning and Classification systems, check out the Free, introductory Machine Learning online course from Caltech![^]
It won't give you the code, but you'll learn lots about how to do it yourself!
If you try taking the course, I suggest using Octave (a free Matlab-compatible system)[^] for practicing and homework.


这篇关于使用机器学习(或任何其他技术)识别图表中的模式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆