Đóng

#HowOldRobot đã nịnh đầm như thế nào và câu chuyện đằng sau trang ứng dụng đang gây sốt toàn thế giới!

Mở đầu là một câu chuyện khá hài hước. Chúng tôi đã ước định chỉ khoảng 50 người tham gia bài test, nhưng kết quả thật ngoài mong đợi với hơn 35000 người dùng tham gia.

Chúng tôi thử nghiệm với giao diện lập trình ứng dụng ( API- application programming interface) mới ra lò giúp nhận diện khuôn mặt thông qua trang web http://how-old.net.  Trang web này cho phép người dùng đăng tải một tấm hình và ứng dụng sẽ dự đoán số tuổi cũng như giới tính của bất kỳ khuôn mặt nào được nhận diện trong tấm ảnh đó. Chúng tôi đã gửi email cho một nhóm khoảng vài trăm  người và nhờ họ dùng thử trang này sau đó cho chúng tôi phản hồi- Tràn trề hi vọng rằng ít nhất 50 người sẽ tham gia. Chúng tôi quan sát bảng theo dõi trực tuyến để kiểm tra người dùng, ngạc nhiên thay, chỉ trong vòng vài phút, số lượng người dùng trang web này đã tăng vượt hẳn số lượng vài trăm email chúng tôi gửi. Chúng tôi đã thấy lượng người dùng nhanh chóng vượt qua biên giới các lục địa, chỉ trong vòng 3 giờ kế tiếp, đây là bảng theo dõi của chúng tôi đã ghi nhận được

howold 1

ml-apr29-2

Chúng tôi đã khá sốc. Trong vòng vài giờ, hơn 35000 người dùng đã sử dụng ứng dụng qua web này trên toàn thế giới. (khoảng 29,000 người dùng từ Thổ Nhĩ Kỳ, hẳn nhiên là nhờ rất nhiều tweets từ Thổ Nhĩ Kỳ đã dẫn liên kết đến trang của chúng tôi). Đây là một ví dụ điển hình cho việc sự hài hước có thể lan tỏa như thế nào.

Chúng tôi cũng đã nghiêm túc tìm hiểu cách mà mọi người sử dụng công cụ này. Ví dụ như chúng ta giả định rằng những kẻ ngốc sẽ không muốn đăng tải hình của chính họ mà sử dụng những tấm ảnh đã có sẵn trên mạng. Nhưng chúng tôi đã phân tích định dạng và xác nhận rằng hơn nửa số ảnh được đăng tải là ảnh của chính người dùng. Chúng tôi dùng kết quả này để cải thiện trải nghiệm của người dùng cũng như  những kiểm tra bổ sung cho tấm ảnh được tải từ thiết bị di động.

Như vậy thì phép màu nào đứng sau tất cả?

Sự thật là chỉ cần vài lập trình viên làm việc cùng nhau chỉ trong 1 ngày để tạo ra chương trình này. Có thể liệt kê các thành tố quan trọng nhất của giải pháp này

1. Đưa ra số tuổi và giới tính của những người trong ảnh

2. Thu nhận dữ liệu thực từ thông tin đã kết luận ở trên

3. Tạo 1 bảng điều khiển thời gian thực

Đưa ra số tuổi và giới tính của những người trong ảnh

Chúng tôi muốn tạo một trải nghiệm vui nhộn và thú vị có thể thu hút sự chú ý của mọi người trên toàn thế giới, nên chúng tôi đã tìm kiếm giao diện lập trình ứng dụng ( API- application programming interface) có trên Azure Machine Learning Gallery. Kho dữ liệu có rất nhiều những dịch vụ thông minh như Face, Speech, và Vision. giao diện lập trình ứng dụng đã có 1 trang chạy thử Face API has a demo page có thể truy xuất thông tin người dùng trong tấm ảnh được đăng tải. Chúng tôi nhận ra rằng khả năng của  nhận diện khuôn mặt của giao diện lập trình ứng dụng API khá thú vị nên chúng tôi đã chọn việc nhận dạng khuôn mặt cho dự án này. Để khiến trải nghiệm trở nên hài hước hơn, chúng tôi đã dùng giao diện của  API cùng Bing Search API từ Azure để tạo nên http://how-old.net.

ml-apr29-3

Để nêu rõ tuổi và giới tính, chúng tôi đã đồng thời lấy thông tin chuỗi người dùng, kinh độ, vỹ độ của tấm ảnh được đăng tải. Điều này thể hiện trong tài liệu JSON như sau:

 [ {   "event_datetime": "2015-04-27T01:48:41.5852923Z",  
"user_id": "91539922310b4f468c3f76de08b15416", "session_id": "fbb8b522-6a2b-457b-bc86-62e286045452", 
"submission_method": "Search", 
"face": { "age": 23.0, "gender": "Female" }, 
"location_city": { "latitude": 47.6, "longitude": -122.3 }, 
"is_mobile_device": true, "browser_type": "Safari", "platform": "iOS", "mobile_device_model": "IPhone" 
} ]

Real Time Insights

Khi chúng tôi lấy thông tin cần thiết từ những tấm ảnh đăng tải, chúng tôi thu thập và phân tích dữ liện có từ hàng ngàn người dùng đã đăng tải ảnh trong thời gian thực thông qua  bộ dịch vụ trực tuyến của Microsoft Azure.

Chúng tôi thu thập tất cả dữ liệu bằng  bộ xử lý cực nhanh Azure Event Hubs. Chúng tôi dùng giao diện lập trình ứng dụng Event Hubs để tải bộ công cụ JSON từ web mỗi khi người dùng đăng tải hình ảnh. Hình ảnh không cần lưu, chỉ duyệt qua bộ xử lý.

Tiếp đó chúng tôi tải và tập hợp thông tin từ hàng ngày  người dùng đang tải hình ảnh đồng thời. Để thực hiện điều này chugn1 tôi dùng Azure Stream Analytics (ASA). ASA cho phép bạn viết được cách xử lý bằng ngôn ngữ SQL khá đơn giản.

ml-apr29-4

SELECT
System.Timestamp AS OutTime,
    Face.gender AS Gender,
    Count(*) AS Count
FROM
    StreamInput
GROUP BY HoppingWindow(second,10,1), 
        Face.gender

ml-apr29-5ml-apr29-6

Trong câu truy vấn trên, chúng tôi đang chọn Thời gian khi kết quả được viết (OutTime), giới tính, và số giới tính. StreamInput là bí danh của Event Hub . Điều này được thực hiện trong một cửa sổ nhảy 10 giây, với những bước nhảy của 1 giây. Truy vấn này tổng hợp số khuôn của Nữ và Nam trong các hình ảnh được tải lên và các thông tin này có thể được hiển thị trong một bảng điều khiển. Bạn có thể có nhiều truy vấn xử lý dòng trên dữ liệu đến từ cùng một Event Hub.

Bảng điều khiển thời gian thực

Chúng tôi sử dụng PowerBI để hiển thị các kết quả trong một bảng điều khiển thời gian thực. chúng tôi đã chọn PowerBI như đầu ra của công việc phân tích dòng của chúng tôi (bấm vào đây để tìm hiểu làm thế nào). Sau đó, chúng tôi dùng http://app.powerbi.com, và chọn các số liệu và bảng được tạo bởi ASA. Không cần bổ sung mã hóa để tạo ra các biểu đồ thời gian thực của bạn.

ml-apr29-7ml-apr29-8

Trong ví dụ này, chúng tôi có một vài câu truy vấn phân tích dòng. Một cái sẽ tập hợp tuổi trong định mức, sau đó chuyển sang phần khác, một cái khác thì sẽ  truy vấn lại. PowerBI cho phép bạn dễ dàng tạo ra một loạt các hiệu ứng hình ạnh bao gồm bản đồ, biểu đồ đường, biểu đồ hình cây và nhiều hơn nữa. Bảng xếp hạng được cập nhật trong thời gian thực là từ dữ liệu được tạo ra bởi người dùng tải lên hình ảnh tại http://how-old.net. Ngoài ra bạn có thể đặt câu hỏi bằng ngôn ngữ tự nhiên (ví dụ như ” Số lượng của bgười sử dụng IOS theo giới tính  hoặc nhóm tuổi là gì”) và các bảng xếp hạng được hiển thị như là một kết quả của một câu hỏi như vậy có thể được gắn vào bảng điều khiển thời  gian thực.

Hãy thử dùng http://how-old.net xem nào (#HowOldRobot). Chúng tôi mong bạn sẽ thấy vui và điều này có thể gợi hứng để bạn tạo ra ứng dụng của riêng mình khi dùng dịch vụ của Azure và giao diện lập trình ứng dụng  API đang có sẵn trên ML Gallery.

Corom and Santosh  (Machine Learning, Stream Analytics, Azure ML, PowerBI)

(Suối Mây lượt dịch)

Advertisements

2 thoughts on “#HowOldRobot đã nịnh đầm như thế nào và câu chuyện đằng sau trang ứng dụng đang gây sốt toàn thế giới!

    • Đó là do điếc hem sợ súng đó Linh ơi ^.^. Mình có thói quen tò mò nên khi coi cái app thấy cái câu “Read The story behind this demo” là ngứa ngáy tay chân click vô xong nghĩ là dịch chơi í! ❤

      Liked by 1 person

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

Lên trên
%d bloggers like this: