R은 생산 (배포 된) 코드에 적합합니까?


25

나는 연구를 위해 R을 사용하는 Google, Facebook 및 다른 많은 회사와 같은 회사에 대해 이야기하는 많은 기사를 읽었습니다. 내가 읽은 다른 시나리오는 R을 사용하여 분석 솔루션을 프로토 타입 한 다음 다른 언어로 다시 구현하는 회사입니다.

실제 생산 분석 코드에 R을 사용하는 회사에 대한 문헌을 찾으려고합니다. 유스 케이스는 사용자가 원격 서버에서 실행 된 R 스크립트로부터 응답을받는 웹 페이지를 통해 상호 작용하는 추천 시스템 일 수 있습니다. 그러한 보고서를 찾는 데 문제가 있다는 사실이 바람직하지 않은지 궁금합니다. 그렇다면 왜?


1
좋은 질문입니다. 나는 직감이 있지만 이것을 실제 답으로 만들만큼 충분하지 않습니다. R은 GPL로 배포되기 때문에 RPL을 사용하는 모든 파생 제품은 무료이며 오픈 소스 여야합니다. 이는 엔터프라이즈 소프트웨어로 수익을 창출하려는 회사가 제품을 판매 할 수 없기 때문에 R에서 멀어지게 할 수 있음을 의미 할 수 있습니다.
gregmacfarlane

3
귀하의 이익이 소프트웨어 판매에 근거한 경우에만 – 그리고 심지어 어떤 사람들은 여전히 ​​소스 코드가 github에있는 RStudio와 같은 소프트웨어를 제공합니다.
Dirk Eddelbuettel

답변:


16

네 그렇습니다. 이 페이지에서 이러한 배포를 나열한 멋진 헤드리스 RServe R 서버 인스턴스 (R 코어 멤버 Simon Urbanek)를 찾아보십시오.

Some projects using Rserve:
   The Dataverse Network Project   Phenyx                     "J" interface
   Nexus BPM                       Taverna                    Bio7
   INTAMAP                         Screensaver HTS LIMS       CRISP
   WWARN

위에서 언급 한 페이지에 링크가 있습니다.

"산업"은 학계보다 세부 사항에 대해 더 얽힌 경향이 있으므로 "공식"진술을 찾기가 어려울 것입니다. 그러나 Revolution Analytics 또는 Oracle ship R과 같은 공급 업체와 영업 사원은 당신을 위해 이야기를 할 수 있습니다 ....


3
판매원의 경우 +1 무언가 구매에 관심이 있고 공정한 영업 사원이 CEO의 SSN을 제공한다고 가정 해보십시오.
Fomite

1

일반적으로 R은 해석 된 언어가 아니기 때문에 평균적으로 컴파일 된 코드보다 몇 배 느립니다. 프로그램을 C, Fortran 또는 Java로 변환하는 데 상당한 투자가 필요하지만 코드는 문자 그대로 동등한 R 버전보다 10-100 배 더 빠르게 실행될 수 있습니다. 또한 R에는 대용량 데이터 세트, 특히 클러스터를 처리하거나 특수 하드웨어를 필요로하는 데이터 세트를 조작 할 수있는 도구가 매우 제한적입니다. 또한 대부분의 상용 구현은 사용자 인터페이스를 제공하고 기존 프레임 워크에 적합해야하며 일반적으로 다른 언어로 작성됩니다. 대부분의 컴파일 된 언어 (래퍼가 있음)의 기존 R 코드와 인터페이스 할 수 있지만 핵심 수치 루틴은 여전히 ​​원래 R 코드보다 빠르지 않습니다. 하루의 끝에서,


2
> (...) 코드는 말 그대로 동의하지 않는 동등한 R 버전보다 10-100X 더 빠르게 실행될 수 있습니다. 거의 모든 R 라이브러리는 C 또는 Fortran으로 작성됩니다. R은 대부분 그들 사이의 "접착제"로 작동하며 상대적으로 열악한 성능은 중요하지 않습니다.
Adam Ryczkowski

1
사실이 아니다. 핵심 라이브러리는 C로 작성 될 수 있지만, R의 대부분의 고급 알고리즘은 R로 작성됩니다. JIT 최적화는 해석 된 언어와 컴파일 된 언어의 성능과 관련하여 규칙을 변경하고 있습니다. 이 라인은 R을 위해 진행 중입니다 (Python은 강력한 노력을 기울입니다 : PyPy 참조).
user1337732

1
나는 정기적으로 R을 사용하여 2GB 크기의 행렬을 작업합니다.
Jan Galkowski

0

나는 R이 당신이 위에서 언급 한 회사들에 의해 프로토 타입 언어로 더 많이 사용되는 경향이 있다고 믿는다 (그러나 이것은 일화에 기초한다). R은 여러 모델을 빠르고 효과적으로 개발하고 테스트하는 데 탁월합니다. 그러나 사용자가 특정 웹 사이트와 상호 작용할 때 종종 발생해야하기 때문에 개인화 작업에 적합하지 않으며 이러한 모델은 컴파일 된 언어로 다시 작성되는 경향이 있다고 생각합니다 (다시 말하면 이것은 일화입니다) (자바, C, C ++).

좋은 질문과 나는 이것에 대해 틀린 것으로 입증되고 싶습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.