julei2.py-20180721

本文介绍了一种利用jieba分词结合TF-IDF与KMeans算法实现中文文本聚类的方法。通过对示例文本进行预处理、特征提取及聚类分析,展示了如何有效划分相似文本组。
# -*- coding: utf-8 -*-
"""
Created on Wed Jul 18 09:35:01 2018

@author: wenyun.wxw
"""

import jieba 
from sklearn.feature_extraction.text import  TfidfVectorizer
from sklearn.cluster import KMeans

def jieba_tokenize(text):
    return jieba.lcut(text) 


tfidf_vectorizer = TfidfVectorizer(tokenizer=jieba_tokenize, lowercase=False)
'''
tokenizer: 指定分词函数
lowercase: 在分词之前将所有的文本转换成小写,因为涉及到中文文本处理,
所以最好是False
'''
print("ok3")
text_list = ["今天天气真好啊啊啊啊", "小明上了清华大学", \
"我今天拿到了Google的Offer", "清华大学在自然语言处理方面真厉害"]
 #需要进行聚类的文本集
print("ok1")
tfidf_matrix = tfidf_vectorizer.fit_transform(text_list)

num_clusters = 2
km_cluster = KMeans(n_clusters=num_clusters, max_iter=300, n_init=1, \
                    init='k-means++',n_jobs=1)
print("ok2")
'''
n_clusters: 指定K的值
max_iter: 对于单次初始值计算的最大迭代次数
n_init: 重新选择初始值的次数
init: 制定初始值选择的算法
n_jobs: 进程个数,为-1的时候是指默认跑满CPU
注意,这个对于单个初始值的计算始终只会使用单进程计算,
并行计算只是针对与不同初始值的计算。比如n_init=10,n_jobs=40, 
服务器上面有20个CPU可以开40个进程,最终只会开10个进程
'''
#返回各自文本的所被分配到的类索引
result = km_cluster.fit_predict(tfidf_matrix)

print("Predicting result: ", result)

 

下载方式:https://pan.quark.cn/s/c9b9b647468b ### 初级JSP程序设计教程核心内容解析#### 一、JSP基础概述JSP(JavaServer Pages)是由Sun Microsystems公司创建的一种动态网页技术规范,主要应用于构建动态网站及Web应用。JSP技术使得开发者能够将动态数据与静态HTML文档整合,从而实现网页内容的灵活性和可变性。##### JSP的显著特性:1. **动态与静态内容的分离**:JSP技术支持将动态数据(例如数据库查询结果、实时时间等)嵌入到静态HTML文档中。这种设计方法增强了网页的适应性和可维护性。2. **易用性**:开发者可以利用常规的HTML编辑工具来编写静态部分,并通过简化的标签技术将动态内容集成到页面中。3. **跨平台兼容性**:基于Java平台的JSP具有优良的跨操作系统运行能力,能够在多种不同的系统环境中稳定工作。4. **强大的后台支持**:JSP能够通过JavaBean组件访问后端数据库及其他资源,以实现复杂的数据处理逻辑。5. **执行效率高**:JSP页面在初次被请求时会被转换为Servlet,随后的请求可以直接执行编译后的Servlet代码,从而提升了服务响应的效率。#### 二、JSP指令的运用JSP指令用于设定整个JSP页面的行为规范。这些指令通常放置在页面的顶部,向JSP容器提供处理页面的相关指导信息。##### 主要的指令类型:1. **Page指令**: - **语法结构**:`<%@ page attribute="value" %>` - **功能**:定义整个JSP页面的运行特性,如设定页面编码格式、错误处理机制等。 - **实例**: ...
### Java程序运行时找不到或无法加载主类的问题分析与解决方法 在Java程序运行时,如果出现“找不到或无法加载主类”的错误,通常是由以下几个原因引起的: 1. **类路径(Classpath)配置错误**:Java虚拟机无法找到指定的主类文件,可能是由于类路径设置不正确导致[^5]。 2. **主类名称拼写错误**:提供的主类名称可能与实际编译后的类名不一致,或者大小写错误[^5]。 3. **缺少`main`方法**:主类中必须包含一个符合规范的`public static void main(String[] args)`方法,否则无法作为入口点[^5]。 4. **打包问题**:如果使用Maven或Gradle构建项目,可能是因为未正确配置插件,导致生成的JAR文件中缺少`Main-Class`属性[^1]。 以下是针对上述问题的具体解决方法: #### 1. 检查类路径配置 确保在运行程序时,类路径中包含编译后的`.class`文件所在的目录。例如: ```bash java -cp ./target/classes com.seelink.julei.ShopApplication ``` 如果使用的是外部库,请确保所有依赖的JAR文件也包含在类路径中。可以使用以下命令: ```bash java -cp ./target/classes:./lib/* com.seelink.julei.ShopApplication ``` #### 2. 验证主类名称 检查`ShopApplication`类是否位于`com.seelink.julei`包下,并且类名的大小写完全匹配。如果类名不匹配或包路径错误,都会导致此问题[^5]。 #### 3. 确保主类中有`main`方法 打开`ShopApplication.java`文件,确认其包含以下方法签名: ```java public static void main(String[] args) { // 程序入口逻辑 } ``` #### 4. 修改Maven配置以正确打包 如果项目是基于Maven构建的,需要确保`spring-boot-maven-plugin`插件已正确配置。根据引用内容,可以在`pom.xml`中添加以下配置: ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>com.seelink.julei.ShopApplication</mainClass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build> ``` 然后重新执行以下命令以生成包含`Main-Class`属性的JAR文件: ```bash mvn clean package ``` #### 5. 检查MANIFEST.MF文件 运行`jar tf target/*.jar`命令,查看JAR文件中的`META-INF/MANIFEST.MF`文件是否包含以下内容: ``` Main-Class: com.seelink.julei.ShopApplication ``` 如果没有,请检查Maven插件配置是否正确。 ### 示例代码 以下是一个完整的Spring Boot项目的`pom.xml`片段: ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.7.0</version> <configuration> <mainClass>com.seelink.julei.ShopApplication</mainClass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值