[PCALoadings, PCAScores, PCAVar] = princomp(sr);
+ Tính tổng giá trị phương sai tích lũy trên các cấu tử: cumsum(PCAVar./sum(PCAVar) * 100);
+ Sau khi tính toán vecto cột chứa giá trị phần trăm phương sai tích lũy gồm 76 hàng (tương ứng với 76 bước sóng) thu được như bảng 12 sau:
Cấu tử
|
Giá trị phương sai tích lũy
|
1
|
91,3339784792356
|
2
|
97,2451607447669
|
3
|
99,7079781808949
|
4
|
99,8949050200568
|
5
|
99,9775847568665
|
6
|
99,9921621701294
|
7
|
99,9959357800121
|
8
|
99,9974069935249
|
9
|
99,9979538219829
|
10
|
99,9984831482205
|
11
|
99,9989147297407
|
12
|
99,9992664238834
|
13
|
99,9995130898429
|
14
|
99,9996696141363
|
15
|
99,9997843681934
|
…..
|
…………..
|
Như vậy cấu tử đầu tiên chiếm khoảng 91,33% lượng thông tin chứa trong tập số liệu ban đầu. Đến câu tử thứ 3, chiếm 99,71% lượng thông tin chứa trong tập số liệu ban đầu, các cấu tử phía sau có phương sai tích lũy tăng không đáng kể. Vì vậy, chúng tôi chọn 3 cấu tử chính cho các bước nghiên cứu tiếp theo.
Xây dựng mô hình ANN dựa vào tập số liệu PCA vừa phân tích được.
+ Nhập ma trận đầu vào mẫu học Clearn(3x300) của 300 dung dịch chuẩn chứa 3 ion kim loại cần phân tích (5 hàng, 300 cột).
+ Nhập ma trận đầu ra mẫu học Alearn(3x300) (3 là số cấu tử chính thu được khi phân tích PCA). Ma trận này lấy từ 300 cột đầu tiên của ma trận A’o.
+ Nhập ma trận nồng độ mẫu kiểm tra Ctest(3x42) của 42 dung dịch chuẩn chứa 3 cấu tử (3 hàng, 42 cột).
+ Nhập ma trận đầu ra mẫu kiểm tra Atest(3x42). Ma trận này lấy từ 42 cột cuối cùng của ma trận A’o.
+ Tính toán số liệu theo mô hình ANN tối ưu đã khảo sát
net = newff(minmax(Alearn),[100 100 100 100 3],{'logsig' 'logsig' 'purelin' 'logsig' 'purelin'},'traincgf'); % 3 là số cấu tử khảo sát
net.trainParam.goal=0.0000001;
net.trainParam.epochs = 300000;
net = train(net,Alearn,Clearn);
ylearn = sim(net,Alearn);
ytest = sim(net,Atest);
saiso = 100*(ytest-Ctest)./Ctest;
- Lưu lại M-file vừa thực hiện được mang tên:PCR- ANN2.m
-
Sau khi tính toán, kết quả thu được từ mô hình sẽ là giá trị
+ ylearn : nồng độ của các mẫu học sau quá trình luyện mạng (learning).
+ ytest : nồng độ các mẫu kiểm tra sau quá trình học của mạng (trainning)
+ sai số tương đối của các mẫu kiểm tra sau quá trình học mạng
Nồng độ và sai số tương đối của các mẫu kiểm tra sau quá trình học mạng được biểu diễn ở bảng 12 :
Bảng 12 : So sánh nồng độ các ion kim loại tính toán được từ mô hình PCR-ANN và mô hình ANN của tác giả [11]
(1) : là hàm lượng kim loại tìm được từ mô hình PCR-ANN
(2) : là hàm lượng kim loại tìm được từ mô hình ANN của tác giả [11]
(0) : là hàm lượng kim loại thực có.
Mẫu
|
Ca (1)
|
Ca (2)
|
Ca (0)
|
Ce (1)
|
Ce (2)
|
Ce (0)
|
Cu (1)
|
Cu (2)
|
Cu(0)
|
1
|
-0,057
|
-0,155
|
0
|
10,050
|
9,971
|
10
|
9,930
|
10,184
|
10
|
2
|
-0,017
|
-0,114
|
0
|
9,904
|
9,826
|
10
|
24,962
|
25,251
|
25
|
3
|
0,046
|
-0,034
|
0
|
14,912
|
15,327
|
15
|
9,925
|
10,141
|
10
|
4
|
-0,015
|
0,174
|
0
|
14,984
|
15,147
|
15
|
20,045
|
19,969
|
20
|
5
|
0,097
|
-0,083
|
0
|
20,046
|
19,875
|
20
|
5,030
|
10,057
|
10
|
6
|
-0,107
|
-0,042
|
0
|
20,008
|
19,777
|
20
|
9,876
|
25,178
|
25
|
7
|
0,000
|
0,122
|
0
|
20,034
|
24,769
|
25
|
25,105
|
15,020
|
15
|
8
|
-0,049
|
0,073
|
0
|
25,082
|
24,771
|
25
|
14,974
|
25,208
|
25
|
9
|
0,229
|
0,035
|
0
|
24,957
|
29,987
|
30
|
24,609
|
4,930
|
5
|
10
|
0,086
|
0,187
|
0
|
29,984
|
29,874
|
30
|
4,959
|
19,862
|
20
|
11
|
-0,145
|
0,099
|
0
|
30,034
|
39,934
|
40
|
19,982
|
4,959
|
5
|
12
|
0,012
|
0,218
|
0
|
39,969
|
39,956
|
40
|
5,011
|
19,912
|
20
|
13
|
-0,010
|
5,167
|
5
|
40,039
|
-0,091
|
0
|
19,972
|
4,999
|
5
|
14
|
4,987
|
5,021
|
5
|
-0,097
|
-0,076
|
0
|
4,968
|
25,094
|
25
|
15
|
10,073
|
10,071
|
10
|
-0,006
|
0,167
|
0
|
25,104
|
15,169
|
15
|
16
|
9,985
|
10,003
|
10
|
-0,072
|
-0,123
|
0
|
14,937
|
2,940
|
30
|
17
|
14,912
|
14,827
|
15
|
0,017
|
0,420
|
0
|
29,955
|
9,934
|
10
|
18
|
14,959
|
14,950
|
15
|
-0,023
|
-0,093
|
0
|
10,008
|
24,935
|
25
|
19
|
20,013
|
19,843
|
20
|
0,055
|
0,012
|
0
|
25,023
|
9,857
|
10
|
20
|
19,887
|
20,040
|
20
|
0,020
|
-0,143
|
0
|
10,051
|
29,940
|
30
|
21
|
24,980
|
24,913
|
25
|
-0,048
|
-0,041
|
0
|
29,977
|
9,948
|
10
|
22
|
24,939
|
25,141
|
25
|
0,012
|
-0,198
|
0
|
9,996
|
20,122
|
20
|
23
|
30,016
|
30,142
|
30
|
-0,202
|
-0,301
|
0
|
19,955
|
5,103
|
5
|
24
|
29,998
|
30,110
|
30
|
-0,040
|
-0,240
|
0
|
4,949
|
20,056
|
20
|
25
|
5,051
|
4,803
|
5
|
10,050
|
9,975
|
10
|
20,081
|
-0,041
|
0
|
26
|
4,915
|
4,880
|
5
|
29,987
|
29,879
|
30
|
0,023
|
-0,119
|
0
|
27
|
9,922
|
10,164
|
10
|
15,076
|
14,970
|
15
|
0,054
|
0,014
|
0
|
28
|
10,053
|
9,928
|
10
|
25,058
|
24,874
|
25
|
-0,048
|
-0,024
|
0
|
29
|
15,101
|
15,153
|
15
|
15,010
|
14,785
|
15
|
0,015
|
-0,048
|
0
|
30
|
14,930
|
15,139
|
15
|
29,973
|
29,824
|
30
|
-0,003
|
-0,066
|
0
|
31
|
19,957
|
20,064
|
20
|
14,996
|
15,000
|
15
|
0,150
|
0,007
|
0
|
32
|
19,913
|
19,956
|
20
|
30,026
|
29,886
|
30
|
-0,012
|
0,008
|
0
|
33
|
24,981
|
25,007
|
25
|
14,949
|
14,986
|
15
|
0,058
|
0,024
|
0
|
34
|
25,025
|
24,810
|
25
|
29,922
|
29,934
|
30
|
0,065
|
0,036
|
0
|
35
|
30,070
|
29,943
|
30
|
19,922
|
19,758
|
20
|
0,080
|
0,103
|
0
|
36
|
29,979
|
30,035
|
30
|
40,011
|
39,812
|
40
|
-0,024
|
0,007
|
0
|
37
|
5,040
|
4,806
|
5
|
10,112
|
10,211
|
10
|
9,928
|
10,184
|
10
|
38
|
4,981
|
4,945
|
5
|
10,042
|
9,978
|
10
|
19,985
|
19,983
|
20
|
39
|
5,043
|
4,992
|
5
|
15,089
|
15,028
|
15
|
9,937
|
10,137
|
10
|
40
|
4,960
|
5,045
|
5
|
14,997
|
15,094
|
15
|
25,123
|
25,230
|
25
|
41
|
4,936
|
4,811
|
5
|
20,056
|
20,045
|
20
|
9,910
|
10,053
|
10
|
42
|
5,004
|
4,878
|
5
|
20,006
|
19,975
|
20
|
25,032
|
25,155
|
25
|
43
|
5,027
|
5,066
|
5
|
24,956
|
25,051
|
25
|
4,976
|
4,913
|
5
|
44
|
5,000
|
5,008
|
5
|
24,995
|
24,910
|
25
|
24,938
|
25,154
|
25
|
45
|
4,789
|
4,833
|
5
|
30,048
|
29,994
|
30
|
9,977
|
9,950
|
10
|
46
|
5,083
|
5,039
|
5
|
30,148
|
29,886
|
30
|
20,020
|
19,852
|
20
|
47
|
4,990
|
4,885
|
5
|
39,925
|
40,084
|
40
|
10,131
|
10,155
|
10
|
48
|
4,982
|
4,935
|
5
|
40,085
|
40,114
|
40
|
24,995
|
25,146
|
25
|
49
|
9,958
|
9,893
|
10
|
10,003
|
10,225
|
10
|
10,058
|
10,145
|
10
|
50
|
9,985
|
10,007
|
10
|
9,950
|
9,985
|
10
|
25,033
|
25,222
|
25
|
51
|
10,070
|
10,032
|
10
|
15,035
|
15,021
|
15
|
10,070
|
10,094
|
10
|
52
|
9,958
|
10,176
|
10
|
14,873
|
15,112
|
15
|
25,100
|
25,199
|
25
|
53
|
9,996
|
9,927
|
10
|
14,967
|
20,066
|
20
|
5,007
|
4,995
|
5
|
54
|
10,041
|
10,057
|
10
|
20,007
|
20,149
|
20
|
24,944
|
25,118
|
25
|
55
|
10,105
|
9,794
|
10
|
24,853
|
25,065
|
25
|
10,333
|
9,923
|
10
|
56
|
10,001
|
10,013
|
10
|
25,025
|
24,904
|
25
|
24,931
|
25,094
|
25
|
57
|
9,953
|
9,958
|
10
|
30,128
|
29,894
|
30
|
4,911
|
4,975
|
5
|
58
|
9,999
|
9,989
|
10
|
29,937
|
29,830
|
30
|
20,010
|
19,912
|
20
|
59
|
10,001
|
9,933
|
10
|
39,966
|
39,853
|
40
|
5,064
|
5,101
|
5
|
60
|
9,949
|
9,963
|
10
|
40,071
|
39,985
|
40
|
24,986
|
25,125
|
25
|
61
|
14,889
|
14,890
|
15
|
9,997
|
10,278
|
10
|
10,049
|
10,084
|
10
|
62
|
15,020
|
14,865
|
15
|
10,002
|
10,047
|
10
|
30,024
|
29,907
|
30
|
63
|
14,954
|
14,939
|
15
|
15,016
|
14,843
|
15
|
9,866
|
10,053
|
10
|
64
|
14,938
|
15,015
|
15
|
14,933
|
14,673
|
15
|
20,022
|
19,943
|
20
|
65
|
15,010
|
14,910
|
15
|
20,049
|
20,027
|
20
|
9,931
|
10,029
|
10
|
66
|
15,003
|
15,077
|
15
|
20,060
|
19,860
|
20
|
15,006
|
15,070
|
15
|
67
|
14,833
|
14,787
|
15
|
24,952
|
25,137
|
25
|
10,186
|
9,949
|
10
|
68
|
14,953
|
14,935
|
15
|
25,025
|
25,043
|
25
|
19,873
|
19,953
|
20
|
69
|
14,914
|
15,120
|
15
|
30,030
|
29,826
|
30
|
14,998
|
15,192
|
15
|
70
|
15,065
|
15,106
|
15
|
30,027
|
29,891
|
30
|
25,022
|
24,721
|
25
|
71
|
14,993
|
14,906
|
15
|
39,870
|
39,721
|
40
|
19,965
|
19,930
|
20
|
72
|
15,010
|
14,786
|
15
|
40,003
|
39,770
|
40
|
30,035
|
30,007
|
30
|
73
|
19,994
|
19,944
|
20
|
9,979
|
10,166
|
10
|
10,041
|
10,002
|
10
|
74
|
20,015
|
20,015
|
20
|
9,966
|
9,936
|
10
|
19,951
|
20,039
|
20
|
75
|
20,032
|
20,108
|
20
|
15,056
|
14,707
|
15
|
5,026
|
4,977
|
5
|
76
|
19,998
|
19,954
|
20
|
14,946
|
15,185
|
15
|
24,953
|
25,180
|
25
|
77
|
19,890
|
19,834
|
20
|
20,019
|
20,115
|
20
|
9,907
|
9,966
|
10
|
78
|
20,113
|
19,922
|
20
|
20,104
|
20,157
|
20
|
25,054
|
25,132
|
25
|
79
|
20,193
|
19,647
|
20
|
25,053
|
25,024
|
25
|
10,046
|
9,892
|
10
|
80
|
20,001
|
19,759
|
20
|
24,888
|
24,933
|
25
|
24,975
|
25,126
|
25
|
81
|
19,923
|
20,049
|
20
|
30,014
|
29,858
|
30
|
5,002
|
4,990
|
5
|
82
|
19,958
|
20,055
|
20
|
29,879
|
29,879
|
30
|
20,110
|
19,973
|
20
|
83
|
20,077
|
19,865
|
20
|
39,774
|
40,066
|
40
|
9,976
|
9,992
|
10
|
84
|
19,957
|
19,781
|
20
|
39,960
|
40,113
|
40
|
25,002
|
25,104
|
25
|
85
|
25,036
|
24,867
|
25
|
9,946
|
10,005
|
10
|
10,161
|
10,090
|
10
|
86
|
25,004
|
24,734
|
25
|
10,028
|
9,900
|
10
|
24,907
|
25,203
|
25
|
87
|
24,970
|
25,116
|
25
|
14,974
|
14,657
|
15
|
5,016
|
5,051
|
5
|
88
|
25,010
|
25,103
|
25
|
15,016
|
14,830
|
15
|
20,002
|
20,063
|
20
|
89
|
24,779
|
24,875
|
25
|
20,080
|
20,027
|
20
|
9,830
|
10,075
|
10
|
90
|
25,053
|
25,084
|
25
|
20,003
|
19,903
|
20
|
20,149
|
20,055
|
20
|
91
|
25,057
|
24,952
|
25
|
24,967
|
24,824
|
25
|
15,103
|
15,131
|
15
|
92
|
25,006
|
25,151
|
25
|
24,986
|
24,787
|
25
|
30,102
|
30,093
|
30
|
93
|
24,960
|
24,833
|
25
|
30,096
|
29,922
|
30
|
14,959
|
15,223
|
15
|
94
|
25,011
|
24,759
|
25
|
29,981
|
30,024
|
30
|
25,007
|
24,948
|
25
|
95
|
25,057
|
25,128
|
25
|
40,026
|
39,957
|
40
|
4,968
|
5,044
|
5
|
96
|
25,048
|
24,740
|
25
|
40,065
|
40,166
|
40
|
25,054
|
25,111
|
25
|
97
|
30,051
|
29,904
|
30
|
9,999
|
10,020
|
10
|
9,957
|
10,081
|
10
|
98
|
29,983
|
29,927
|
30
|
9,949
|
9,937
|
10
|
29,971
|
29,950
|
30
|
99
|
29,976
|
29,980
|
30
|
14,996
|
15,031
|
15
|
15,008
|
14,966
|
15
|
100
|
29,902
|
29,805
|
30
|
15,050
|
15,414
|
15
|
24,937
|
25,066
|
25
|
101
|
30,073
|
30,080
|
30
|
20,156
|
19,749
|
20
|
5,019
|
5,164
|
5
|
102
|
30,034
|
29,782
|
30
|
19,966
|
19,988
|
20
|
24,930
|
25,057
|
25
|
103
|
29,969
|
30,063
|
30
|
24,953
|
24,889
|
25
|
10,056
|
10,133
|
10
|
104
|
29,992
|
30,166
|
30
|
24,965
|
24,901
|
25
|
20,043
|
20,098
|
20
|
105
|
29,991
|
29,766
|
30
|
29,919
|
29,909
|
30
|
14,896
|
15,275
|
15
|
106
|
30,045
|
29,628
|
30
|
30,024
|
30,056
|
30
|
24,943
|
24,907
|
25
|
107
|
30,014
|
30,028
|
30
|
40,075
|
39,909
|
40
|
10,002
|
10,022
|
10
|
108
|
30,150
|
29,763
|
30
|
39,991
|
40,078
|
40
|
25,044
|
24,976
|
25
|
Các kết quả tính toán ở bảng 12 cho thấy, hàm lượng tính được mô hình PCR-ANN hoàn toàn phù hợp với kết quả phân tích của tác giả, đồng thời, rất nhiều mẫu tính toán (mẫu 1, 4, 6....) được cho kết quả tốt hơn kết quả ban đầu của tác giả.
KẾT LUẬN
Matlab là chương trình phần mềm hỗ trợ đắc lực cho tính toán với ma trận và hiển thị. Với những ưu điểm đó, Matlab ngày càng trở nên thông dụng và là một công cụ trợ giúp hữu hiệu nhằm giải quyết các vấn đề rất đa dạng trong công việc trong nghiên cứu và ứng dụng. Trong hóa học phân tích, việc sử dụng Malab để lập trình tính toán đối với phương pháp hồi quy đa biến tuyến tính và phi tuyến tính cho phép xác định nhanh đồng thời các cấu tử trong cùng hỗn hợp mà không cần tách và làm giàu, đem lại hiệu quả rất cao.
Với mục tiêu ban đầu đặt ra cho luận văn là nghiên cứu xác định đồng thời một số kim loại bằng phương pháp trắc quang sử dụng thuật toán mạng nơron nhân tạo kết hợp với hồi qui thành phần chính (PCR-ANN), sau một thời gian nghiên cứu chúng tôi thu được một số kết quả sau:
-
Đã nghiên cứu lý thuyết về phương pháp hồi quy đa biến tuyến tính sử dụng mạng nơron nhân tạo, phương pháp phân tích thành phần chính nhằm giảm kích thước tập số liệu, đưa ra được các thuật toán và lập trình tìm ra số cấu tử chính, mô hình mạng nơron nhân tạo tối ưu để tính nồng độ các cấu tử trong hỗn hợp cần phân tích. Đặc biệt đây là công trình đầu tiên tại Việt Nam đã ứng dụng phần mềm MATLAB trong việc lập mô hình mạng nơron nhân tạo và mạng nơron nhân tạo giải bài toán xác định đồng thời các chất không có tính cộng tính trong phương pháp trắc quang. Đóng góp này đã đem lại công cụ phần mềm để giải quyết hồi qui đa biến bằng MATLAB- một phần mềm chứng tỏ những ưu điểm về sử dụng đơn giản và tính tiện dụng cao so với phần mềm khác,
-
Đã khảo sát các điều kiện hình thành các phức màu Ni- PAR, Co- PAR, Cu – PAR, Pb- PAR và Cd- PAR với các cực đại hấp thụ tương ứng là 495 nm, 496 nm, 499 nm; 524 nm và 512nm ở pH 10, Nồng độ tối ưu PAR là 1,5.10-4M, Đường chuẩn đơn biến Ni2+ tuyến tính trong khoảng 0,03 – 1 ppm, Co2+: 0,04 – 1,2 ppm, Pb2+: 0,2 - 6 ppm; Cu2+ : 0,04-1,4 ppm và Cd2+: 0,05-1,7ppm,
-
Đã ứng dụng mô hình mạng nơron nhân tạo kết hợp với hồi quy thành phần chính và tìm ra mô hình hồi quy tối ưu nhờ giảm kích thước tập số liệu từ 151 bước sóng xuống chỉ còn 2 cấu tử chính mà không làm mất đi lượng thông tin có trong tập dữ liệu. Mạng lan truyền thẳng (MLP) với 2 nơron lớp nhập, 4 lớp ẩn, mỗi lớp ẩn có 100 nơron, 5 nơron lớp xuất tương ứng với nồng độ của 5 ion Cd2+, Co2+, Cu2+, Ni2+, Pb2+ , kết quả thu được có sai số rất thấp (dưới 5%), giảm thời gian luyện mạng ANN từ 55 phút xuống còn 5 phút 46 giây. Các phương pháp xác định đồng thời các cấu tử trong cùng dung dịch khác thường gặp phải khó khăn: đối tượng phân tích phải nằm trong khoảng tuyến tính, các mẫu phân tích không mắc sai số hệ thống, hoá chất tinh khiết…Nhưng khi phân tích đồng thời các ion Cd2+, Co2+, Cu2+, Ni2+, Pb2+ chúng tôi đã tiến hành thí nghiệm với các mẫu chuẩn nằm ngoài khoảng tuyến tính, các kết quả phân tích mắc phải sai số hệ thống khi khảo sát sự phụ thuộc của độ hấp thụ quang vào nồng độ, đồng thời mẫu trắng có độ hấp thụ quang khá cao (0,071) nhưng những nhược điểm đó đã được mạng nơron nhân tạo khắc phục. Do đó hàm lượng các kim loại thu được là rất chính xác, Sai số tương đối nhỏ nhất là 0% và lớn nhất là 14%, những mẫu có sai số lớn có thể do quá trình pha chế.
Từ các kết quả trên cho thấy mạng nơron nhân tạo là một phương pháp tối ưu để giải quyết các bài toán xác định đồng thời các cấu tử trong cùng hỗn hợp ngay cả khi hỗn hợp các cấu tử có tín hiệu đo tuyến tính hay phi tuyến tính với nồng độ chất phân tích. Phần mềm Matlab là phần mềm đơn giản và có rất nhiều tiện ích, giải quyết được nhiều bài toán phức tạp trong hóa phân tích. Đây là chương trình hỗ trợ tính toán rất mạnh và sinh viên có thể dễ dàng hiểu được. Chúng tôi hi vọng rằng phần mềm Matlab sẽ được đưa vào giảng dạy trong nhà trường và được nghiên cứu sâu hơn trong hoá học nói chung cũng như hoá học phân tích nói riêng.
TÀI LIỆU THAM KHẢO
Chia sẻ với bạn bè của bạn: |