当前在线人数15832
首页 - 分类讨论区 - 电脑网络 - 葵花宝典版 - 同主题阅读文章

此篇文章共收到打赏
0

  • 10
  • 20
  • 50
  • 100
您目前伪币余额:0
未名交友
[更多]
[更多]
请教一个机器学习的问题
[版面:葵花宝典][首篇作者:bolero] , 2019年10月23日12:08:56 ,1378次阅读,14次回复
来APP回复,赚取更多伪币 关注本站公众号:
[分页:1 ]
bolero
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 1 ]

发信人: bolero (ripple), 信区: Programming
标  题: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Wed Oct 23 12:08:56 2019, 美东)

最近试着用tensorflow对一个 50k X 10 的数据表进行categorization。
这个表里都是numeric data,我的理解就是一个high dimensional data
classification的问题。简单化到2维,就是类似附图里一样的数据点,机器学习的任
务是识别出在特征线段a,b,c附近的点,分别以a,b,c类别划分。如果有数据接近超过一
个特征线段,比如像图中在圈内的点,就
给出probabilities (30% a / 60% b / 10% c, 等等) 。这个表有~50个特征
category,每个category都可以用coordinates的线性关系来分类(x3=(x2-x1)/2,
x4<0, etc.)。
我用了keras sequential model来试,最高也只能做到0.5的accuracy。这个是不是太
低了?对这类的问题有什么best practise可以指教一下么。谢谢!

--
※ 修改:·bolero 於 Oct 23 12:12:43 2019 修改本文·[FROM: 107.]
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 107.]

此主题相关图片如下:

[删除]

 
magliner
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 2 ]

发信人: magliner (magliner), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Wed Oct 23 21:36:36 2019, 美东)

.5觉得太低了, 不知道你baseline是多少, 但.5是不是和random guess差不多?
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 205.]

 
canhelp2007
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 3 ]

发信人: canhelp2007 (Tomorrow), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Thu Oct 24 06:55:35 2019, 美东)

分三类0.5就不是random guess 了

【 在 magliner (magliner) 的大作中提到: 】
: .5觉得太低了, 不知道你baseline是多少, 但.5是不是和random guess差不多?




--
☆ 发自 iPad 买买提 1.24.11
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 74.]

 
bolero
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 4 ]

发信人: bolero (ripple), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Thu Oct 24 10:47:10 2019, 美东)

对,总共有50个左右的类型。50k左右的数据,每个类型多的有7k,少的有几十个样本。

我主要是觉得如果对各个类型来说,每个数据点的coordinates都满足几个给定的线性
关系(比如说类型15的数据点,x1=x2=x3, x4=(x1-x5)/2,x6=(3*x7+x8)/5, ...),这
种情况下是不是应该比较符合neural network的model?怎么做会提高accuracy?请大
家不吝赐教。谢谢啦!


【 在 canhelp2007 (Tomorrow) 的大作中提到: 】
: 分三类0.5就不是random guess 了



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 107.]

 
longtian
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 5 ]

发信人: longtian (有人的地方,就有江湖), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Thu Oct 24 13:11:29 2019, 美东)

1.每个category的record数量是均衡的吗?
2.50个category有点多,能不能根据数据的分布先做数量少一些的分类,比如5-10,然
后再细分
3.0.5的accuracy,也就是说一半的数据都是准确的分类了,考虑到你有50个category,
感觉不算很差。
4.如果所有coordinates都是线性的关系,也就是说所有同类的点都在同一个超平面上
,用svm应该有不错的结果

【 在 bolero (ripple) 的大作中提到: 】
: 最近试着用tensorflow对一个 50k X 10 的数据表进行categorization。
: 这个表里都是numeric data,我的理解就是一个high dimensional data
: classification的问题。简单化到2维,就是类似附图里一样的数据点,机器学习的任
: 务是识别出在特征线段a,b,c附近的点,分别以a,b,c类别划分。如果有数据接近超过一
: 个特征线段,比如像图中在圈内的点,就
: 给出probabilities (30% a / 60% b / 10% c, 等等) 。这个表有~50个特征
: category,每个category都可以用coordinates的线性关系来分类(x3=(x2-x1)/2,
: x4<0, etc.)。
: 我用了keras sequential model来试,最高也只能做到0.5的accuracy。这个是不是太
: 低了?对这类的问题有什么best practise可以指教一下么。谢谢!




--
※ 修改:·longtian 於 Oct 24 13:13:41 2019 修改本文·[FROM: 50.]
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 50.]

 
Nisayer
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 6 ]

发信人: Nisayer (si fata sinata), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Thu Oct 24 13:22:43 2019, 美东)


【 在 bolero (ripple) 的大作中提到: 】
: 最近试着用tensorflow对一个 50k X 10 的数据表进行categorization。
: 这个表里都是numeric data,我的理解就是一个high dimensional data
: classification的问题。简单化到2维,就是类似附图里一样的数据点,机器学习的任
: 务是识别出在特征线段a,b,c附近的点,分别以a,b,c类别划分。如果有数据接近超过一
: 个特征线段,比如像图中在圈内的点,就
: 给出probabilities (30% a / 60% b / 10% c, 等等) 。这个表有~50个特征
: category,每个category都可以用coordinates的线性关系来分类(x3=(x2-x1)/2,
: x4<0, etc.)。
: 我用了keras sequential model来试,最高也只能做到0.5的accuracy。这个是不是太
: 低了?对这类的问题有什么best practise可以指教一下么。谢谢!


不太了解具体的数据, 只能泛泛的谈一下

首先,这点数据,我根本不会上NN/DL

太多的人对NN要求的数据量完全没概念,更何况你是50k x 10的表存在 50个category,
自己可以去学习一下不同的统计学习方法对数据量的和特征数之间的大概关系

第二点, 你得先了解自己的数据,说白了就是要理解A B C本身是怎么划分的, 是否有
什么动力学的原因,然后从直觉上找出是否有特征重要的

第三点,建议先对数据降维可视化, 尽量的理解数据

上来盲目的跑 tf, 只可能 garbage in , garbage out

--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 173.]

 
bolero
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 7 ]

发信人: bolero (ripple), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Thu Oct 24 13:56:00 2019, 美东)

汗一个,我对统计学习方法对数据量的和特征数之间的大概关系缺少经验。这个实验也
是为了找感觉的。

这个数据的50个分类是有数学上的意义的,我想要试试用NN能不能跳过这种table look
-up的approach。之所以先挑选了有线性关系的data,因为我觉得我可以不用软件,直
接手写一个十几个neuon的NN,并写出它们的weights/biases,那么tensorflow之类还
不是手到擒来。这样下一步就可以加入更多的关系,比如说coordinates之间的乘积,
三角函数之类。。。不过确实是经验不够,第一步就卡壳了。

我先得用svm试一下,再跟诸位报告一下结果。大家有什么批评建议,请多多指教。
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 107.]

 
Nisayer
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 8 ]

发信人: Nisayer (si fata sinata), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 02:26:01 2019, 美东)


【 在 bolero (ripple) 的大作中提到: 】
: 汗一个,我对统计学习方法对数据量的和特征数之间的大概关系缺少经验。这个实验也
: 是为了找感觉的。
: 这个数据的50个分类是有数学上的意义的,我想要试试用NN能不能跳过这种table
look
: -up的approach。之所以先挑选了有线性关系的data,因为我觉得我可以不用软件,直
: 接手写一个十几个neuon的NN,并写出它们的weights/biases,那么tensorflow之类还
: 不是手到擒来。这样下一步就可以加入更多的关系,比如说coordinates之间的乘积,
: 三角函数之类。。。不过确实是经验不够,第一步就卡壳了。
: 我先得用svm试一下,再跟诸位报告一下结果。大家有什么批评建议,请多多指教。


SVM也不会好使

SVM你这里基本要用 Kernel function ,  kernel function展开之后, 原理上与 NN/
DL 基本是一致的


--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 52.]

 
frozensea
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 9 ]

发信人: frozensea (冰冻之海), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 10:17:31 2019, 美东)

这些是非常强的条件,你没有用好。
几点需要确认:
1. 这种线性关系是能定量给出的,还是只是知道这几个变量存在线性关系?
2. 数据大小是50K x 10,这两个维度是否分别指记录数和每条记录的维度?是否存在
某些记录维度缺失的问题?
3. 你用sequential model的原因是什么?我没有看到原始数据中关于序列性的描述

【 在 bolero (ripple) 的大作中提到: 】
: 对,总共有50个左右的类型。50k左右的数据,每个类型多的有7k,少的有几十个样
本。
: 我主要是觉得如果对各个类型来说,每个数据点的coordinates都满足几个给定的线性
: 关系(比如说类型15的数据点,x1=x2=x3, x4=(x1-x5)/2,x6=(3*x7+x8)/5, ...),这
: 种情况下是不是应该比较符合neural network的model?怎么做会提高accuracy?请大
: 家不吝赐教。谢谢啦!



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 47.]

 
magliner
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 10 ]

发信人: magliner (magliner), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 10:37:58 2019, 美东)

请教老师傅, svm为啥这么流行 ? 我偶尔用用, 效果不怎么样,还比不过普通的回
归,我用的都是很简单的有明显线性关系的数据。

svm好像做生物的很喜欢用, 不知道为什么。

【 在 Nisayer (si fata sinata) 的大作中提到: 】
: look
: SVM也不会好使
: SVM你这里基本要用 Kernel function ,  kernel function展开之后, 原理上与 NN/
: DL 基本是一致的



--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 205.]

 
Nisayer
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 11 ]

发信人: Nisayer (si fata sinata), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 12:02:49 2019, 美东)


【 在 magliner (magliner) 的大作中提到: 】
: 请教老师傅, svm为啥这么流行 ? 我偶尔用用, 效果不怎么样,还比不过普通的回
: 归,我用的都是很简单的有明显线性关系的数据。
: svm好像做生物的很喜欢用, 不知道为什么。


SVM之所以曾经流行,实际上关键在于kernel function , 类似RBF的函数展开后带来高
阶项,从而给SVM这种线性模型带来了非线性拟合的可能

当然这种所谓的拟合其实并不是非常好用, 而且kernel function 也不是只在SVM里有,
只是在这里最流行

NN/DL 之所以我说也差不多,也是类似的原因,通过非线性的函数例如 sigmoid relu
等的高阶展开,为线性NN方程提供了非线性项, 这点其实是整个 NN /DL的核心

所以NN/DL的框架流行之后,再去搞 SVM 完全没有意义

当然两者都面临同样一个巨大的问题,就是爆炸式增长的模型参数,导致了超级大的过
拟合,而且目前并没有好的办法将这种过拟合去掉,而且我也不认为会有办法

所以我在很早的时候就在讨论会上喷过NN/DL , 因为这就是炼金术,根本不是搞科学的
方法, 我当时预言CNN等类似的图像识别的NN算法一定会在拟合上出问题

后来事实证明, CNN被针对攻击了,

我本人做hardcore science的, 最 hardcore的那种,任何企图从一开始就复杂化的模
型出发来解释解决问题的办法,在我看来都是不靠谱的

至于生物那帮喜欢用SVM, 我恶意的猜想是因为那帮老帮菜上学的时候他们老师不会别
的,只教了SVM, 然后一代代传下来,都只会SVM, 而且他们只会皮毛, 真问他们拉格
朗日对偶到底是要干什么,估计他们都会疯掉

所以,不用在乎他们



--
※ 修改:·Nisayer 於 Oct 25 12:03:40 2019 修改本文·[FROM: 43.]
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 43.]

 
magliner
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 12 ]

发信人: magliner (magliner), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 13:48:08 2019, 美东)

受益匪浅。 理论和实践确实有差距的。 我一般就瞎试。
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 205.]

 
bolero
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 13 ]

发信人: bolero (ripple), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 14:37:28 2019, 美东)



是50k条记录,每个记录的维度是10。没有维度缺失的问题。
50k records: X1,X2, ... X50000,

each record Xi has ten dimensions:[xi1, xi2, xi3, ..., xi10]

50个类型是由变量间的关系决定的:

cat1:  for all Xi which satisfies (xi3 = 2 * (xi1 - xi4) and xi5 = xi7
and xi9 = xi10 / 3 and ...)
cat2:   for all Xi which satisfies (xi2 = xi7 + xi5/3 and xi3 = xi4 = xi6 
and ...)
...

cat50: none of the above.

用sequential的原因是我觉得这种情况应该是能训练出来neuron辨认出数据中有限的十
几种weighted sum of variables,然后第二层再进行combination,就可以搞定。或许
我的理解过于粗糙?

【 在 frozensea (冰冻之海) 的大作中提到: 】
: 这些是非常强的条件,你没有用好。
: 几点需要确认:
: 1. 这种线性关系是能定量给出的,还是只是知道这几个变量存在线性关系?
: 2. 数据大小是50K x 10,这两个维度是否分别指记录数和每条记录的维度?是否存在
: 某些记录维度缺失的问题?
: 3. 你用sequential model的原因是什么?我没有看到原始数据中关于序列性的描述
: 本。





--
※ 修改:·bolero 於 Oct 25 14:39:00 2019 修改本文·[FROM: 107.]
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 107.]

 
lightroom
进入未名形象秀
我的博客
[回复] [回信给作者] [本篇全文] [本讨论区] [修改] [删除] [转寄] [转贴] [收藏] [举报] [ 14 ]

发信人: lightroom (吃一条鱼,思考一个问题,法号三丰), 信区: Programming
标  题: Re: 请教一个机器学习的问题
发信站: BBS 未名空间站 (Fri Oct 25 15:41:29 2019, 美东)

你这个不用ml也能做吧,优化一下算法nlogn复杂度。如果用ml, boosting tree应该更
合适

【在  bolero(ripple)的大作中提到:】



--
※ 来源:·Android 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 2604:ca00:100:4]

[分页:1 ]
[快速返回] [ 进入葵花宝典讨论区] [返回顶部]
回复文章
标题:
内 容:

未名交友
将您的链接放在这儿

友情链接


 

Site Map - Contact Us - Terms and Conditions - Privacy Policy

版权所有,未名空间(mitbbs.com),since 1996