下面是我们问题的一个子样本。
我们有1600个地址位置可以用机器学习找到。
我们的培训数据是
City Subdivision District number1-number2-number3
我们有显示城市分区的官方数据
London Chelsea Kensington 2-3-15
London Chelsea Kensington 4-3-15
London Chelsea Battersea 3-4-2
London Greenwich Charlton 4-3-15
London Greenwich Coldharbour 1-2-1
我们有一万个这样的样品。
所以我们的训练数据是10公里。
Training Data
----------
Label | Features
Kensington | London Chelsea Kensington 5-1-1
Kensington | London Chelsea Kensington 4-3-15
Battersea | London Chelsea Battersea 5-1-1
Battersea | London Chelsea Battersea 4-2-1
Charlton | London Greenwich Charlton 5-1-1
Coldharbour| London Greenwich Coldharbour 5-1-1
----------
把数字当作地址编号。所以不是独一无二的,不是与众不同的。
我们需要猜测的是
----------
Chelsea Kensington 5ー1ー1 sea harbor = Kensington ( sea harbor some additional items which can exist in other addresses
and can mislead our algorithms)
Kensington 5ー1ー1 = Kensington ( Think 5-1-1 exists for lots of addresses and some algorithms (Bayes or Decision Trees)guess this as another address with 5-1-1 Charlton)
Kensington 5 = Kensington ( One might think since it has only Kensington it will gues Kensington but if there is an address
as xxx 5 5 5 Bayes thinks it is xxx )
----------
人们会马上说这需要ngram。但是ngrams匹配
极不相关的高概率条目。带有ngram2或ngram3的bayes发现了许多正确的匹配,但他们也声称错误结果的概率为99。
我试过海湾,决策树,随机森林。。。
在这个高维度上,onevsrest从未完成。
多层感知器没有完成12K特征空间。
内存不足错误。
我将维度减少到3000,但即使这样也没有看到结果。
由于支持向量机是多类的,所以不适用。
总而言之:
我的训练数据很简单,不包含太多信息(一个地方的所有地址列表)
问题是高维度的。(1600个地区)
我可能的数据是看不见的,也可能是不可预测的
输入错误。
我正在考虑做一些主成分分析(SVD),然后是多层感知器
或者CNN。
但我有12000个词汇,可以上1600个班。
我不确定尺寸缩减是否有意义
为了这个问题。
那么,有人曾为这样的问题工作过吗?
最佳答案
为什么不简单地删除所有非字母(包括数字)和可能的停止字在这一点上,上面所示的问题变得简单:当您看到Set A
的某个子集时,然后返回B
。{A
>`b}
示例(删除非字母后):
{ London Chelsea Kensington } -> { Kensington}
所以我也假设:
{ Chelsea Kensington } -> { Kensington}
{ Kensington } -> { Kensington}
不需要任何进一步的要求,只要通过
Set of Sets
解决一个简单的解决方案是将要预测的新集合与所有标记集合的交集进行比较,并找到“赢家”如果您有许多集合,那么您将需要一个由代表集合成员的术语组成的林,以帮助使搜索变得容易处理关于algorithm - 高维文本分类,有效途径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45179955/