
| 序号 | 名称 | 地址 |
|---|---|---|
| 1 | 原文参考 | NLP算法原文地址 |

| 序号 | 名称 | 地址 |
|---|---|---|
| 1 | python环境安装 | https://www.cnblogs.com/liuyangfirst/p/16202614.html |


pip install jieba
import jieba.analyse
sentence = "人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的。2017年12月,人工智能入选“2017年度中国媒体十大流行语”。"
keywords = " ".join(jieba.analyse.extract_tags(sentence , topK=20, withWeight=False, allowPOS=()))
print(keywords)

<dependencies>
<dependency>
<groupId>org.python</groupId>
<artifactId>jython-standalone</artifactId>
<!--python版本是2.x还是3.x在这里指定-->
<version>2.7.0</version>
</dependency>
</dependencies>
public class App {
public static void main(String[] args) {
try {
String a = "人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的。2017年12月,人工智能入选“2017年度中国媒体十大流行语”。";
System.out.println(".................start.................");
//设置命令行传入参数
String[] str = new String[]{"python", "D:/workspace____java/anlysistSentence/src/main/resources/helloworld3.py",a};
Process pr = Runtime.getRuntime().exec(str);
BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream(),"gb2312"));
System.out.println();
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
pr.waitFor();
System.out.println();
System.out.println("..............end.................");
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}


# coding=utf-8
import jieba.analyse
import sys
jieba.setLogLevel(jieba.logging.INFO)
if __name__ == '__main__':
for i in range(1, len(sys.argv)):
sentence = sys.argv[i]
keywords = " ".join(jieba.analyse.extract_tags(
sentence,
topK=20,
withWeight=False,
allowPOS=()
))
print(keywords)
public class App {
public static void main(String[] args) {
try {
String a = "人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的。2017年12月,人工智能入选“2017年度中国媒体十大流行语”。";
System.out.println(".................start.................");
//设置命令行传入参数
String[] str = new String[]{"python", "D:/workspace____java/anlysistSentence/src/main/resources/helloworld3.py",a};
System.out.println(str);
Process pr = Runtime.getRuntime().exec(str);
BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream(),"gb2312"));
System.out.println();
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
pr.waitFor();
System.out.println();
System.out.println("..............end.................");
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
1.jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())这个方法是写死的,这里的参数,都应该是外部传递进来控制的
2.现在的python脚本只是做print打印分析结果,应该是以return的方式返回结果.
Exception in thread "main" SyntaxError: ("mismatched input ':' expecting NEWLINE", ('<string>', 1, 1, 'D:\\workspace____java\\anlysistSentence\\src\\main\\resources\\helloworld2.py\n'))
public static void main(String[] args) {
//首先调用python的解释器 ----------- 只能实现简单的调用,调用的脚本中不能有第三方库
PythonInterpreter interpreter = new PythonInterpreter();
//选择执行的的Python语句
interpreter.exec("print ('hello')");
// 这里就是无法解析
// interpreter.exec("D:\\workspace____java\\anlysistSentence\\src\\main\\resources\\helloworld2.py");
}
Traceback (most recent call last):
File "D:\workspace____java\anlysistSentence\src\main\resources\helloworld3.py", line 3, in <module>
import jieba.analyse
ModuleNotFoundError: No module named 'jieba'



BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream(),"gb2312"));

| 序号 | 描述 | 日期 |
|---|---|---|
| 1 | 第一版 | 2023-07-16 |
| 2 | 第二版 | 2023-07-24 |