문서 필터링 설계 예

권장 대상:

  • 장치: 알 수 없음

  • Quartus®: v17.1

author-image

기준

이 예에서는 블룸 필터가 응용 프로그램의 성능에 어떻게 도움이 되는지 예를 제공합니다.

문서 필터링에는 들어오는 문서 스트림을 살펴보고 사용자의 관심사에 가장 적합한 문서를 찾는 것이 포함됩니다. 이러한 시스템의 예는 뉴스 피드를 모니터링하고 관련 기사를 사용자의 이메일 계정으로 보내는 필터링 메커니즘을 사용하는 것입니다. 일반적으로 이 응용 프로그램은 텍스트 파일, HTML 페이지, 이메일 및 비디오 파일과 같은 구조화되지 않은 데이터에 대한 분석을 수행하는 예입니다. 기업 관련 데이터의 최대 80%가 구조화되지 않은 형태로 되어 있는 것으로 추정됩니다.

알고리즘은 특정 검색 프로필에 가장 적합한 문서를 찾으려고 시도합니다. 검색 프로필은 사용자의 관심 주제에 대한 문서와 일치하는 필터입니다. 이를 위해 각 문서는 일련의 단어와 문서에 있는 각 단어의 모양 빈도로 줄어듭니다. t_i, f_i)) 32비트 정회원, 24트 8비트(8000원) 용어는 일반적으로 문서의 단어입니다. 24비트 ID를 사용하면 1,600만 개 이상의 어휘를 사용할 수 있습니다. 검색 프로필은 더 작은 용어 집합과 검색 프로필에서 상대적 중요성을 지정하는 각 용어에 대한 가중치로 구성됩니다. 가중치는 고정점 표현으로 64비트 번호로 구성됩니다. 구조화되지 않은 검색을 수행하려면 모든 문서에 대해 점수가 계산되어 주어진 프로필과 관련성이 결정됩니다.

커널 입력 데이터는 다음과 같습니다.

  • docWordFrequencies/100000 40000000 100000 100000 각 32비트 정수는 문서의 용어 또는 단어를 나타냅니다. 처음 24비트란 용어 ID이며, 마지막 8비트 는 문서에서 이 용어의 발생 빈도입니다.
  • profileWeights는 검색어에 포함됩니다. 더 작은 용어 집합과 검색 프로필에서 상대적 중요성을 지정하는 각 용어에 대한 가중치로 구성됩니다. 가중치는 고정점 표현으로 64비트 번호로 구성됩니다.
  • 는WordInProfileHash.을 참조하십시오. 0 으로 하여금 2개까지의 값이 더 높은 값입니다. 그런 다음 블룸 필터에 컴퓨팅 값을 삽입합니다. 그런 다음 커널 실행 중에 문서에 있는 모든 용어 ID에 대해 두 해시 값이 계산됩니다. 블룸 필터에서 이러한 해시 값을 찾아보십시오. 해시 값 중 하나가 없는 경우 ID라는 단어가 검색 프로필에 없음을 의미합니다. 두 번째 값은 값이 높은 텀텀 프로파일웨이트(ProfileWeights)를 참고하십시오.

커널에 대한 출력 데이터는 다음과 입니다.

  1. profileScorePerGroup_highbits 각기 다른 32비트 32비트(32비트)
  2. profileScorePerGroup_lowbits, 각기 다른 각기 다른 32비트 32비트 10000원의 세로로 세일을 할 수 있습니다.

이 문서는 주어진 프로필과 관련성을 나타내는 문서의 점수를 나타냅니다. 이 응용 프로그램의 처리량을 더욱 개선하기 위해 입력을 각 DDR 메모리 뱅크에 하나씩 있는 두 개의 동일한 크기로 나누었습니다. _dimm2(두 번째 DIMM)에 대한 _dimm1(첫 번째 DIMM 은) _dimm2(DIMM)에 대한 _dimm1. 이는 사용 가능한 두 개의 메모리 뱅크를 활용하여 성능을 더욱 향상시킵니다.

다운로드 수

예: 예시 OpenCL™ 장치(.cl)와 을 참조하십시오. 2010년 Microsoft Visual Studio 2010에서 Linux* 을 2010년도에 사용하십시오.

다음 다운로드는 이 예에 대해 제공됩니다.

이 설계의 사용은 하드웨어 참조 설계 라이센스 계약의이용 약관에 따라 적용됩니다.

인텔( 인텔) 2018년 1월 12일, 인텔, 2018년 1월 1일, 2018 2018년 1월 12일, 인텔® 인텔® FPGA SDK(주) SDK(주)에 대한 2018년 1월 1일( 목)

OpenCL 및 OpenCL Khronos 은 Apple Inc.에 의해서도 끊어지게 했습니다.

* 2018년 1월 12일, 2018년 1월 12일, 2018년 1월 12일, 2018년 1월 12일, 2018년 1월 12일, www.khronos.org/conformance www.khronos.org/conformance.

소프트웨어 및 하드웨어 요구 사항

이 페이지의 콘텐츠는 원본 영어 콘텐츠에 대한 사람 번역 및 컴퓨터 번역의 조합으로 완성되었습니다. 이 콘텐츠는 편의와 일반적인 정보 제공을 위해서만 제공되었으며, 완전하거나 정확한 것으로 간주되어선 안 됩니다. 이 페이지의 영어 버전과 번역 간 모순이 있는 경우, 영어 버전이 우선적으로 적용됩니다. 이 페이지의 영어 버전을 확인하십시오.