Khoa học dữ liệu cho các công ty khởi nghiệp: Business Intelligence

Dec 11 2020
Phần bốn của loạt bài liên tục của tôi về việc xây dựng kỷ luật khoa học dữ liệu khi khởi nghiệp. Bạn có thể tìm thấy các liên kết đến tất cả các bài đăng trong phần giới thiệu và một cuốn sách dựa trên loạt bài này trên Amazon.
Vai trò Nguồn: rawpixel tại pixabay.com

Phần bốn của loạt bài liên tục của tôi về việc xây dựng kỷ luật khoa học dữ liệu khi khởi nghiệp. Bạn có thể tìm thấy các liên kết đến tất cả các bài đăng trong phần giới thiệu và một cuốn sách dựa trên loạt bài này trên Amazon .

Rất nhiều công việc liên quan đến việc thiết lập khoa học dữ liệu tại một công ty khởi nghiệp đang thuyết phục nhóm sản phẩm thiết bị và quan tâm đến dữ liệu. Nếu bạn có thể đạt được mục tiêu này, bước tiếp theo là có thể trả lời tất cả các loại câu hỏi về tình trạng sản phẩm trong tổ chức của bạn. Một nhà khoa học dữ liệu mới vào nghề có thể nghĩ rằng loại công việc này nằm ngoài vai trò của một nhà khoa học dữ liệu, nhưng việc xác định các chỉ số chính về sức khỏe sản phẩm là một trong những khía cạnh cốt lõi của vai trò này.

Tôi đặt tiêu đề cho bài đăng này là kinh doanh thông minh, bởi vì một khi bạn đã thiết lập một đường dẫn dữ liệu, một nhà khoa học dữ liệu trong một công ty khởi nghiệp sẽ trả lời mọi câu hỏi về dữ liệu. Điều này không có gì đáng ngạc nhiên với lượng dữ liệu mới, nhưng cũng là thời điểm để một nhà khoa học dữ liệu đặt ra kỳ vọng cho phần còn lại của tổ chức. Là một nhà khoa học dữ liệu trong một công ty khởi nghiệp, chức năng của bạn không phải là trả lời các câu hỏi về dữ liệu mà là thông báo cho lãnh đạo về những chỉ số nào là quan trọng.

Bài đăng này trình bày những kiến ​​thức cơ bản về cách biến dữ liệu thô thành dữ liệu đã nấu chín có thể tóm tắt tình trạng của sản phẩm. Tôi sẽ thảo luận về một số cách tiếp cận khác nhau cần thực hiện khi làm việc với dữ liệu thô, bao gồm các truy vấn SQL, R markdown và các công cụ của nhà cung cấp. Kết quả chung là chỉ ra rằng một số tùy chọn có sẵn để xử lý tập dữ liệu và bạn nên chọn giải pháp phù hợp với mục tiêu của nhóm của mình. Tôi sẽ thảo luận về những kinh nghiệm trong quá khứ với các công cụ như Tableau và đưa ra các đề xuất để mở rộng quy mô báo cáo tự động trong một nhóm.

Chúng tôi sẽ sử dụng hai nguồn dữ liệu cho bài đăng này. Đầu tiên là tập dữ liệu công khai mà chúng tôi sẽ tổng hợp và tóm tắt với các chỉ số chính. Thứ hai là dữ liệu được tạo bởi API theo dõi trong chương thứ hai của loạt bài này. Chúng tôi sẽ tập trung vào tập dữ liệu thứ hai để chuyển đổi dữ liệu thô sang dữ liệu đã xử lý và tập dữ liệu đầu tiên cho dữ liệu đã xử lý thành dữ liệu nấu chín.

KPI

Các Chỉ số Hiệu suất Chính (KPI) được sử dụng để theo dõi tình hình hoạt động của một công ty khởi nghiệp. Điều quan trọng là theo dõi các chỉ số nắm bắt mức độ tương tác, tỷ lệ giữ chân và tăng trưởng để xác định xem những thay đổi được thực hiện đối với sản phẩm có mang lại lợi ích hay không. Là nhà khoa học dữ liệu khi mới thành lập, vai trò của bạn có trách nhiệm xác định các chỉ số nào là quan trọng. Chức năng này phù hợp với năng lực khoa học dữ liệu của kiến ​​thức miền và là một trong những lĩnh vực mà nhà khoa học dữ liệu có thể có ảnh hưởng lớn.

KPI được thiết lập bởi một nhà khoa học dữ liệu ban đầu có thể có tác động lớn. Ví dụ, nhiều công ty trước đây tôi từng làm việc có mục tiêu công ty dựa trên các phân tích trong quá khứ của các nhà khoa học dữ liệu. Tại Electronic Arts, chúng tôi tập trung vào việc cải thiện chỉ số phiên, tại Twitch, chúng tôi muốn tối đa hóa lượng nội dung đã xem và tại Sony Online Entertainment, chúng tôi muốn cải thiện chỉ số tỷ lệ giữ chân cho các tựa game miễn phí. Đây là các chỉ số của ngành trò chơi, nhưng có các chỉ số chung hơn như mức độ tương tác, tăng trưởng và kiếm tiền rất quan trọng cần theo dõi khi xây dựng công ty.

Điều quan trọng khi xây dựng kỷ luật khoa học dữ liệu tại một công ty khởi nghiệp là đảm bảo rằng nhóm của bạn đang thực hiện công việc có tác động cao. Một trong những vấn đề mà tôi từng thấy ở các công ty trước đây là các nhà khoa học dữ liệu bị lôi kéo vào loại công việc phân tích và kỹ thuật dữ liệu. Điều này được mong đợi khi chỉ có một nhân viên dữ liệu tại công ty, nhưng bạn không muốn hỗ trợ quá nhiều quy trình dữ liệu thủ công sẽ không mở rộng quy mô. Đây là lý do tại sao việc thiết lập các phương pháp tiếp cận có thể lặp lại để báo cáo và phân tích là quan trọng. Sẽ rất đơn giản nếu bạn chạy lại phân tích hàng tháng trời và có thể để một thành viên khác trong nhóm làm điều đó với chỉ đạo tối thiểu.

Lời khuyên chính của tôi dành cho các nhà khoa học dữ liệu mới để tránh bị quá tải với các yêu cầu từ người quản lý sản phẩm và các nhóm khác là thiết lập một giao diện cho nhóm khoa học dữ liệu để đệm các yêu cầu trực tiếp. Thay vì để bất kỳ ai ở công ty có thể hỏi nhóm khoa học dữ liệu về cách mọi thứ đang hoạt động, một bộ trang tổng quan cơ bản nên được thiết lập để theo dõi hiệu suất sản phẩm. Cho rằng nhà khoa học dữ liệu có thể là một trong những vai trò dữ liệu đầu tiên khi khởi động, trách nhiệm này ban đầu sẽ thuộc về nhà khoa học dữ liệu và điều quan trọng là phải làm quen với một số công cụ khác nhau để hỗ trợ chức năng này khi khởi động.

Báo cáo với R

Một trong những bước chuyển đổi quan trọng mà bạn có thể thực hiện khi khởi nghiệp với tư cách là nhà khoa học dữ liệu là chuyển từ quy trình báo cáo thủ công sang báo cáo có thể tái tạo. R là một ngôn ngữ lập trình mạnh mẽ cho loại công việc này và có thể được sử dụng theo một số cách khác nhau để cung cấp khả năng báo cáo tự động. Phần này thảo luận về cách sử dụng R để tạo biểu đồ, tạo báo cáo và xây dựng các ứng dụng web tương tác. Mặc dù nhiều khả năng trong số này cũng được cung cấp bởi Python và bộ Jupyter, nhưng trọng tâm vào tự động hóa quan trọng hơn ngôn ngữ được sử dụng để đạt được mục tiêu này.

Có thể đạt được một số loại chức năng này với Excel hoặc Google Trang tính, nhưng tôi khuyên bạn không nên làm theo cách này đối với một công ty khởi nghiệp. Những công cụ này rất tốt để tạo biểu đồ cho bản trình bày, nhưng không thích hợp cho báo cáo tự động. Việc một nhà khoa học dữ liệu hỗ trợ một công ty khởi nghiệp dựa trên những loại báo cáo này là không bền vững, vì có thể cần nhiều bước thủ công. Các trình kết nối như ODBC trong Excel có vẻ hữu ích cho tự động hóa, nhưng có thể sẽ không hoạt động khi cố gắng chạy báo cáo trên một máy khác.

Phần này bao gồm ba cách tiếp cận để xây dựng báo cáo với R: sử dụng R trực tiếp để tạo biểu đồ, sử dụng R Markdown để tạo báo cáo và sử dụng Shiny để tạo hình ảnh trực quan tương tác. Tất cả mã được liệt kê trong phần này đều có sẵn trên Github .

Cơ sở R
Hãy xem xét một tình huống mà bạn là thành viên của một công ty khởi nghiệp ở NYC trong lĩnh vực giao thông vận tải và bạn muốn xác định loại hệ thống thanh toán nào sẽ sử dụng để tối đa hóa tiềm năng phát triển cơ sở người dùng của mình. May mắn thay, có một tập dữ liệu công khai có thể giúp trả lời loại câu hỏi này: Tập dữ liệu công khai về Taxi NYC và Limousine Trips của BigQuery . Bộ sưu tập dữ liệu chuyến đi này bao gồm thông tin về các khoản thanh toán mà bạn có thể sử dụng để xác định xu hướng sử dụng các loại hình thanh toán theo thời gian.

Cách tiếp cận đầu tiên mà chúng tôi sẽ sử dụng để trả lời câu hỏi này là sử dụng thư viện vẽ đồ thị trong R để tạo một bản đồ thị. Tôi khuyên bạn nên sử dụng RStudio IDE khi thực hiện phương pháp này. Ngoài ra, cách tiếp cận này không thực sự là "Cơ sở R", bởi vì tôi đang sử dụng hai thư viện bổ sung để thực hiện mục tiêu tóm tắt tập dữ liệu này và vẽ biểu đồ kết quả. Tôi đang đề cập đến phần này là Cơ sở R , bởi vì tôi đang sử dụng khả năng trực quan hóa tích hợp của R.

Một trong những khía cạnh tuyệt vời của R là có nhiều thư viện khác nhau có sẵn để làm việc với các loại cơ sở dữ liệu khác nhau. Các bigrquery thư viện cung cấp một kết nối hữu ích để BigQuery có thể được sử dụng để kéo dữ liệu từ tập dữ liệu nào trong một kịch bản R. Mã để tóm tắt lịch sử thanh toán theo thời gian và vẽ kết quả dưới dạng biểu đồ được hiển thị bên dưới.

library(bigrquery)
library(plotly)
project <- "your_project_id"
sql <- "SELECT  
  substr(cast(pickup_datetime as String), 1, 7) as date
  ,payment_type as type 
  ,sum(total_amount) as amount
FROM `nyc-tlc.yellow.trips`
group by 1, 2"
df <- query_exec(sql, project = project, use_legacy_sql = FALSE)
plot_ly(df, x = ~date, y = ~amount, color = ~type) %>% add_lines()

Chi tiêu hàng tháng theo loại thanh toán

Truy vấn tính toán tổng chi tiêu hàng tháng theo loại hình thanh toán cho các chuyến đi taxi ở NYC, sử dụng dữ liệu từ năm 2009 đến năm 2015. Kết quả cho thấy thẻ tín dụng (CRD) hiện là phương thức thanh toán được ưa chuộng hơn tiền mặt (CSH). Để trả lời câu hỏi ban đầu về loại hệ thống thanh toán nào cần triển khai, tôi khuyên bạn nên bắt đầu với hệ thống chấp nhận thẻ tín dụng.

Một chủ đề đáng được đề cập tại thời điểm này là chất lượng dữ liệu, vì biểu đồ có một số nhãn khác nhau dường như đại diện cho các giá trị giống nhau. Ví dụ: CASCSH đều có khả năng đề cập đến các khoản thanh toán bằng tiền mặt và nên được nhóm lại với nhau để có được tổng số các khoản thanh toán bằng tiền mặt chính xác. Đối phó với những loại vấn đề này nằm ngoài phạm vi của cách tiếp cận này, nhưng có một số phương pháp có thể được sử dụng cho loại tình huống này. Cách tiếp cận dễ nhất nhưng ít khả năng mở rộng nhất là viết các truy vấn cho các loại khác nhau này:

,sum(case when payment_type in ('CSH', 'CAS') then amount else 0 end) as cash_payments

Chúng tôi đã trả lời câu hỏi đầu tiên về việc xác định phương thức thanh toán phổ biến nhất, nhưng nếu chúng tôi có câu hỏi thứ hai về việc liệu thị trường vận tải ở NYC có đang phát triển hay không? Chúng ta có thể dễ dàng vẽ biểu đồ dữ liệu để trả lời câu hỏi này bằng cách sử dụng tập dữ liệu hiện có:

total <- aggregate(df$Amount, by=list(Category=df$Date), FUN=sum)
plot_ly(total, x = ~Category, y = ~x) %>% add_lines()

Tổng chi tiêu hàng tháng

Phần này đã chỉ ra cách sử dụng R để tạo các lô từ dữ liệu tóm tắt trong BigQuery. Mặc dù mẫu này sử dụng tập dữ liệu cố định, nhưng phương pháp tương tự có thể được sử dụng với tập dữ liệu trực tiếp phát triển theo thời gian và chạy lại tập lệnh sẽ bao gồm nhiều dữ liệu gần đây hơn. Đây chưa phải là báo cáo tự động, vì nó liên quan đến việc chạy mã theo cách thủ công trong IDE hoặc sổ ghi chép. Một cách tiếp cận có thể được sử dụng là xuất cốt truyện ra tệp hình ảnh và chạy tập lệnh như một phần của công việc cron. Kết quả của phương pháp này là hình ảnh của cốt truyện được cập nhật theo lịch trình thường xuyên. Đây là một điểm khởi đầu tốt, nhưng có nhiều giải pháp thanh lịch hơn để báo cáo tự động trong R.

R Markdown
Giả sử bạn muốn thực hiện phân tích tương tự như trước đây, nhưng muốn tạo báo cáo mỗi khi bạn chạy tập lệnh. R Markdown cung cấp khả năng này và có thể sử dụng mã R để tạo tệp PDF, tài liệu từ (DOCX) và trang web (HTML). Bạn thậm chí có thể viết sách với R Markdown! R Markdown mở rộng đánh dấu tiêu chuẩn để hỗ trợ các đoạn mã R nội tuyến có thể được sử dụng để tạo hình ảnh trực quan. Mã R nhúng có thể thực hiện hầu hết mọi chức năng R tiêu chuẩn, bao gồm sử dụng thư viện R và tạo kết nối với cơ sở dữ liệu. Điều này có nghĩa là chúng ta có thể chuyển đổi đoạn mã ở trên thành tệp đánh dấu R và chạy tập lệnh thường xuyên để tạo báo cáo tự động.

Đoạn mã đánh dấu bên dưới là mã R trước đó hiện được nhúng trong báo cáo sẽ tạo tệp HTML làm đầu ra. Phần đầu tiên của tệp là siêu dữ liệu về báo cáo, bao gồm cả kết quả đầu ra mong muốn. Tiếp theo, dấu xuống được sử dụng để thêm bình luận vào báo cáo. Và cuối cùng, một khối mã R được sử dụng để lấy dữ liệu từ BigQuery và vẽ biểu đồ kết quả. Đối tượng âm mưu kết quả được nhúng vào tài liệu khi chạy báo cáo này.

---
title: "Business Intelligence"
author: "Ben Weber"
date: "May 21, 2018"
output: html_document
---
## Taxi Payments 
R Markdown can outputs reports as PDF or HTML.
```{r echo=FALSE, message=FALSE, warning=FALSE}
library(bigrquery)
library(plotly)
project <- "your_project_id"
sql <- "SELECT  
  substr(cast(pickup_datetime as String), 1, 7) as date
  ,payment_type as type 
  ,sum(total_amount) as amount
FROM `nyc-tlc.yellow.trips`
group by 1, 2"
df <- query_exec(sql, project = project, use_legacy_sql = FALSE)
plot_ly(df, x = ~date, y = ~amount, color = ~type) %>% add_lines()
```

Trang web tương tác được tạo từ tệp R Markdown.

Để tự động tạo báo cáo này, bạn có thể thiết lập lại một công việc cron. Lệnh để chuyển đổi tệp Rmd ​​thành báo cáo là:

Rscript -e "rmarkdown::render('BI.Rmd')"

R Shiny
Shiny là một giải pháp để xây dựng trang tổng quan trực tiếp trong R. Nó cung cấp chức năng xây dựng báo cáo với khả năng lọc và xem chi tiết, đồng thời có thể được sử dụng như một giải pháp thay thế cho các công cụ như Tableau. Khi sử dụng Shiny, bạn chỉ định các thành phần giao diện người dùng để bao gồm trong báo cáo và các hành vi cho các thành phần khác nhau trong báo cáo, chẳng hạn như áp dụng bộ lọc dựa trên các thay đổi đối với thành phần thanh trượt. Kết quả là một ứng dụng web tương tác có thể chạy mã R nhúng của bạn.

Tôi đã tạo một ứng dụng Shiny mẫu dựa trên mã giống như các báo cáo ở trên. Phần đầu tiên của mã giống nhau, chúng tôi kéo dữ liệu từ BigQuery vào khung dữ liệu, nhưng chúng tôi cũng bao gồm thư viện sáng bóng. Phần thứ hai của mã xác định hành vi của các thành phần khác nhau (máy chủ) và cách bố trí của các thành phần khác nhau (ui). Các chức năng này được chuyển đến lệnh gọi ứng dụng sáng bóng để khởi chạy bảng điều khiển.

library(shiny)
library(bigrquery)
library(plotly)
project <- "your_project_id"
sql <- "SELECT  
substr(cast(pickup_datetime as String), 1, 7) as date
,payment_type as type 
,sum(total_amount) as amount
FROM `nyc-tlc.yellow.trips`
group by 1, 2"
df <- query_exec(sql, project = project, use_legacy_sql = FALSE)
server <- function(input, output) {
  output$plot <-  renderPlotly({
    plot_ly(df[df$date >= input$year, ], x = ~date, 
      y = ~amount, color = ~type) %>% add_lines()
  })
}
ui <- shinyUI(fluidPage(
  sidebarLayout(
    sidebarPanel(
      sliderInput("year", "Start Year:", 
        min = 2009, max = 2015, value = 2012)
    ),
    mainPanel(plotlyOutput("plot"))
  )
))
shinyApp(ui = ui, server = server)

Biểu đồ tương tác trong R Shiny.

Bây giờ tôi đã chỉ ra ba cách khác nhau để tạo báo cáo bằng R. Nếu bạn cần trang tổng quan tương tác, thì Shiny là một công cụ tuyệt vời để khám phá, trong khi nếu bạn đang tìm cách tạo báo cáo tĩnh, thì R Markdown là một giải pháp tuyệt vời. Một trong những lợi ích chính của cả hai cách tiếp cận này là bạn có thể nhúng logic R phức tạp trong biểu đồ của mình, chẳng hạn như sử dụng thư viện tiên tri của Facebook để thêm các giá trị dự báo vào biểu đồ của bạn.

ETL

Trong bài đăng về đường ống dữ liệu, tôi đã thảo luận về việc sử dụng dữ liệu thô, đã xử lý và đã nấu chín. Hầu hết các báo cáo được sử dụng cho thông tin kinh doanh phải dựa trên dữ liệu đã nấu chín, nơi dữ liệu được tổng hợp, làm giàu và làm sạch. Nếu bạn sử dụng dữ liệu đã xử lý hoặc dữ liệu thô thay vì dữ liệu đã nấu khi xây dựng báo cáo, bạn sẽ nhanh chóng gặp phải các vấn đề về hiệu suất trong quy trình báo cáo của mình. Ví dụ: thay vì sử dụng bảng nyc-tlc.yellow.trips trực tiếp trong phần R ở trên, tôi có thể tạo một bảng với các giá trị tổng hợp được tính toán trước.

ETL là từ viết tắt của Extract-Transform-Load. Một trong những ứng dụng chính của các loại quy trình này là chuyển đổi dữ liệu thô thành dữ liệu đã xử lý hoặc dữ liệu đã xử lý thành dữ liệu đã nấu chín, chẳng hạn như các bảng tổng hợp. Một trong những thách thức chính trong việc thiết lập các bảng tổng hợp là giữ cho các bảng được cập nhật và chính xác. Ví dụ: nếu bạn bắt đầu theo dõi các khoản thanh toán bằng tiền mặt bằng cách sử dụng chữ viết tắt mới (ví dụ: CAH), bạn sẽ cần cập nhật quy trình tổng hợp tính toán các khoản thanh toán bằng tiền mặt hàng tháng để bao gồm loại thanh toán mới này.

Một trong những đầu ra của đường ống dữ liệu là bảng sự kiện thô, bao gồm dữ liệu cho tất cả các sự kiện theo dõi được mã hóa dưới dạng JSON. Một trong những loại quy trình ETL mà chúng ta có thể thiết lập là chuyển đổi dữ liệu thô sang dữ liệu đã xử lý. Trong BigQuery, điều này có thể được triển khai cho sự kiện đăng nhập như sau:

create table tracking.logins as (
  select eventVersion,server_time 
    ,JSON_EXTRACT_SCALAR(message, '$.userID') as userID
    ,JSON_EXTRACT_SCALAR(message, '$.deviceType') as deviceType
  from tracking.raw_events
  where eventType = 'Login'
)

Trên thực tế, chúng ta sẽ muốn xây dựng một bảng như thế này tăng dần, chỉ chuyển đổi dữ liệu mới đã đến kể từ lần cuối cùng quá trình ETL chạy. Chúng tôi có thể thực hiện chức năng này bằng cách sử dụng phương pháp được hiển thị trong mã SQL bên dưới. Thay vì tạo một bảng mới, chúng tôi đang chèn vào một bảng hiện có. Với BigQuery, bạn cần chỉ định các cột cho thao tác chèn. Tiếp theo, chúng tôi tìm lần cuối cùng khi bảng đăng nhập được cập nhật, được biểu thị dưới dạng giá trị updateTime . Và cuối cùng, chúng tôi sử dụng kết quả này để chỉ tham gia các sự kiện đăng nhập đã xảy ra kể từ lần cập nhật cuối cùng. Các sự kiện thô này được phân tích cú pháp thành các sự kiện đã xử lý và thêm vào bảng đăng nhập.

insert into tracking.logins
    (eventVersion,server_time, userID, deviceType)
with lastUpdate as (
  select max(server_time) as updateTime
  from tracking.logins
)
select eventVersion,server_time 
  ,JSON_EXTRACT_SCALAR(message, '$.userID') as userID
  ,JSON_EXTRACT_SCALAR(message, '$.deviceType') as deviceType
from tracking.raw_events e
join lastUpdate l 
  on e.server_time > updateTime
where eventType = 'Login'

create table metrics.dau as (
  select substr(server_time, 1, 10) as Date
    ,deviceType, count(distinct userID) as DAU
  from `tracking.logins` 
  group by 1, 2
  order by 1, 2
)

Dữ liệu nấu chín: DAU theo nền tảng

Khi bạn có một tập hợp các ETL để chạy cho đường ống dữ liệu của mình, bạn sẽ cần lên lịch để chúng chạy thường xuyên. Một cách tiếp cận bạn có thể thực hiện là sử dụng cron để thiết lập các tác vụ, chẳng hạn như:

bq query --flagfile=/etls/login_etl.sql

Công cụ báo cáo

Mặc dù R cung cấp các công cụ hữu ích để thực hiện các nhiệm vụ kinh doanh thông minh, nhưng nó không phải lúc nào cũng là công cụ tốt nhất để xây dựng báo cáo tự động. Điều này là phổ biến khi các công cụ báo cáo cần được sử dụng bởi người dùng kỹ thuật và phi kỹ thuật và các giải pháp của nhà cung cấp để xây dựng trang tổng quan thường hữu ích cho các loại tình huống này. Dưới đây là một số công cụ khác nhau mà tôi đã sử dụng trong quá khứ.

Google Data Studio
Nếu bạn đã sử dụng GCP, thì Google Data Studio rất đáng để khám phá để tạo trang tổng quan để chia sẻ trong tổ chức của bạn. Tuy nhiên, nó phức tạp hơn một chút so với các công cụ khác, vì vậy tốt nhất là bạn nên tiếp tục xây dựng trang tổng quan cho đến khi bạn có thông số kỹ thuật gần như đầy đủ về các báo cáo cần xây dựng.

Thiết lập Nguồn dữ liệu tùy chỉnh trong Google Data Studio

Hình ảnh trên cho thấy cách thiết lập truy vấn tùy chỉnh trong Google Data Studio để lấy các tập dữ liệu giống như được sử dụng trong báo cáo R. Báo cáo giống như trước đây, hiện được triển khai với Data Studio được hiển thị bên dưới.

Báo cáo taxi được tạo lại trong Google Data Studio

Lợi ích chính của công cụ này là nó cung cấp nhiều tính năng cộng tác được tích hợp vào các công cụ khác, chẳng hạn như Google Tài liệu và Google Trang tính. Nó cũng làm mới các báo cáo khi cần thiết để giữ cho dữ liệu không bị cũ, nhưng có sẵn các tùy chọn lập lịch hạn chế.

Tableau
Một trong những công cụ trực quan hóa tốt nhất mà tôi đã sử dụng là Tableau. Nó hoạt động tốt cho trường hợp sử dụng của việc xây dựng trang tổng quan khi bạn có thông số kỹ thuật hoàn chỉnh và cũng như xây dựng hình ảnh trực quan tương tác khi thực hiện phân tích khám phá. Bản đồ nhiệt cho DC Universe Online được xây dựng bằng Tableau và là một trong nhiều loại hình trực quan khác nhau có thể được xây dựng.

Bản đồ nhiệt trong Tableau cho trò chơi DC Universe Online

Lợi ích chính của Tableau là dễ sử dụng trong việc xây dựng hình ảnh trực quan và khám phá các tập dữ liệu mới. Hạn chế chính là định giá cho giấy phép và thiếu công cụ ETL, vì nó tập trung vào trình bày hơn là đường ống dữ liệu.

Chế độ
Tại Twitch, chúng tôi đã sử dụng một công cụ của nhà cung cấp có tên Mode Analytics. Chế độ làm cho việc chia sẻ truy vấn với các nhà phân tích khác trở nên đơn giản, nhưng có lựa chọn khá hạn chế về khả năng hiển thị và cũng chỉ tập trung vào các tác vụ trình bày chứ không phải các tác vụ loại ETL.

Biểu đồ đường trong phân tích chế độ

Công cụ tùy chỉnh
Một cách tiếp cận khác có thể được sử dụng là tạo trực quan hóa tùy chỉnh bằng các công cụ như D3.js và Protovis. Tại Electronic Arts, D3 được sử dụng để tạo bảng điều khiển khách hàng cho các nhóm trò chơi, chẳng hạn như công cụ Data Cracker do Ben Medler xây dựng để trực quan hóa dữ liệu chơi trong Dead Space 2.

Công cụ Cracker dữ liệu cho Dead Space 2. Nguồn: GDC Vault 2011

Sử dụng công cụ tùy chỉnh mang lại sự linh hoạt nhất, nhưng cũng đòi hỏi phải duy trì một hệ thống và về cơ bản là nhiều công việc hơn để xây dựng.

Phần kết luận

Một trong những vai trò quan trọng của nhà khoa học dữ liệu khi khởi nghiệp là đảm bảo rằng các nhóm khác có thể sử dụng dữ liệu sản phẩm của bạn một cách hiệu quả. Thông thường, điều này có hình thức cung cấp trang tổng quan hoặc báo cáo tự động khác, để cung cấp KPI hoặc các chỉ số khác cho các nhóm khác nhau. Nó cũng bao gồm việc xác định các chỉ số nào là quan trọng để công ty đo lường.

Bài đăng này đã trình bày ba cách khác nhau để thiết lập báo cáo tự động trong R, từ tạo các lô trực tiếp trong R, sử dụng R Markdown để tạo báo cáo và sử dụng Shiny để tạo trang tổng quan. Chúng tôi cũng đã thảo luận về cách viết ETL để chuyển đổi dữ liệu thô thành dữ liệu đã xử lý và dữ liệu đã xử lý thành dữ liệu đã nấu chín để có thể sử dụng nó cho mục đích báo cáo. Và phần cuối cùng thảo luận về một số giải pháp báo cáo của nhà cung cấp khác nhau, cùng với sự cân bằng.

Sau khi thiết lập công cụ cho kinh doanh thông minh, hầu hết các phần được sẵn sàng để đào sâu hơn vào loại công việc của khoa học dữ liệu. Chúng ta có thể vượt ra ngoài các loại câu hỏi hồi cứu và chuyển sang dự báo, mô hình dự đoán và thử nghiệm.