Translate

Tìm kiếm Blog này

Covid 24h

Thursday, September 2, 2021

Tìm hiểu về Vue router

VueJS là thư viện front-end có thể được dùng với bất kỳ ngôn ngữ back-end nào. Nếu muốn tạo ứng dụng front-end đầy đủ chức năng, thì vue-router và vue-resource là hai nguyên tố chính tuyệt trong VueJS.

Bài viết hôm nay sẽ tìm hiểu sâu về Vue router. Routing (định tuyến) là cách để quản lý các thành phần trong Single Page Applications (SPA). hết thảy các framework front-end nổi tiếng đều dùng khái niệm Routing.

Vue router là gì?

Vue router là gì?

Vue router là router chính thức cho Vue.js. Nó tích hợp sâu với Vue.js core để giúp xây dựng các SPA với Vue.js một cách dễ dàng. Các tính năng bao gồm:

  • Nested route (định tuyến lồng nhau)/view mapping
  • Cấu hình router dựa trên thành phần, mô-đun
  • Định tuyến thông số, truy tìm, ký tự đại diện
  • Xem các hiệu ứng chuyển tiếp được cung cấp bởi hệ thống chuyển tiếp của Vue.js
  • Kiểm soát tính năng Fine-grained navigation
  • Liên kết với các active CSS class tự động
  • Chế độ HTML5 history mode hay hash mode, với tính năng auto-fallback trong IE9
  • Hành vi cuộn tùy chỉnh

Cách dùng vue-router

Bước 1: Tạo 3 component bên trong thư mục Components

Trong thư mục, tạo 3 file component. Các file này sẽ giống trong snippet sau:

		
			// Home.vue  
		
	

Sau đó tạo file About.vue.

		
			// About.vue  
		
	

rốt cuộc, tạo file Contact.vue.

		
			// Contact.vue  
		
	

Bước 2: Cập nhật file index.html và thêm thuộc tính app id.

		
			    

Bước 3: Cấu hình mô-đun vue-router

Trong file main.js, trước nhất, ta cần nhập mô-đun vue-router từ thư mục node_modules vì ta đã cài đặt sờ soạng các dependency trong dự án này. Sao chép code sau vào file main.js.

		
			// main.js import Vue from 'vue'; import VueRouter from 'vue-router'; Vue.use(VueRouter); import Home from './components/Home.vue'; import About from './components/About.vue'; import Contact from './components/Contact.vue'; const router = new VueRouter( mode: 'history', base: __dirname, routes: [  path: '/', component: Home ,  path: '/about', component: About ,  path: '/contact', component: Contact  ] ); new Vue( router, template: ` 
` ).$mount('#app');

Bước 4: Chạy code và xem đầu ra rút cuộc

Bây giờ, có 3 mục trong thanh Navigation và nếu bạn nhấp vào một trong số chúng, route bên dưới sẽ thay đổi và bạn có thể thấy vận dụng vue-router hoạt động. thí dụ đã bao gồm toàn bộ các file dự án chính ở đây cũng như (bạn cũng có thể tìm thấy dự án này trên Github: https://github.com/KrunalLathiya/playground-UjLAnHRe).

package.json

		
			 "name": "vuerouter", "version": "1.0.0", "description": "", "main": "index.js", "scripts":  "start": "webpack-dev-server --host 0.0.0.0 --disable-host-check" , "author": "", "license": "ISC", "devDependencies":  "babel-core": "^6.25.0", "babel-loader": "^7.1.1", "babel-plugin-transform-runtime": "^6.23.0", "babel-preset-es2015": "^6.24.1", "babel-preset-stage-3": "^6.24.1", "babel-runtime": "^6.25.0", "vue-loader": "^13.0.2", "vue-template-compiler": "^2.4.2", "webpack": "^3.4.1", "webpack-dev-server": "^2.6.1" , "dependencies":  "vue": "^2.4.2", "vue-router": "^2.7.0"  
		
	

webpack.config.js

		
			var path = require('path'); module.exports =  // This is the "main" file which should include all other modules entry: path.join(__dirname,'/main.js'), // Where should the compiled file go? output:  filename: 'bundle.js' , resolve:  alias:  vue: 'vue/dist/vue.js'  , module:  // Special compilation rules loaders: [  // Ask webpack to check: If this file ends with .js, then apply some transforms test: /\.js$/, // Transform it with babel loader: 'babel-loader', // don't transform node_modules folder (which don't need to be compiled) exclude: /node_modules/ , bower_components)/, // Transform it with vue use:  loader: 'vue-loader'   ] , devServer:  port: 3000  
		
	

main.js

		
			import Vue from 'vue'; import VueRouter from 'vue-router'; Vue.use(VueRouter); import Home from './components/Home.vue'; import About from './components/About.vue'; import Contact from './components/Contact.vue'; const router = new VueRouter( mode: 'history', base: __dirname, routes: [  path: '/', component: Home ,  path: '/about', component: About ,  path: '/contact', component: Contact  ] ); new Vue( router, template: ` 
` ).$mount('#app');

index.html

		
			    

Home.vue

		
			 
		
	

About.vue

		
			 
		
	

Contact.vue

		
			 
		
	

15 ngôn ngữ lập trình phổ biến nhất thế giới hiện nay

Thế giới tiếng nói lập trình khôn xiết phong phú, bạn đang tìm hiểu về nó và chưa biết bắt đầu từ đâu, vậy thì hãy thử xem 15 tiếng nói lập trình phổ quát nhất trên thế giới này đi. Biết đâu bạn sẽ tìm được cho mình một xuất phát điểm thích hợp.

Danh sách tiếng nói lập trình phổ biến nhất này được đánh giá dựa trên chỉ số TIOBE. Theo số liệu mới nhất về chỉ số TIOBE tính đến hết tháng 10/2020, C vẫn giữ vững vị trí đầu tiên và thậm chí còn chứng kiến sự tăng nhẹ về độ phổ thông so với tháng trước. Đáng chú ý, Python đã chính thức vượt mặt tên tuổi kỳ cựu Java để trở nên ngôn ngữ lập trình được dùng phổ thông thứ hai thế giới hiện giờ.

10 ngôn ngữ lập trình phổ biến nhất tính đến tháng 11/2020
10 tiếng nói lập trình phổ thông nhất tính đến tháng 11/2020

Không dài dòng nữa, mình cùng tìm hiểu xem trong năm vừa qua việc dùng các tiếng nói lập trình đã đổi thay như thế nào nhé.

15. Ruby

Ruby Nguồn ảnh: Sergio Caltagirone via Wikimedia Commons

Các nhà phát triển yêu thích tiếng nói lập trình Ruby 26 năm tuổi này bởi dễ đọc và dễ viết. Đi kèm với nó là Rails , một framework add-on giúp cho việc xây dựng vận dụng web trở nên dễ dàng hơn bao giờ hết. Phương châm chính của tiếng nói lập trình Ruby chính là “ người bạn tốt nhất của các lập trình viên .”

Xem thêm: ngôn ngữ lập trình Ruby cho người mới bắt đầu

14. Swift

Swift

Apple đã phát hành Swift vào năm 2014, và công ty này cho biết đó là một cách tốt và dễ dàng hơn để xây dựng phần mềm. " Swift đã trở thành hợp thời "; Lyft , trong số những người đã dùng nó để làm cho vận dụng iPhone, cho biết.

dù rằng dính scandal với Taylor Swift nhưng tiếng nói lập trình Swift của Apple đã hoàn toàn thuyết phục các nhà phát triển khi đây là nền móng nhanh và dễ nhất để xây dựng các áp dụng cho iPhone trong năm 2015. tiếng nói lập trình Swift hiện đã cuộn được đông đảo người dùng, kể cả IBM.

13. Go

Go Nguồn ảnh: Adam Berry / Getty

Go là một ngôn ngữ lập trình mới do Google thiết kế và phát triển giúp các nhà phát triển của Google xây dựng các hệ thống cho lượng người dùng cực lớn. ngôn ngữ lập trình Go được thiết kế để giúp ngành công nghiệp phần mềm khai hoang nền móng đa lõi của bộ vi xử lý và hoạt động đa nhiệm tốt hơn.

Việc khẩn hoang sức mạnh của các bộ xử lý đa lõi và phần cứng đời mới đối với các ngôn ngữ hiện có được xem như là việc không thể bởi những giới hạn vốn có của các tiếng nói lập trình trên máy tính như C,C++, Java,...

Google đưa ra ngôn ngữ Go như là một cách tiếp cận khác về vấn đề xử lý đa lõi . Thay vì chỉ có hệ điều hành được phép cấp tài nguyên và xử lý, các phần mềm cũng có thể tương tác trực tiếp với nền tảng đa lõi giúp cho việc xử lý nhanh hơn.

Hơn nữa, Go cũng được rất nhiều lập trình viên yêu thích vì tính dễ đọc và dễ nhân rộng.

12. Perl

Perl là tiếng nói lập trình ban sơ được phát triển để thao tác với văn bản và hiện được dùng cho nhiều tác vụ như quản trị hệ thống, phát triển web, lập trình mạng, phát triển GUI, v.v...

11. Groovy

Groovy là một ngôn ngữ động mạnh mẽ, có thể gõ tùy chọn và khả năng biên dịch tĩnh, dành cho nền tảng Java nhằm mục đích cải thiện năng suất của nhà phát triển nhờ cú pháp ngắn gọn, thân thuộc và dễ học. Nó tích hợp trơn tuột với bất kỳ chương trình Java nào và tức thời cung cấp cho vận dụng của bạn các tính năng mạnh mẽ, bao gồm khả năng viết kịch bản, Domain-Specific Language, runtime, compile-time, meta-programming, lập trình chức năng.

10. SQL

SQL là ngôn ngữ truy hỏi dữ liệu có cấu trúc chứ không phải ngôn ngữ lập trình giống như các mục khác trong bài viết này. SQL là tiếng nói tiêu chuẩn cho các hệ quản trị cơ sở dữ liệu quan hệ. Các câu lệnh SQL dùng để thao tác với dữ liệu như cập nhật, thêm, sửa, xóa, lấy dữ liệu từ cơ sở dữ liệu. Bạn có thể tìm hiểu thêm về SQL tại đây .

9. R

R là tiếng nói lập trình và môi trường phần mềm miễn phí, được dùng cho tính toán thống kê và đồ họa, được hỗ trợ bởi R Foundation for Statistical Computing. R được sử dụng rộng rãi bởi các nhà thống kê và những người vỡ hoang dữ liệu cho phát triển phần mềm thống kê. Những cuộc dò xét, khảo sát khai thác dữ liệu và nghiên cứu cơ sở dữ liệu học thuật cho thấy mức độ phổ thông của R đã tăng lên đáng kể.

8. PHP

Ngôn ngữ lập trình PHP

PHP đã quá phổ quát trong thiết kế website. Các nền móng lớn như WordPress, Facebook, Yahoo đều được phát triển bằng PHP.

tuy thế cũng có không ít người ghét PHP, điển hình là nhà sáng lập Stack Exchange , Jeff Atwood từng viết: “ PHP không phải một ngôn ngữ lập trình mà đúng hơn phải là một đống tạp nham các từ khóa và function .”

7. JavaScript

JavaScript lf ngôn ngữ lập trình phổ biến nhất Logo của JavaScript

Mặc dù có sự giống nhau về tên gọi và sự phổ thông nhưng JavaScript không liên hệ gì nhiều đến Java . JavaScript là tiếng nói lập trình căn bản nhất khi phát triển các vận dụng web. JavaScript chạy trên web đương đại nhưng đôi khi nó cũng chính là thủ phạm làm chậm tốc độ trình duyệt hay đẩy người dùng vào nhiều lỗ hổng bảo mật hơn.

6. Visual Basic

VB là môi trường và tiếng nói lập trình hướng sự kiện của Microsoft, cung cấp GUI cho phép lập trình viên chỉnh sửa code một cách đơn giản hơn phê duyệt thao tác kéo thả các đối tượng và xác định hành vi của chúng. VB có cội nguồn từ BASIC, được coi là vừa hướng đối tượng vừa hướng sự kiện. Nó được thiết kế để dễ học và viết code nhanh hơn, nên thỉnh thoảng được gọi là hệ thống RAD, sử dụng để xây dựng nguyên mẫu của một áp dụng, rồi sau đó dùng ngôn ngữ khác khó hơn, hiệu quả hơn để hoàn thiện ứng dụng.

5. C#

C#

ngôn ngữ lập trình C# được đọc là " C-Sharp ", rưa rứa như một nốt trong âm nhạc. C# được Microsoft phát triển và cũng là một biến thể của tiếng nói C. C# được yêu chuộng vì khả năng đưa những ý tưởng “ rất Java ” vào cách lập trình của mình và phần đông được sử dụng bởi các nhà phát triển phần mềm kinh dinh.

4. C++

C++ Bjarne Stroustrup, nhà phát minh C++. Nguồn ảnh: Wikimedia Commons

Được phát minh vào năm 1983 như một tuyển lựa thay thế tiếng nói C truyền thống, C++ thực thụ rất phổ biến với các nhà phát triển trên toàn cầu; từ vận dụng web dành cho máy tính để bàn cho đến cơ sở hạ tầng phòng máy chủ. Microsoft Windows, Google Chrome hay các phần mềm cho phi cơ đương đầu đều được viết bằng C++.

3. Java

Ngôn ngữ lập trình Java

Java ban đầu được phát minh bởi Sun Microsystems vào năm 1991 như một tiếng nói lập trình dành cho các hệ thống truyền hình tương tác. nền móng Java của Oracle nay đã trở nên tiếng nói lập trình phổ thông nhất thế giới. Java chính là phần cần yếu trong phát triển áp dụng Android và phần mềm doanh nghiệp hay TV sáng ý.

2. Python

Các tính năng của ngôn ngữ Python Python là tiếng nói lập trình bậc cao, hướng đối tượng, đơn giản mã nguồn mở, thư viện tiêu chuẩn rộng lớn và rất nhiều tính năng tuyệt khác.

Python xuất hiện vào năm 1989 và mau chóng được đón nhận nhờ các đoạn mã rất dễ đọc giống như Ruby. Đây cũng được xem là ngôn ngữ lập trình dễ hiểu nhất dành cho những người mới bắt đầu. Quantrimang.com có hẳn một chuyên mục dành cho tiếng nói lập trình này cùng nhiều hướng dẫn Python hữu dụng, bạn đọc quan hoài có thể tham khảo.

Peter Jansen, tổng giám đốc TIOBE Software, đơn vị chịu bổn phận về Chỉ số TIOBE, cho biết đây lần trước hết sau gần 20 năm, C và Java không cùng lúc chiếm hai vị trí dẫn đầu trong danh sách các ngôn ngữ lập trình phổ quát nhất. Nói về sự trỗi dậy của Python, vị CEO nhận định:

“Tôi tin rằng sự phổ quát của Python liên tưởng đến nhu cầu và xu thế chung của thời đại. Trong quá cố, hầu hết các hoạt động lập trình được thực hành bởi các kỹ sư phần mềm. Nhưng kỹ năng lập trình là yếu tố tiên quyết trong mọi trường hợp. hiện tại, chúng ta cần đến một tiếng nói đơn giản, dễ học, dễ làm quen, có thể được xử lý bởi các kỹ sư tay nghề không quá cao, với chu kỳ chỉnh sửa mau chóng và triển khai suôn sẻ. Python chỉ đơn giản là đáp ứng được tất tật những nhu cầu trên”.

Python tỏ ra đặc biệt thích hợp với các lĩnh vực vốn được coi là động lực phát triển của nhận loại trong thời đại công nghệ 4.0 như học máy, trí não nhân tạo, khoa học dữ liệu và phân tách dự đoán… Các nhà phát triển đang dùng tiếng nói này trong rất nhiều nhiệm vụ khác nhau. Có thể là thiết kế một áp dụng doanh nghiệp, đào tạo dữ liệu bằng các mô hình học máy, thiết kế phần mềm tiền tiến hoặc lựa chọn và sắp xếp dữ liệu. thực chất “năng động” và một thư viện nhẵn với các tính năng sẵn có cho hầu hết mọi thứ của Python khiến nó trở thành tuyển lựa phổ biến của các nhà phát triển và tổ chức.

Vẫn chưa thể khẳng định liệu Python có thể thay thế C trở thành tiếng nói lập trình số một hay không, nhưng kể từ cuối năm 2017, mức độ phổ biến của Python ngày một tăng mạnh, trong khi “độ phủ sóng” của C đang giảm chậm theo thời kì.

1. ngôn ngữ lập trình C

C Nguồn ảnh: Flickr

ngôn ngữ lập trình C là một tiếng nói mệnh lệnh được phát triển từ đầu thập niên 1970 bởi Dennis Ritchie dùng trong hệ điều hành UNIX. Từ đó, tiếng nói này đã lan rộng ra nhiều hệ điều hành khác và trở nên một những tiếng nói phổ dụng nhất.

C là tiếng nói rất có hiệu quả và được ưa thích nhất để viết các phần mềm hệ thống, còn được dùng cho việc viết các vận dụng. Ngoài ra, C cũng thường được dùng làm công cụ giảng dạy trong khoa học máy tính Mặc dù ngôn ngữ này không được thiết kế dành cho người nhập môn.

Cuốn " The C Programming Language " dày 800 trang được xem là cuốn " Bách khoa toàn thư " đáng tin cậy nhất về tiếng nói đã trở thành bài tiêu chuẩn trong chương nhập môn của hầu hết các loại sách giáo khoa về lập trình.

ngôn ngữ kinh điển này được sáng chế ra vào năm 1972 nhưng vẫn thịnh hành cho đến hiện tại, không chỉ bởi khả năng hoạt động trên tuốt luốt các nền móng điện toán mà còn bởi tính ổn định và dễ hiểu với hầu hết các lập trình viên từ khắp nơi trên thế giới.

Xem thêm: Lý do khiến tiếng nói lập trình C không bao giờ lỗi thời

Chỉ số TIOBE

Chỉ số TIOBE (TIOBE Index) là một thang đo (dựa trên điểm số) mô tả sự phổ thông của các tiếng nói lập trình đang được sử dụng trên toàn thế giới. TIOBE được cập nhật định kỳ mỗi tháng một lần, và ước lượng dựa trên thống kê về số lượng kỹ sư phần mềm lành nghề trên toàn thế giới, các khóa học và đặc biệt là các truy tìm có chứa tên ngôn ngữ lập trình của các dụng cụ kiếm phổ quát như Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube và Baidu..

Dựa vào đây bạn sẽ thấy được sự tăng trưởng/tụt giảm của các ngôn ngữ lập trình và có thể cân nhắc học thêm những tiếng nói lập trình mới để phục vụ cho định hướng công việc, cũng như bắt kịp những thiên hướng công nghệ mới nhất.

Xem thêm:

Chúc các bạn vui vẻ!

Cách tạo logo Gmail bằng CSS3

Việc tạo logo rất ưa. Trong bài viết hôm nay, Quantrimang.com sẽ chỉ cho bạn cách tạo không chỉ một, mà là hai biến thể của logo Gmail chỉ bằng CSS3.

Cách tạo logo Gmail 1

Logo trước tiên này đơn giản và khá dễ tạo. Hãy bắt đầu với việc khởi động trình soạn thảo code yêu thích của bạn và nhập các code HTML sau đây, rồi lưu chúng thành logo-gmail.html.

		
			  Gmail CSS Logo      
		
	

Thêm các kiểu CSS sau giữa để reset lại những giá trị CSS mặc định.

		
			.gmail-logo, .gmail-logo *, .gmail-logo *:before, .gmail-logo *:after  margin:0; padding:0; background:transparent; border:0; outline:0; display:block; font:normal normal 0/0 serif; 
		
	

Những code CSS sau đây sẽ tạo ra logo Gmail màu đỏ nền đỏ và các cạnh được làm tròn.

		
			.gmail-logo  margin:110px auto; background:rgb(201, 44, 25); width:600px; height:400px; border-top:4px solid rgb(201, 44, 25); border-bottom:4px solid rgb(201, 44, 25); border-radius:10px; -moz-border-radius:10px; -webkit-border-radius:10px; 
		
	

Sau đó, hãy tiến hành tạo hộp trắng trong nền đỏ.

		
			.gmail-logo .gmail-box  overflow:hidden; float:left; width:440px; height:400px; margin:0 0 0 80px; background:white; border-radius:5px; -moz-border-radius:5px; -webkit-border-radius:5px; 
		
	

Để tạo hiệu ứng "M" màu đỏ, trước tiên bạn hãy tạo một hộp có viền màu đỏ.

		
			.gmail-logo .gmail-box:before  position:relative; content:''; z-index:1; background:white; float:left; width:320px; height:320px; border:100px solid rgb(201, 44, 25); margin:-310px 0 0 -40px; border-radius:10px; -moz-border-radius:10px; -webkit-border-radius:10px; -moz-transform:rotate(45deg); -webkit-transform:rotate(45deg); -o-transform:rotate(45deg); 
		
	

Sau đó, tiến hành giấu giếm các cạnh thừa để có một chữ "M" hoàn chỉnh màu đỏ.

		
			.gmail-logo .gmail-box  overflow:hidden; 
		
	

giờ, thêm hai đường viền màu đỏ mảnh, sao cho logo giống hình chiếc phong bì.

		
			.gmail-logo .gmail-box:after  content:''; float:left; width:360px; height:360px; border:2px solid rgb(201, 44, 25); margin:10px 0 0 40px; -o-transform:rotate(45deg); -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); 
		
	

Mọi thao tác đã gần hoàn thành. Chỉ cầm thêm một số gradient cho hình bì thư màu đỏ này nữa mà thôi.

		
			.gmail-logo:after  content:''; position:relative; z-index:2; content:''; float:left; margin-top:-404px; width:600px; height:408px; display:block; background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3) 0%, /* rgba(255, 255, 255, 0.3) 30%, */ rgba(255, 255, 255, 0.1) 100%); background:-o-linear-gradient(top, rgba(255, 255, 255, 0.3) 0%, /* rgba(255, 255, 255, 0.2) 30%, */ rgba(255, 255, 255, 0.1) 100%); background:-webkit-gradient( linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.3)), /* color-stop(30%, rgba(255, 255, 255, 0.2)), */ color-stop(100%, rgba(255, 255, 255, 0.1))); 
		
	

chung cục nhưng không kém phần quan trọng, hãy cho logo một màu khác khi di chuột qua. Thêm HTML DOCTYPE sau đây trước .

		
			 
		
	

Và các kiểu CSS sau trước .

		
			.gmail-logo:hover  background:#313131; border-color:#313131; /* cursor:pointer; */  .gmail-logo:hover .gmail-box:before  border-color:#313131;  .gmail-logo:hover .gmail-box:after  border-color:#313131; border-bottom-color:#fff; border-right-color:#fff; 
		
	
Tạo logo Gmail theo cách 1
Tạo logo Gmail theo cách 1

Cách tạo logo Gmail 2

Tiếp theo, bài viết sẽ tạo logo Gmail từ một góc nhìn khác với hiệu ứng 3D nhỏ. Ví dụ sẽ bắt đầu với HTML markup căn bản.

		
			  Gmail logo 2                  
		
	

Vì logo có một phối cảnh khác, nên ta sẽ bắt đầu bằng cách xoay nó một tẹo và tạo các layer cấp thiết (gọi là các phần tử) theo lớp lang.

		
			#gmail-logo2  margin:0 auto; display:block; width:380px; height:290px; -moz-transform:rotate(6deg); -webkit-transform:rotate(6deg); -o-transform:rotate(6deg); transform:rotate(6deg);  #gmail-logo2 .element1  display:block; width:380px; height:290px;  #gmail-logo2 .element2, #gmail-logo2 .element3, #gmail-logo2 .element4, #gmail-logo2 .element5  float:left; display:block; width:380px; height:290px; margin:-290px 0 0 0; 
		
	

Định kiểu cho .element1::before

		
			#gmail-logo2 .element1::before  content:''; position:relative; margin:2px 0 0 14px; float:left; display:block; background:rgb(201, 44, 25); width:30px; height:276px; -moz-transform:rotate(3deg); -webkit-transform:rotate(3deg); -o-transform:rotate(3deg); transform:rotate(3deg); border-radius:22px 0 0 20px; -moz-border-radius:22px 0 0 20px; -webkit-border-radius:22px 0 0 20px; box-shadow: -1px 1px 0 rgb(109, 10, 0), -2px 2px 0 rgb(109, 10, 0), -3px 3px 0 rgb(109, 10, 0), -4px 4px 0 rgb(109, 10, 0), -5px 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -webkit-box-shadow: -1px 1px 0 rgb(109, 10, 0), -2px 2px 0 rgb(109, 10, 0), -3px 3px 0 rgb(109, 10, 0), -4px 4px 0 rgb(109, 10, 0), -5px 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -moz-box-shadow: -1px 1px 0 rgb(109, 10, 0), -2px 2px 0 rgb(109, 10, 0), -3px 3px 0 rgb(109, 10, 0), -4px 4px 0 rgb(109, 10, 0), -5px 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0);  
		
	

Định kiểu cho .element1::after

		
			#gmail-logo2 .element1::after  content:''; position:relative; margin:40px 5px 0 0; float:right; display:block; background:rgb(201, 44, 25); width:30px; height:238px; -moz-transform:rotate(3deg); -webkit-transform:rotate(3deg); -o-transform:rotate(3deg); transform:rotate(3deg); border-radius:0 18px 26px 0; -webkit-border-radius:0 18px 26px 0; -moz-border-radius:0 18px 26px 0; box-shadow: -1px 1px 0 rgb(109, 10, 0), -2px 2px 0 rgb(109, 10, 0), -3px 3px 0 rgb(109, 10, 0), -4px 4px 0 rgb(109, 10, 0), -5px 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0), -6px 7px 0 rgb(109, 10, 0); -moz-box-shadow: -1px 1px 0 rgb(109, 10, 0), -2px 2px 0 rgb(109, 10, 0), -3px 3px 0 rgb(109, 10, 0), -4px 4px 0 rgb(109, 10, 0), -5px 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0), -6px 7px 0 rgb(109, 10, 0); -webkit-box-shadow: -1px 1px 0 rgb(109, 10, 0), -2px 2px 0 rgb(109, 10, 0), -3px 3px 0 rgb(109, 10, 0), -4px 4px 0 rgb(109, 10, 0), -5px 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0), -6px 7px 0 rgb(109, 10, 0); 
		
	

Định kiểu cho .element2::before

		
			#gmail-logo2 .element2::before  content:''; margin:22px 0 0 48px; float:left; display:block; background:rgb(201, 44, 25); width:315px; height:14px; -moz-transform:rotate(6.8deg); -webkit-transform:rotate(6.8deg); -o-transform:rotate(6.8deg); transform:rotate(6.8deg); box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -webkit-box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -moz-box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); 
		
	

Định kiểu cho .element2::after

		
			#gmail-logo2 .element2::after  content:''; position:relative; margin:230px 0 0 36px; float:left; display:block; background:rgb(201, 44, 25); width:310px; height:12px; box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -webkit-box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -moz-box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); 
		
	

Định kiểu cho .element3::before

		
			#gmail-logo2 .element3::before  content:''; position:relative; margin:8px 0 0 42px; float:left; display:block; background:rgb(201, 44, 25); width:42px; height:268px; -moz-transform:rotate(3deg); -webkit-transform:rotate(3deg); -o-transform:rotate(3deg); transform:rotate(3deg); 
		
	

Định kiểu cho .element3::after

		
			#gmail-logo2 .element3::after  content:''; position:relative; margin:40px 32px 0 0; float:right; display:block; background:rgb(201, 44, 25); width:22px; height:236px; -moz-transform:rotate(3.0deg); -webkit-transform:rotate(3.0deg); -o-transform:rotate(3.0deg); transform:rotate(3.0deg); box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -webkit-box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0); -moz-box-shadow: 0 1px 0 rgb(109, 10, 0), 0 2px 0 rgb(109, 10, 0), 0 3px 0 rgb(109, 10, 0), 0 4px 0 rgb(109, 10, 0), 0 5px 0 rgb(109, 10, 0), -6px 6px 0 rgb(109, 10, 0);  
		
	

Định kiểu cho .element4::before

		
			#gmail-logo2 .element4::before  content:''; position:relative; margin:-2px 0 0 130px; float:left; display:block; background:rgb(201, 44, 25); width:54px; height:192px; -moz-transform:rotate(-49deg); -webkit-transform:rotate(-49deg); -o-transform:rotate(-49deg); transform:rotate(-49deg); box-shadow: -1px 0 0 rgb(109, 10, 0), -2px 0 0 rgb(109, 10, 0), -3px 0 0 rgb(109, 10, 0), -4px 0 0 rgb(109, 10, 0), -5px 0 0 rgb(109, 10, 0), -6px 0 0 rgb(109, 10, 0), -7px 0 0 rgb(109, 10, 0), -8px 0 0 rgb(109, 10, 0); -moz-box-shadow: -1px 0 0 rgb(109, 10, 0), -2px 0 0 rgb(109, 10, 0), -3px 0 0 rgb(109, 10, 0), -4px 0 0 rgb(109, 10, 0), -5px 0 0 rgb(109, 10, 0), -6px 0 0 rgb(109, 10, 0), -7px 0 0 rgb(109, 10, 0), -8px 0 0 rgb(109, 10, 0); -webkit-box-shadow: -1px 0 0 rgb(109, 10, 0), -2px 0 0 rgb(109, 10, 0), -3px 0 0 rgb(109, 10, 0), -4px 0 0 rgb(109, 10, 0), -5px 0 0 rgb(109, 10, 0), -6px 0 0 rgb(109, 10, 0), -7px 0 0 rgb(109, 10, 0), -8px 0 0 rgb(109, 10, 0); 
		
	

Định kiểu cho .element4::after

		
			#gmail-logo2 .element4::after  content:''; position:relative; margin:12px 88px 0 0; float:right; display:block; background:rgb(201, 44, 25); width:54px; height:186px; border-radius:30px 0 0 0; -webkit-border-radius:30px 0 0 0; -moz-border-radius:30px 0 0 0; -moz-transform:rotate(53deg); -webkit-transform:rotate(53deg); -o-transform:rotate(53deg); transform:rotate(53deg); 
		
	

Định kiểu cho .element5::before

		
			#gmail-logo2 .element5::before  content:''; position:relative; margin:115px 0 0 125px; float:left; display:block; background:rgb(201, 44, 25); width:2px; height:150px; -moz-transform:rotate(55deg); -o-transform:rotate(55deg); -webkit-transform:rotate(55deg); transform:rotate(55deg); 
		
	

Định kiểu cho .element5::after

		
			#gmail-logo2 .element5::after  position:relative; content:''; margin:115px 0 0 150px; float:left; display:block; background:rgb(201, 44, 25); width:2px; height:150px; -moz-transform:rotate(-50deg); -webkit-transform:rotate(-50deg); -o-transform:rotate(-50deg); transform:rotate(-50deg); 
		
	

Điều chỉnh chừng độ ưu tiên của z-index .

		
			#gmail-logo2 .element1::before z-index:3; #gmail-logo2 .element1::after z-index:1; /*#gmail-logo2 .element2::before */ #gmail-logo2 .element2::after z-index:2; #gmail-logo2 .element3::before z-index:5; #gmail-logo2 .element3::after z-index:1; #gmail-logo2 .element4::before z-index:4; #gmail-logo2 .element4::after z-index:3; /*#gmail-logo2 .element5::before  #gmail-logo2 .element5::after */
		
	

Mọi thứ đã gần hoàn thành. Logo Gmail của bạn sẽ trông giống như thế này:

chung cuộc, hãy để cho logo một màu khác khi di chuột.

		
			#gmail-logo2:hover *::after, #gmail-logo2:hover *::before  background:rgba(20, 196, 7, 1);  #gmail-logo2:hover .element1::before  box-shadow: -1px 1px 0 rgb(10, 90, 4), -2px 2px 0 rgb(10, 90, 4), -3px 3px 0 rgb(10, 90, 4), -4px 4px 0 rgb(10, 90, 4), -5px 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -webkit-box-shadow: -1px 1px 0 rgb(10, 90, 4), -2px 2px 0 rgb(10, 90, 4), -3px 3px 0 rgb(10, 90, 4), -4px 4px 0 rgb(10, 90, 4), -5px 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -moz-box-shadow: -1px 1px 0 rgb(10, 90, 4), -2px 2px 0 rgb(10, 90, 4), -3px 3px 0 rgb(10, 90, 4), -4px 4px 0 rgb(10, 90, 4), -5px 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4);  #gmail-logo2:hover .element1::after  box-shadow: -1px 1px 0 rgb(10, 90, 4), -2px 2px 0 rgb(10, 90, 4), -3px 3px 0 rgb(10, 90, 4), -4px 4px 0 rgb(10, 90, 4), -5px 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4), -6px 7px 0 rgb(10, 90, 4); -moz-box-shadow: -1px 1px 0 rgb(10, 90, 4), -2px 2px 0 rgb(10, 90, 4), -3px 3px 0 rgb(10, 90, 4), -4px 4px 0 rgb(10, 90, 4), -5px 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4), -6px 7px 0 rgb(10, 90, 4); -webkit-box-shadow: -1px 1px 0 rgb(10, 90, 4), -2px 2px 0 rgb(10, 90, 4), -3px 3px 0 rgb(10, 90, 4), -4px 4px 0 rgb(10, 90, 4), -5px 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4), -6px 7px 0 rgb(10, 90, 4);  #gmail-logo2:hover .element2::before  box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -webkit-box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -moz-box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4);  #gmail-logo2:hover .element2::after  box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -webkit-box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -moz-box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4);  #gmail-logo2:hover .element3::after  box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -webkit-box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4); -moz-box-shadow: 0 1px 0 rgb(10, 90, 4), 0 2px 0 rgb(10, 90, 4), 0 3px 0 rgb(10, 90, 4), 0 4px 0 rgb(10, 90, 4), 0 5px 0 rgb(10, 90, 4), -6px 6px 0 rgb(10, 90, 4);  #gmail-logo2:hover .element4::before  box-shadow: -1px 0 0 rgb(10, 90, 4), -2px 0 0 rgb(10, 90, 4), -3px 0 0 rgb(10, 90, 4), -4px 0 0 rgb(10, 90, 4), -5px 0 0 rgb(10, 90, 4), -6px 0 0 rgb(10, 90, 4), -7px 0 0 rgb(10, 90, 4), -8px 0 0 rgb(10, 90, 4); -moz-box-shadow: -1px 0 0 rgb(10, 90, 4), -2px 0 0 rgb(10, 90, 4), -3px 0 0 rgb(10, 90, 4), -4px 0 0 rgb(10, 90, 4), -5px 0 0 rgb(10, 90, 4), -6px 0 0 rgb(10, 90, 4), -7px 0 0 rgb(10, 90, 4), -8px 0 0 rgb(10, 90, 4); -webkit-box-shadow: -1px 0 0 rgb(10, 90, 4), -2px 0 0 rgb(10, 90, 4), -3px 0 0 rgb(10, 90, 4), -4px 0 0 rgb(10, 90, 4), -5px 0 0 rgb(10, 90, 4), -6px 0 0 rgb(10, 90, 4), -7px 0 0 rgb(10, 90, 4), -8px 0 0 rgb(10, 90, 4); 
		
	
Tạo logo theo cách 2
Tạo logo theo cách 2
Logo khi nhấp chuột
Logo khi nhấp chuột

Những công cụ Python tốt nhất dành cho Machine Learning và Data Science

ngôn ngữ lập trình Python có rất nhiều thư viện và framework lớn thuận lợi cho việc viết code và phát triển khoa học máy tính. Python vốn là tiếng nói nức tiếng về sự đơn giản không cầu kỳ, code dễ học, dễ đọc, cú pháp logic và ngắn gọn, còn Machine Learning hệ trọng đến các thuật toán cực kỳ phức tạp và quy trình làm việc nhiều thời đoạn nên ở đây, sự logic ngắn gọn và dễ dàng của Python đóng vai trò quan yếu trong việc tùng tiệm thời gian của các nhà phát triển.

Mặt khác, khi nói đến Data Science (Khoa học dữ liệu) , Python cũng có các package đặc biệt dành cho các công việc lĩnh vực này như SciPy, NumPy hay Pandas tạo điều kiện cho việc phân tích dữ liệu và có thể dễ dàng tích hợp với các vận dụng web.

Công cụ Python

Thêm nữa, Python đích thực là tiếng nói mã nguồn mở, bạn có thể tự do sử dụng và phân phối Python, thậm chí là dùng cho mục đích thương nghiệp. Nhờ thế mà Python có rất nhiều tài nguyên và tài liệu chất lượng cao cùng cộng đồng các nhà phát triển hăng hái sẵn sàng cung cấp lời khuyên và tương trợ trong sờ soạng các giai đoạn của quá trình phát triển.

vì thế Quantrimang mời bạn cùng đàm luận về một số phương tiện Python hữu ích cho cả áp dụng Machine Learning và Data Science.

phương tiện Python dành cho Data Science

Công cụ Python dành cho Data Science

1. NUMBA

Numba là một trình biên dịch mã nguồn mở tối ưu hóa nhận biết NumPy, biên dịch cú pháp Python thành code máy sử dụng trình biên dịch LLVM được tài trợ bởi Anaconda. Numba ứng dụng trong Data Science giúp tăng tốc độ biên dịch code với NumPy Array. Được cung cấp một số Annotation, code Python có thể được tối ưu hóa để đạt được hiệu suất rưa rứa như C, C ++ và Fortran mà không phải đổi thay tiếng nói hoặc trình thông ngôn.

2. CYTHON

Cython là một biến thể từ C của Python. Có thể nói rằng nó là tập cha của Python, có khả năng tạo các module Python tiêu chuẩn, cải thiện đáng kể tốc độ thực thi và hiệu suất. Về căn bản, nó được thiết kế như một phần mở mang của C cho Python để biên dịch code Python thành code C/C++ và được dùng trong sổ ghi chép Jupyter phê duyệt các chú thích nội tuyến.

3. DASK

Dask là một thư viện linh hoạt để tính song song trong Python. Khi dùng Numpy hay Pandas, đôi khi bạn phải đối mặt với vấn đề xử lý dữ liệu ở RAM, ở đây Dask dễ dàng xử lý vì nó mở mang các giao diện sang các môi trường lớn hơn bộ nhớ hoặc phân tán, có thể chạy trên máy tính cục bộ hoặc thu nhỏ để chạy trên một cụm.

4. SCIPY

SciPy là một thư viện mã nguồn mở các thuật toán và các công cụ toán học cho Python, được xây dựng trên các đối tượng mảng NumPy tạo thành ngăn xếp NumPy bao gồm các công cụ như Pandas, SymPy và Matplotlib. SciPy cung cấp khá nhiều module xem từ đại số tuyến tính, tích phân, vi phân, nội suy đến xử lý ảnh, fourier transform...

phương tiện Python dành cho Machine Learning

Công cụ Python dành cho Machine Learning

1. SCIKIT-LEARN

Scikit-learn (viết tắt là sklearn) là một thư viện mã nguồn mở dành cho Machine Learning và cũng được dùng trong Data Science. Đây là công cụ rất mạnh mẽ và thông dụng với cộng đồng Python, được thiết kế trên nền NumPy và SciPy. Scikit-learn chứa hầu hết các thuật toán Machine Learning đương đại nhất, đi kèm với documentations, luôn được cập nhật. dụng cụ này cung cấp việc dùng API và quãng ngẫu nhiên dễ dàng. Nhưng lợi thế chính trong việc dùng Scikit-Learn, là tốc độ trong khi thực hiện các đánh giá khác nhau trong bộ dataset.

2. KERAS

Keras là một thư viện mã nguồn mở được viết bằng python cho neural network. Keras là một API bậc cao, được phát triển để thực hành các mô hình deep learning nhanh và dễ dàng nhất có thể cho nghiên cứu, đã có giấy phép MIT cho các phần mềm mã nguồn mở. dụng cụ này có thể sử dụng chung với các thư viện Deep Learning nổi tiếng như TensorFlow, CNTK, Theano.

Keras có một số ưu điểm như:

  • Dễ dùng, xây dựng module nhanh.
  • Có thể chạy trên cả CPU và GPU
  • tương trợ xây dựng CNN, RNN và có thể kết hợp cả 2.
  • Khả năng mở rộng dễ dàng và làm việc với Python.

3. THEANO

Theano là một thư viện Python mã nguồn mở hỗ trợ các phép toán số học có thể chạy trên CPU hoặc GPU, được sử dụng để xây dựng và phát triển các mô hình Deep Learning. Theano cung cấp các cấu trúc và các phương pháp điều chỉnh mô hình rất thuận tiện dùng trên các hàm của thư viện Numpy để tính tình, có thể chạy trên kiến ​​trúc GPU ngoài CPU để đạt hiệu quả. Theano còn tạo code C một cách linh hoạt, thí nghiệm đơn vị rộng rãi và tự xác minh, tối ưu hóa tốc độ và độ ổn định. Đây là thư viện trước nhất xây dựng và phát triển mô hình học theo mạng Nơron nhân tạo sử dụng kỹ thuật học sâu từ năm 2007 và được xem như một chuẩn công nghệ cho công nghệ Deep Learning trong cộng đồng nghiên cứu và phát triển.

Đây là danh sách của Quantrimang. Nếu bạn nghĩ rằng có một dụng cụ quan trọng nào đã bị bỏ lỡ trong danh sách này thì hãy bình luận bên dưới để Quantrimang bổ sung nhé.

Những công cụ Python tốt nhất dành cho Machine Learning và Data Science

tiếng nói lập trình Python có rất nhiều thư viện và framework lớn thuận tiện cho việc viết code và phát triển khoa học máy tính. Python vốn là ngôn ngữ lừng danh về sự đơn giản không cầu kỳ, code dễ học, dễ đọc, cú pháp logic và ngắn gọn, còn Machine Learning liên tưởng đến các thuật toán cực kỳ phức tạp và quy trình làm việc nhiều giai đoạn nên ở đây, sự logic ngắn gọn và dễ dàng của Python đóng vai trò quan yếu trong việc hà tằn hà tiện thời gian của các nhà phát triển.

Mặt khác, khi nói đến Data Science (Khoa học dữ liệu) , Python cũng có các package đặc biệt dành cho các công việc lĩnh vực này như SciPy, NumPy hay Pandas tạo điều kiện cho việc phân tích dữ liệu và có thể dễ dàng tích hợp với các áp dụng web.

Công cụ Python

Thêm nữa, Python thực thụ là tiếng nói mã nguồn mở, bạn có thể tự do sử dụng và phân phối Python, thậm chí là dùng cho mục đích thương nghiệp. Nhờ thế mà Python có rất nhiều tài nguyên và tài liệu chất lượng cao cùng cộng đồng các nhà phát triển tích cực sẵn sàng cung cấp lời khuyên và tương trợ trong toàn bộ các tuổi của quá trình phát triển.

vì thế Quantrimang mời bạn cùng bàn bạc về một số công cụ Python hữu ích cho cả vận dụng Machine Learning và Data Science.

công cụ Python dành cho Data Science

Công cụ Python dành cho Data Science

1. NUMBA

Numba là một trình biên dịch mã nguồn mở tối ưu hóa nhận biết NumPy, biên dịch cú pháp Python thành code máy sử dụng trình biên dịch LLVM được tài trợ bởi Anaconda. Numba áp dụng trong Data Science giúp tăng tốc độ biên dịch code với NumPy Array. Được cung cấp một số Annotation, code Python có thể được tối ưu hóa để đạt được hiệu suất na ná như C, C ++ và Fortran mà không phải đổi thay ngôn ngữ hoặc trình phiên dịch.

2. CYTHON

Cython là một biến thể từ C của Python. Có thể nói rằng nó là tập cha của Python, có khả năng tạo các module Python tiêu chuẩn, cải thiện đáng kể tốc độ thực thi và hiệu suất. Về căn bản, nó được thiết kế như một phần mở rộng của C cho Python để biên dịch code Python thành code C/C++ và được sử dụng trong sổ ghi chép Jupyter duyệt các ghi chú nội tuyến.

3. DASK

Dask là một thư viện linh hoạt để tâm tính song song trong Python. Khi dùng Numpy hay Pandas, đôi khi bạn phải đối mặt với vấn đề xử lý dữ liệu ở RAM, ở đây Dask dễ dàng xử lý vì nó mở rộng các giao diện sang các môi trường lớn hơn bộ nhớ hoặc phân tán, có thể chạy trên máy tính cục bộ hoặc thu nhỏ để chạy trên một cụm.

4. SCIPY

SciPy là một thư viện mã nguồn mở các thuật toán và các công cụ toán học cho Python, được xây dựng trên các đối tượng mảng NumPy tạo thành ngăn xếp NumPy bao gồm các dụng cụ như Pandas, SymPy và Matplotlib. SciPy cung cấp khá nhiều module tính nết từ đại số tuyến tính, tích phân, vi phân, nội suy đến xử lý ảnh, fourier transform...

phương tiện Python dành cho Machine Learning

Công cụ Python dành cho Machine Learning

1. SCIKIT-LEARN

Scikit-learn (viết tắt là sklearn) là một thư viện mã nguồn mở dành cho Machine Learning và cũng được sử dụng trong Data Science. Đây là phương tiện rất mạnh mẽ và thông dụng với cộng đồng Python, được thiết kế trên nền NumPy và SciPy. Scikit-learn chứa hầu hết các thuật toán Machine Learning đương đại nhất, đi kèm với documentations, luôn được cập nhật. công cụ này cung cấp việc sử dụng API và tìm ngẫu nhiên dễ dàng. Nhưng lợi thế chính trong việc sử dụng Scikit-Learn, là tốc độ trong khi thực hành các đánh giá khác nhau trong bộ dataset.

2. KERAS

Keras là một thư viện mã nguồn mở được viết bằng python cho neural network. Keras là một API bậc cao, được phát triển để thực hiện các mô hình deep learning nhanh và dễ dàng nhất có thể cho nghiên cứu, đã có giấy phép MIT cho các phần mềm mã nguồn mở. phương tiện này có thể dùng chung với các thư viện Deep Learning nức tiếng như TensorFlow, CNTK, Theano.

Keras có một số ưu điểm như:

  • Dễ sử dụng, xây dựng module nhanh.
  • Có thể chạy trên cả CPU và GPU
  • tương trợ xây dựng CNN, RNN và có thể kết hợp cả 2.
  • Khả năng mở rộng dễ dàng và làm việc với Python.

3. THEANO

Theano là một thư viện Python mã nguồn mở tương trợ các phép toán số học có thể chạy trên CPU hoặc GPU, được dùng để xây dựng và phát triển các mô hình Deep Learning. Theano cung cấp các cấu trúc và các phương pháp điều chỉnh mô hình rất thuận tiện sử dụng trên các hàm của thư viện Numpy để xem, có thể chạy trên kiến ​​trúc GPU ngoài CPU để đạt hiệu quả. Theano còn tạo code C một cách linh hoạt, thí điểm đơn vị rộng rãi và tự xác minh, tối ưu hóa tốc độ và độ ổn định. Đây là thư viện đầu tiên xây dựng và phát triển mô hình học theo mạng Nơron nhân tạo sử dụng kỹ thuật học sâu từ năm 2007 và được xem như một chuẩn công nghệ cho công nghệ Deep Learning trong cộng đồng nghiên cứu và phát triển.

Đây là danh sách của Quantrimang. Nếu bạn nghĩ rằng có một dụng cụ quan trọng nào đã bị bỏ lỡ trong danh sách này thì hãy bình luận bên dưới để Quantrimang bổ sung nhé.

Tìm hiểu về Vue router

VueJS là thư viện front-end có thể được dùng với bất kỳ ngôn ngữ back-end nào. Nếu muốn tạo ứng dụng front-end đầy đủ...

Tin Thời Tiết - Tỷ Giá

Trang

Bài đăng phổ biến

Wikipedia

Search results