小编mat*_*att的帖子

NLP /任务.回答 - 从数据库中检索信息

我最近一直在读NLP,到目前为止,我已经对一切工作方式有了一个(非常)基本的概念,从句子分割到POS标记,以及知识表示.

我知道有很多种NLP库(主要是Java或Python)并且已经找到了.NET实现(SharpNLP).实际上这很棒.无需编写任何自定义处理逻辑; 只是使用他们的功能和瞧!用户输入分离良好且带有POS标记.

我不明白的是从这里开始,如果我的主要动机是建立一个问答系统(类似于聊天机器人).我可以使用哪些库(最好是.NET)?如果我想构建自己的KB,我应该如何表达我的知识?我是否需要将POS标记的输入解析为我的数据库可以理解的其他内容?如果我使用MS SQL,是否有任何库可以帮助将POS标记输入映射到数据库查询?或者我是否需要编写自己的数据库查询逻辑,根据程序语义(我读过)?

当然,下一步是制定一个构造良好的答复,但我想我可以留待以后再做.现在困扰我的是这个领域缺乏资源(知识表示,NLP到KB/DB检索),如果你们中的任何人能够提供你的专业知识,我真的很感激:)

.net sql-server nlp artificial-intelligence nlp-question-answering

4
推荐指数
1
解决办法
762
查看次数

Java:Thread.sleep()在内部,而循环不起作用

好吧,我是线程新手,所以我的问题可能相当愚蠢.但我要问的是,我有这个类,让我们说它的名字是MyClass.java.然后在其中一个方法中使用callThread(),我想打印出来,睡眠,并将控制权返回给MyClass.java的方法.我怎么做?

目前,我的代码是这样的:

class MyClass {
    void method()
    {
        MyThread thread = new MyThread();
        thread.run();
        // do some other stuff here...
    }
}
Run Code Online (Sandbox Code Playgroud)

然后,这将是MyThread:

class MyThread implements Runnable {
    public void run()
    {
        while (true)
        {
            System.out.println("hi");
            this.sleep(1000);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望MyThread会打印"hi",将控制权交给MyClass,然后在一秒钟之后再打印"hi".相反,MyThread会冻结我的整个程序,因此在那里使用它根本不起作用...

有没有办法解决?

java multithreading

2
推荐指数
1
解决办法
2万
查看次数

F#的格式文档

我想格式化文档:给它缩进和类似的东西.

Ctrl KCtrl D/FVisual Studio中的+ 不适用于F#,是否有任何解决方法?它适用于C#虽然......

编辑:我想做的是从外部源复制粘贴一些代码.我通常使用Ctrl K+ Ctrl D来格式化它,它适用于C#.但是,在.fs文件中,它似乎不起作用.最重要的是,缩进似乎是F#的必备条件......

format f# visual-studio-2010

2
推荐指数
1
解决办法
604
查看次数

使用对象类型作为参数

我一直想知道这个问题:您是否支持在方法中仅使用对象作为参数?我这样做的原因是超载.目前,我试图创建一个迎合许多不同的数据类型的方法:string,decimal,DateTime...这样的例子不胜枚举.

虽然它有点乱,所以我想做以下事情

public void GenericMethod(object val)
{
    if (val is string)
        // process as string
    else if (val is decimal)
        // process as decimal
    else if (val is DateTime)
        // do something for dt
    else
        // ...
}
Run Code Online (Sandbox Code Playgroud)

你觉得这样的方法怎么样?它会产生不必要的开销吗?(在类型检查期间)你实现了吗?告诉我...

编辑:是的,只是一个旁注,我有点熟悉超载.但是当有超过10次超载时会有点恼人......

c# parameters methods object

1
推荐指数
2
解决办法
2261
查看次数

流水线操作以在索引处查找元素

我想在F#中执行以下操作:

let index = 5
let sequence = [0..10]
let fifthElement =
    sequence
    |> .[index]
Run Code Online (Sandbox Code Playgroud)

但是,最后一行无效.我想要做的是实际检索索引为5的元素sequence.我做错了吗?

根据我的理解,流水线操作有助于反转函数调用,但我不确定如何使用流水线技术检索特定索引处的元素.

f# functional-programming sequence pipelined-function

1
推荐指数
2
解决办法
3059
查看次数

LINQ:单个谓词中的多个LIKE子句

我想做一个可以将多个变量与单个字符串进行比较的LINQ查询.我已经看过LINQ for LIKE查询数组元素,它很有用,但并不完全.我需要反过来.

我想做的是以下内容:假设我有Company两个Name和的对象Address.我也有一个字符串keyword.然后,我想找到所有Company的列表具有S keyword在任何他们NameAddress.在SQL中它会......

SELECT * FROM Company
WHERE Name LIKE '%keyword%' OR Address LIKE '%keyword%'
Run Code Online (Sandbox Code Playgroud)

我一直在使用Entity Framework,我尝试了以下内容:context.Companies.Where(x => new string[] { x.Name, x.Address }.Contains(keyword),以及context.Companies.Where(x => new string[] { x.Name, x.Address }.Any(r => r.Contains(keyword)),但都没有成功.第一个给了我一个IN条款,第二个给了我......我不知道它做了什么,但它没有给我我想要的东西.

对不起,我对表达式还没有非常深入的了解(还); 我希望我能够从头开始编写我自己的自定义表达式,但是我还不能抓它 ...有人可以帮助我这个吗?

c# sql linq entity-framework linq-to-sql

1
推荐指数
1
解决办法
1545
查看次数