當前位置:首頁 » 操作系統 » java相似度演算法

java相似度演算法

發布時間: 2022-11-13 02:32:43

『壹』 急求:比較兩個新聞是否是報道同一個事情(同一個新聞) 要求java實現

用文本匹配,重復率達80%以上,可以認為是同一新聞。大學裡面畢設論文查重用的是同一原理。

『貳』 請問各位高手 計算兩句話的cosin相似度 用java代碼如何實現

給你看看我的思路:把兩句話存在兩個String里,然後用一個int記String長度,一個int記相同字的個數,最後把兩個int一除就出來了。
當然這個是最簡單的,只能算相同長度的兩句話。

『叄』 Java 如何對比兩張圖片的相似度

這是java的弱項,屬於純演算法范疇,應該沒有什麼辦法。
希望回答能給你帶來幫助~
如果滿意,請採納,如還有疑問,可繼續追問!
您也可以向我們團隊發出請求,會有更專業的人來為您解答!

『肆』 java中怎麼求基因檢測問題 用一個字元串表示一段基因,例如:「CTATGGGTTT」。兩段基因的相似度定義為它們

public class test{
public static void main(String args[]){
String a="CTATGGGTTT";
String b="QBATGAFETF";
float f;
float t=0;
for(int i=0;i<a.length();i++){
if(a.charAt(i)==b.charAt(i))
t++;
}
f=t/a.length();
System.out.println("相似度:"+f*100+"%");
}
}

『伍』 怎麼用lucene判斷兩篇文章的相似度 java

用演算法中的求最大相似子字元串的方法LCS或許可以,它可以找到兩個字元串中最大相似的子字元串。
Java code

/*
* @author talent_marquis<甜菜侯爵>
* Email: [email protected]
* Copyright (C) 2007 talent_marquis<甜菜侯爵>
* All rights reserved.
*/

package ustc.mse.algorithms.dynamicProgramming;

/*
* LCS, Longest-Common-Subsequence
*/
public class LCS
{
public enum DIRECTION{ TOP, TOP_LEFT, LEFT };
private char[] first;
private char[] second;
private int[][] lcsTable;
private DIRECTION[][] lcsAssistTable;
private int lcsLength;
private String lcs_str, lcsMatrix_str, lcsAssistMatrix_str;
private StringBuffer str_buffer;

public LCS( String str1, String str2 )
{
first = str1.toCharArray();
second = str2.toCharArray();
lcsTable = new int[ first.length + 1 ][ second.length + 1 ];
lcsAssistTable = new DIRECTION[ first.length + 1 ][ second.length + 1];
lcs_str = null;

『陸』 如何計算多個文本的相似度java程序,利用向量

String text1 = "我愛學習";
String text2 = "我愛讀書";
String text3 = "他是黑客";
TextSimilarity textSimilarity = new CosineTextSimilarity();
double score1pk1 = textSimilarity.similarScore(text1, text1);
double score1pk2 = textSimilarity.similarScore(text1, text2);
double score1pk3 = textSimilarity.similarScore(text1, text3);
double score2pk2 = textSimilarity.similarScore(text2, text2);
double score2pk3 = textSimilarity.similarScore(text2, text3);
double score3pk3 = textSimilarity.similarScore(text3, text3);
System.out.println(text1+" 和 "+text1+" 的相似度分值:"+score1pk1);
System.out.println(text1+" 和 "+text2+" 的相似度分值:"+score1pk2);
System.out.println(text1+" 和 "+text3+" 的相似度分值:"+score1pk3);
System.out.println(text2+" 和 "+text2+" 的相似度分值:"+score2pk2);
System.out.println(text2+" 和 "+text3+" 的相似度分值:"+score2pk3);
System.out.println(text3+" 和 "+text3+" 的相似度分值:"+score3pk3);

運行結果如下:
我愛學習 和 我愛學習 的相似度分值:1.0
我愛學習 和 我愛讀書 的相似度分值:0.4
我愛學習 和 他是黑客 的相似度分值:0.0
我愛讀書 和 我愛讀書 的相似度分值:1.0
我愛讀書 和 他是黑客 的相似度分值:0.0
他是黑客 和 他是黑客 的相似度分值:1.0

方式二:簡單共有詞,通過計算兩篇文檔有多少個相同的詞來評估他們的相似度
實現類:org.apdplat.word.analysis.SimpleTextSimilarity
用法如下:
String text1 = "我愛學習";
String text2 = "我愛讀書";
String text3 = "他是黑客";
TextSimilarity textSimilarity = new SimpleTextSimilarity();
double score1pk1 = textSimilarity.similarScore(text1, text1);
double score1pk2 = textSimilarity.similarScore(text1, text2);
double score1pk3 = textSimilarity.similarScore(text1, text3);
double score2pk2 = textSimilarity.similarScore(text2, text2);
double score2pk3 = textSimilarity.similarScore(text2, text3);
double score3pk3 = textSimilarity.similarScore(text3, text3);
System.out.println(text1+" 和 "+text1+" 的相似度分值:"+score1pk1);
System.out.println(text1+" 和 "+text2+" 的相似度分值:"+score1pk2);
System.out.println(text1+" 和 "+text3+" 的相似度分值:"+score1pk3);
System.out.println(text2+" 和 "+text2+" 的相似度分值:"+score2pk2);
System.out.println(text2+" 和 "+text3+" 的相似度分值:"+score2pk3);
System.out.println(text3+" 和 "+text3+" 的相似度分值:"+score3pk3);

運行結果如下:
我愛學習 和 我愛學習 的相似度分值:1.0
我愛學習 和 我愛讀書 的相似度分值:0.5
我愛學習 和 他是黑客 的相似度分值:0.0
我愛讀書 和 我愛讀書 的相似度分值:1.0
我愛讀書 和 他是黑客 的相似度分值:0.0
他是黑客 和 他是黑客 的相似度分值:1.0

『柒』 java如何實現超過10w條文本數據的相似度計算

最簡單的、最節省性能的方法是建立字典。 字典的索引就是字本身,遍歷字元串,沒遇到一個字就加入到字典中,加入的時候判斷下,如果索引存在則加1,不存在則創建,然後在取字典最大值,大於6就報錯。 上面說的字典可以用java中的hashMap實現。

『捌』 java版 opencv 圖像對比相似度怎麼實現

沒有專門的函數,你要自己寫 以前寫過一個,先轉HSV,只考慮HS兩維,再求顏色直方圖,最後根據兩個圖像對應直方圖上的距離就可以了,通過這個可以計算相似度

『玖』 有沒有可以檢查出兩個java程序代碼相似度的軟體或者方法如果有,除了改名字之外 ,添加空格或者改

有的,是基於編譯後的位元組碼的檢測,因此添加空格是不管用的,method順序不清楚,大致原理跟下面這個論文里的差不多,但是具體的軟體應該有所不同,需要知道具體是什麼軟體才好針對性的做修改以避免抄襲檢測
http://wenku..com/link?url=_1MlghFbxQ_

『拾』 java學到哪才可以檢測兩個文本的相似度

學到IO流可以比較文本了, 不過用IO比較文本比較麻煩, 而且效率低

如果要效率高的話, 就需要學
linux + thread + progress

這樣子可以通過java調用linux命令
linux中有一個comm -12命令來實現比較兩個文件的共同數據, 生成一個新文本。 拿到新文本的大小/舊文本的大小, 舊可以粗略計算出相似度, 而且效率極其高
如果文本有上百萬行數據的話, 用IO可能要十幾個小時才有結果, 但是linux命令只需要1分鍾左右就可以出結果

熱點內容
隨機啟動腳本 發布:2025-07-05 16:10:30 瀏覽:513
微博資料庫設計 發布:2025-07-05 15:30:55 瀏覽:15
linux485 發布:2025-07-05 14:38:28 瀏覽:296
php用的軟體 發布:2025-07-05 14:06:22 瀏覽:747
沒有許可權訪問計算機 發布:2025-07-05 13:29:11 瀏覽:421
javaweb開發教程視頻教程 發布:2025-07-05 13:24:41 瀏覽:671
康師傅控流腳本破解 發布:2025-07-05 13:17:27 瀏覽:229
java的開發流程 發布:2025-07-05 12:45:11 瀏覽:672
怎麼看內存卡配置 發布:2025-07-05 12:29:19 瀏覽:273
訪問學者英文個人簡歷 發布:2025-07-05 12:29:17 瀏覽:823