Category Archives: Science

The Pros and Cons of Big Data – Alina

bigdata-1080x675

Intro

This past summer, I flew back and forth between China and the US a lot, which meant I had to book plane tickets a number of times. During this process, I used a Chinese travel website called Ctrip, which my family has always liked and trusted. It is also the largest online travel agency in China. However, this time my experience was not so pleasant. The price for the tickets that I was looking at kept going up every time I returned from looking up similar tickets on other websites, which could be interpreted as normal since that price might go up as the date approached. The part that took me by surprise though was when I tried to log in using a different account and look at the same tickets on the same date, I found that the prices differed. I don’t recall the exact price gap but I just remember that it was enough for me to be upset and intrigued by it at the same time. After a brief search online, I found that there were already news reports accusing this company of manipulating their customers through the use of “big data.” This discovery deeply interested me. I could not help but started to wonder about questions like “How exactly are they using the data they collect to achieve their goal? How are other Internet companies like Netflix and Google using their data? What are the ethical implications of this? What impact does this have on our society as a whole?” Continue reading

Introduction to Differential Equations (DE), Geometric Method, Isoclines, and Euler’s Method – Baiting

newton-leipnikhttp://www.idea.wsu.edu/

 

In the past week, I studied Differential Equations through an MIT Online Open Course, which can be found here:

https://ocw.mit.edu/courses/mathematics/18-03sc-differential-equations-fall-2011/index.htm

In this blog, I will introduce Differential Equations as well as some of the methods of solving or visualizing them. I will start from the place where most students left out since Calculus II to make it more comprehensible.

 

Differential Equations:

Differential Equations, also known as DE, means “an equation involving derivatives of a function of functions” (dictionary.com). Differential Equations have a broad application in subjects like Physics, Engineering, and Biology, which will be discussed in depth in my future blogs. The first several blogs, however, will be focusing on the math behind differential equations including how to solve and visualize the formulas.

One simple example of DE is wechat-screenshot_201809091742161, in which x is the independent variable and y is the dependent variable. Notice that taking integral is not a way to find a general solution of y; instead, we must employ a method called “Separation of Variables”. Continue reading

The Effect of Global Climate Change on Coral Reefs – Nick

 

    Everyone loves the beach. Whether it’s the Jersey shore, beautiful Caribbean beaches, or even the white cliffs of dover. Well, whether you may know it or not, these beautiful ecosystems are in danger. The threat, however, is not something that can be seen from your chair in the sand, it can be seen when you venture out into the alien-like world of the reefs of the ocean. Continue reading

Herbs and Pills –Project on the History of Eastern and Western Medicine – Yuchen

—-Project Initiation and Goal

While thinking about Traditional Chinese Medicine or Eastern medicine in general, many people would picture the acupuncture needles sticking out on the skin surface and a room with mysterious smell of herbal medicine. Many would even argue that Eastern medicine has no basis in science, and the proclaimed effects of herbal medicine or acupuncture are merely placebo effects. While thinking about Eastern medicine, however, many would perhaps picture an operating room occupied by high-tech equipments and surrounded by doctors holding scalpels. Continue reading

Training an Object Detector with TensorFlow (Part II)-Kevin

For last week’s blog post, I wrote a short tutorial for training a custom object detection model using TensorFlow Object Detection API. Due to the limited space and time constraints, my tutorial was not quite finished. Therefore, in this week’s blog, I will continue my tutorial and include additional steps such as the usage of a tool to test your model’s accuracy.

Continue reading

Training an Object Detector with TensorFlow – Kevin

Have you ever heard of Tesla’s Model S sedan? It is one of the few cars capable of fully autonomous driving. Although U.S. laws currently do not permit this, the Model S can pick you up at your house and drop you off at school, all without you even touching the steering wheel. To create a self-driving vehicle, Tesla engineers had to employ many machine learning techniques, including an object detector that recognizes and classifies objects around the car. For example, the on-board camera is able to recognize pedestrians and instructs the car to stop. Another example is that the object detector recognizes other vehicles on the road, keeping the Tesla from colliding into them.

With the use of the TensorFlow Object Detection API, creating such a model (though probably not as accurate as the one Tesla developed) can now be done with consumer-grade equipment such as a personal computer. As promised in last week’s blog, I will discuss how to create a customized object detector with the TensorFlow API.

Continue reading

Installing TensorFlow on Windows 10

It has been quite a while since I last wrote about machine learning. During the first week after spring break, I finally got a chance to take a closer look at TensorFlow, a software library designed for machine learning applications by Google. It was originally used by the Google Brain team and was later made open-source to the public. In this week’s blog post, I will discuss the installation of TensorFlow on PCs.

Continue reading

A Brave New Start — William

Over last semester, I wrote a series of blogs focusing on artificial intelligence and machine learning using artificial intelligence, especially that of image classifications. My independent project aimed to create and improve a convolutional neural network that identifies different categories of grocery. Through the semester, I gained considerable experiences working with Tensorflow, the most popular programming framework for machine learning. I also became proficient in creating and improving the neural network, raising its accuracy over 80 percent. Continue reading

Press Release: Introducing Argus – Peripheral Recognizer

WEST CHESTER, Pennsylvania — January 20, 2018 — Today, Kevin Wang, designer of Westtown Resort and Polaris, announced Argus, an innovative iOS application that uses machine learning to perform scene and object recognition and enunciates what it detects to the user.

Continue reading

Moving Below the Surface (3): TensorFlow — William

Tensorflow is one of the most widely used programming frameworks for algorithms with a large number of mathematical operations and computations. Specifically, Tensorflow is designed for the algorithms of Machine Learning. Tensorflow was first developed by Google and its source code soon became available on Github, the largest open-source code sharing website. Google uses this library in almost its all Machine Learning applications. From Google photos to Google Voice, we have all been using Tensorflow directly or indirectly, while a fast-growing group of independent developers incorporates Tensorflow into their own software. Tensorflow is able to run on large clusters of computing hardware and its excellence in perceptual tasks gives it an edge to Tensorflow in competitions against other Machine Learning libraries.

In this blog, we will explore the conceptual structure of Tensorflow. Although Tensorflow is mostly used along with the programming language Python, only fundamental knowledge of computer science is needed for you to proceed further in this blog. As its name suggests, Tensorflow comprises two core components: the Tensors and the computational graph (or “the flow”). Let me briefly introduce each of them.

Mathematically speaking, a Tensor is an N-Dimensional vector representing a set of data in the N-Dimensional space. In other words, a Tensor includes a group of points in a coordinate with N axes. It is difficult to visualize points in high dimensions, but the following examples in two or three dimensions give a good idea of how Tensors look like.

As the dimension increases, the volume of data represented grows exponentially. For example, a Tensor with form (3,3) is a matrix with 3 rows and 3 columns, while a Tensor with form (6,7,8) is a set of 6 matrices with 7 rows and 8 columns. In these cases, the form (3,3) and the form (6,7,8) are called the shape or the Dimension of the Tensor. In Tensorflow, the Tensors could be either a constant with fixed values, or a variable allowing alternations during computations.

After we understand what Tensor means, it’s time to go with the Flow. The Flow refers to a computational graph or a graph in short. Such graphs are always acyclic, have a distinct input and output, and never feed back into itself. Each node in the graph represents a single mathematical operation. It could be an addition, a multiplication, etc. Data and numbers flow from one node to the next in the form of Tensors, and the result is a new Tensor. The following is a simple computational graph.

Screen Shot 2018-01-05 at 22.05.07.png

The expression of this graph is not complicated: e = (a+b)*(b+1). Let’s start from the bottom of the graph. The nodes at the lowest level of the graph are called leaves. The leaves of the graph do not accept inputs and only provides a Tensor as output. Actually, a Tensor would not be in a non-leaf node for this reason. The three leaves are variables a and b, and a constant 1.

One level up is two operation nodes. Each one of them represents an addition. Both take two inputs from the nodes below. These middle and higher levels depend on their predecessors, for they could not be computed without the outputs from a, b, or 1. Note that both addition operations are parallel to each other at the same level: Tensorflow does not need to wait on all of them to complete before moving on to the next node.

The final node is a multiplication node. It take c and d as input, forming the expression e = (c)*(d), while c = a+b and d = b+1. Therefore, combining the two expressions, we have the final result of e = (a+b)*(b+1).

That is all for our introduction to basic Tensorflow concepts. We will discuss further advanced features of Tensorflow in later posts. Stay tuned and see you next time!

Works Cited

“TensorFlow open source machine intelligence library makes its way to Windows.” On MSFT, 29 Nov. 2016, http://www.onmsft.com/news/tensorflow-open-source-machine-intelligence-library-makes-its-way-to-windows.
HN, Narasimha Prasanna. “A beginner introduction to TensorFlow (Part-1) – Towards Data Science.” Towards Data Science, Towards Data Science, 28 Oct. 2017, towardsdatascience.com/a-beginner-introduction-to-tensorflow-part-1-6d139e038278.