View Full Version : [CHIA SẺ+MỜI HỢP TÁC] Tạo VP và Name cho truyện không cần đọc (đã có bản chạy)
concuanho
25-08-2010, 11:19 PM
Số là thế này, mình thích đọc Convert bằng file text hay prc, nhưng mà lâu nay chưa bao giờ đc hưởng vì nếu convert ẩu thì toàn sạn, mà convert đủ để đọc k gãy răng thì lại phải đọc cẩn thận trong 1 chương trình vừa đọc vừa add VP (như trước kia là Chinese Trans và bây giờ mình dùng QuickTranslator)
Gần đây mình đã phát triển được 1 quy trình và công cụ cho phép tạo Vietphrase và Name cho 1 bộ truyện 1000 chương trong vòng nửa tiếng và theo đánh giá riêng là 80% - 90% bộ truyện đc convert ngon lành. Công cụ do mình làm cho ... mình nên chia biết chia sẻ cách nào cả. Mình post lên đây đầu tiên giới thiệu cách thức lọc VP (xem như là thuật toán vậy) để anh em nào viết Application cùng phối hợp làm. Công cụ của mình chạy trên web nên hạn chế lớn về speed cũng như tính linh hoạt của công cụ, rồi không load được VP trực tiếp mà phải bắn lên thành database...
Thôi dài dòng quá, mình vào chủ đề chính.
Bước 1. Phân tích tần suất
- Ý tưởng phân tích tần suất từ, cụm từ xuất hiện có trong chương trình QuickAnalyzer của chương trình QuickTranslator của bác ngoctay. Trong minh họa đi kèm mình sẽ tiến hành tạo VP cho bộ Tiên Nghịch với 900 chương và mình chưa bao giờ đọc.
- Sau khi download full bộ, mình tiến hành phân tích với số cụm từ từ 2-7, lặp tối thiểu 50 và có được các file sau
http://i900.photobucket.com/albums/ac208/concuanho/1.jpg
Ở đây mình sẽ sử dụng file tần suất với tổng cộng 3737 cụm từ cần lọc
王林=vương lâm=vương [rừng/En:line rin lin lyn]=26756
储物=trữ vật=trữ vật=1776
物袋=vật đại=vật [túi/xách]=1716
在其=tại kỳ=[tại] [của hắn/kỳ/ngoài/của nó]=1407
林身=lâm thân=[rừng/En:line rin lin lyn] thân=1309
在王=tại vương=[tại] vương=1306
然间=nhiên gian=nhiên [gian/đang lúc/giữa/ở giữa]=1305
着王=trứ vương=[/trứ] vương=1302
王林身=vương lâm thân=vương [rừng/En:line rin lin lyn] thân=1298
只不=chích bất=[chích/con/chỉ/chích/con] [không/bất/bất/không]=1272
在王林=tại vương lâm=[tại] vương [rừng/En:line rin lin lyn]=1265
着王林=trứ vương lâm=[/trứ] vương [rừng/En:line rin lin lyn]=1253
林目=lâm mục=[rừng/En:line rin lin lyn] [mắt]=1251
王林目=vương lâm mục=vương [rừng/En:line rin lin lyn] [mắt]=1236
中露=trung lộ=[trong/trung/giữa] [lộ/En:ru lu]=1169
中露出=trung lộ xuất=[trong/trung/giữa] [lộ ra]=1160
林目光=lâm mục quang=[rừng/En:line rin lin lyn] [ánh mắt/tầm mắt/tầm nhìn]=1066
蓦然间=mạch nhiên gian=[bỗng nhiên/chợt] [gian/đang lúc/giữa/ở giữa]=1059
王林目光=vương lâm mục quang=vương [rừng/En:line rin lin lyn] [
..........
concuanho
25-08-2010, 11:28 PM
Bước 2. Nhập dữ liệu để phân tích
- Tiếp theo mình sẽ đưa toàn bộ dữ liệu trên vào CSDL để bắt đầu tiến hành phân tích
http://i900.photobucket.com/albums/ac208/concuanho/2.jpg
- Mình chạy công cụ: Phân loại tên. Thuật toán phân loại sẽ phân loại các từ thành 8 loại căn cứ vào Từ cuối cùng của cụm VP
1. Ngoại hệu
2. NPC
3. Môn phái
4. Kiến trúc
5. Địa danh
6. Đan dược
7. Chiêu thức
8. Vũ khí
-------
Ví dụ như sau về chiêu thức
术 thuật chiêu thức
阵 trận chiêu thức
诀 quyết chiêu thức
指 chỉ chiêu thức
功 công chiêu thức
吼 hống chiêu thức
斩 trảm chiêu thức
火 hỏa chiêu thức
符 phù chiêu thức
Đan dược
木 mộc dan duoc
树 thụ dan duoc
吟 ngâm dan duoc
铁 thiết dan duoc
参 tham dan duoc
丸 hoàn dan duoc
液 dịch dan duoc
茶 trà dan duoc
链 liên dan duoc
葵 quỳ dan duoc
.................
Môn phái
谷 cốc môn phái
派 phái môn phái
门 môn môn phái
家 gia môn phái
宗 tông môn phái
族 tộc môn phái
所 viện môn phái
网 võng môn phái
教 giáo môn phái
轩 hiên môn phái
帮 bang môn phái
峡 hạp môn phái
号 hào môn phái
Mình đã có 1 CSDL tương đối đầy đủ về danh sách này. Mình cũng đọc cả thể loại tinh tế chiến tranh nên các cụm mình có k chỉ thiên về kiếm/tiên hiệp. Vũ khí có thể là vũ khí hiện đại, môn phái có thể hiểu là tổ chức ... vvv
- Thuật toán phân tích tiếp theo là về tên riêng. Hệ thống căn cứ vào từ đầu tiên của cụm VP để phân loại tên riêng, 1 số họ ví dụ như sau
王 vương họ
凌 lăng họ
化 hóa họ
许 hứa họ
花 hoa họ
郑 trịnh họ
辛 tân họ
任 nhâm họ
趙 Triệu họ
錢 Tiền họ
孫 Tôn họ
李 Lý họ
周 Chu họ
吳 Ngô họ
鄭 Trịnh họ
Danh sách họ mình lấy từ "Bách gia tính" cũng như kinh nghiệm đọc truyện tổng hợp lại
concuanho
25-08-2010, 11:34 PM
Bước 3. Chọn/Nhập tên cho truyện
Sau khi hệ thống phân tích xong, mình sẽ vào từng danh mục để chọn/nhập tên riêng cho truyện. Ví dụ như dưới đây là với danh mục "Tên riêng" được trích ra nhờ chữ cái đầu
http://i900.photobucket.com/albums/ac208/concuanho/5.jpg
Khi hiển thị 1 từ sẽ liệt kê ra các từ liên quan đến từ này cùng tần suất, nghĩa của nó. Mình sẽ rất đơn giản đọc và check vào các từ muốn ghi lại thành tên. Từ này sẽ được viết hoa và lưu lại.
Sau khi xử lý 1 trang thế này thì tất cả các từ xuất hiện sẽ được ghi nhận lại là đã xử lý. Như vậy mặc dù có hơn 3500 từ nhưng với thuật toán lấy từ liên quan thì số từ thực tế cần xử lý sẽ ít hơn nhiều. Đồng thời việc hiển thị các từ liên quan sẽ giúp người dùng hiểu chính xác từ cần lưu lại là gì (thông thường là dài nhất hoặc đủ nghĩa nhất)
concuanho
25-08-2010, 11:36 PM
Tiếp tục check các từ ở các danh mục khác nhau để tạo tên. Ví dụ tiếp theo là Ngoại hiệu
http://i900.photobucket.com/albums/ac208/concuanho/6.jpg
Môn phái
http://i900.photobucket.com/albums/ac208/concuanho/8.jpg
Vũ khí
http://i900.photobucket.com/albums/ac208/concuanho/10.jpg
concuanho
25-08-2010, 11:43 PM
Bước 4. Làm sạch CSDL và nhập các từ còn lại
Tiếp theo mình sẽ chạy 1 thuật toán làm sạch CSDL. Căn cứ trên các từ đã được lưu lại, mình sẽ tìm TẤT CẢ các từ còn lại chưa được phân loại có nội dung là 1 phần của từ đã được lọc/phân loại để xóa đi nhằm giảm bớt số từ thừa khi phân loại các từ còn lại.
Ví dụ: trong CSDL mình có 1 từ là "Thiên Hóa Tông". "Thiên Hóa" là từ sẽ cần phân loại lại. TUy nhiên thuật toán trên sẽ xóa Thiên Hóa khỏi CSDL, giảm nhẹ thời gian phân tích
Đây là danh sách các từ còn lại phải xử lý, chỉ còn 2241 từ
http://i900.photobucket.com/albums/ac208/concuanho/13.jpg
Cách xử lý rất nhanh là chỉ cần lướt từ trên xuống dưới. Qua làm việc thực tế, thời gian xử lý các từ còn lại chỉ khoảng 20-30 phút do các từ phần lớn là đơn giản hoặc không có nghĩa, chỉ cần đọc lướt qua là hiểu.
concuanho
25-08-2010, 11:45 PM
Bước 5. Trích xuất VP
Sau khi xử lý xong, mình trích xuất được VP của bộ TIÊN NGHỊCH như sau (tất nhiên là không tính những từ chẳng may đã có sẵn trong VP của mình :tungtung::tungtung:) . Bộ này mình chưa bao giờ đọc, cũng chưa mở ra để lướt sơ nốt :014::014: .Độ chính xác tùy các bác nhận định, mình chưa làm vì muốn đánh giá lại cả độ chính xác của thuật toán và phương pháp. Thời gian phân tích, làm việc thực tế là 35 phút!
李慕婉=Lý Mộ Uyển
李元=Lý Nguyên
红蝶=bướm đỏ
司徒南=Ti đồ Nam
许立=Hứa Lập
许立国=Hứa Lập Quốc
修真国=Tu Chân Quốc
巨魔族=Cự Ma Tộc
雷仙殿=Lôi Tiên điện
王平=Vương Bình
化元=Hóa Nguyên
许木=Hứa Mộc
恒岳派=Hằng Nhạc Phái
雷之仙界=Lôi Chi Tiên Giới
尸阴宗=Thi âm Tông
王卓=Vương Trác
申公虎=Thân Công Hổ
炼魂宗=Luyện Hồn Tông
玄道宗=Huyền đạo Tông
六欲魔君=Lục Dục Ma Quân
雪域=Tuyết Vực
姚冰云=Diêu Băng Vân
炎雷子=Viêm Lôi Tử
天逆珠=Thiên Nghịch Châu
云雀子=Vân Tước Tử
星罗盘=Tinh La BàN
莫厉海=Mạc Lệ Hải
凝气期=Ngưng Khí Kỳ
婴变期=Anh Biến Kỳ
欧阳华=âu Dương Hoa
王浩=Vương Hạo
火焚国=Hỏa Phần Quốc
冉云星=Nhiễm Vân Tinh
大头童子=đại đầu đồng Tử
战神殿=Chiến Thần điện
雷蛙=Lôi Oa
雷龙=Lôi Long
阳实=Dương Thực
问鼎修士=Vấn đỉnh Tu Sĩ
四派联盟=Tứ Phái Liên Minh
火妖郡=Hỏa Yêu Quận
程贤=Trình Hiền
窥涅=Khuy Niết
婴变后期=Anh Biến Hậu Kỳ
杜建=đỗ Kiến
辰龙=Thần Long
炼魂部落=Luyện Hồn Bộ Lạc
生之烙印=Sinh Chi Lạc
天妖城=Thiên Yêu ThàNh
端木极=đoan Mộc Cực
黄龙真=HoàNg Long Chân
天妖郡=Thiên Yêu Quận
许霆=Hứa đình
赵星煞=Triệu Tinh Sát
丈内=Trượng Nội
姚长东=Diêu Trường đông
陈涛=Trần đàO
天魔散人=Thiên Ma Tán Nhân
峰之=Phong Chi
青宜=Thanh Nghi
轮回树=Luân Hồi Thụ
古妖城=Cổ Yêu ThàNh
问鼎后期=Vấn đỉnh Hậu Kỳ
杀戮仙诀=Sát Lục Tiên Quyết
千幻星=Thiên Huyễn Tinh
宝之=Bảo Chi
黄泉升窍决=HoàNg Tuyền Thăng Khiếu Quyết
斩罗诀=Trảm La Quyết
寂灭指=Tịch Diệt Chỉ
唐言=đường Ngôn
云霞星=Vân Hà Tinh
死咒术=Tử Chú Thuật
婴变初期=Anh Biến Sơ Kỳ
决明谷=Quyết Minh Cốc
斗邪派=đấu Tà Phái
血魂丹=Huyết Hồn đan
王师=Vương Sư
百丈碎片=Bách Trượng Toái Phiến
宣武国=Tuyên Vũ Quốc
烟消云=Yên Tiêu Vân
石萧=Thạch Tiêu
无锋谷=Vô Phong Cốc
天离丹=Thiên Ly đan
品丹=Phẩm đan
汪清越=Uông Thanh Việt
烈云子=Liệt Vân Tử
罗天南域=La Thiên Nam Vực
问鼎中期=Vấn đỉnh Trung Kỳ
潮汐深渊=Triều Tịch Thâm Uyên
司马炎=Ti Mã Viêm
孙云山=Tôn Vân Sơn
秀秀=Tú Tú
天地元力=Thiên địa Nguyên Lực
阳老者=Dương Lão Giả
悟天=Ngộ Thiên
ĐIỀU GÌ CẦN LÀM TIẾP THEO
Mong muốn của mình qua bài viết này là giới thiệu 1 cách làm và thuật toán phân tích từ. Qua đó, rất mong các bác viêt Application quan tâm để viết. Nếu có 1 phần mềm chạy offline sẽ tránh được các lỗi mình gặp hiện nay, đó là việc chia sẻ phần mềm, tốc độ xử lý (rất quan trọng), sử dụng được các dữ liệu VP.txt, Name.txt chuẩn hiện nay vvvv
Mong các bác quan tâm, mình sẽ cung cấp các file data cần thiết cho việc phân loại từ
Anaksulnamun
26-08-2010, 11:32 PM
Cám ơn bạn đã share
Mình thấy 1 bản VP tốt, sẽ là bản VP được dựa theo kết quả đọc + thêm từ, kô phải là bản kết quả dựa trên từ điển
như có rất nhiều bạn bỏ vào ức = triệu, đọc ức chế...
Còn về names, thật ra ta chả cần nhiều, cái phải theo dõi là tên Tây được TQ phiên âm đọc, ta phải chuyển ngữ về đúng gốc (names.txt của ta có được khoảng 7000 dòng)...
Còn "tần suất" mà bạn đề cập tới ...thuộc về thể loại nào? Tiên Hiệp 1 cái, đô thị khác, võng du khác...
Hứa Lập Quốc, cái tên đó ta thấy nó xuất hiện được trong ...3 tác phẩm, xem ra cũng ....gọi là cao ... => ta chỉ thêm họ, kô thêm tên, như họ "Nam Cung" "Đông Phương" "Độc Cô"...
P.S: bạn để "ti đồ nam" thì ...chả ai hiểu, nhưng "ti đồ" còn có 1 cách đọc khác là họ "tư đồ", nếu vậy thì nó sẽ quen thuộc hơn...
làm VP khó lắm, ....
P.S: sorry bạn :D, hiểu lầm... đọc lần 1 tinh thần kô được tốt lắm nên ...hẻm hiểu
Chờ tí, ta sẽ làm thử theo cái đã ...từ từ tính, tần suất, tần suất, hì hì
concuanho
27-08-2010, 01:09 AM
Cám ơn bạn đã share
Mình thấy 1 bản VP tốt, sẽ là bản VP được dựa theo kết quả đọc + thêm từ, kô phải là bản kết quả dựa trên từ điển
như có rất nhiều bạn bỏ vào ức = triệu, đọc ức chế...
Còn về names, thật ra ta chả cần nhiều, cái phải theo dõi là tên Tây được TQ phiên âm đọc, ta phải chuyển ngữ về đúng gốc (names.txt của ta có được khoảng 7000 dòng)...
Còn "tần suất" mà bạn đề cập tới ...thuộc về thể loại nào? Tiên Hiệp 1 cái, đô thị khác, võng du khác...
Hứa Lập Quốc, cái tên đó ta thấy nó xuất hiện được trong ...3 tác phẩm, xem ra cũng ....gọi là cao ... => ta chỉ thêm họ, kô thêm tên, như họ "Nam Cung" "Đông Phương" "Độc Cô"...
P.S: bạn để "ti đồ nam" thì ...chả ai hiểu, nhưng "ti đồ" còn có 1 cách đọc khác là họ "tư đồ", nếu vậy thì nó sẽ quen thuộc hơn...
làm VP khó lắm, ....
P.S: sorry bạn :D, hiểu lầm... đọc lần 1 tinh thần kô được tốt lắm nên ...hẻm hiểu
Chờ tí, ta sẽ làm thử theo cái đã ...từ từ tính, tần suất, tần suất, hì hì
bác đọc kỹ hộ em cái :018::018: ... em đâu có ốp bộ VP chuẩn đâu. Đây là công cụ cho phép tạo VP cho từng bộ truyện căn cứ trên tần suất. Từ đó cho phép tạo VP cho 1 bộ truyện đầy đủ, hoàn chỉnh k cần đọc mà chỉ mất độ nửa tiếng!
Anaksulnamun
27-08-2010, 08:32 AM
Thì ta đã ...xin lỗi rùi mà lị :(...
Từ từ để ta test cái đã ... nếu làm được vậy thì rất phẻ... sau này ta convert hàng loạt và quăng lên, he he :D
concuanho
27-08-2010, 10:08 AM
thì mục đích của talà như thê mà.bây h ta đọc convẻrt rất sướg,toàn tạo prc bản đẹp đọc như đọc bản dịch :).có điều nếu k bác viết application nào wan tâm thì ta chỉ có cách tiếp tục dùng 1 mình
lehaphuong
12-09-2010, 01:15 AM
Đề nghị cho ta mượn ta dùng vài ngày rồi ta đưa ý kiến cho :041:
Kevigne
20-09-2010, 04:38 PM
@concuanho
Mình thấy ý tưởng của bạn rất hay, và hình như bạn đã viết thành sodt chạy trên nền tảng web. Sao bạn không share cho anh em dùng thử.
Quăng Bom Cửu Đỉnh
20-09-2010, 04:46 PM
Lão làm ta đọc thấy giống game quá .............................. Để thử đã........................
concuanho
20-09-2010, 11:37 PM
@concuanho
Mình thấy ý tưởng của bạn rất hay, và hình như bạn đã viết thành sodt chạy trên nền tảng web. Sao bạn không share cho anh em dùng thử.
do mình viết cho cá nhân nên không có hệ thống tài khoản, phân quyền vvv các thứ, tất cả đổ chung lên 1 cái DB nên muốn share cũng không được! :015: Lại thêm cái speed đúng là khốn khổ :039: .
Ở đây mình muốn giới thiệu ý tưởng + thuật toán nếu đại gia viết software nào muốn làm . Còn nếu dev tiếp phiên bản này lên thì mình k đủ sức, mình chỉ code võ vẽ cho vui chứ k có khả năng làm các hệ thống phức tạp :014::014:
Tiêu Kiếm
21-09-2010, 02:49 PM
Ý tưởng rất hay đại gia nào viết đi nào làm thành 1 cái ct giống qt ấy
concuanho
21-09-2010, 05:47 PM
Rất mong các đại gia application quan tâm :021:
nguyenphuphi
07-10-2010, 10:15 PM
2. NPC
NPC là gì?
Mình đã có 1 CSDL tương đối đầy đủ về danh sách này.
CSDL là gì? Nếu có code (không cần database) thì ta có thể coi rồi convert qua C#.
Tiêu Kiếm
31-10-2010, 06:19 PM
NPC mình củng chả hiểu nó là gì còn CSDL = cơ sở dữ liệu
cuongphoenix
31-10-2010, 06:38 PM
NPC là gì?
non-player character(s) ?_?
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.