當前位置:首頁 » 凈水方式 » 敏感詞過濾介面

敏感詞過濾介面

發布時間: 2021-03-27 22:49:06

『壹』 朋友圈發那些敏感詞會被限制或封號

是的,請謹慎發言,網上的言論是要負責任的,不能亂講。請採納謝謝!

『貳』 提問違規,申訴失敗什麼原因

可以再次申訴!可能是真的違規了

『叄』 有介面可以調用微軟小冰在線聊天嗎

建一個關鍵詞詞庫,對用戶輸入的語句進行關鍵詞匹配,然後調用對應的知內識庫。
此種方式容入門門檻很低,基本上是個程序員都能實現,例如現在微信公眾平台的智能回復、諸多網站的敏感詞過濾就是此類。
但此種方式存在諸多問題,例如:
a、由於是關鍵詞匹配,如果用戶輸入的語句中出現多個關鍵詞,此時由於涉及關鍵詞權重(與知識庫的關鍵詞對比)等等問題,此時關鍵詞匹配的方法就不擅長了
b、不存在對用戶輸入語句語義的理解,導致會出現答非所問的現象。當然在產品上對回答不上的問題就採用賣萌的方式來規避掉。
c、基本上無自學習能力,規則只能完全由人工維護,且規則基本是固定死的。
d、性能、擴展性較差。還是上面的一句話中包含多個關鍵詞的例子,採用普通程序語言來做關鍵詞匹配,性能奇差。即便採用一些文本處理的演算法來做(例如Double-array trie tree),也很難滿足大規模場景需求。

『肆』 微軟小冰什麼原理

作者:梁川
鏈接:http://www.hu.com/question/23952075/answer/26243159
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。

剛好做過一個類似的產品,雖然沒有那麼高大上,但一些核心技術原理應該也參考意義,說一下做的思路。
類似小冰這樣的產品說簡單也簡單,說復雜也復雜。單純從外面看你會覺得小冰與去年人人網上流行的小黃雞類似,但在技術實現上有本質的差異。
此類應用的大致流程都是:用戶輸入一段話(不一定只是單詞)->後端語義引擎對用戶輸入的語句進行語義解析->推斷用戶最可能的意圖->調用對應的知識庫、應用、計算引擎->返回結果給用戶。

1、最初級的實現方法:關鍵詞匹配
建一個關鍵詞詞庫,對用戶輸入的語句進行關鍵詞匹配,然後調用對應的知識庫。
此種方式入門門檻很低,基本上是個程序員都能實現,例如現在微信公眾平台的智能回復、諸多網站的敏感詞過濾就是此類。
但此種方式存在諸多問題,例如:
a、由於是關鍵詞匹配,如果用戶輸入的語句中出現多個關鍵詞,此時由於涉及關鍵詞權重(與知識庫的關鍵詞對比)等等問題,此時關鍵詞匹配的方法就不擅長了
b、不存在對用戶輸入語句語義的理解,導致會出現答非所問的現象。當然在產品上對回答不上的問題就採用賣萌的方式來規避掉。
c、基本上無自學習能力,規則只能完全由人工維護,且規則基本是固定死的。
d、性能、擴展性較差。還是上面的一句話中包含多個關鍵詞的例子,採用普通程序語言來做關鍵詞匹配,性能奇差。即便採用一些文本處理的演算法來做(例如Double-array trie tree),也很難滿足大規模場景需求。

2、稍微高級點的實現方法:基於搜索引擎、文本挖掘、自然語言處理(NLP)等技術來實現
相對於1的關鍵詞匹配,此種實現方法要解決的核心的問題可以大致理解為:根據一段短文本(例如用戶問的一句話)的語義,推測出用戶最可能的意圖,然後從海量知識庫內容中找出相似度最高的結果。
具體技術實現就不細說了。舉一個很粗糙的例子來簡單說一下此種實現方法處理的思路(不嚴謹,只是為了說明思路)。
假如用戶問:北京後天的溫度是多少度?
如果採用純搜索引擎的思路(基於文本挖掘、NLP的思路不盡相同,但可參考此思路),此時實際流程上分成幾步處理:
1、對輸入語句分詞,得到北京、後天、溫度3個關鍵詞。分詞時候利用了預先建好的行業詞庫,「北京」符合預先建好的城市庫、「後天」符合日期庫、「溫度」符合氣象庫
2、將上述分詞結果與規則庫按照一定演算法做匹配,得出匹配度最高的規則。假定在規則庫中有一條天氣的規則:城市庫+日期庫+氣象庫,從而大致可以推測用戶可能想問某個地方某天的天氣。
3、對語義做具體解析,知道城市是北京,日期是後天,要獲取的知識是天氣預報
4、調用第三方的天氣介面,例如中國天氣網-專業天氣預報、氣象服務門戶 的數據
5、將結果返回給用戶

以上例子其實很粗糙,實際上還有諸多問題沒提到:語義上下文、語義規則的優先順序等等。
例如用戶上一句問:北京後天的溫度是多少度?下一句問:後天的空氣質量呢?這里實際上還涉及語義上下文、用戶歷史喜好數據等等諸多問題。

此種處理方法存在的最大問題:規則庫還主要依賴於人工的建立,雖然有一定的學習能力,但自我學習能力還是較弱。可以藉助一些訓練演算法來完善規則,但效果並不是很好。而這也是目前流行的深度挖掘技術所擅長的。

3、當下時髦且高級的玩法:基於深度挖掘、大數據技術來實現
這是cornata、google now等後端的支撐技術,至於小冰,感覺應該是以2為主+部分領域知識的深度挖掘。

『伍』 web容器在調用filter的destroy方法之後還會調用一次dofilter方法嗎

不會,destory 就結束服務了

『陸』 微軟小冰的工作原理。

微瘋客小編為你回答,

類似小冰這樣的產品說簡單也簡單,說復雜也復雜。單純從外面看你會覺得小冰與去年人人網上流行的小黃雞類似,但在技術實現上有本質的差異。
此類應用的大致流程都是:用戶輸入一段話(不一定只是單詞)->後端語義引擎對用戶輸入的語句進行語義解析->推斷用戶最可能的意圖->調用對應的知識庫、應用、計算引擎->返回結果給用戶。

1、最初級的實現方法:關鍵詞匹配
建一個關鍵詞詞庫,對用戶輸入的語句進行關鍵詞匹配,然後調用對應的知識庫。
此種方式入門門檻很低,基本上是個程序員都能實現,例如現在微信公眾平台的智能回復、諸多網站的敏感詞過濾就是此類。
但此種方式存在諸多問題,例如:
a、由於是關鍵詞匹配,如果用戶輸入的語句中出現多個關鍵詞,此時由於涉及關鍵詞權重(與知識庫的關鍵詞對比)等等問題,此時關鍵詞匹配的方法就不擅長了
b、不存在對用戶輸入語句語義的理解,導致會出現答非所問的現象。當然在產品上對回答不上的問題就採用賣萌的方式來規避掉。
c、基本上無自學習能力,規則只能完全由人工維護,且規則基本是固定死的。
d、性能、擴展性較差。還是上面的一句話中包含多個關鍵詞的例子,採用普通程序語言來做關鍵詞匹配,性能奇差。即便採用一些文本處理的演算法來做(例如Double-array trie tree),也很難滿足大規模場景需求。

2、稍微高級點的實現方法:基於搜索引擎、文本挖掘、自然語言處理(NLP)等技術來實現
相對於1的關鍵詞匹配,此種實現方法要解決的核心的問題可以大致理解為:根據一段短文本(例如用戶問的一句話)的語義,推測出用戶最可能的意圖,然後從海量知識庫內容中找出相似度最高的結果。
具體技術實現就不細說了。舉一個很粗糙的例子來簡單說一下此種實現方法處理的思路(不嚴謹,只是為了說明思路)。
假如用戶問:北京後天的溫度是多少度?
如果採用純搜索引擎的思路(基於文本挖掘、NLP的思路不盡相同,但可參考此思路),此時實際流程上分成幾步處理:
1、對輸入語句分詞,得到北京、後天、溫度3個關鍵詞。分詞時候利用了預先建好的行業詞庫,「北京」符合預先建好的城市庫、「後天」符合日期庫、「溫度」符合氣象庫
2、將上述分詞結果與規則庫按照一定演算法做匹配,得出匹配度最高的規則。假定在規則庫中有一條天氣的規則:城市庫+日期庫+氣象庫,從而大致可以推測用戶可能想問某個地方某天的天氣。
3、對語義做具體解析,知道城市是北京,日期是後天,要獲取的知識是天氣預報
4、調用第三方的天氣介面,例如中國天氣網-專業天氣預報、氣象服務門戶 的數據
5、將結果返回給用戶

以上例子其實很粗糙,實際上還有諸多問題沒提到:語義上下文、語義規則的優先順序等等。
例如用戶上一句問:北京後天的溫度是多少度?下一句問:後天的空氣質量呢?這里實際上還涉及語義上下文、用戶歷史喜好數據等等諸多問題。

此種處理方法存在的最大問題:規則庫還主要依賴於人工的建立,雖然有一定的學習能力,但自我學習能力還是較弱。可以藉助一些訓練演算法來完善規則,但效果並不是很好。而這也是目前流行的深度挖掘技術所擅長的。

3、當下時髦且高級的玩法:基於深度挖掘、大數據技術來實現
這是cornata、google now等後端的支撐技術,至於小冰,感覺應該是以2為主+部分領域知識的深度挖掘。

並非原創,轉自 hu。

『柒』 百度知道無論是提問還是回答都會立刻被禁止,顯示違反規范,然後讓我申訴,申訴過後都又好了

應該是你的帳號出現異常了,在網路知道里這樣的人也不在少數。
這是因為網路系內統抽風容,把你給關在小黑屋了。

要想從小黑屋裡走出來,就必須去投訴。
有3種途徑可以投訴:
1 去」網路知道投訴吧「發貼投訴;
http://tousu..com/

2 去」知道意見社吧「反饋,就在這個問題的下方點」反饋建議「,就可以向網路反饋問題了;
http://tieba..com/f?kw=%D6%AA%B5%C0%D2%E2%BC%FB%C9%E7

3 找家族成員反饋,如小佑,他是網路官方的,你反饋的問題,他會處理的。
你可以給他發網路私信,也可以通過網路HI聯系他。

『捌』 常見的敏感詞有哪些

敏感詞語是社會創造的…隨時會變。而且范圍很廣。但我們要懂回得。逃避不是解決的辦答法。我們應該想如何讓敏感詞語發出去。就好像 他 。媽 、的,會變成TM D。所以,我們要學會如何將敏感詞語隱蔽。但可以讓人明白意思

『玖』 過濾器實現的filter介面是哪個

Filter簡介

Filter也稱之為過濾器,它是Servlet技術中最實用的技術,Web開發人員通過Filter技術,對web伺服器管理的所有web資源:例如Jsp,
Servlet, 靜態圖片文件或靜態 html
文件等進行攔截,從而實現一些特殊的功能。例如實現URL級別的許可權訪問控制、過濾敏感詞彙、壓縮響應信息等一些高級功能。

它主要用於對用戶請求進行預處理,也可以對HttpServletResponse進行後處理。使用Filter的完整流程:Filter對用戶請求進行預處理,接著將請求交給Servlet進行處理並生成響應,最後Filter再對伺服器響應進行後處理。

Filter功能

在HttpServletRequest到達 Servlet 之前,攔截客戶的HttpServletRequest 。根據需要檢查HttpServletRequest,也可以修改HttpServletRequest 頭和數據。
在HttpServletResponse到達客戶端之前,攔截HttpServletResponse 。根據需要檢查HttpServletResponse,也可以修改HttpServletResponse頭和數據。

如何藉助Filter實現攔截功能

Filter介面中有一個doFilter方法,當開發人員編寫好Filter,並配置對哪個web資源進行攔截後,Web伺服器每次在調用web資源的service方法之前,都會先調用一下filter的doFilter方法,因此,在該方法內編寫代碼可達到如下目的:

調用目標資源之前,讓一段代碼執行。
是否調用目標資源(即是否讓用戶訪問web資源)。
web伺服器在調用doFilter方法時,會傳遞一個filterChain對象進來,filterChain對象是filter介面中最重要的一個對象,它也提供了一個doFilter方法,開發人員可以根據需求決定是否調用此方法,調用該方法,則web伺服器就會調用web資源的service方法,即web資源就會被訪問,否則web資源不會被訪問。

Filter開發兩步走

編寫java類實現Filter介面,並實現其doFilter方法。
在web.xml文件中對編寫的filter類進行注冊,並設置它所能攔截的資源。

web.xml配置各節點介紹:

<filter>指定一個過濾器。
<filter-name>用於為過濾器指定一個名字,該元素的內容不能為空。
<filter-class>元素用於指定過濾器的完整的限定類名。
<init-param>元素用於為過濾器指定初始化參數,它的子元素<param-name>指定參數的名字,<param-value>指定參數的值。
在過濾器中,可以使用FilterConfig介面對象來訪問初始化參數。
<filter-mapping>元素用於設置一個 Filter 所負責攔截的資源。一個Filter攔截的資源可通過兩種方式來指定:Servlet 名稱和資源訪問的請求路徑
<filter-name>子元素用於設置filter的注冊名稱。該值必須是在<filter>元素中聲明過的過濾器的名字
<url-pattern>設置 filter 所攔截的請求路徑(過濾器關聯的URL樣式)
<servlet-name>指定過濾器所攔截的Servlet名稱。
<dispatcher>指定過濾器所攔截的資源被 Servlet 容器調用的方式,可以是REQUEST,INCLUDE,FORWARD和ERROR之一,默認REQUEST。用戶可以設置多個<dispatcher>子元素用來指定 Filter 對資源的多種調用方式進行攔截。
<dispatcher>子元素可以設置的值及其意義
REQUEST:當用戶直接訪問頁面時,Web容器將會調用過濾器。如果目標資源是通過RequestDispatcher的include()或forward()方法訪問時,那麼該過濾器就不會被調用。
INCLUDE:如果目標資源是通過RequestDispatcher的include()方法訪問時,那麼該過濾器將被調用。除此之外,該過濾器不會被調用。
FORWARD:如果目標資源是通過RequestDispatcher的forward()方法訪問時,那麼該過濾器將被調用,除此之外,該過濾器不會被調用。
ERROR:如果目標資源是通過聲明式異常處理機制調用時,那麼該過濾器將被調用。除此之外,過濾器不會被調用。

Filter鏈

在一個web應用中,可以開發編寫多個Filter,這些Filter組合起來稱之為一個Filter鏈。

web伺服器根據Filter在web.xml文件中的注冊順序,決定先調用哪個Filter,當第一個Filter的doFilter方法被調用時,web伺服器會創建一個代表Filter鏈的FilterChain對象傳遞給該方法。在doFilter方法中,開發人員如果調用了FilterChain對象的doFilter方法,則web伺服器會檢查FilterChain對象中是否還有filter,如果有,則調用第2個filter,如果沒有,則調用目標資源。

Filter的生命周期

public void init(FilterConfig filterConfig) throws ServletException;//初始化
和我們編寫的Servlet程序一樣,Filter的創建和銷毀由WEB伺服器負責。 web 應用程序啟動時,web 伺服器將創建Filter 的實例對象,並調用其init方法,讀取web.xml配置,完成對象的初始化功能,從而為後續的用戶請求作好攔截的准備工作(filter對象只會創建一次,init方法也只會執行一次)。開發人員通過init方法的參數,可獲得代表當前filter配置信息的FilterConfig對象。

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException;//攔截請求
這個方法完成實際的過濾操作。當客戶請求訪問與過濾器關聯的URL的時候,Servlet過濾器將先執行doFilter方法。FilterChain參數用於訪問後續過濾器。

public void destroy();//銷毀
Filter對象創建後會駐留在內存,當web應用移除或伺服器停止時才銷毀。在Web容器卸載 Filter 對象之前被調用。該方法在Filter的生命周期中僅執行一次。在這個方法中,可以釋放過濾器使用的資源。

FilterConfig介面

用戶在配置filter時,可以使用為filter配置一些初始化參數,當web容器實例化Filter對象,調用其init方法時,會把封裝了filter初始化參數的filterConfig對象傳遞進來。因此開發人員在編寫filter時,通過filterConfig對象的方法,就可獲得以下內容:

String getFilterName();//得到filter的名稱。
String getInitParameter(String name);//返回在部署描述中指定名稱的初始化參數的值。如果不存在返回null.
Enumeration getInitParameterNames();//返回過濾器的所有初始化參數的名字的枚舉集合。
public ServletContext getServletContext();//返回Servlet上下文對象的引用。

Filter使用案例

使用Filter驗證用戶登錄安全控制

前段時間參與維護一個項目,用戶退出系統後,再去地址欄訪問歷史,根據url,仍然能夠進入系統響應頁面。我去檢查一下發現對請求未進行過濾驗證用戶登錄。添加一個filter搞定問題!

先在web.xml配置

<filter>
<filter-name>SessionFilter</filter-name>
<filter-class>com.action.login.SessionFilter</filter-class>
<init-param>
<param-name>logonStrings</param-name><!-- 對登錄頁面不進行過濾 -->
<param-value>/project/index.jsp;login.do</param-value>
</init-param>
<init-param>
<param-name>includeStrings</param-name><!-- 只對指定過濾參數後綴進行過濾 -->
<param-value>.do;.jsp</param-value>
</init-param>
<init-param>
<param-name>redirectPath</param-name><!-- 未通過跳轉到登錄界面 -->
<param-value>/index.jsp</param-value>
</init-param>
<init-param>
<param-name>disabletestfilter</param-name><!-- Y:過濾無效 -->
<param-value>N</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SessionFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

接著編寫FilterServlet

package com.action.login;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;

/**
* 判斷用戶是否登錄,未登錄則退出系統
*/
public class SessionFilter implements Filter {

public FilterConfig config;

public void destroy() {
this.config = null;
}

public static boolean isContains(String container, String[] regx) {
boolean result = false;

for (int i = 0; i < regx.length; i++) {
if (container.indexOf(regx[i]) != -1) {
return true;
}
}
return result;
}

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest hrequest = (HttpServletRequest)request;
HttpServletResponseWrapper wrapper = new HttpServletResponseWrapper((HttpServletResponse) response);

String logonStrings = config.getInitParameter("logonStrings"); // 登錄登陸頁面
String includeStrings = config.getInitParameter("includeStrings"); // 過濾資源後綴參數
String redirectPath = hrequest.getContextPath() + config.getInitParameter("redirectPath");// 沒有登陸轉向頁面
String disabletestfilter = config.getInitParameter("disabletestfilter");// 過濾器是否有效

if (disabletestfilter.toUpperCase().equals("Y")) { // 過濾無效
chain.doFilter(request, response);
return;
}
String[] logonList = logonStrings.split(";");
String[] includeList = includeStrings.split(";");

if (!this.isContains(hrequest.getRequestURI(), includeList)) {// 只對指定過濾參數後綴進行過濾
chain.doFilter(request, response);
return;
}

if (this.isContains(hrequest.getRequestURI(), logonList)) {// 對登錄頁面不進行過濾
chain.doFilter(request, response);
return;
}

String user = ( String ) hrequest.getSession().getAttribute("useronly");//判斷用戶是否登錄
if (user == null) {
wrapper.sendRedirect(redirectPath);
return;
}else {
chain.doFilter(request, response);
return;
}
}

public void init(FilterConfig filterConfig) throws ServletException {
config = filterConfig;
}
}

這樣既可完成對用戶所有請求,均要經過這個Filter進行驗證用戶登錄。

防止中文亂碼過濾器

項目使用spring框架時。當前台JSP頁面和Java代碼中使用了不同的字元集進行編碼的時候就會出現表單提交的數據或者上傳/下載中文名稱文件出現亂碼的問題,那就可以使用這個過濾器。

<filter>
<filter-name>encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name><!--用來指定一個具體的字元集-->
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name><!--true:無論request是否指定了字元集,都是用encoding;false:如果request已指定一個字元集,則不使用encoding-->
<param-value>false</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

『拾』 js如何實現模糊查詢及帶下拉菜單

現模糊查詢及帶下拉菜單

<div><input type="text"></div>

<div class="hang">

<div class="yiji">一級導航內</div>

<ul class="erji">

<li>二級導航1</li>

<li>二級導航2</li>

</ul>

<div class="yiji">一級導航</div>

<ul class="erji">

<li>二級導航3</li>

<li>二級導航4</li>

</ul>

</div>。

熱點內容
丁度巴拉斯情人電影推薦 發布:2024-08-19 09:13:07 瀏覽:886
類似深水的露點電影 發布:2024-08-19 09:10:12 瀏覽:80
《消失的眼角膜》2電影 發布:2024-08-19 08:34:43 瀏覽:878
私人影院什麼電影好看 發布:2024-08-19 08:33:32 瀏覽:593
干 B 發布:2024-08-19 08:30:21 瀏覽:910
夜晚看片網站 發布:2024-08-19 08:20:59 瀏覽:440
台灣男同電影《越界》 發布:2024-08-19 08:04:35 瀏覽:290
看電影選座位追女孩 發布:2024-08-19 07:54:42 瀏覽:975
日本a級愛情 發布:2024-08-19 07:30:38 瀏覽:832
生活中的瑪麗類似電影 發布:2024-08-19 07:26:46 瀏覽:239