dự đoán mức lương khởi điểm được input đầu vào là dữ liệu về các quảng cáo văn bản phi cấu trúc và được demo bằng WEKA. Hướng tiếp cận sẽ đi từ việc phân tích các đặc trưng liên quan đến quản lý cho vay, tới lựa chọn thuật toán để giải quyết bài toán, rồi đến việc xây dựng tập huấn luyện và tập kiểm thử. Và cuối cùng là demo bằng WEKA.
Trang 1MACHINE LEARNING FINAL
PROJECT
TÓM TẮT
Phần mềm này sẽ đưa ra dự đoán mức lương khởi điểm được input đầu vào là dữ liệu
về các quảng cáo văn bản phi cấu trúc và được demo bằng WEKA Hướng tiếp cận sẽ đi từ việc phân tích các đặc trưng liên quan đến quản lý cho vay, tới lựa chọn thuật toán để giải quyết bài toán, rồi đến việc xây dựng tập huấn luyện và tập kiểm thử Và cuối cùng là demo bằng WEKA
Trang 21 MÔ TẢ NGHIỆP VỤ
1.1 Giới thiệu
Thông thường khi quảng cáo việc làm được đăng trên mạng, người lao động không chú
ý việc đề cập đến mức lương Để một cá nhân tìm kiếm một công việc, điều này đặt ra một tình thế khó xử, làm họ có nguy cơ lãng phí thời gian quý báu điều tra một công việc trả lương thấp, hoặc bỏ qua các quảng cáo tuyệt vời và nguy cơ bỏ qua một cơ hội tuyệt vời Nhiệm vụ này được thực hiện từ một cuộc thi Kaggle
Với một quảng cáo cho một việc cần người làm, mục tiêu là để dự đoán mức lương khởi điểm cho các công việc đang được đăng
Phần lớn các dữ liệu về các quảng cáo là văn bản phi cấu trúc, nhưng một số cấu trúc
dữ liệu được cho là tốt Một cây của các mối quan hệ địa lý giữa các địa điểm công việc cũng được cung cấp
Trang 3Nhiệm vụ này là tương tự như ví dụ chạy trong bài giảng của dự đoán mức lương khởi điểm, và có tính hữu dụng trong thế giới thực để các công ty thông báo vấn đề
2 MÔ TẢ YÊU CẦU PHẦN MỀM
Tập dữ liệu chính bao gồm nhiều hàng biểu diễn các quảng cáo công việc riêng, và một loạt các trường về mỗi quảng cáo công việc
Có những trường như sau:
• Id - Một định danh duy nhất cho mỗi quảng cáo việc làm
• Title - Một trường được cung cấp cho chúng ta bởi các nhà quảng cáo công việc như các tiêu đề của quảng cáo công việc Thông thường, đây là tóm tắt của tiêu đề công việc hoặc vai trò
• FullDescription - Các nội dung đầy đủ của quảng cáo công việc được cung cấp bởi các nhà quảng cáo công việc Khi bạn thấy *** s, chúng ta đã tách các giá trị từ mô tả để bảo đảm rằng thông tin lương không xuất hiện trong mô tả Có thể có một số tổn thất phụ ở đây, nơi chúng tôi đã loại bỏ dữ liệu số khác
• LocationRaw - Vị trí được cung cấp bởi các nhà quảng cáo công việc
• LocationNormalized - vị trí của Adzuna từ bên trong location tree của riêng của chúng tôi, giải thích bởi chúng dựa trên vị trí nguyên Tiêu chuẩn của chúng tôi không phải là hoàn hảo !
• ContractType - full time hoặc part time, được giải thích bởi Adzuna từ mô tả hoặc một trường bổ sung cụ thể, chúng tôi nhận được từ các nhà quảng cáo
• ContractTime - cố định hoặc hợp đồng, được giải thích bởi Adzuna từ mô tả hoặc một trường bổ sung cụ thể, chúng tôi nhận được từ các nhà quảng cáo
• Company - tên của nhà tuyển dụng được cung cấp cho chúng ta bởi các nhà quảng cáo công việc
• Category - có 30 tiêu chuẩn loại công việc quảng cáo này đặt vào, suy luận theo một cách rất lộn xộn dựa trên các nguồn quảng cáo đến từ đâu Chúng tôi biết có rất nhiều nhiễu và sai trong trường này
• SalaryRaw – trường lương chúng tôi nhận được trong các quảng cáo việc làm từ các nhà quảng cáo
• SalaryNormalised - mức lương hàng năm được giải thích bởi Adzuna từ tiền lương cơ bản Lưu ý rằng đó luôn luôn là một giá trị duy nhất dựa trên điểm giữa của bất kỳ phạm vi căn cứ trong lương cơ bản Đây là giá trị, chúng tôi đang cố gắng để dự đoán
• SourceName - tên của các trang web hoặc quảng cáo từ người mà chúng tôi nhận được quảng cáo công việc
3 PHẦN MỀM WEKA
3.1 Giới thiệu tổng quan về phần mền weka
Trang 4Weka là một phần mềm được viết bằng ngôn ngữ JAVA do Witten và Frank xây dựng Weka bao gồm các phương pháp học máy cơ bản phục vụ cho các mục tiêu sau: o Tiền xử
lý dữ liệu, các phương pháp học máy cơ bản và các phương pháp đánh giá mô hình o Sử dụng đồ họa để biểu diễn dữ liệu o Là một môi trường được dùng để so sánh các thuật toán học
Giao diện chính
Giao diện chính của Weka
Trang 5Hình 2 Giao diện của Explorer
Explorer
Các chức năng chính:
+ Preprocess(tiền xữ lý dữ liệu): Chọn và thay đổi dữ liệu
+ Phân lớp hoặc hồi quy (Classification or regression): Học và kiểm tra các mô hình cho bài toán phân lớp hoặc bài toán dự đoán
+ Phân cụm (Cluster) Học các cụm từ dữ liệu
+ Luật kết hợp (Associate): Học các luật kết hợp từ dữ liệu
+ Lựa chọn thuộc tính (Select attributes): Lựa chọn các thuộc tính “hữu ích” để biểu diễn
dữ liệu
+ Trực quan hóa (Visualize) Hiển thị biểu đồ 2D
Đưa dữ liệu vào Trong tab Preprocess có:
- Nút Open file mỡ các file có sẵn trên máy
Trang 6- Nút Open URL mỡ các file từ máy khác.
- Nút Open DB đọc dữ liệu từ cơ sở dữ liệu
- Nút Generate phần mềm tự tạo ra dữ liệu cho bạn theo sự lữa chọn của bạn
- Sử dụng nút Open file có thể đọc được tập in ở nhiều định dạng khác nhau: định dạng ARFF, CSV, C4.5
4 GIẢI THUẬT LINEAR REGRESSION
4.1 Giới thiệu giải thuật
Hồi quy tuyến tính (Linear regression) là hồi quy có tính chất tuyến tính Tính chất tuyến tính (linear) mang ý nghĩa rằng bất kể giá trị nào của x thì sự tác động (ảnh hưởng) của nó đối với y là như nhau Hồi quy tuyến tính đơn (simple liner regression) khi chỉ có một biến độc lập x (independent variable, còn gọi là exploratory variable) liên quan một cách tuyến tính với biến phụ thuộc y (dependent variable, còn gọi là response variable), theo phương trình sau:
y = β0 + β1x + εx + ε
Hồi quy tuyến tính đa biến (multiple linear regression) khi biến phụ thuộc y liên quan một cách tuyến tính với nhiều biến độc lập xi , theo phương trình sau:
y = β0 + β1x + εx1x + ε + βnxn + ε
4.2 Tuyến tính hồi quy bình phương tối tiểu
- Linear least squares regression
Khi phân tích hồi quy, mục đích của chúng ta là tìm phương trình hồi quy mẫu thông qua ước lượng các hệ số β1x + ε, β2
Dựa vào dữ liệu mẫu ta thu được các ước lượng tương ứng là β 0 1x + ε , β0 2 Nhưng β 0 1x + ε , β0 2 là các ước lượng điểm β1x + ε, β2
Vì thế ta chưa biết được chất lượng của các ước lượng này là như thế nào Ta cần đưa
ra một số các giả thiết của phương trình bình phương tối thiểu để thu được tốt nhất cho β1x + ε, β2
Từ đó thu được các giá trị Y 0 i là các ước lượng tốt nhất cho E(Y |Xi) Thủ tục ước lượng được dùng phổ biến nhất là phương pháp bình phương tối tiểu
Tiêu chuẩn tối ưu được sử dụng bởi phương pháp bình phương tối tiểu là cực tiểu hóa hàm mục tiêu
Phương pháp bình phương nhỏ nhất là một phương pháp được đưa ra bởi nhà toán học Đức Carl Friedrich Gauss, đây là một phương pháp mạnh và được rất nhiều người sử dụng, nó thường được ký hiệu là OLS (ordinary least squares) Tư tưởng của phương pháp này là cực tiểu tổng bình phương các phần dư Do đó có thể nói để có được đường hồi quy
Trang 7thích hợp nhất, chúng ta chọn các ước lượng của tung độ gốc và độ dốc sao cho phần dư
là nhỏ nhất
Ta đặt:
Yi : Ký hiệu là giá trị thực của biến y tại quan sát i
Y 0 i : Ký hiệu của hàm hồi quy mẫu
ei : ký hiệu phần dư Yi − Y 0 i Do đó cực tiểu hóa P(Yi − Y 0 i ) 2 sẽ tương dduong với cực
tiểu Pe 2 i từ đó tìm ra β1x + ε, β2
Chất lượng của các ước lượng phụ thuộc này còn phụ thuộc vào các yếu tố sau:
- Dạng hàm của mô hình được chọn
- Phụ thuộc vào Xi và Ui
- Phụ thuộc vào cỡ của mẫu
Ta có các giả thuyết về Xi và Ui để các ước lượng thu được không chệch và có phương sai nhỏ nhất
Giả thiết 1: Biến giải thích X có giá trị quan sát Xi khác với ít nhất 1x + ε giá trị còn lại, tức là các
biến giải thích Xi phải khác nhau
Giả thiết 2: Giá trị trung bình của sai số có thể mang dấu âm hoặc dương đối với mỗi giá trị
quan sát nhưng về mặt trung bình thì bằng 0
Giả thiết 3: Các giá trị của X được cho trước và không ngẫu nhiên, tức là mỗi Xi được cho
trước và không phải là biến ngẫu nhiên Điều đó nghĩa là Xi và Ui là không tường quan với nhau Tức là có nghĩa là khi bất kỳ biến giải thích Xi nào thay đổi lớn hơn hay nhỏ đi thì yếu
tố sai số e không thay đổi
CoV (Xi , Ui) = E(Xi , Ui) − E(Xi).E(Ui) = XiE(Ui) − XiE(Ui) = 0 Đây là giả thiết quan trọng vì nếu X và U có tương quan gì thì khi X thay đổi, U cũng sẽ thay
đổi theo
Vì thế giá trị kỳ vọng của Y sẽ khác β1x + ε + β2X
Giả thiết 4: Phương sai sai số không đổi:
Trang 8Tất cả các giá trị u được phân phối giống nhau với cùng phương sai σ 2 sao cho
V ar(ui) = E(u 2 i ) = σ 2 Điều này được gọi là phương sai của số không đổi
V ar(Ui) = V ar(Uj ) = σ 2 (Vi 6= j)
Với các giả thiết trên, khi đó ta có tính chất của các ước lượng theo phương pháp bình phương tối thiểu sau:
Định lý Gauss-Markov: Định lý này cho một khẳng định là các ước lượng β 0 1x + ε , β0 2 của
β1x + ε, β2 có được bằng phương pháp bình phương tối thiểu là các ước lượng không chệch và
có phương sai tối thiểu trong các ước lượng không chệch của β1x + ε, β2
Kỹ thuật hàng loạt, trong đó liên qua đến việc xử lý toàn bộ dữ liệu trong 1x + ε lần đi, nên có thể sẽ cần độ tính xác cao, tốn kém cho tập dữ liệu lớn
Như ta đã biết, nếu các tập dữ liệu là đủ lớn, nó có thể là đáng giá để sử dụng các thuật toán tuần tự, còn gọi là thuật toán trên đường (on-line), trong đó các điểm dữ liệu được coi
là một tại một điểm thời gian nhất định, và các thống số mô hình cập nhật sau mỗi khi xử lý xong thuật toán
Sequential learning cũng thích hợp cho các ứng dụng thời gian thực, trong đó các dữ liệu đến trong một dòng liên tục, và dự đoán phải được thực hiện trước khi tất cả các điểm
dữ liệu được nhìn thấy
Chúng ra có thế có được một thuật toán học tuần tự bằng cách áp dụng các kỹ thuật stochastic gradient descent, còn được gọi là sequetial gradient descent
Nếu hàm lỗi bao gồm tổng trên tất cả các điểm dữ liệu E = P n En, sau khi biểu diễn các
mô hình n, các thuật toán stochastic gradient descent sẽ cập nhật tham số w sử dụng:
t là số lần lặp, và η là một tham sô tỷ lể học Chúng ta sẽ thảo luận về các lựa chọn giá trị cho η ngay Giá trị của w là khơi tạo một số khởi đầu vector w(0)
5 HỒI QUY LUẬN LÝ - LOGISTICS REGRESSION
5.1 Giới thiệu:
Trang 9Mục tiêu của hồi quy luận lý (Logistic Regression) là nghiên cứu mối tương quan giữa một (hay nhiều) yếu tố nguy cơ (risk factor) và đối tượng phân tích (outcomt) Chẳng hạn như đối với nghiên cưu mối tương quan giữa thói quyen hút thuốc lá và nguy cơ mắc ung thư phổi thì yếu tố nguy cơ ở đây là thói quen hút thuốc lá và đối tượng phân tích ở đây là
là nguy cơ mắc ung thư phổi
Trong hồi qui luận lý thì các đối tượng nghiên cứu thường được thể hiện qua các biến
số nhị phân (binary) như xảy ra/không xảy ra; chết/sống; có/không; Còn các yếu tố nguy
cơ có thể được thể hiện qua các biến số liên tục (tuổi, huyết áp, ) hoặc các biến nhị phân (giới tính) hay các biến thứ bậc (thu nhập: cao, trung bình, thấp)
Vấn đề đặt ra cho nghiên cứu dạng này là làm sao để ước tính độ tương quan của các yếu tố nguy cơ và các đối tượng phân tích
Các phương pháp phân tích như hồi quy tuyến tính không áp dụng được vì biến phụ thuộc không phải là biến liên tục mà là biến nhị phân Nhà thống kê học David R Cox đã phát triển mô hình có tên Logistic Regression Model (1x + ε970s) để phân tích các biến nhị phân
Ví dụ: bảng dữ liệu dưới đây thu nhập để nghiên cứu mối tương quan giữa tình trạng phơi nhiễm chất độc gia cam (Agent Orange - AO) và ung thư tuyến tiền liệt
Số liệu bảng trên cho thấy 23.4% (1x + ε1x + ε/36) người bị ung thư tuyến tiền liệt từng bị phơi nhiễm
AO Tỷ lệ này trong nhóm đối chứng là 1x + ε1x + ε.8% (1x + ε7/1x + ε44) vấn đề đặt ra là có sự tương quan nào giữa tình trạng phơi nhiễm AO và ung thu tuyến tiền liệt hay không?
Nghiên cứu cần trả lời 2 vấn đề sau:
- Nguy cơ mắc bệnh ung thư tuyến tiền liệt của những người từng bị phơi nhiễm AO so với nguy cơ ở những người không từng bị phơi nhiễm là bao nhiêu?
- Sự khác biệt về nguy cơ ung thư tuyến tiền liệt giữa 2 nhóm phơi nhiễm và không phơi nhiễm AO có ý nghĩa thống kê không? (hay do ngẫu nhiên)
Mô hình hồi quy luận lý có thể trả lời 2 câu hỏi này
Số tỷ số nguy cơ (Odds radio - OR)
Chỉ số thống kê quan trọng trong hồi qui Logistics là tỷ số nguy cơ (Odds Ratio – OR) Trong tiếng anh odd có nghĩa là nguy cơ hay khả năng Nói cách khác odd là tỷ số của 2 giá trị của một biến nhị phân Do đó, OR là tỷ số của hai odds Trong bảng dữ liệu trên, ta có:
Trang 10odd mắc ung thu trong nhóm từng phơi nhiễm AO là 11/17 = 0.647 odd mắc ung thư trong nhóm không từng bị phơi nhiễm AO là 36/127 = 0.283
Và Odds Ratio (OR) mắc ung thư trong nhóm từng bị phơi nhiễm AO so với
nhóm không từng bị phơi nhiễm là 0.647/0.283= 2.28
Thực ra có thể tính OR đơn giản = (11X127)/(36X17) = 2.28 )
OR = 2.28 cho biết nguy cơ mắc ung thư tuyến tiền liệt của những người từng phơi nhiễm AO cao hơn gấp 2.8 lần những người không bị phơi nhiễm AO
Chú ý rằng kết quả phân tích này chỉ dựa trên một mẫu duy nhất, và các ước tính OR có thể dao động từ mẫu này sang mẫu khác Giá trị OR có được chỉ là ước tính của OR thật (real OR) ta không biết được và OR thật có thể dao động từ thấp hơn 1x + ε đến cao hơn 1x + ε Nếu OR thật thấp hơn 1x + ε, điều này có nghĩa là nguy cơ mắc ung thư của những người từng bị phơi nhiễm AO thấp hơn những người không từng bị phơi nhiễm Nếu OR thật lớn hơn 1x + ε điều này có nghĩa là nguy cơ mắc ung thư của những người từng bị phơi nhiễm AO cao hơn những người không từng bị phơi nhiễm Nếu OR = 1x + ε có nghĩa là không có mối liên hệ nào giữa phơi nhiễm AO và ung thư tuyến tiền liệt
Trong thực tế, ta không biết được OR thật nên vấn đề quan trọng là phải trả lời câu hỏi mối tương quan được phản ánh qua OR có ý nghĩa thống kê hay không? Nói cách khác nếu nghiên cứu trên được lặp lại nhiều lần thì độ dao động của OR là bao nhiêu?
Giả sử rằng ta thực hiện nghiên cứu trên 1x + ε00 lần, trong đó có 95 lần OR dao động từ 1x + ε.1x + ε đến 3.8, còn 5 lần OR nhỏ hơn 1x + ε.1x + ε hoặc cao hơn 3.8 thì chúng ta có bằng chứng để phát biểu rằng mối quan hệ giữa phơi nhiễm AO và ung thư tuyến tiền liệt có ý nghĩa thống kê (không phải do ngẫu nhiên) với độ tin cây 95%˙
Nói cách khác, chúng ta cần tính sai số chuẩn (Standard Error – SE) cho OR với khoảng tin cậy 95%Vì OR là một tỷ số nên không thể tính SE cho OR một cách trực tiếp mà phải thông qua phương ˙ pháp gián tiếp Một trong những phương pháp gián tiếp này là phương pháp Woolf như sau:
- Trước tiên hoán chuyển OR sang logarit (natural logarithm - ln)
logOR = log(OR) = log(2.28)=ln(2.28) = 0.824
- Bước 2 : Tính sai số chuẩn của logOR như sau:
- Bước 3: Theo luật phân phối chuẩn, khoảng tin cậy 95% của logOR là:
logOR ± 1.96XSE
Trong ví dụ trên, khoảng tin cây 95% của logOR là
0.824 − 1x + ε.96X0.430 = −0.01x + ε88 0.824 + 1x + ε.96X0.430 = +1x + ε.6681x + ε
Trang 11- Bước 4: Vì khoảng tin cậy vừa tính là log, nên ta chuyển khoảng tin cậy 95% của về đơn vị tỉ
số như lúc đầu: logOR từ -0.01x + ε88 đến 1x + ε.668 nên ta có khoảng tin cậy 95% của OR nằm trong khoảng từ
e −0.0188 = 0.98Øne1.6681 = 5.30
Kết quả phân tích trên ta thấy trung bình OR là 2.28 nhưng khoảng tin cậy 95% của OR dao động từ 0.98 đến 5.30 Nói cách khác, nếu nghiên cứu trên được lặp lại 1x + ε00 lần thì sẽ có 95 nghiên cứu cho thấy OR thấp hơn 1x + ε (0.98) hay cao hơn 1x + ε (thậm chí cao đến 5.3) Do đó ta có thể kết luận: Bởi vì khoảng tin cậy 95% của OR có thể thấp hơn 1x + ε mà cũng có thể cao hơn 1x + ε nên ta có thể kết luận rằng mối liên hệ giữa tình trạng phơi nhiễm AO và ung thư tuyến tiền liệt không có ý nghĩa thống kê
5.2 Mô hình hồi qui Logistics
Từ ví dụ minh họa trên, ta có thể xây dựng công thức chung của mô hình hồi qui logistic như sau :
Gọi p là xác suất của một sự kiện (chẳn hạn trong ví dụ trên là sự kiện mắc ung thư tuyến tiền liệt) Khi đó odd được định nghĩa như sau :
odd = p /(1−p)
Gọi yếu tố nguy cơ là x (trong ví dụ trên x là tình trạng phơi nhiễm AO, x có 2 giá trị là 0
và 1x + ε x =0 : không phơi nhiễm AO và x=1x + ε : phơi nhiễm AO)
Mô hình hồi qui logistic phát biểu rằng log(odd) phụ thuộc vào giá trị của x qua một hàm
số tuyến tính sau :
log(odd) = α + βx +εx +ε
hay log p/ (1−p) = α + βx +εx+ε(1)
Trong đó, log(odd) hay log p/( 1−p) được gọi là logit(p) (và do đó mới có tên là logistic).
α và β là 2 tham số được ước tính từ dữ liệu, ε là phần dư (residual) tức là phần không giải thích được bằng x Lý do chuyển p thành logit(p) vì p là xác suất có giá trị trong khoảng 0,1x + ε trong khi đó logit(p) có giá trị không giới hạn thích hợp cho việc phân tích theo mô hình hồi quy tuyến tính
Mô hình trên giả định rằng ε tuân theo luật phân phối chuẩn (normal distribution) với trung bình bằng 0 và phương sai không đổi Với giả định này thì giá trị kỳ vọng (expected value) hay giá trị trung bình của log p 1x + ε−p với bất cứ giá trị nào của x là log p 1x + ε−p =α+β vì giá trị trung bình của ε = 0
Nói cách khác, odd bị ung thư từ phương trình (1x + ε) là odd = p 1−p = e α+βx +ε (2)
Như vậy, mô hình hồi qui logistic phát biểu rằng odd của một sự kiện (ung thư tuyến tiền liệt) tùy thuộc vào yếu tố nguy cơ x (tình trạng phơi nhiệm AO)
Dựa vào phương trình (2) odd mắc ung thư của nhóm không bị phơi nhiễm AO (x=0) là odd0 = e α và odd mắc ung thư của nhóm bị phơi nhiễm khi đó tỷ số nguy cơ OR = odd1x + ε
odd0 = e α+βx +ε eα = e βx +ε AO (x=1) là odd1 = e α+βx +ε
Như vậy, mô hình hồi qui logistic phát biểu rằng odd của một sự kiện (ung thư tuyến tiền liệt) tùy thuộc vào yếu tố nguy cơ x (tình trạng phơi nhiệm AO)