Hội thảo đổi mới tại Vật lý và Công nghệ: những câu chuyện thành công thực sự của Vật lý và Công nghệ. “Một nhà khoa học dữ liệu giỏi được trả lương như CEO của một công ty cỡ trung bình”

- Bạn có thể sử dụng một ví dụ hoàn toàn nguyên thủy để cho chúng tôi biết máy học hoạt động như thế nào không?

Có thể. Có một ví dụ về kỹ thuật học máy được gọi là Cây quyết định, đây là một trong những kỹ thuật lâu đời nhất. Hãy làm điều đó ngay bây giờ. Giả sử một người trừu tượng mời bạn đi hẹn hò. Điều gì là quan trọng với bạn?

- Trước hết, dù tôi có biết anh ta hay không...

(Victor viết điều này lên bảng.)

…Nếu tôi không biết thì tôi cần phải trả lời câu hỏi liệu anh ấy có hấp dẫn hay không.

Và nếu bạn biết, thì điều đó không thành vấn đề? Tôi nghĩ tôi hiểu rồi, đây là chủ đề về khu vực bạn bè! Nói chung là mình đang viết, nếu bạn chưa biết và không hấp dẫn thì câu trả lời là “không, có lẽ vậy”. Nếu bạn biết thì câu trả lời là “có”.

- Nếu tôi biết thì điều đó cũng quan trọng!

Không, đây sẽ là chi nhánh của khu vực bạn bè.

Được rồi, vậy hãy cho biết ở đây nó có thú vị hay không. Tuy nhiên, khi bạn không biết một người, phản ứng đầu tiên là xuất hiện; với một người quen, chúng ta đã xem người đó nghĩ gì và như thế nào.

Hãy làm điều đó khác đi. Cho dù anh ta có tham vọng hay không. Nếu anh ấy có tham vọng, sẽ khó kết bạn với anh ấy vì anh ấy sẽ muốn nhiều hơn nữa. Nhưng người không có tham vọng sẽ chịu đựng.

(Victor đã vẽ xong cây quyết định.)

Sẵn sàng. Bây giờ bạn có thể dự đoán chàng trai nào mà bạn có nhiều khả năng hẹn hò nhất. Nhân tiện, một số dịch vụ hẹn hò dự đoán những điều như vậy. Bằng cách tương tự, bạn có thể dự đoán số lượng hàng hóa mà khách hàng sẽ mua và mọi người sẽ ở đâu vào thời điểm đó trong ngày.

Câu trả lời không chỉ có thể là “có” và “không” mà còn có thể ở dạng số. Nếu bạn muốn dự báo chính xác hơn, bạn có thể tạo một vài cây như vậy và tính trung bình cho chúng. Và với sự trợ giúp của một điều đơn giản như vậy, bạn thực sự có thể dự đoán được tương lai.

Bây giờ hãy tưởng tượng, hai trăm năm trước con người có khó nghĩ ra một kế hoạch như vậy không? Không có gì! Đề án này không mang bất kỳ khoa học tên lửa nào. Như một hiện tượng, học máy đã tồn tại được khoảng nửa thế kỷ. Ronald Fisher bắt đầu đưa ra dự đoán dựa trên dữ liệu vào đầu thế kỷ 20. Anh ấy lấy tròng mắt và phân bổ chúng theo chiều dài và chiều rộng của lá đài và cánh hoa, sử dụng những thông số này để xác định loại cây.

Trong ngành công nghiệp, học máy đã được sử dụng tích cực trong những thập kỷ gần đây: những cỗ máy mạnh mẽ và tương đối rẻ tiền cần thiết để xử lý lượng lớn dữ liệu, chẳng hạn như đối với những cây quyết định như vậy, đã xuất hiện cách đây không lâu. Nhưng điều đó vẫn rất thú vị: chúng tôi vẽ những thứ này cho mọi nhiệm vụ và sử dụng chúng để dự đoán tương lai.

- Chà, chắc chắn là không tốt hơn bất kỳ con bạch tuộc nào dự đoán trận đấu bóng đá...

Không, chúng ta quan tâm đến bạch tuộc làm gì? Mặc dù chúng tôi có nhiều sự thay đổi hơn. Giờ đây, với sự trợ giúp của máy học, bạn có thể tiết kiệm thời gian, tiền bạc và cải thiện sự thoải mái trong cuộc sống. Học máy đã đánh bại con người vài năm trước khi phân loại hình ảnh. Ví dụ, một máy tính có thể nhận ra 20 giống chó sục, nhưng một người bình thường thì không thể.

- Và khi phân tích người dùng, đối với bạn mỗi người có phải là một bộ số không?

Nói một cách đại khái thì có. Khi chúng ta làm việc với dữ liệu, tất cả các đối tượng, bao gồm cả hành vi của người dùng, đều được mô tả bằng một bộ số nhất định. Và những con số này phản ánh đặc điểm hành vi của người dân: tần suất họ đi taxi, họ sử dụng loại taxi nào, họ thường đến những địa điểm nào.

Hiện chúng tôi đang tích cực xây dựng các mô hình tương tự để sử dụng chúng nhằm xác định các nhóm người có hành vi tương tự. Khi chúng tôi giới thiệu một dịch vụ mới hoặc muốn quảng bá một dịch vụ cũ, chúng tôi sẽ cung cấp dịch vụ đó cho những ai quan tâm.

Ví dụ: bây giờ chúng tôi có một dịch vụ - hai ghế trẻ em trên taxi. Chúng tôi có thể gửi thư rác cho mọi người về tin tức này hoặc chúng tôi chỉ có thể thông báo cụ thể về tin tức đó cho một nhóm người nhất định. Trong suốt năm qua, chúng tôi đã tích lũy được một số người dùng đã viết trong nhận xét rằng họ cần hai ghế trẻ em. Chúng tôi đã tìm thấy họ và những người tương tự như họ. Thông thường, đây là những người trên 30 tuổi thường xuyên đi du lịch và yêu thích ẩm thực Địa Trung Hải. Mặc dù tất nhiên còn có nhiều dấu hiệu nữa nhưng đây chỉ là một ví dụ.

- Kể cả sự tinh tế như vậy?

Đây là một vấn đề đơn giản. Mọi thứ đều được tính toán bằng các truy vấn tìm kiếm.

Điều này bằng cách nào đó có thể hoạt động trong một ứng dụng? Ví dụ: bạn có biết rằng tôi là một người ăn xin và đăng ký vào các nhóm như “Làm thế nào để tồn tại với 500 rúp một tháng” - họ chỉ cung cấp cho tôi những chiếc ô tô rẻ tiền, đăng ký theo dõi tin tức SpaceX - và thỉnh thoảng họ bán cho tôi một chiếc Tesla?

Nó có thể hoạt động theo cách này, nhưng những điều như vậy không được Yandex chấp thuận vì đó là sự phân biệt đối xử. Khi bạn cá nhân hóa một dịch vụ, tốt hơn hết là bạn không nên cung cấp dịch vụ được chấp nhận nhất mà là dịch vụ tốt nhất hiện có và những gì người đó thích. Và sự phân phối theo logic “cái này cần xe tốt hơn, còn cái này cần chiếc kém tốt hơn” là xấu xa.


Mọi người đều có những ham muốn đồi trụy, và đôi khi bạn cần tìm không phải công thức cho một món ăn Địa Trung Hải, mà chẳng hạn như những bức ảnh về bệnh coprophilia. Liệu tính năng cá nhân hóa có còn hoạt động trong trường hợp này không?

Luôn có một chế độ riêng tư.

Nếu tôi không muốn bất kỳ ai biết về sở thích của mình hoặc giả sử bạn bè đến gặp tôi và muốn xem một số thứ rác rưởi thì tốt hơn hết bạn nên sử dụng chế độ ẩn danh.

Bạn cũng có thể quyết định sử dụng dịch vụ của công ty nào, ví dụ: Yandex hoặc Google.

- Có khác biệt gì không?

Đó là một câu hỏi khó. Tôi không biết người khác thế nào nhưng Yandex rất nghiêm ngặt trong việc bảo vệ dữ liệu cá nhân. Nhân viên được giám sát đặc biệt.

- Tức là nếu chia tay một chàng trai, tôi sẽ không thể biết được anh ta có đến ngôi nhà nông thôn này hay không?

Ngay cả khi bạn làm việc tại Yandex. Tất nhiên, điều này thật đáng buồn, nhưng vâng, không có cách nào để tìm hiểu. Hầu hết nhân viên thậm chí không có quyền truy cập vào dữ liệu này. Mọi thứ đều được mã hóa. Rất đơn giản: bạn không thể theo dõi mọi người, đây là thông tin cá nhân.

Nhân tiện, chúng tôi có một trường hợp thú vị về chủ đề chia tay với các chàng trai. Khi đưa ra dự đoán về điểm “B” - điểm đến của xe taxi, chúng tôi đã đưa ra các gợi ý. Đây, nhìn này.

(Victor đăng nhập vào ứng dụng Yandex.Taxi.)

Ví dụ, chiếc taxi tưởng tôi đang ở nhà. Anh ấy gợi ý tôi nên đi làm hoặc đến Đại học RUDN (tôi giảng bài ở đó như một phần của khóa học máy học Khai thác dữ liệu trong thực tế). Và tại một thời điểm nào đó, trong khi phát triển những mẹo này, chúng tôi nhận ra rằng mình cần tránh ảnh hưởng đến người dùng. Bất cứ ai cũng có thể nhìn thấy điểm B. Vì những lý do này, chúng tôi đã từ chối đề xuất các địa điểm dựa trên sự tương đồng. Nếu không, bạn ngồi ở một nơi đàng hoàng với những người tử tế, gọi taxi và họ viết cho bạn: "Nhìn này, bạn vẫn chưa đến quán bar này!"

- Những chấm xanh nhấp nháy trên bản đồ của bạn là gì?

Đây là những điểm đón. Những điểm này cho thấy nơi nào thuận tiện nhất để gọi taxi. Rốt cuộc, bạn có thể gọi đến một nơi mà việc đi lại sẽ hoàn toàn bất tiện. Nhưng nói chung, bạn có thể gọi ở bất cứ đâu.

- Ừ, bất cứ lúc nào. Bằng cách nào đó tôi đã bay được hai khối nhà với cái này.

Gần đây có nhiều khó khăn khác nhau với GPS, điều này dẫn đến nhiều tình huống hài hước khác nhau. Ví dụ, mọi người ở Tverskaya được vận chuyển bằng đường thủy qua Thái Bình Dương. Như bạn có thể thấy, đôi khi có những sai sót và nhiều hơn hai khối.

- Và nếu bạn khởi động lại ứng dụng và nhấp lại, giá sẽ thay đổi vài rúp. Tại sao?

Nếu cầu vượt quá cung, thuật toán sẽ tự động tạo ra hệ số tăng dần - điều này giúp những người cần rời đi có thể sử dụng taxi càng nhanh càng tốt, ngay cả trong thời điểm có nhu cầu cao. Nhân tiện, với sự trợ giúp của máy học, bạn có thể dự đoán nơi nào sẽ có nhu cầu lớn hơn, chẳng hạn như trong một giờ. Điều này giúp chúng tôi thông báo cho tài xế nơi nào sẽ có nhiều đơn đặt hàng hơn để cung phù hợp với cầu.

- Bạn có nghĩ rằng Yandex.Taxi sẽ sớm giết chết toàn bộ thị trường taxi không?

Tôi nghĩ là không. Chúng tôi ủng hộ sự cạnh tranh lành mạnh và không sợ điều đó.

Ví dụ, bản thân tôi sử dụng các dịch vụ taxi khác nhau. Đối với tôi, thời gian chờ đợi rất quan trọng nên tôi xem một số ứng dụng để xem taxi nào sẽ đến nhanh hơn.


- Bạn đã hợp tác với Uber. Để làm gì?

Đó không phải là nơi để tôi bình luận. Tôi nghĩ đoàn kết là một quyết định hết sức hợp lý.

Ở Đức, một anh chàng đã lắp đặt bồn tắm trên máy bay không người lái và bay đi ăn bánh mì kẹp thịt. Bạn có nghĩ rằng đã đến lúc làm chủ không phận?

Tôi không biết về không phận. Chúng tôi đang theo dõi những tin tức như “Uber đã tung ra taxi trên thuyền” nhưng tôi không thể nói gì về hàng không.

- Còn taxi tự lái thì sao?

Có một điểm thú vị ở đây. Chúng tôi đang phát triển chúng, nhưng chúng tôi cần suy nghĩ về cách sử dụng chúng một cách chính xác. Còn quá sớm để dự đoán chúng sẽ xuất hiện dưới hình thức nào và khi nào trên đường phố, nhưng chúng tôi đang làm mọi thứ để phát triển công nghệ cho một chiếc ô tô tự động hoàn toàn, nơi hoàn toàn không cần đến con người lái xe.

- Có lo ngại phần mềm drone sẽ bị hack để điều khiển xe từ xa không?

Luôn luôn có những rủi ro và ở mọi nơi có công nghệ và tiện ích. Nhưng cùng với sự phát triển của công nghệ, một hướng khác cũng đang phát triển - bảo vệ và an toàn cho chúng. Mọi người bằng cách này hay cách khác tham gia vào việc phát triển công nghệ đều đang làm việc trên các hệ thống bảo mật.

- Bạn thu thập dữ liệu người dùng nào và bạn bảo vệ dữ liệu đó như thế nào?

Chúng tôi thu thập dữ liệu sử dụng ẩn danh, chẳng hạn như địa điểm, thời gian và địa điểm chuyến đi được thực hiện. Mọi thứ quan trọng đều được băm.

- Bạn có nghĩ số lượng việc làm sẽ giảm vì máy bay không người lái?

Tôi nghĩ nó sẽ chỉ ngày càng lớn hơn. Tuy nhiên, những chiếc máy bay không người lái này cũng cần được bảo trì bằng cách nào đó. Tất nhiên, đây là một tình huống hơi căng thẳng, khiến bạn phải thay đổi chuyên môn, nhưng bạn có thể làm gì?

- Tại mỗi bài giảng của mình, Gref nói rằng một người sẽ thay đổi hoàn toàn nghề nghiệp của mình ít nhất ba lần.

Tôi không thể kể tên một đặc sản nào sẽ tồn tại mãi mãi. Một nhà phát triển không thể làm việc với cùng một ngôn ngữ và với cùng một công nghệ suốt đời. Khắp nơi chúng ta cần phải xây dựng lại. Với học máy, tôi có thể cảm nhận rõ ràng rằng những người trẻ hơn tôi sáu tuổi có thể suy nghĩ nhanh hơn tôi rất nhiều. Đồng thời, những người ở độ tuổi 40, 45 càng cảm nhận điều này một cách mạnh mẽ hơn.

- Kinh nghiệm không còn đóng vai trò gì nữa?

Đang chơi. Nhưng các phương pháp thay đổi, bạn có thể đến một lĩnh vực, chẳng hạn như học sâu chưa được sử dụng, bạn làm việc ở đó một thời gian, sau đó các phương pháp học sâu được giới thiệu ở khắp mọi nơi và bạn không hiểu gì về nó. Thế thôi. Kinh nghiệm của bạn chỉ có thể hữu ích trong việc lập kế hoạch làm việc của nhóm và thậm chí không phải lúc nào cũng vậy.

- Và nghề nghiệp của bạn là nhà khoa học dữ liệu, liệu nó có nhu cầu không?

Nhu cầu về các chuyên gia khoa học dữ liệu đơn giản là vượt trội. Rõ ràng, đây là thời kỳ cường điệu điên cuồng. Cảm ơn Chúa, blockchain đã giúp sự cường điệu này giảm bớt một chút. Các chuyên gia về blockchain thậm chí còn được tuyển dụng nhanh hơn.

Nhưng hiện nay nhiều công ty cho rằng nếu đầu tư tiền vào học máy, khu vườn của họ sẽ nở hoa ngay lập tức. Điều này là sai. Học máy nên giải quyết các vấn đề cụ thể chứ không chỉ tồn tại.

Có những lúc ngân hàng muốn đưa ra hệ thống khuyến nghị về dịch vụ cho người dùng. Chúng tôi hỏi: “Bạn có nghĩ điều này sẽ hợp lý về mặt kinh tế không?” Họ trả lời: “Chúng tôi không quan tâm. Làm đi. Mọi người đều có hệ thống khuyến nghị, chúng tôi sẽ bắt kịp xu hướng.”

Điều đau đớn là không thể làm được điều gì đó thực sự hữu ích cho doanh nghiệp trong một ngày. Chúng ta cần xem hệ thống sẽ học như thế nào. Nhưng nó luôn mắc lỗi ngay từ đầu; nó có thể thiếu một số dữ liệu trong quá trình huấn luyện. Bạn sửa lỗi, sau đó sửa lại và thậm chí làm lại mọi thứ. Sau đó, bạn cần cấu hình hệ thống để nó hoạt động trong quá trình sản xuất, ổn định và có thể mở rộng, đây vẫn là lúc. Kết quả là, một dự án mất sáu tháng, một năm hoặc hơn.


Nếu bạn xem các phương pháp học máy như một chiếc hộp đen, bạn có thể dễ dàng bỏ sót khi một số điều điên rồ bắt đầu xảy ra. Có một câu chuyện về râu. Quân đội được yêu cầu phát triển một thuật toán có thể dùng để phân tích xem có xe tăng trong ảnh hay không. Các nhà nghiên cứu đã chế tạo ra nó, thử nghiệm nó, chất lượng tuyệt vời, mọi thứ đều tuyệt vời, họ đã giao nó cho quân đội. Quân đội đến và nói rằng không có gì hiệu quả. Các nhà khoa học đang bắt đầu lo lắng hiểu. Hóa ra là trong tất cả các bức ảnh chụp chiếc xe tăng mà quân đội mang đến, một dấu tích được đặt ở góc bằng một cây bút. Thuật toán đã học cách tìm dấu kiểm một cách hoàn hảo; nó không biết gì về chiếc xe tăng. Đương nhiên, không có dấu kiểm nào trên các bức ảnh mới.

Tôi đã gặp những đứa trẻ phát triển hệ thống đối thoại của riêng mình. Bạn đã bao giờ nghĩ rằng mình cần phải cộng tác với trẻ em chưa?

Tôi đã tham dự đủ loại sự kiện dành cho học sinh từ khá lâu rồi, giảng bài về học máy. Và nhân tiện, một trong những chủ đề đã được một học sinh lớp mười dạy cho tôi. Tôi hoàn toàn chắc chắn rằng câu chuyện của mình sẽ hay và thú vị, tôi tự hào về bản thân, tôi bắt đầu phát sóng và cô gái nói: “Ồ, chúng tôi muốn giảm thiểu điều này”. Tôi nhìn và suy nghĩ thực sự tại sao, và sự thật có thể được giảm thiểu và không có gì đặc biệt để chứng minh ở đây. Đã nhiều năm trôi qua, bây giờ cô đang nghe bài giảng của chúng tôi khi còn là sinh viên Viện Vật lý và Công nghệ. Nhân tiện, Yandex có Yandex.Lyceum, nơi học sinh có thể tiếp thu kiến ​​​​thức lập trình cơ bản miễn phí.

- Đề xuất các trường đại học và khoa hiện đang giảng dạy học máy.

Có MIPT, các khoa FIVT và FUPM. HSE cũng có khoa khoa học máy tính tuyệt vời và tại Đại học quốc gia Moscow có khoa học máy tại khu liên hợp khoa học máy tính. Bây giờ bạn có thể nghe khóa học của chúng tôi tại Đại học RUDN.

Như tôi đã nói, nghề này đang có nhu cầu. Trong một thời gian rất dài, những người được giáo dục kỹ thuật đã làm những việc hoàn toàn khác nhau. Học máy là một ví dụ tuyệt vời khi tất cả những thứ mà những người được đào tạo về kỹ thuật đã dạy giờ đây đều thực sự cần thiết, hữu ích và được trả lương cao.

- Tốt thế nào?

Đặt tên cho số tiền.

- 500 nghìn/tháng.

Bạn có thể làm được mà không cần phải là một nhà khoa học dữ liệu thông thường. Nhưng ở một số công ty, một thực tập sinh có thể kiếm được 50 nghìn cho một công việc đơn giản. Có một phạm vi rất rộng. Nhìn chung, mức lương của một nhà khoa học dữ liệu tuyệt vời có thể được so sánh với mức lương của CEO của một số công ty cỡ trung bình. Ở nhiều công ty, ngoài tiền lương, nhân viên còn có nhiều lợi ích khác, và nếu rõ ràng rằng người đó không đến để tạo thêm thương hiệu tốt cho sơ yếu lý lịch của mình mà để thực sự làm việc thì mọi chuyện sẽ ổn với anh ta.

Là một phần của dự án chung “ABC of AI” với MIPT, chúng tôi đã viết về cái gọi là dự án cho phép bạn “phát triển” các chương trình theo các nguyên tắc và quy luật tiến hóa của Darwin. Tuy nhiên, hiện tại, cách tiếp cận trí tuệ nhân tạo này chắc chắn là một “vị khách đến từ tương lai”. Nhưng hệ thống trí tuệ nhân tạo ngày nay được tạo ra như thế nào? Họ được đào tạo như thế nào? Victor Kantor, giảng viên cao cấp tại Khoa Thuật toán và Công nghệ lập trình tại MIPT, đồng thời là người đứng đầu nhóm phân tích hành vi người dùng tại Yandex Data Factory, đã giúp chúng tôi tìm ra điều này.

Theo một báo cáo gần đây từ công ty nghiên cứu Gartner, công ty thường xuyên cập nhật “chu kỳ trưởng thành công nghệ” của mình, học máy hiện đang ở mức cao nhất được mong đợi trong tất cả lĩnh vực CNTT. Điều này không có gì đáng ngạc nhiên: trong vài năm qua, học máy đã thoát ra khỏi phạm vi quan tâm của một nhóm hẹp gồm các nhà toán học và chuyên gia về lý thuyết thuật toán và thâm nhập đầu tiên vào vốn từ vựng của các doanh nhân CNTT, sau đó là vào thế giới. của những người bình thường. Giờ đây, bất kỳ ai đã sử dụng ứng dụng Prisma, tìm kiếm bài hát bằng Shazam hoặc xem các hình ảnh được truyền qua DeepDream đều biết rằng có một thứ gọi là mạng lưới thần kinh với “ma thuật” đặc biệt của chúng.

Tuy nhiên, sử dụng công nghệ là một chuyện và hiểu cách thức hoạt động của nó là một chuyện khác. Những từ chung chung như “máy tính có thể học nếu bạn đưa ra gợi ý” hoặc “mạng lưới thần kinh bao gồm các nơ-ron kỹ thuật số và có cấu trúc giống như bộ não con người” có thể giúp ích cho ai đó, nhưng thường thì chúng chỉ gây nhầm lẫn trong tình huống. Những người định nghiên cứu toán học một cách nghiêm túc không cần những cuốn sách phổ biến: có sách giáo khoa và các khóa học trực tuyến tuyệt vời dành cho họ. Chúng ta sẽ cố gắng đi theo con đường trung gian: giải thích cách học thực sự diễn ra trong một nhiệm vụ rất đơn giản và sau đó chỉ ra cách áp dụng cách tiếp cận tương tự để giải quyết các vấn đề thực sự thú vị.

Máy học như thế nào

Để bắt đầu, để hiểu chính xác cách thức học máy diễn ra, hãy xác định các khái niệm. Theo định nghĩa của một trong những người tiên phong trong lĩnh vực này, Arthur Samuel, học máy đề cập đến các phương pháp “cho phép máy tính học mà không cần trực tiếp lập trình cho chúng”. Có hai loại phương pháp học máy rộng rãi: học có giám sát và học không giám sát. Ví dụ, cách đầu tiên được sử dụng khi chúng ta cần dạy máy tính tìm kiếm ảnh có hình ảnh mèo, ví dụ thứ hai là khi chúng ta cần máy, chẳng hạn, để có thể nhóm độc lập tin tức thành các câu chuyện, như xảy ra trong các dịch vụ như Yandex.News hoặc Google News. Nghĩa là, trong trường hợp đầu tiên, chúng ta đang giải quyết một nhiệm vụ ngụ ý sự tồn tại của một câu trả lời đúng (con mèo trong ảnh có ở đó hoặc không), trong trường hợp thứ hai không có câu trả lời đúng duy nhất, nhưng có nhiều cách khác nhau để giải quyết vấn đề. Chúng tôi sẽ tập trung cụ thể vào loại vấn đề đầu tiên là thú vị nhất.

Vì vậy chúng ta cần dạy máy tính đưa ra một số dự đoán. Hơn nữa, nó là mong muốn là chính xác nhất có thể. Dự đoán có thể có hai loại: hoặc bạn cần chọn giữa một số phương án trả lời (có con mèo trong ảnh hay không là lựa chọn một trong hai phương án, khả năng nhận dạng chữ cái trong hình ảnh là lựa chọn một phương án trong số vài chục, v.v.) hoặc đưa ra dự đoán bằng số . Ví dụ: dự đoán cân nặng của một người dựa trên chiều cao, tuổi, cỡ giày, v.v. Hai loại bài toán này nhìn bề ngoài có vẻ khác nhau nhưng thực chất chúng được giải gần như giống hệt nhau. Chúng ta hãy cố gắng hiểu chính xác làm thế nào.

Điều đầu tiên chúng ta cần tạo ra một hệ thống dự đoán là thu thập cái gọi là mẫu huấn luyện, tức là dữ liệu về cân nặng của những người trong dân số. Thứ hai là quyết định một tập hợp các dấu hiệu trên cơ sở đó chúng ta có thể rút ra kết luận về trọng lượng. Rõ ràng là một trong những dấu hiệu "mạnh nhất" như vậy sẽ là chiều cao của một người, do đó, chỉ cần lấy giá trị gần đúng đầu tiên là đủ. Nếu cân nặng phụ thuộc tuyến tính vào chiều cao thì dự đoán của chúng ta sẽ rất đơn giản: cân nặng của một người sẽ bằng chiều cao của người đó nhân với một hệ số nào đó, cộng với một giá trị không đổi nào đó, được viết bằng công thức đơn giản nhất y=kx+b. Tất cả những gì chúng ta phải làm để huấn luyện một cỗ máy dự đoán cân nặng của một người là bằng cách nào đó tìm ra các giá trị chính xác cho k và b.

Cái hay của học máy là ngay cả khi mối quan hệ mà chúng ta đang nghiên cứu rất phức tạp thì về cơ bản sẽ không có gì thay đổi trong cách tiếp cận của chúng ta. Chúng ta vẫn sẽ phải đối mặt với sự hồi quy tương tự.

Giả sử rằng cân nặng của một người bị ảnh hưởng bởi chiều cao của anh ta không phải tuyến tính mà ở mức độ thứ ba (điều này thường được mong đợi vì cân nặng phụ thuộc vào thể tích cơ thể). Để tính đến sự phụ thuộc này, chúng ta chỉ cần đưa một số hạng khác vào phương trình của mình, cụ thể là lũy thừa bậc ba với hệ số riêng của nó, từ đó thu được y=k 1 x+k 2 x 3 +b. Bây giờ, để huấn luyện máy, chúng ta cần tìm không phải hai mà là ba đại lượng (k 1, k 2 và b). Giả sử rằng trong dự đoán của chúng tôi, chúng tôi cũng muốn tính đến cỡ giày của một người, tuổi của anh ấy, thời gian anh ấy xem TV và khoảng cách từ căn hộ của anh ấy đến cửa hàng thức ăn nhanh gần nhất. Không vấn đề gì: chúng tôi chỉ cần thêm các tính năng này dưới dạng các thuật ngữ riêng biệt vào cùng một phương trình.

Điều quan trọng nhất là tạo ra một cách phổ quát để tìm các hệ số cần tìm (k 1, k 2, ... k n). Nếu nó tồn tại, chúng ta sẽ gần như không quan tâm đến những tính năng nào sẽ được sử dụng để dự đoán, bởi vì bản thân máy sẽ học cách gán trọng số lớn cho những tính năng quan trọng và trọng số nhỏ cho những tính năng không quan trọng. May mắn thay, phương pháp như vậy đã được phát minh và hầu hết tất cả máy học đều hoạt động thành công trên đó: từ các mô hình tuyến tính đơn giản nhất đến hệ thống nhận dạng khuôn mặt và máy phân tích giọng nói. Phương pháp này được gọi là giảm độ dốc. Nhưng trước khi giải thích cách thức hoạt động của nó, chúng ta cần nói lạc đề một chút và nói về mạng lưới thần kinh.

Mạng lưới thần kinh

Vào năm 2016, mạng lưới thần kinh đã tham gia vào chương trình thông tin chặt chẽ đến mức chúng gần như được đồng nhất với bất kỳ công nghệ học máy và CNTT tiên tiến nào nói chung. Nói một cách chính thức thì điều này không đúng: mạng lưới thần kinh không phải lúc nào cũng được sử dụng trong việc học toán; Nhưng nhìn chung, tất nhiên, sự liên kết như vậy là dễ hiểu, bởi vì chính các hệ thống dựa trên mạng lưới thần kinh hiện cung cấp những kết quả “kỳ diệu” nhất, chẳng hạn như khả năng tìm kiếm một người bằng ảnh, sự xuất hiện của các ứng dụng chuyển thông tin người đó. phong cách của hình ảnh này sang hình ảnh khác hoặc hệ thống tạo văn bản theo cách nói của một người nào đó.

Cách cấu trúc mạng lưới thần kinh, chúng ta đã... Ở đây tôi chỉ muốn nhấn mạnh rằng sức mạnh của mạng lưới thần kinh so với các hệ thống máy học khác nằm ở bản chất nhiều lớp của chúng, nhưng điều này không khiến chúng trở nên khác biệt về cơ bản trong cách chúng hoạt động. Nhiều lớp thực sự cho phép bạn tìm thấy các tính năng chung và phần phụ thuộc rất trừu tượng trong các tập hợp tính năng phức tạp, chẳng hạn như các pixel trong một bức ảnh. Nhưng điều quan trọng là phải hiểu rằng từ quan điểm của các nguyên tắc học tập, mạng lưới thần kinh không khác biệt hoàn toàn so với một tập hợp các công thức hồi quy tuyến tính thông thường, do đó, phương pháp giảm độ dốc tương tự cũng hoạt động rất tốt ở đây.

“Sức mạnh” của mạng nơ-ron nằm ở sự hiện diện của một lớp nơ-ron trung gian, lớp này kết hợp một cách tổng hợp các giá trị của lớp đầu vào. Do đó, mạng nơ-ron có thể tìm thấy các đặc điểm rất trừu tượng trong dữ liệu khó chuyển thành các công thức đơn giản như mối quan hệ tuyến tính hoặc bậc hai.

Hãy giải thích bằng một ví dụ. Chúng tôi đã đưa ra một dự đoán trong đó cân nặng của một người phụ thuộc vào chiều cao và bình phương chiều cao của người đó, được biểu thị bằng công thức y=k 1 x+k 2 x 3 +b. Có phần hơi căng thẳng, nhưng trên thực tế, ngay cả một công thức như vậy cũng có thể được gọi là mạng lưới thần kinh. Trong đó, giống như trong một mạng nơ-ron thông thường, có một lớp “nơ-ron” đầu tiên, cũng là một lớp đặc trưng: đó là x và x 3 (à, “nơ-ron đơn vị” mà chúng ta ghi nhớ và vì nó mà hệ số b chịu trách nhiệm). Lớp trên hoặc lớp kết quả được biểu thị bằng một “nơ-ron” y, tức là trọng lượng dự đoán của người đó. Và giữa lớp đầu tiên và lớp cuối cùng của “tế bào thần kinh” có các kết nối, cường độ hoặc trọng lượng của chúng được xác định bởi các hệ số k 1, k 2 và b. Huấn luyện “mạng lưới thần kinh” này đơn giản có nghĩa là tìm ra các hệ số tương tự.

Sự khác biệt duy nhất so với các mạng nơ-ron “thực” ở đây là chúng ta không có một lớp nơ-ron trung gian (hoặc ẩn) nào có nhiệm vụ kết hợp các tính năng đầu vào. Việc giới thiệu các lớp như vậy cho phép bạn không phát minh ra sự phụ thuộc có thể có giữa các tính năng hiện có mà có thể dựa vào sự kết hợp đã có của chúng trong mạng thần kinh. Ví dụ: độ tuổi và thời gian trung bình ngồi trước TV có thể có tác động tổng hợp đến cân nặng của một người, nhưng nhờ có mạng lưới thần kinh, chúng ta không bắt buộc phải biết trước điều này và nhập sản phẩm của họ vào công thức. Trong một mạng nơ-ron chắc chắn sẽ có một nơ-ron kết hợp ảnh hưởng của hai đặc điểm bất kỳ và nếu ảnh hưởng này thực sự đáng chú ý trong mẫu thì sau khi huấn luyện nơ-ron này sẽ tự động nhận được một trọng số lớn.

Giảm dần độ dốc

Vì vậy, chúng ta có một tập mẫu huấn luyện với dữ liệu đã biết, tức là một bảng có cân nặng được đo chính xác của một người và một số giả thuyết về mối quan hệ, trong trường hợp này là hồi quy tuyến tính y=kx+b. Nhiệm vụ của chúng ta là tìm giá trị chính xác của k và b, không phải bằng tay mà là tự động. Và tốt nhất là một phương pháp phổ quát không phụ thuộc vào số lượng tham số có trong công thức.

Nói chung việc này không khó thực hiện. Ý tưởng chính là tạo ra một hàm sẽ đo tổng mức lỗi hiện tại và “tinh chỉnh” các hệ số sao cho tổng mức lỗi giảm dần. Làm cách nào để giảm mức độ lỗi? Chúng ta cần điều chỉnh các tham số của mình theo đúng hướng.

Hãy tưởng tượng hai tham số mà chúng ta đang tìm kiếm, cùng k và b, là hai hướng trên một mặt phẳng, giống như trục bắc-nam và trục tây-đông. Mỗi điểm trên mặt phẳng như vậy sẽ tương ứng với một giá trị hệ số nhất định, một mối quan hệ cụ thể nhất định giữa chiều cao và cân nặng. Và đối với mỗi điểm như vậy trên mặt phẳng, chúng ta có thể tính tổng mức lỗi mà dự đoán này đưa ra cho từng ví dụ trong mẫu của chúng ta.

Nó tạo ra một cái gì đó giống như một độ cao cụ thể trên mặt phẳng và toàn bộ không gian xung quanh bắt đầu giống với phong cảnh núi non. Núi là những điểm có tỷ lệ sai sót rất cao, thung lũng là nơi ít xảy ra sai sót hơn. Rõ ràng là việc đào tạo hệ thống của chúng tôi có nghĩa là tìm ra điểm thấp nhất trên thực địa, điểm có tỷ lệ lỗi ở mức tối thiểu.

Làm thế nào bạn có thể tìm thấy điểm này? Cách đúng đắn nhất là luôn luôn di chuyển xuống từ điểm mà chúng ta đã tìm thấy chính mình ban đầu. Vì vậy, sớm hay muộn chúng ta sẽ đạt đến mức tối thiểu cục bộ - một điểm mà dưới đó không có gì ở gần đó. Hơn nữa, nên thực hiện các bước có kích thước khác nhau: khi độ dốc lớn, bạn có thể thực hiện các bước rộng hơn; khi độ dốc nhỏ, tốt hơn là bạn nên lẻn đến mức tối thiểu cục bộ “nhón chân”, nếu không bạn có thể vượt quá.

Đây chính xác là cách hoạt động của phương pháp giảm độ dốc: chúng tôi thay đổi trọng số của các đối tượng theo hướng giảm nhiều nhất trong hàm lỗi. Chúng tôi thay đổi chúng lặp đi lặp lại, nghĩa là với một bước nhất định, giá trị của bước này tỷ lệ thuận với độ dốc của độ dốc. Điều thú vị là khi số lượng đặc điểm tăng lên (thêm khối lập phương về chiều cao của một người, tuổi, cỡ giày, v.v.), về cơ bản không có gì thay đổi, chỉ là cảnh quan của chúng ta không trở thành hai chiều mà là đa chiều.

Hàm sai số có thể được định nghĩa là tổng bình phương của tất cả các độ lệch mà công thức hiện tại cho phép đối với những người có trọng lượng mà chúng ta đã biết chính xác. Lấy một số biến ngẫu nhiên k và b, ví dụ 0 và 50. Khi đó hệ thống sẽ dự đoán cho chúng ta rằng trọng lượng của mỗi người trong mẫu luôn bằng 50 kg y=0×x+50. Trên đồ thị, sự phụ thuộc sẽ trông giống như một đường thẳng song song với phương ngang. Rõ ràng đây không phải là một dự đoán tốt. Bây giờ, hãy lấy độ lệch trọng số so với giá trị dự đoán này, bình phương nó (để tính đến các giá trị âm) và tổng hợp nó - đây sẽ là lỗi tại thời điểm này. Nếu bạn đã quen với phần đầu của phân tích, thì bạn thậm chí có thể làm rõ rằng hướng của mức giảm lớn nhất được cho bởi đạo hàm riêng của hàm sai số đối với k và b, và bước này là giá trị được chọn cho Lý do thực tế: những bước nhỏ mất nhiều thời gian để tính toán, còn những bước lớn có thể dẫn đến việc chúng ta sẽ vượt qua mức tối thiểu.

Được rồi, điều gì sẽ xảy ra nếu chúng ta không chỉ có một hồi quy phức tạp với nhiều tính năng mà còn có một mạng lưới thần kinh thực sự? Làm cách nào để áp dụng phương pháp giảm độ dốc trong trường hợp này? Hóa ra, việc giảm độ dốc hoạt động theo cách giống hệt với mạng nơ-ron, chỉ có quá trình đào tạo diễn ra 1) từng bước, từ lớp này sang lớp khác và 2) dần dần, từ ví dụ này trong mẫu này sang ví dụ khác. Phương pháp được sử dụng ở đây được gọi là lan truyền ngược và được mô tả độc lập vào năm 1974 bởi nhà toán học Liên Xô Alexander Galushkin và nhà toán học Paul John Webros của Đại học Harvard.

Mặc dù để trình bày thuật toán một cách chặt chẽ, cần phải viết ra các đạo hàm riêng (chẳng hạn như), ở mức độ trực quan, mọi thứ diễn ra khá đơn giản: đối với mỗi ví dụ trong mẫu, chúng ta có một dự đoán nhất định ở đầu ra của mạng lưới thần kinh. Khi có câu trả lời đúng, chúng ta có thể trừ câu trả lời đúng khỏi dự đoán và do đó nhận được lỗi (chính xác hơn là một tập hợp lỗi cho mỗi nơ-ron của lớp đầu ra). Bây giờ chúng ta cần chuyển lỗi này sang lớp nơ-ron trước đó, và nơ-ron đặc biệt này của lớp này càng góp phần gây ra lỗi thì chúng ta càng cần giảm trọng lượng của nó (trên thực tế, chúng ta lại đang nói về việc lấy đạo hàm từng phần, về việc di chuyển dọc theo độ dốc tối đa của cảnh quan tưởng tượng của chúng ta) . Khi chúng ta thực hiện xong việc này, quy trình tương tự phải được lặp lại cho lớp tiếp theo, di chuyển theo hướng ngược lại, tức là từ đầu ra của mạng nơ-ron đến đầu vào.

Bằng cách duyệt qua mạng lưới thần kinh theo cách này với từng ví dụ của mẫu huấn luyện và “xoắn” trọng số của các nơ-ron theo hướng mong muốn, cuối cùng chúng ta sẽ có được một mạng lưới thần kinh được huấn luyện. Phương pháp lan truyền ngược là một sửa đổi đơn giản của phương pháp giảm độ dốc cho các mạng thần kinh nhiều lớp và do đó sẽ hoạt động với các mạng thần kinh có độ phức tạp bất kỳ. Chúng tôi nói “nên” ở đây vì trên thực tế, có những trường hợp việc giảm độ dốc không thành công và không cho phép bạn thực hiện hồi quy tốt hoặc huấn luyện mạng lưới thần kinh. Sẽ rất hữu ích nếu biết tại sao những khó khăn đó lại phát sinh.

Những khó khăn của việc giảm độ dốc

Lựa chọn sai về mức tối thiểu tuyệt đối. Phương pháp giảm độ dốc giúp tìm kiếm điểm cực trị cục bộ. Nhưng không phải lúc nào chúng ta cũng có thể sử dụng nó để đạt được mức tối thiểu hoặc tối đa toàn cục tuyệt đối của hàm. Điều này xảy ra bởi vì khi di chuyển dọc theo một phản gradient, chúng ta dừng lại ở thời điểm đạt đến mức tối thiểu cục bộ đầu tiên mà chúng ta gặp phải và thuật toán ngừng hoạt động.

Hãy tưởng tượng bạn đang đứng trên đỉnh một ngọn núi. Nếu bạn muốn đi xuống bề mặt thấp nhất trong khu vực, phương pháp giảm độ dốc không phải lúc nào cũng giúp ích cho bạn, vì điểm thấp đầu tiên trên đường đi của bạn không nhất thiết phải là điểm thấp nhất. Và nếu trong cuộc sống, bạn có thể thấy rằng nếu bạn tăng lên một chút và sau đó bạn có thể xuống thấp hơn nữa, thì thuật toán trong tình huống như vậy sẽ đơn giản dừng lại. Thường thì tình trạng này có thể tránh được nếu bạn chọn đúng bước.

Lựa chọn bước không chính xác. Phương pháp giảm gradient là một phương pháp lặp. Nghĩa là, bản thân chúng ta cần chọn kích thước bước - tốc độ chúng ta đi xuống. Bằng cách chọn một bước quá lớn, chúng ta có thể vượt qua điểm cực trị cần thiết và không tìm được điểm cực tiểu. Điều này có thể xảy ra nếu bạn thấy mình đang phải đối mặt với một cú lao dốc rất mạnh. Và việc chọn một bước quá nhỏ có nguy cơ khiến thuật toán trở nên cực kỳ chậm nếu chúng ta thấy mình đang ở trên một bề mặt tương đối phẳng. Nếu chúng ta lại tưởng tượng rằng chúng ta đang ở trên đỉnh một ngọn núi dốc, thì một tình huống có thể nảy sinh là do độ dốc rất cao gần mức tối thiểu, chúng ta chỉ cần bay qua nó.

Mạng tê liệt.Đôi khi xảy ra trường hợp phương pháp giảm độ dốc không tìm được mức tối thiểu. Điều này có thể xảy ra nếu có các vùng phẳng ở cả hai phía của mức tối thiểu - thuật toán, khi chạm vào vùng phẳng, sẽ giảm bước và cuối cùng dừng lại. Nếu đang đứng trên đỉnh núi, bạn quyết định di chuyển về phía quê hương ở vùng đất thấp, hành trình có thể sẽ rất dài nếu bạn vô tình lạc vào một khu vực rất bằng phẳng. Hoặc, nếu có các “độ dốc” gần như thẳng đứng dọc theo các cạnh của khu vực bằng phẳng, thuật toán, sau khi chọn một bước rất lớn, sẽ nhảy từ độ dốc này sang độ dốc khác, thực tế không di chuyển về mức tối thiểu.

Tất cả những vấn đề phức tạp này phải được tính đến khi thiết kế hệ thống máy học. Ví dụ: luôn hữu ích khi theo dõi chính xác hàm lỗi thay đổi như thế nào theo thời gian - nó có giảm theo mỗi chu kỳ hoặc thời gian đánh dấu mới hay không, bản chất của sự giảm này thay đổi như thế nào tùy thuộc vào sự thay đổi trong kích thước bước. Để tránh rơi vào tình trạng tối thiểu cục bộ kém, có thể hữu ích nếu bạn bắt đầu từ các điểm được chọn ngẫu nhiên khác nhau của cảnh quan - khi đó khả năng bị mắc kẹt sẽ thấp hơn nhiều. Còn có rất nhiều bí mật lớn nhỏ khác về việc sử dụng phương pháp giảm độ dốc và cũng có nhiều cách học kỳ lạ hơn gần giống với phương pháp giảm độ dốc. Tuy nhiên, đây là chủ đề cho một cuộc trò chuyện khác và một bài viết riêng trong khuôn khổ dự án ABC về AI.

Chuẩn bị bởi Alexander Ershov

Đã gần một năm trôi qua kể từ thời điểm một chủ đề đặc biệt – một hội thảo đổi mới – được bắt đầu tại FIVT. Bản chất của nó là việc tạo ra các công ty khởi nghiệp CNTT bởi các nhóm sinh viên dưới sự hướng dẫn của các cố vấn giàu kinh nghiệm. Mọi chuyện diễn ra tốt đẹp: nhờ khóa học, ai đó đã dành một phần mùa hè ở Thung lũng Cream, ai đó đã nhận được khoản tài trợ trị giá 800.000 rúp để phát triển dự án và ABBYY sẵn sàng mua lại hoàn toàn dự án từ ai đó. Và đây không phải là tất cả kết quả của hội thảo!

Đầu năm 2011, sinh viên năm thứ 3 của FIVT tập trung tại Hội trường và được thông báo: trong năm tới các bạn sẽ cần thành lập công ty khởi nghiệp của riêng mình. Các sinh viên không chấp nhận ý tưởng này một cách mơ hồ: không rõ phải thực hiện nó như thế nào và trách nhiệm là bất thường - xét cho cùng, cần phải tạo ra một doanh nghiệp công nghệ chứ không chỉ là một dự án giáo dục khác. Đây là những gì người chiến thắng trong cuộc thi Olympic vật lý của sinh viên MIPT, sinh viên khoa Yandeska, Viktor Kantor, nghĩ về điều đó:

Khi tôi chọn FIVT khi nhập học, tôi đã hy vọng rằng chúng tôi sẽ có điều gì đó tương tự. Vì vậy, tôi rất vui vì hy vọng của mình không vô ích. Trong năm, có cảm giác rằng khóa học vẫn đang được hình thành, có nhiều điều mới mẻ, nhiều vấn đề gây tranh cãi không chỉ với sinh viên mà còn với ban tổ chức, nhưng nhìn chung, tôi nghĩ xu hướng là tích cực. Tôi thích khóa học này.

Để tạo điều kiện thuận lợi cho công việc của sinh viên, nhiều người phụ trách khác nhau đã được mời đưa ra ý tưởng của họ để xây dựng các doanh nghiệp đổi mới. Trong số họ có những người hoàn toàn khác nhau: từ sinh viên đại học và sau đại học của MIPT đến cố vấn đổi mới của Ernst&Young, Yury Pavlovich Ammosov (ông là người hướng dẫn toàn bộ khóa học) và Mikhail Batin, người giải quyết các vấn đề về y học tái tạo và kéo dài sự sống. Kết quả là, các sinh viên vật lý và công nghệ đã chọn ra những ý tưởng mà họ thấy thú vị nhất, những người phụ trách tham gia vào các nhóm và công việc khó khăn nhưng thú vị bắt đầu.

Trong gần một năm trôi qua kể từ đó, các chàng trai đã phải đối mặt với nhiều vấn đề, một số vấn đề đã được giải quyết. Bây giờ chúng ta có thể đánh giá kết quả của họ - bất chấp khó khăn, các chàng trai đã đương đầu. Sinh viên MIPT (ngoài Khoa Triết học, một số sinh viên Khoa Ngữ văn và các khoa khác đã tham gia vào quá trình này) đã chuẩn bị được một số dự án khá thú vị và khả thi:

Akeroid (trước đây là Ask Droid) – tìm kiếm điện thoại thông minh ( Anastasia Uryasheva)

Một ứng dụng Android cho phép bạn tìm kiếm thuận tiện trong một số lượng lớn các công cụ tìm kiếm. Một số chuyên gia tỏ ra quan tâm đến sự phát triển và kết quả là Anastasia đã dành cả mùa hè vừa qua tại một trong những vườn ươm nổi tiếng nhất ở Thung lũng Silicon - Plug&Play. tìm hiểu những kiến ​​thức cơ bản về khởi nghiệp công nghệ và nói chuyện với các chuyên gia liên doanh quốc tế.

1 phút.ru – một phút cho tốt đẹp (Lev Grunin)

Dự án này mang đến cho mọi người cơ hội làm công việc từ thiện một cách đơn giản, nhanh chóng và hoàn toàn miễn phí. Mô hình rất đơn giản: nhà quảng cáo cung cấp một số hoạt động nhất định trên trang web, người dùng tự nguyện tham gia vào chúng và tất cả tiền từ quảng cáo sẽ được chuyển sang quỹ từ thiện. Trong vòng một tuần kể từ khi ra mắt, dự án đã thu hút hơn 6.500 người dùng và sẽ không dừng lại ở đó. Kết quả là, nhờ Lev và nhóm của anh, 600 trẻ em từ các trại trẻ mồ côi sẽ nhận được những món quà quý giá từ ông già Noel nhân dịp năm mới. Bạn đã dành một phút cho một việc làm tốt chưa?!

Máy tính để bàn nhúng - máy tính trong điện thoại của bạn (Alexey Vukolov)

Một ứng dụng cho phép bạn kết hợp khả năng của máy tính và tính di động của điện thoại trong một gói - một sản phẩm cực kỳ hữu ích cho những người bận rộn thường xuyên phải đi công tác. Chỉ cần cài đặt nó trên điện thoại thông minh là đủ và người dùng sẽ có thể “có” máy tính của riêng mình ở bất kỳ khách sạn, văn phòng nào và thực sự là bất cứ nơi nào có thể tìm thấy màn hình (TV cũng phù hợp), bàn phím và máy tính để bàn. chuột. Dự án đã nhận được tài trợ để phát triển ý tưởng và được giới thiệu tại triển lãm Technovation Cup, và với số tiền nhận được, nhóm đã tích cực mua thiết bị. Nhà sản xuất bộ xử lý MIPS của Mỹ cực kỳ quan tâm đến sự phát triển này.

Smart Tagger – tìm kiếm ngữ nghĩa qua tài liệu (Victor Kantor)

Bạn nên làm gì nếu bạn nhớ rằng ở đâu đó trong hộp thư của bạn có một lá thư rất quan trọng nói về tập mới nhất của Lý thuyết Big Bang, nhưng bạn không nhớ bất kỳ từ khóa nào trong văn bản? Yandex và tìm kiếm Google bất lực. Sự phát triển của Smart Tagger sẽ ra tay giải cứu - một chương trình “thông minh” sử dụng tìm kiếm ngữ nghĩa sẽ cung cấp cho bạn tất cả các văn bản có ý nghĩa gắn liền với loạt phim truyền hình nổi tiếng. Dự án đã giành được tài trợ tại cuộc thi U.M.N.I.K. tổng cộng 400.000 rúp!

MathOcr – nhận dạng công thức (Viktor Prun)

ABBYY đã đề xuất một nhiệm vụ thú vị để triển khai - tạo ra một chương trình có thể nhận dạng các công thức toán học ở bất kỳ mức độ phức tạp nào. Sinh viên FIVT sau khi hợp tác với các sinh viên quan tâm đã hoàn thành nhiệm vụ - mô-đun thực sự nhận ra các công thức được quét từ sách giáo khoa toán hoặc vật lý. Kết quả: ABBYY sẵn sàng mua sản phẩm này với số tiền rất lớn.