通过Azure数据湖上的Azure数据湖分析,使用关键短语提取器和情感分析与U-SQL无关

时间:2018-04-03 22:18:03

标签: bigdata microsoft-cognitive azure-data-lake u-sql azure-data-factory-2

我正在尝试使用数据湖的微软认知服务,并试图从CSV文件列中的文本中获取关键短语和情绪时遇到问题。

我已经检查过以确保文件格式正确并且正确读取(我已经完成了一些基本操作,例如复制,以确保它可行)。

我还确保我对CSV文件(描述)感兴趣的列只包含自己提取的文本(字符串)。

输入文件和输出文件夹位于我的Azure数据湖中,我正在运行Azure上的数据湖分析脚本。我试图在Visual Studio中本地运行它。

我使用Key Phrases Extraction (U-SQL)Sentiment Analysis (U-SQL)作为我的参考,并按照指示进行操作,包括获取插件。

在我提交作业的每种情况下,我都会收到一个错误,似乎无法找到答案。下面我展示了我用过的每个代码以及运行时得到的错误。

关键词组代码

REFERENCE ASSEMBLY [TextSentiment];
REFERENCE ASSEMBLY [TextKeyPhrase];

@myinput =
EXTRACT 
    Modified_On string,
    _Name string,
    Description string,
    Customer string,
    Category string,
    Target_Market string,
    Person_Responsible string,
    Status string,
    _Region string,
    Modified_On_2 string,
    Created_On string,
    _Site string,
    _Team string    
FROM "/userData/fromSharepoint/Game_Plans"
USING Extractors.Csv(skipFirstNRows:1);

@keyphrase =
PROCESS @myinput
PRODUCE 
    Description,
    KeyPhrase string
READONLY
    Description
USING new Cognition.Text.KeyPhraseExtractor();

OUTPUT @keyphrase
    TO "/userData/testingCognitive/tesing1.csv"
    USING Outputters.Csv();

密钥短语错误消息

enter image description here

情感代码

REFERENCE ASSEMBLY [TextSentiment];
REFERENCE ASSEMBLY [TextKeyPhrase];

@myinput =
EXTRACT 
    Modified_On string,
    _Name string,
    Description string,
    Customer string,
    Category string,
    Target_Market string,
    Person_Responsible string,
    Status string,
    _Region string,
    Modified_On_2 string,
    Created_On string,
    _Site string,
    _Team string    
FROM "/userData/fromSharepoint/Game_Plans"
USING Extractors.Csv(skipFirstNRows:1);

@sentiment =
PROCESS @myinput
PRODUCE 
    Description,
    sentiment string,
    conf double
READONLY
    Description
USING new Cognition.Text.SentimentAnalyzer(true);

OUTPUT @sentiment
    TO "/userData/testingCognitive/tesing1.csv"
    USING Outputters.Csv();

情绪错误讯息

enter image description here

非常感谢任何有关如何解决这个问题的帮助。

或者,如果有人使这些功能正常工作,并且可以提供一些脚本来测试,并且链接到输入文件以便下载,这将是非常棒的。

1 个答案:

答案 0 :(得分:1)

我无法重现您的确切错误(您可以发布一些简单的示例数据吗?)但我可以让这些库工作。我认为默认情况下KeyPhraseExtractor需要名为TextKeyPhrase的列,因此如果要更改它们,则必须将列名称作为参数传递,例如

@keyphrase =
    PROCESS @myinput
    PRODUCE Description,
            KeyPhrase string
    READONLY Description
    USING new Cognition.Text.KeyPhraseExtractor("Description", "KeyPhrase");

更新:示例文件中有一些无效字符,就在“Bass”之后。这是一个不间断的空间(U + 00A0),我不会认为你可以导入它们 - 很乐意纠正。我手动删除了这些并能够导入文件。你可以用某种方式预处理它们。

Invalid characters

相关问题