Machine learning làm việc như thế nào?

Thảo luận trong 'AI' bắt đầu bởi nktung, 20/05/20, 11:05 AM.

  1. nktung

    nktung Super Moderator Thành viên BQT

    Tham gia: 08/10/13, 04:10 AM
    Bài viết: 854
    Đã được thích: 342
    Điểm thành tích:
    83
    Đặt vấn đề
    Trong bài này, chúng ta sẽ tìm hiểu cách xây dựng mô hình trong Machine Learning để phân biệt một đoạn văn bản là có nghĩa hay vô nghĩa.
    Ví dụ 1: đoạn văn bản có nghĩa:

    “Give a man a fire and he's warm for the day. But set fire to him and he's warm for the rest of his life. It is well known that a vital ingredient of success is not knowing that what you're attempting can't be done. The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it”

    Ví dụ 2: đoạn văn bản vô nghĩa:

    “DFgdgfkljhdfnmn vdfkjdfk kdfjkswjhwiuerwp2ijnsd, mfns sdlfkls wkjgwl
    Reoigh dfjdkjfhgdjbgk nretSRGsgkjdxfhgkdjfg gkfdgkoi
    Dfgldfkjgreiut rtyuiokjhg cvbnrtyu”


    Xây dựng mô hình

    Nhiệm vụ của chúng ta là phát triển một thuật toán học máy có thể phân biệt văn bản có nghĩa/vô nghĩa. Mặc dù tầm thường đối với một con người, nhưng với máy tính cần hướng dẫn nó cách phân biệt như thế nào?. Chúng ta sẽ sử dụng kỹ thuật học máy: cung cấp một số ví dụ cho thuật toán học máy để nó “học” cách phân biệt?
    Chúng ta thử tính toán tần suất của một chữ cái cụ thể được theo sau bởi một chữ cái cụ thể khác.
    Ví dụ trong câu:

    Give a man a fire and he's warm for the day. But set fire to him and he's warm for the rest of his life”, ta thấy:
    upload_2020-5-20_11-11-39.png
    Để đơn giản, chúng ta bỏ qua dấu chấm câu và dấu cách. Thấy rằng, trong câu trên:
    · a được theo sau bởi n 3 lần,
    · f được theo sau bởi i 2 lần và
    · a được theo sau bởi y 1 lần.

    Nhưng đoạn văn bản trên là khá ngắn, chúng ta cần phân tích một chuỗi văn bản lớn hơn. Chúng ta thử thống kê trong truyện “Cuốn theo chiều gió”, của Margaret Mitchell - hay nói chính xác hơn là trong 20% số trang của cuốn sách. Dưới đây là một vài thống kê sau khi đã "quét" cuốn truyện:
    upload_2020-5-20_11-12-55.png
    Như bạn có thể thấy, xác suất gặp phải sự kết hợp của he cao gấp 2 so với an. Và wc chỉ xuất hiện 1 lần.
    Bây giờ chúng ta đã có những nhận xét ban đầu về đặc điểm của một đoạn văn bản có nghĩa. Nhưng làm thế nào để tính được xác suất một câu là có nghĩa hoặc vô nghĩa? Ta sẽ xác định tần suất kết hợp của các cặp chữ cái (các cặp này trong thực tế thường đi với nhau) và sau đó nhân các tần suất đó:
    F(he) * F(th) * F(er) * F(in) * F(an) * F(nd) *…
    11460 * 9260 * 7089 * 6515 * 6214 * 4746 * …
    Khi tính toán theo công thức trên, nếu xét theo từng câu, cần lưu ý đến độ dài của câu đó. Câu dài thì thường sẽ cho kết quả cao hơn đối với câu ngắn. Do vậy để có sự chính xác thì khi tính toán cần có thêm tham số là độ dài của câu.
    Kết luận quan trọng:
    - Nếu một câu là có nghĩa thì kết quả đầu ra có giá trị càng cao, tức là càng khớp với mô hình tính toán mà ta đã đề cập - và do đó, khả năng nó được viết bởi con người càng cao (có nghĩa).
    - Nếu dòng trong câu chứa một số lượng lớn các cặp chữ cái ít khi đi cùng nhau như wx, zg, yq, wc v.v.) thì kết quả đầu ra có giá trị thấp, tức có nhiều khả năng là vô nghĩa.
    Tính toán
    upload_2020-5-20_11-14-23.png
    Như bạn thấy, các câu có nghĩa sẽ ghi được hơn 1.000 điểm và câu vô nghĩa không thể vượt qua 100 điểm. Có vẻ như thuật toán của chúng ta đã hoạt động như mong đợi.

    Để tính được số điểm “ngưỡng” phân biệt văn bản có nghĩa và vô nghĩa, cần cho máy tính thực hiện tính toán nhiều lần, bằng cách nhập vào nhiều câu có nghĩa rồi tính, sau đó lại nhập các câu vô nghĩa, tính tiếp. Sau khi có đủ dữ liệu, thì ngưỡng rơi vào khoảng 500 điểm.
    Tham khảo
    https://www.kaspersky.com/blog/machine-learning-explained/13487/
     
    Chỉnh sửa cuối: 21/05/20, 04:05 PM
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
    Ngô Tấn Trí and NgMSon like this.
  2. cracker

    cracker Member

    Tham gia: 04/09/19, 01:09 PM
    Bài viết: 24
    Đã được thích: 0
    Điểm thành tích:
    1
    bài viết khá ý nghĩa, tks ad
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  3. opter

    opter W-------

    Tham gia: 30/11/14, 03:11 PM
    Bài viết: 47
    Đã được thích: 5
    Điểm thành tích:
    18
    Anh ơi có thư viện Python nào về cái này không ạ?
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  4. nktung

    nktung Super Moderator Thành viên BQT

    Tham gia: 08/10/13, 04:10 AM
    Bài viết: 854
    Đã được thích: 342
    Điểm thành tích:
    83
    Em dùng word2vec nhé
    Chúc thành công
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan