原创 minhash

    minhash是一種基於jaccard index 相似度的算法。屬於LSH(Location Sensitive Hash)家族中的一員。   jaccard index :有兩個集合A={a , b , c , d , e

原创 kmeans++

前一陣子有一個學弟問kmeans算法的初始中心點怎麼選,有沒有什麼算法。我讓他看看kmeans++,結果學弟說有地方沒看懂。然後,他不懂的地方,我給標註了一下。 下面是網上的資料,我對畫線的地方做了標註。       k-means++

原创 字符串位移

閒來無事,想起上學時數據結構課程中有個字符串位移的小算法挺有意思,今天寫了下,就測試了一個字符串,純屬娛樂。 public class Offset { public static void swap(char [] chars

原创 TraClus軌跡聚類算法原理及java版實現

  前一陣子我們部門接到了業務那邊的一個需求。想通過用戶的wifi數據計算出商場內用戶最喜愛走的線路。其實說白了就是用戶軌跡聚類。根據業務的需求,我們最終採用了traClus聚類算法。traClus算法相比於其它的軌跡聚類算法的一

原创 DAT的算法原理及實現

一、從Trie說起   DAT是Double Array Trie的縮寫,說到DAT就必須先說一下trie是什麼。Trie樹是哈希樹的一種,來自英文單詞"Retrieval"的簡寫,可以建立有效的數據檢索組織結構,trie中文叫做鍵樹,也

原创 BERT翻譯(v1版本)

Abstract 我們介紹了一個叫BERT的模型,BERT是“Bidirectional Encoder Representations from Transformers”首字母的縮寫。與最近的語言表示模型不同,BERT通過在每

原创 hadoop拾遺(五)---- mapreduce 輸出到多個文件 / 文件夾

今天要把HBase中的部分數據轉移到HDFS上,想根據時間戳來自動輸出到以時間戳來命名的每個文件夾下。雖然以前也做過相似工作,但有些細節還是忘記了,所以這次寫個隨筆記錄一下。   package com.chuntent.hadoop

原创 使用gpt來做聊天機器人

1、使用lm模型來做。   主要思想:根據歷史對話,生成新的語句:注意,這裏不一定是回答語句。   a)基礎數據:100w qq聊天對話。見下圖   b)數據處理:     i)沒有分詞,以字爲基礎進行編碼。     ii)歷史對

原创 MapReduce Unit Test

  以前用java寫MR程序總不習慣寫單元測試,就是查錯也只是在小規模數據上跑一下程序。昨天工作時,遇到一個bug,查了好久也查出來。估計是業務邏輯上的錯誤。後來沒辦法,只好寫了個單元測試,一步步跟蹤,瞬間找到問題所在。所以說,工作中還

原创 使用tensorflow 構建rnn網絡

使用tensorflow實現了簡單的rnn網絡用來學習加法運算。 tensorflow 版本:1.1 import tensorflow as tf from tensorflow.contrib import rnn class R

原创 Attention Is All You Need 中文版

文章目錄Attention Is All You Need 摘要1 Introduction(簡介)2 Background(背景)3 Model Architecture(模型結構)3.1 Encoder and Decoder

原创 weka數據挖掘拾遺(二)---- 特徵選擇(IG、chi-square)

一、說明   IG是information gain 的縮寫,中文名稱是信息增益,是選擇特徵的一個很有效的方法(特別是在使用svm分類時)。這裏不做詳細介紹,有興趣的可以googling一下。   chi-square 是一個常用特徵篩

原创 cnn for qa

最近在做QA系統,用tensorflow做了些實驗,下面的的是一個cnn的評分網絡。主要參考了《APPLYING DEEP LEARNING TO ANSWER SELECTION: A STUDY AND AN OPEN TASK》這

原创 eclipse 中使用tomcat

最近寫了個商品搜索模塊,要做成tomcat服務,以前只關注算法,從來沒有使用過tomcat,這次上網上查了些資料還搞定(小公司真是鍛鍊人啊,以前我從來不考慮這些服務問題)。 1、tomcat 環境的搭建   直接從網上下載tomcat壓

原创 最小堆

  前幾天寫dijkstra算法,想到了最小堆。今天整理了一下。發了出來。還是本着說明天的原則。代碼沒有進行壓縮。   最小堆:   1、用數組表示時,假設當前根節點的下標爲i , 則其兩個子節點的下標分別爲 2*i + 1 與 2*i