아파치 마호트
Apache Mahout![]() |
![]() | |
개발자 | Apache 소프트웨어 재단 |
---|---|
초기 릴리즈 | 2009년 4월 [1] | , 전(
안정된 릴리스 | 2020년 10월 [2] , 전( |
저장소 | Mahout 저장소 |
기입처 | 자바, 스칼라 |
운영 체제 | 크로스 플랫폼 |
유형 | 기계 학습 |
면허증. | Apache 라이센스 2.0 |
웹 사이트 | mahout |
Apache Mahout은 주로 선형 대수에 초점을 맞춘 분산 또는 확장 가능한 기계 학습 알고리즘을 무료로 구현하기 위한 Apache 소프트웨어 재단의 프로젝트입니다.과거에는 많은 구현이 Apache Hadoop 플랫폼을 사용했지만 현재는 주로 Apache [3][4]Spark에 초점을 맞추고 있습니다.Mahout은 또한 일반적인 수학 연산(선형 대수 및 통계에 초점을 맞춘)과 원시 자바 컬렉션을 위한 Java/Scala 라이브러리를 제공합니다.Mahout은 진행 중인 작업입니다. 많은 알고리즘이 [5]구현되어 있습니다.
특징들
삼사라
Apache Mahout-Samsara는 사용자가 기존의 Scala 유사 구문이 아닌 R-Like 구문을 사용할 수 있도록 하는 Scala Domain Specific Language(DSL; 도메인 고유 언어)를 말합니다.이를 통해 사용자는 알고리즘을 간결하고 명확하게 표현할 수 있습니다.
값 G = B %*% B.t - C - C.t + (ksi 점 ksi) * (s_q 건너다 s_q)
백엔드 어그노스틱
Apache Mahout의 코드는 코드가 실행되는 엔진에서 도메인별 언어를 추상화합니다.Apache Spark 엔진에서는 액티브한 개발이 이루어지지만 사용자는 원하는 엔진을 자유롭게 구현할 수 있습니다.H2O 및 Apache Flink는 과거에 구현된 적이 있으며 코드 베이스에는 예가 있습니다.
GPU/CPU 액셀러레이터
JVM은 계산이 느리기로 악명 높다.속도를 향상시키기 위해 "네이티브 솔버"가 추가되어 JVM 밖으로 이동하며 분산 BLAS 작업을 오프히프 또는 GPU 메모리로 오프로드하여 여러 CPU 및/또는 CPU 코어를 통해 처리하거나 ViennaCL [6]라이브러리를 기반으로 구축된 GPU를 통해 처리했습니다. ViennaCL은 OpenMP 및 OpenCL에서 구현된 BLAS 연산을 통해 고도로 최적화된 C++ 라이브러리입니다"Extending Mahout Samsara to GPU Clusters"..릴리스 14.1 현재 OpenMP 빌드는 안정적인 것으로 간주되며 OpenCL 빌드는 아직 실험적인 POC 단계에 있습니다.
추천자
Apache Mahout은 데이터의 여러 차원에 사용할 수 있도록 공존을 확장하는 고유한 Mahout 권장 알고리즘인 Alternating Lest Square, Co-Occurrence 및 Correlated Co-Occurrence 구현을 특징으로 합니다.
역사
지도 감소에서 Apache 스파크로 전환
Mahout의 클러스터링, 분류 및 배치 기반 협업 필터링을 위한 핵심 알고리즘은 맵/축소 패러다임을 사용하여 Apache Hadoop 위에 구현되었지만 Hadoop 기반 구현에 대한 기여는 제한되지 않았습니다.단일 노드 또는 비 Hadoop 클러스터에서 실행되는 기여도 환영했습니다.예를 들어, Mahout의 'Taste' 협업 필터링 추천 구성 요소는 원래 별도의 프로젝트였으며 Hadoop 없이도 독립적으로 실행할 수 있습니다.
릴리스 0.10.0부터 이 프로젝트는 백엔드에 의존하지 않는 프로그래밍 환경, 코드명 "삼사라"[7][8][9]를 구축하는 데 초점을 맞췄다.환경은 대수적 백엔드에 의존하지 않는 옵티마이저와 메모리 내 연산자와 분산 대수 연산자를 통합하는 대수적 스칼라 DSL로 구성됩니다.지원되는 대수 플랫폼은 Apache Spark, H2O 및 Apache Flink입니다.[citation needed]MapReduce 알고리즘 지원은 [10]2014년부터 단계적으로 중단되었습니다.
릴리스 이력
버전 | 발매일 | 메모들 |
---|---|---|
0.1 | 2009-04-07 | |
0.2 | 2009-11-18 | |
0.3 | 2010-03-17 | |
0.4 | 2010-10-31 | |
0.5 | 2011-05-27 | |
0.6 | 2012-02-06 | |
0.7 | 2012-05-16 | |
0.8 | 2013-07-25 | |
0.9 | 2014-02-01 | |
0.10.0 | 2015-04-11 | 삼사라 DSL |
0.10.1 | 2015-05-31 | |
0.10.2 | 2015-08-06 | |
0.11.0 | 2015-08-07 | |
0.11.1 | 2015-11-06 | |
0.11.2 | 2016-03-11 | |
0.12.0 | 2016-04-11 | Apache Flink 엔진 추가 |
0.12.1 | 2016-05-19 | |
0.12.2 | 2016-06-13 | |
0.13.0 | 2017-04-17 | |
0.14.0 | 2019-03-07 | 소스만(바이너리 없음) |
14.1 | 2020-10-07 |
개발자
Apache Mahout은 커뮤니티에 의해 개발되었습니다.이 프로젝트는 "프로젝트 관리 위원회"(PMC)라는 그룹에 의해 관리됩니다.현재 PMC는 Andrew Musselman, Andrew Palumbo, Drew Farris, Isabel Drost-Fromm, Jake Mannix, Pat Ferrel, Paritosh Ranjan, Trevor Grant, Robin Anil, Sebastian Selter, Stevo [11]Slaviach입니다.
레퍼런스
- ^ "Apache Mahout: First release 0.1 released".
- ^ "Apache Mahout: Scalable machine learning and data mining". Retrieved 6 March 2019.
- ^ "Introducing Apache Mahout". ibm.com. 2011. Retrieved 13 September 2011.
- ^ "InfoQ: Apache Mahout: Highly Scalable Machine Learning Algorithms". infoq.com. 2011. Retrieved 13 September 2011.
- ^ "Algorithms - Apache Mahout - Apache Software Foundation". cwiki.apache.org. 2011. Retrieved 13 September 2011.
- ^ "ViennaCL".
- ^ "Mahout-Samsara's In-Core Linear Algebra DSL Reference".
- ^ "Mahout-Samsara's Distributed Linear Algebra DSL Reference".
- ^ "Mahout 0.10.x: first Mahout release as a programming environment". www.weatheringthroughtechdays.com. Archived from the original on 9 October 2016. Retrieved 29 February 2016.
- ^ "MAHOUT-1510 ("Good-bye MapReduce")".
- ^ "Apache Committee Information".