全國中小學科展

電腦科學與資訊工程

彩色二維條碼手持產品開發之探討

QR Code是由黑白模組組成的二維數位條碼,掃描後可讀取儲存的訊息。受限於設計原理,QR Code使用二進位制儲存資料。增加模組數目可增加資料量,但若在條碼內塞進太多模組時,尺寸太小的模組將無法被掃描器讀取。此外,目前QR Code掃描器僅支援單張掃描,並無法應付同時多張條碼掃描的實務需求。 如能克服顏色辨識,理論上彩色二維條碼將能克服現行QR Code的限制,但市面上並無相關產品可供測試。因此本專題設計了一款10×10、具8顏色的"Colour Matrix",並利用Raspberry Pi開發Colour Matrix在手持裝置上運作的軟硬體來進行實驗。此實驗成功利用機器學習演算法在Raspberry Pi上進行的顏色辨識。開發的程式在單張掃描上效能與使用pyzbar辨識QR Code相當;在多張掃描方面,使用pyzbar辨識QR Code的解碼成功率為3.1%,而本專題的方法將成功率提升至92.4%,擴增數位條碼的使用範圍,具商用價值。

Automated Debugging System – Implementing Program Spectrum Analysis and Information Retrieval on Fault Localization

在程式專案開發中,偵測錯誤常為最耗時的環節,進而影響整個專案的開發時長。而現今雖有些許輔助開發者提升偵錯效能的工具,但這些工具也只能藉由提供編譯執行中的資訊讓開發者省去偵錯時的繁瑣步驟,仍須開發者自行評估每段程式碼的正確性。此研究透過程式段落分析與資訊檢索實現自動錯誤定位,在每個程式段落標記其成為臭蟲(bug)的可能性。在程式段落分析中,執行使用者之原始碼,並透過歸納最終結果為正確及錯誤之執行路徑差異分析出每個程式段落的可疑性。接著運用資訊檢索技術於資料庫中找尋相似之原始碼,並參考其偵錯結果優化現有之可疑性,形成最終之可疑性排名。此研究不只結合了上述兩種技術,更優化可疑程度之計算方法以及資訊檢索中的相似度比對機制,達到更完善的錯誤定位。(此指「臭蟲」非語法錯誤(Syntax Errors),而為邏輯錯誤(Logic Errors)。)

Development of an Android Application for Triage Prediction in Hospital Emergency Departments

Triage is the process by which nurses manage hospital emergency departments by assigning patients varying degrees of urgency. While triage algorithms such as the Emergency Severity Index (ESI) have been standardized worldwide, many of them are highly inconsistent, which could endanger the lives of thousands of patients. One way to improve on nurses’ accuracy is to use machine learning models (ML), which can learn from past data to make predictions. We tested six ML models: random forest, XGBoost, logistic regression, support vector machines, k-nearest neighbors, and multilayer perceptron. These models were tasked with predicting whether a patient would be admitted to the intensive care unit (ICU), another unit in the hospital, or be discharged. After training on data from more than 30,000 patients and testing using 10-fold cross-validation, we found that all six models outperformed ESI. Of the six, the random forest model achieved the highest average accuracy in predicting both ICU admission (81% vs. 69% using ESI; p<0.001) and hospitalization (75% vs. 57%; p<0.001). These models were then added to an Android application, which would accept patient data, predict their triage, and then add them to a priority-ordered waiting list. This approach may offer significant advantages over conventional triage: mainly, it has a higher accuracy than nurses and returns predictions instantaneously. It could also stand-in for triage nurses entirely in disasters, where medical personnel must deal with a large influx of patients in a short amount of time.

以深度學習與遷移學習防範社群媒體片面新聞訊息之研究

現代民眾獲取新聞的途徑逐漸轉移到網路媒體,然而在網路資訊快速傳播以及媒體為追求報導曝光度以增加金錢利益的情形下,片面、誘導等形式的新聞標題與短句訊息在新聞媒體傳播中日益嚴重;本次研究透過Fake News Challenge提供的Stance Detection dataset,運用深度學習與遷移學習方法訓練可預測兩文本之間相關程度的自然語言處理模型,在過程中改善調參及訓練方式,並將其實際運用在預測美國新聞媒體於Facebook網路社群平台發文推播新聞的同時所附的短句與新聞報導文本內容之間的相關關係程度,分析社群平台中新聞可能造成的誤導式文句是否實際造成片面報導,而影響了受眾對於媒體的使用程度與信任程度。使此模型有助即時預警社群平台上的報導資訊型態品質,輔助使用者獲取新聞時所應具備的媒體識讀能力,進而改善片面報導於網路的流竄,同時提升未來媒體生態。

摘要演算法和語句分析之關聯性

在這個資訊發達的時代,網路充滿著五花八門的資訊,導致我們在查詢資料時會因為這些雜亂且未經過濾的資料浪費許多時間,其中最為氾濫的便是點擊誘餌(clickbait),此種新聞常常有著吸引人的標題,而內容卻不會與主題相符,人們也常常在讀完整篇文章後才意識到自己浪費了許多時間在無意義的資訊上面。解決此問題很常用的方法之一便是運用摘要演算法來讓讀者先對新聞有一個大概的理解,不過,雖然摘要演算法越來越普及,但產生出來的摘要仍會和人為判斷的結果有所差距,進而造成閱讀理解上的錯誤以及偏差,所以我們想要藉由這次研究,從一個嶄新的角度切入,探討摘要演算法和句型分析之間的關係,融合原本向量建構的方式以及語句結構的分析來測試摘要的準確度,並且由結果研發出一個可以產生出更為精確的主旨之摘要演算法,除此之外,我們也會融合實地調查以及搜集意見的方式來更進一步探討人們思模式與產生出的摘要之關聯性。

Solving Mathematical and Chemical Equations using Python

Max Gold's project, titled “Solving Mathematical and Chemical Equations using Python”, is a website comprising of 4 main programmes: one to find the smallest possible combination of two chemical compounds or elements; a self-made parsing function to convert a chemical equation into a matrix, then using Gaussian-Jordan elimination to find coefficients for an equation; a programme to parse a mathematical expression and use that parsed expression in algebraic division of an algebraic dividend of nth degree polynomial by a divisor of 1st degree polynomial; finally, a programme to solve binomial equations for the power s∈Q. This website was originally made so that Max Gold could improve his programming skills for GCSE computer science but expanded to incorporate his passion for chemistry and maths and thus allow others to use these programmes to help them with their problems as well. A problem with many conventional calculator websites is their lack of specificity – they tend to be able to compute some functions but not all. These programmes are tailored to GCSE and A level maths and chemistry, meaning this website provides an outlet to compute specific topics of problems.

Solving Mathematical and Chemical Equations using Python

Max Gold's project, titled “Solving Mathematical and Chemical Equations using Python”, is a website comprising of 4 main programmes: one to find the smallest possible combination of two chemical compounds or elements; a self-made parsing function to convert a chemical equation into a matrix, then using Gaussian-Jordan elimination to find coefficients for an equation; a programme to parse a mathematical expression and use that parsed expression in algebraic division of an algebraic dividend of nth degree polynomial by a divisor of 1st degree polynomial; finally, a programme to solve binomial equations for the power s∈Q. This website was originally made so that Max Gold could improve his programming skills for GCSE computer science but expanded to incorporate his passion for chemistry and maths and thus allow others to use these programmes to help them with their problems as well. A problem with many conventional calculator websites is their lack of specificity – they tend to be able to compute some functions but not all. These programmes are tailored to GCSE and A level maths and chemistry, meaning this website provides an outlet to compute specific topics of problems.

Method of prosthetic vision

This work is devoted to solving the problem of orientation in the space of visually impaired people. Working on the project, a new way of transmitting visual information through an acoustic channel was invented. In addition, was developed the device, which uses distance sensors to analyze the situation around a user. Thanks to the invented algorithm of transformation of the information about the position of the obstacle into the sound of a certain tone and intensity, this device allows the user to transmit subject-spatial information in real time. Currently, the device should use a facette locator made of 36 ultrasonic locators grouped in 12 sectors by the azimuth and 3 spatial cones by the angle. Data obtained in such a way is converted into its own note according to the following pattern : the angle of the place corresponds to octave, the azimuth corresponds to the note and the distance corresponds to the volume. The choice of the notes is not unambiguous. However, we used them for the reason that over the centuries, notes have had a felicitous way of layout on the frequency range and on the logarithmic scale. Therefore, the appearance of a new note in the total signal will not be muffled by a combination of other notes. Consequently, a blind person, moving around the room with the help of the tone and volume of the sound signals, will be able to assess the presence and location of all dangerous obstacles. After theoretical substantiation of the hypothesis and analysis of the available information, we started the production of prototypes of the devices that would implement the idea of transmitting information via the acoustic channel.

Cross-lingual Information Retrieval

In this project, we evaluate the effectiveness of Random Shuffling in the Cross Lingual Information Retrieval (CLIR) process. We extended the monolingual Word2Vec model to a multilingual one via the random shuffling process. We then evaluate the cross-lingual word embeddings (CLE) in terms of retrieving parallel sentences, whereby the query sentence is in a source language and the parallel sentence is in some targeted language. Our experiments on three language pairs showed that models trained on a randomly shuffled dataset outperforms randomly initialized word embeddings substantially despite its simplicity. We also explored Smart Shuffling, a more sophisticated CLIR technique which makes use of word alignment and bilingual dictionaries to guide the shuffling process, making preliminary comparisons between the two. Due to the complexity of the implementation and unavailability of open source codes, we defer experimental comparisons to future work.

Cross-lingual Information Retrieval

In this project, we evaluate the effectiveness of Random Shuffling in the Cross Lingual Information Retrieval (CLIR) process. We extended the monolingual Word2Vec model to a multilingual one via the random shuffling process. We then evaluate the cross-lingual word embeddings (CLE) in terms of retrieving parallel sentences, whereby the query sentence is in a source language and the parallel sentence is in some targeted language. Our experiments on three language pairs showed that models trained on a randomly shuffled dataset outperforms randomly initialized word embeddings substantially despite its simplicity. We also explored Smart Shuffling, a more sophisticated CLIR technique which makes use of word alignment and bilingual dictionaries to guide the shuffling process, making preliminary comparisons between the two. Due to the complexity of the implementation and unavailability of open source codes, we defer experimental comparisons to future work.