text:
More Physics Clangers
Teachingscienceinallweathers highlights some disappointing Physics errors on the DfE's National Curriculum documents for Science which have remained uncorrected for over a year (see here, here and here).
This would be bad form on, say, a school website. For an organisation that is in charge of a national education system whose elected leaders do not hesitate to label schools as "coasting" and "lacking rigour", it is unbelievably shabby and smacks of arrogant, lazy hypocrisy. And these documents are no longer drafts: the DfE website says that "these programmes of study are issued by law; you must follow them unless there's a good reason not to. All local-authority-maintained schools in England must teach . . . key stage 4 from September 2016."
Some of the persistent errors highlighted by Teachingscienceinallweathers (and others, including @DrDav, @HRogerson and @miss_m_w) are:
1. The formula for kinetic energy is given as "0.5 x mass x (acceleration)^2" instead of "0.5 x mass x (velocity)^2" [p.37]
2. The formula for weight is given as "gravity force = mass x gravity constant" instead of using the correct scientific terminology of "weight = mass x gravitational field strength". As Teachingscienceinallweathers points out, the magnitude of gravitational field strength is anything but a "gravity constant", even near to the Earth's surface. Similarly, stating that "potential energy = mass x height x gravity constant (g)" [p.37] invites confusion between the constant "big G" the Universal Gravitational Constant (which is genuinely a constant) and "little g" which, as noted above, is not.
3. "Charge flow = current x time" [p.37]: the phrase "charge flow" is confusing in this context. Very often, the phrase "flow of charge" is used as a synonym for "current". I would argue that "Charge transferred = current x time" would be preferable in this case.
4. "Interpret enclosed areas in distance-time and velocity-time graphs" [p.32]: the area enclosed by a velocity-time graph represents the change in displacement; the area enclosed by a distance-time graph represents . . . erm, nothing with any physical significance, as far as I know.
I would argue that the writers of science examination questions and science specifications have tended towards the prolix over the last two decades, and I, for one, would welcome the return to the more concise but rigorous style of writing of yesteryear when an exam question could begin "A monochromatic ray of light is incident on a plane mirror at an angle of 30 degrees to the normal…" and students were expected to draw an appropriate diagram because the language was clear, formal and unambiguous.
That may indeed have been the intention of the National Curriculum writers, but they are some way from achieving it. In fact, this document is nowhere close.
My own personal bête noire is:
explain with examples that motion in a circular orbit involves constant speed but changing velocity (qualitative only) [p.31]
There is no indication that the writers intend to restrict the meaning of orbit to the celestial sense, and so it seems that it refers to motion on a circular path in general. And therein lies the problem: it might be true in cases where the radius and angular velocity are constant, but the writers do not specify this. Are they considering the motion of an object whirled on a string? Motion in a vertical circle? Motion in a horizontal circle? They don't say. It is a fair generalisation to say that it is hard to set up motion in a vertical circle that features uniform speed without variable torque to compensate for the transfer of k.e. to g.p.e. and vice versa.
"Explanations of circular motion restricted to examples involving constant speed to introduce the concept of centripetal acceleration as a result of changing direction of velocity" is far from perfect but is, I think, more useful than the original.
In short, those who call for rigour should display rigour.
Filed under Education, Physics, Society
Tagged as DfE, National Curriculum
Weasel Words In Education Part 6: Growth Mindset
It's taken me a while to realise this, but "Growth Mindset" is essentially the repackaging of that perennial teacher favourite: "Must Try Harder".
Suppose that the difference in "people who talk up innate ability" and "people who talk up hard work" maps onto a bigger distinction. Some people really want to succeed at a task; other people just care about about clocking in, going through the motions, and saying "I did what I could".
Put the first group in front of an authoritative-looking scientist, tell them to solve a problem, and make sure they can't. They're going to view this as a major humiliation – they were supposed to get a result, and couldn't. They'll get very anxious, and of course anxiety impedes performance.
Put the second group in front of an authoritative-looking scientist, and they'll notice that if they write some stuff that looks vaguely relevant for a few minutes until the scientist calls time, then whatever, they can say they tried and no one can bother them about it. They do exactly this, then demand an 'A' for effort. At no point do they experience any anxiety, so their performance isn't impeded.
Put both groups on their own in private, and neither feels any humiliation, and they both do about equally well.
Now put them in real life. The success-oriented group will investigate how to study most effectively; the busywork-oriented group will try to figure out how many hours of studying they have to put in before other people won't blame them if they fail, then put in exactly that amount. You'll find the success-oriented group doing a bit better in school, even though they fail miserably in Dweck-style experiments.
[ . . . ]
So basically, you take the most vulnerable people, set them tasks you know they'll fail at, then lecture them about how they only failed because of insufficient effort.
Imagine a boot stamping on a human face forever, saying "YOUR PROBLEM IS THAT YOU'RE JUST NOT TRYING NOT TO BE STAMPED ON HARD ENOUGH".
— Scott Alexander, Slate Star Codex, 8/4/15 [emphasis added]
Recent research shows that children do better in classes where teachers ensure that the region around their cubital ginglymus has a organic epidermal integument attached. Watch this space for more on the Organic Epidermal Integument Elbow Set, next week.
Cubital Ginglymus Organic Epidermal Integument
h/t The Learning Spy, Why The 'False Growth Mindset' Reveals So Much
Filed under Education, Humour
Tagged as Education. Carol Dweck, Growth Mindset, Weasel words


When I saw these pretty push pins at Ballard Designs, I immediately thought, "I can make those!" So I did. I used pages from an old thesaurus, mod podge, and thumb tacks from Dollar Tree to make them.
Step one: Cut one inch squares from a book page. I used an old thesaurus and a paper punch.
Step two: Fold the square in half two times, as pictured.
Step three: Hold the folded corner and trim the edges as pictured. I show you how to make two kinds of flowers.
Step four: Paint the front and the back of the flowers with Mod Podge. I used the antique formula. The MP will make the flowers waxy and more durable.
Step five: When the flowers are dry, glue the centers together to stack them, curl the edges slightly, and glue onto the thumb tack.
Finish your pin with a pretty rhinestone glued in the center.
My push pins add some vintage charm to my handmade bulletin board. If you don't like text, you could make them with other patterns, or even burlap, like I did here. It would be cute to put all of them on a styrofoam ball to give as a gift, too!
These would also be really, really cute with those small, super-strong magnets on the back instead of pushpins. Very cute!


This dissertation generalizes the problem of disaggregating time series data and describes the disaggregation problem as a mathematical inverse problem that breaks up aggregated (measured) time series data that is accumulated over an interval and estimates its component parts.
We describe five different algorithms for disaggregating time series data: the Naive, Time Series Reconstruction (TSR), Piecewise Linear Optimization (PLO), Time Series Reconstruction with Resampling (RS), and Interpolation (INT). The TSR uses least squares and domain knowledge of underlying correlated variables to generate underlying estimates and handles arbitrarily aggregated time steps and non-uniformly aggregated time steps. The PLO performs an adjustment on underlying estimates so the sum of the underlying estimated data values within an interval are equal to the aggregated data value. The RS repeatedly samples a subset of our data, and the fifth algorithm uses an interpolation to estimate underlying estimated data values. Several methods of combining these algorithms, taken from the forecasting domain, are applied to improve the accuracy of the disaggregated time series data.
We evaluate our component and ensemble algorithms in three different applications: disaggregating aggregated (monthly) gas consumption into disaggregated (daily) gas consumption from natural gas regional areas (operating areas), disaggregating United States Gross Domestic Product (GDP) from yearly GDP to quarterly GDP, and forecasting when a truck should fill a customer's heating oil tank.
We show our five algorithms successfully used to disaggregate historical natural gas consumption and GDP, and we show combinations of these algorithms can improve further the magnitude and variability of the natural gas consumption or GDP series. We demonstrate that the PLO algorithm is the best of the Naive, TSR, and PLO algorithms when disaggregating GDP series. Finally, ex-post results using the Naive, TSR, PLO, RS, INT, and the ensemble algorithms when applied to forecast heating oil deliveries are shown. Results show the Equal Weight (EW) combination of the Naive, TSR, PLO, RS, and INT algorithms outperforms the forecasting system Company YOU used before approaching the gasdayTM laboratory at Marquette University, and comes close, but does not outperform existing techniques the GasDayTM laboratory has implemented to forecast heating oil deliveries.


Right now the big idea for scaling Bitcoin is the Lightning network, which lets people do most of their transactions off-chain and only occasionally settle the balances on the actual blockchain. Like the vault I described earlier, it turns out to be way easier on Ethereum.
The basic idea is called a payment channel. Let's say Alice wants to make a lot of payments to Bob, without paying gas fees for every transaction. She sets up a contract and deposits some ether. For each payment, she sends Bob a signed message, saying "I agree to give $X to Bob." At any time, Bob can post one of Alice's message to the contract, which will check the signature and send Bob the money.
The trick is, Bob can only do this once. After he does it, the contract remembers it's done, and refunds the remaining money to Alice. So Alice can send Bob a series of messages, each with a higher payment. If she's already sent Bob a message that pays 10 ether, she can pay him another ether by sending a message that pays 11 ether.
We can also add an expiration date, after which Alice can retrieve any money she deposited that's not already paid out. Until then, her funds are locked. Before the deadline, Bob is perfectly safe keeping everything offline. He just has to check the balance and deadline, and be sure to post the message with the highest value before the deadline expires.
There's sample code at a project on github. This version uses Whisper, which is Ethereum's built-in messaging system. That's basically working but not enabled by default, so it's not quite fully usable. But any communications channel can work. In fact, this sample was made by EtherAPIs, which plans to use similar code to let people send micropayments over HTTP for API calls.
This contract can handle lots of payment channels, each with an owner.
Make sure the channel is still active and the deadline hasn't passed, and we're done verifying. The claim function first calls verify, and if that returns true, sends the money to Bob and sets channel.valid to false so Bob can't make withdraw any more funds.
If Alice overdraws her funds, it's up to Bob to stop accepting her payments. In case he screws up, we check for that; if funds are overdrawn we reduce the payment to what's available in the channel.
A unidirectional channel like this works a lot like the blind auction. Only Bob is allowed to call claim(), and his incentive is to claim the most money he can, which is exactly what we want to happen.
Suppose Alice and Bob want to make frequent small payments to each other. They could use two channels, but that means closing out each channel when it runs out of funds, even if their net balances haven't changed much. It'd be better if we had duplex channels, where payments flow both directions.
One method is for one party to submit the current state (i.e. balances for both parties), and allow time for the other party to submit a more recent state. This works for any sort of state channel, but it gets a little complicated. We have to include a nonce that increments with each message; what if Alice and Bob send messages to each other at the same time?
For simple value transfers there's an easier way. Instead of including a net balance, have messages just add to the total funds sent so far by the message sender. The contract figures net balances when the channel closes. This keeps us from having to worry about message ordering. We can trust both parties to send their most recent receipt, since that will be the one that pays them the most.
To calculate the net payment to Alice, we take Alice's balance, add Alice's total receivable, and subtract Bob's total receivable. It's ok if the receivables exceed the balances, it just means the money's gone back and forth a lot. As before, we adjust receivables downward if someone overdraws.
To make this work we remove the immediate ether transfer from the claim function, and let each party withdraw after both claims are submitted. If one party doesn't submit a claim before the deadline, we assume they received no money. An attacker could attempt to spam the network to prevent the other party from submitting its receipt; to mitigate this we'll need to make sure the channel stays open for some minimum time period after the first claim.
But Lightning is more than two-party payment channels. It'd be pretty hard on cash flow if you had to deposit a bunch of money in a payment channel for everyone you might want to pay a few times. Lightning is supposed to let you route payments through intermediaries. With a network of payment channels, you can route your payment anywhere you want it to go, as long as you can find a path through the network to your payee.
The Lightning paper (pdf) is hard to understand in detail if you don't know Bitcoin opcodes, which I don't. But recently I found a wonderful little article that described the basic concept, which is really quite simple and elegant, and realized it's easy to implement on Ethereum.
Let's say Alice wants to pay 10 ether to Carol. She doesn't have a channel to Carol but she does have a channel to Bob, who has a channel to Carol. So the payment needs to flow from Alice to Bob to Carol.
Carol makes a random number, which we'll call Secret, and hashes it to make HashedSecret. She gives HashedSecret to Alice.
Alice sends a message to Bob, which is just like the two-party payment channel message, but adds the HashedSecret. To claim the money, Bob has to submit this message to the contract along with the matching Secret. He has to get that secret from Carol.
So he sends a similar message to Carol, with the same payment value minus his service fee. Service fees don't have to be implemented in the contract; each node just sends a slightly smaller payment to the next node.
Carol of course already has the Secret, so she can immediately claim her funds from Bob. If she does, then Bob will see the Secret on the blockchain, and be able to claim his funds from Alice.
But instead of doing that, she can just send the Secret to Bob. Now Bob can retrieve his money from Alice, even if Carol never touches the blockchain again.
Carol is able to claim funds from Bob by submitting his signed statement and the matching secret.
As we make new payments, we do the same as two-party channels, just updating the total. This means the recipient only has to keep the most recent secret.
Now the signature is over the sha3 of the channel, recipient, hashedSecret, and value. And we're passing in the secret, and verifying that it hashes to what's in the signature.
Imagine that Alice want to pay Dave, and routes the payment through Bob and then Carol. So this is payment ABCD. Let's say this is the first payment in the BC channel, so Bob's total accumulated payment balance to Carol is just the ABCD amount. But Dave never reveals the secret.
Now Eddie wants to pay Fred, also through Bob and Carol, making payment EBCF.
To process EBCF, Bob has to add Eddie's payment amount on top of Carol's, so the total accumulated payment on BC is ABCD + EBCF. But Carol can redeem that balance with just the secret from Fred.
Bob can use Fred's secret to claim the money from Eddie. But without Dave's secret, he can't claim the money from Alice, so he eats a loss in the amount of the ABCD payment.
This means we should let nodes shut down their channels early, so they can restart if they stall. Over time, people will settle on reliable partners.
This also means that channels are completely synchronous, which isn't ideal for a scalability solution. Fast webservers don't process one request at a time; they can accept lots of requests and send each response whenever it's ready. But a Lightning channel has to go through a complete request-response before it can accept another request. I think this is also the case with Bitcoin's Lightning. Still, compared to putting every transaction on chain, we can do pretty well.
Maybe these synchronous channels help avoid centralization. Since each channel has limited throughput, users are better off routing through low-traffic channels.
Speaking of routing, it's really easy because we can do it all locally on the client. All the channels are set up on chain, so the client can just read them all into memory and use whatever routing algorithm it likes. Then it can send the complete route in the off-chain message. This also lets the sender figure out the total transaction fees that will be charged by all the intermediaries.
As far as I know, what I've described pretty much does what Lightning does, and we can implement it with a contract that's two pages long. We'll need client code to handle the routing and messaging, but the on-chain infrastructure is really simple and works without any changes to Ethereum. Here's some totally untested code for the whole contract.
The code above does everything with ether. But it wouldn't be hard to extend it to use other tokens. Set the token address when creating a channel, change the deposit and withdraw functions, and you're done.
The Raiden Network is a well-known implementation of a lightning-style network on Ethereum. Its Solidity code is significantly more complicated; compared to Sparky, it uses ERC20 tokens instead of ether, has a different settlement mechanism, and uses some assembly for performance optimization. The project includes all the off-chain infrastructure too.
Here's an article about payment channel networks on Ethereum and Bitcoin, with some interesting ideas.
Vitalik recently described state channels at a financial conference.


text:
Q: Confusing behaviour in vue $set What i am trying to archieve with mountState is to mount the page state before making the get request to the server based on data contained in 'filters'. Everytime something changes a new url if generated by history.pushState.
When the method is called the first time by de if condition (in case someone is acessing it by the URL directrly), it sucessfully updates the state and makes the correct get request. But when it is based in the popstate event, mountState fails to update the properties. The weirdest part is that if i inspect the console.log(this.filters) it seems that the data was updated, but this isn't reflected by what is displayed in vue devtools. I know vue router could be used to solve this kind of problem, but since this would be used only in a very small part of the website i was trying to archieve it buy manually reading the history.location.href. Any light in this problem?
    data() {
        return {
            filters: {
                ordertype: null,
                ordermethod: null,
                pricemin: null,
                pricemax: null,
                kmmin: null,
                kmmax: null,
                yearmin: null,
                yearmax: null,
            }
        }
    },

    mounted() {

        let mountState = () => {
            let paramsArray = [];
            let params = new URLSearchParams(window.location.href);

            for (let param of params) {
                paramsArray.push(param);
            }
            console.log(paramsArray);

            //for some reason URLSearchParams return values before '?', this is shifted from array
            paramsArray.shift();

            for (let test of paramsArray) {
                this.$set(this.filters, test[0], test[1]);
            }

            console.log(this.filters);
        }

        addEventListener('popstate', event => {
            console.log(window.location.href);
            mountState();
        })

        if (window.location.href.includes('&')) {
            mountState();
        }
    },

A: You usually don't need to use vue $set
If you want to mount a particular state, you can use the mounted method
If you want to listen to the URL change you can watch the router
watch: {
  '$route' (value) {
    // you have access the query params with this.$route.params
  }
}

Try this and let me know

redpajama_set_name: RedPajamaStackExchange


Tattu R-Line 1300mAh 95C 4S1P Square LiPo battery pack with high quality and local serives, square lipo battery is designed for X-frame FPV drone.
Best for X-Frame FPV! Also suitable for Nemesis 240 Mini, Skylark M4-FPV250, Mini Shredder 200, INDY250 PLUS, HOVERSHIP MHQ2(270): ZMR 250, Emax Nighthawk 250, Mini H, QAV180/210/250, Danaus, Vortex 285, FLIP FPV FRAME, HOVERSHIP MHQ2, MOJO 280, drone and FPV etc.


text:
Tag: Paul Benedetti
Western University's graduate journalism program — one of the oldest in Canada — has formally acknowledged plans to re-fashion its one-year master's program to offer a Master of Media in Journalism & Communication degree. A promotional description of the new curriculum is here.
The decision to shutter the existing program was made by administrators in the university's Faculty of Information and Media Studies (FIMS) last December, but has been kept low key, as it sought approvals from various offices within the university for a transformed curriculum. Full-time journalism faculty members have been engaged in the process of building the new credential in the hope that it might save jobs and preserve some form of journalism training at the university. Paul Benedetti, a longtime lecturer in the existing program, resigned as its coordinator late last year.
Originally modelled after the journalism program at Columbia University in New York, Western's offerings began modestly at the undergraduate level in 1946. It became a 12-month master's program in 1974, annually admitting about 30-40 students each year since then.
Over the past 20 years, the journalism program has had a checkered relationship with the university. Senior administrators attempted to close the Graduate School of Journalism, then led by dean Peter Desbarats, who rallied faculty, staff, alumni and the members of the university's board of governors to save the school. (That campaign is chronicled here.) Although the effort succeeded, the graduate school soon lost its standing as a separate entity and was merged with the much larger Graduate School of Library and Information Studies in 1996-97, under the auspices of what is now the Faculty of Information and Media Studies.
Desbarats, who had taken the reins as dean of the journalism school from ex-Toronto Telegram executive and founding dean Andrew MacFarlane in 1981, retired in 1997. Manjunath Pendakur, who now teaches communications at Florida Atlantic University in Boca Raton, became FIMS' first dean. Desbarats died in February. My London Free Press column on his passing his here.
The new graduate program intends to combine elements of journalism, media relations, communications and public relations. Mark A. Rayner, a FIMS lecturer, is taking the lead in coordinating development of the new curriculum.
Full disclosure: For many years, I have taught a summer course on journalism law and ethics as a sessional lecturer in the existing journalism program.

redpajama_set_name: RedPajamaCommonCrawl


There are numerous reports of attacks on iClouds users in China.
iCloud owners will now be able to activate two-step verification for iCloud, meaning they will need a smartphone to log in to their account.
The company plans to push two-step authentication and send notifications to users any time someone tries to restore their iCloud account.
Wait a minute – it's not a real cloud? Like in the sky?
Apple's share price fell by as much as three per cent in response to the launch of the new device which will be available in Ireland by the end of the month.
Poll: Do you love or loathe Apple?
Today we're asking how you feel about the tech company which seems to inspire adoration or loathing in computer and smartphone users around the world.
Apple has new software for the iPhone, iPad, iPod Touch, and Mac – and a new web-based storage system.
Apple has confirmed that Steve Jobs, who has taken leave of absence from the company to concentrate on his health, will be making a keynote address at next week's developers' conference.


Its been so nice out lately that I've been trying so hard not to stay in. I see rain in the forecast for the next couple of days and it looks like time for more cooking.
The other day I attempted my 3rd try at making brisket. It turned out good.. but not good enough. Until its up there in my taste buds, I'll keep doing it until I get it right!!
---A quick snack or served with rice.
I love the boyfriends mom for always teaching me how to cook. She knows I enjoy and she loves to teach. Very precise. The only thing I need to practice on is taste. Its not all about the ingredients, its about knowing the taste to make it right.
So here's my attempt to make some Riblets. Delish' I tell ya.
Cut and trim the riblets. Brine with salt for about 2 minutes. Remove water. Add to pot with clean water and boil until all the meat changes color. Discard the dirty water and rinse the riblets with cool water. Place riblets in a small pot and add enough water to cover the meat or atleast 1inch from the bottom of the pot. Add in sugar, salt, oyster sauce, fresh garlic, fried garlic and fish sauce. Cover and simmer Medium heat for about 45mins-1hour or until tender. Do not open the pot, just shake it a little to shake up the ingredients. Open the pot and Add 1 tbs soysauce, leave it open until the water evaporates. -- You can leave it saucy or Add oil and fry it up until golden brown or however you like. Please flavor it to your liking.
Enjoy it as a snack or with rice!!


text:
Q: Decimal point is being removed in Entry My converter is the following
public class DecimalConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        if (value is decimal)
                   return value.ToString ();
        return value;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
       decimal dec;
       if (decimal.TryParse(value as string, out dec))
           return dec;
       else
           return 0;
    }
}

When I enter a number

Next entered the separator

When I enter the decimal

ends as 55
In the view
before

after

Resource:
   <support:DecimalConverter x:Key="DecimalConverter" />

Entry defined in the XAML
 <Entry
            BackgroundColor="{TemplateBinding BackgroundColorAmountEntry}"
            IsEnabled="{TemplateBinding IsByAmount}" Keyboard="Numeric"
            Text="{TemplateBinding CommissionWithTaxAmount,
            Converter={StaticResource DecimalConverter}}" />

How could I solve it if I want it to be according to the culture?

A: You can enforce "en-us" culture for TryParse()
public class DecimalConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        if (value is decimal)
                   return value.ToString ();
        return value;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
       decimal dec;
        var style = NumberStyles.Number | NumberStyles.AllowDecimalPoint;
        var cultureEnUs = new CultureInfo("en-US");
        if (decimal.TryParse(value as string, style, cultureEnUs, out dec))
           return dec;
       else
           return 0;
    }
}

Alternative approach
When language is set to French, decimal point separator ',' is ignored in binding to a double property


Amazon.com: 4M Make Your Own Greeting Cards Kit: Toys & Games.
MADE BY HANDS PRESENTS: A fun arts & crafts kit to make your very own cards to send to everyone.. 4M Make Your Own Greeting Cards Kit. 4.2 out of 5 .
Card Kits.. lady jayne® thanks for your support note cards & envelopes · $1.49 $4.99. white shimmer card & envelope sets by recollectionsâ"¢, 4.25" x 5.5".
Now that she wants to make her own cards it is more cost effective to buy the blank card stock and colored markers or packs of stickers on sale to refill the kit .
Handmade Happy Birthday Card Kit, Stampin Up! LASTING LILY, Set of 4,. .. Card Making Kit, LoveBug, Valentine, Kids Craft, 4Pk, Card Making, Greeting Card .
You searched for: card making kit! Etsy is the home to thousands of handmade, vintage, and one-of–a-kind products and gifts related to your search. No matter .
Did you think to yourself that you should make your own card? If you have, you need to get a card making kit to turn that thought into reality. Card making kits .
Our cardmaking kits make it simple to craft a homemade card. Each kit includes cardstock, envelopes, inserts and card toppers, making them a great choice for .


I am happy to announce that Mobilizer 1.5.1 has been released to production. This release contains upgrade of the activity history so it contains provisioning and Rainmaker e-mail channel, synchronization status on Engager and control of synchronization and download of content with cellular connection.
Provisioning channel will now be available in Activity history under the contact, so that Engager users will be able to see which e.g. slides the doctor visited in the provisioned content.
Rainmaker e-mail will now be available in Activity history under the contact, so Engager user can see if contact has opened the approved e-mail and when he has opened it.


text:
\section*{One Sentence Summary}

Estimating air quality in low-resourced developing cities with limited observations is feasible with deep transfer learning.

\section*{Introduction}

Accurately estimating urban air quality (AQ) is vital for effective policy and research. However, not all parts of the world are equally equipped with an adequate ground monitoring network (see figure 1). Cities in low- and middle-income countries (LMICs), such as in sub-Saharan Africa and South-East Asia, severely lack the infrastructure required to monitor AQ \cite{martin2019no}. For instance, of the approximately 15,000 AQ stations reporting to the World Air Quality Index (\href{www.waqi.info}{WAQI}) Project , less than 300 stations are located in Africa. Only 7 out of 54 countries in Africa have real-time AQ monitoring stations \cite{unicef}. In contrast, satellite imagery at increasingly high resolution (HR) is now available globally from governmental and commercial resources. There is, thus, an emerging argument that satellite imagery combined with the latest advances in machine learning (ML) methods - particularly computer vision - may offer a promising alternative approach when traditional methods prove inadequate \cite{zhu2017deep, yuan2020deep, rolf2021generalizable}. Computer vision is a subfield of ML that enables computers to derive meaningful information from digital images and other visual inputs.

Traditional methods for developing city-wide AQ maps can be categorized into physical and empirical approaches. Physical models, such as CMAQ \cite{us_epa_cmaq:_2016}, can provide detailed insights into the physical-chemical processes of the diffusion and transformation of multiple pollutants and present the direct linkage between pollutant emission and air pollution. However, these chemical transport models are coarse-grained (4-12 km spatial resolution) and dependent on a priori knowledge with regard to emissions, which may not be available. Moreover, the underlying physics driving the emissions may not be known understood. On the other hand, empirical models demonstrate the relationships between dependent and multiple independent variables based on historical data. One of the most widely used regression methods in environmental health studies is land-use regression (LUR) modeling \cite{lee2017land, jin2019land}. LUR models solve multiple regression equations that map sample locations and different environmental variables. It requires gathering locally measured data on traffic, weather, land use, and population density, among others. The resulting models can predict AQ levels at unmeasured locations with a high spatial resolution ($\sim$ 100 m). However, data collection for LUR models is time-consuming and may even be prohibitive if requisite data is unavailable. Thus, LUR models are available for only a handful of urban regions and developed on an annual basis.

Although satellite-based data-products (e.g., Aerosol Optical Depth) have been used to calculate AQ indicators in the past \cite{van2006estimating, just2015using}, in this work, we posit a different approach to inferring air quality from satellite data. We hypothesize that with the availability of sub-meter resolution satellite imagery, next-generation data-driven AQ models might infer pollution information directly from the images using computer vision techniques. The visual features in HR satellite imagery (e.g., parks, roads, industries) indicative of air quality can be distinguished and learned. For example, a satellite image containing a dense road network may indicate a high concentration of air pollutants such as NO2; an image comprising a green cover may suggest the opposite. The latest advances in ML, especially Deep Learning (DL) \cite{guo2016deep, lecun2015deep}, make such a task particularly amenable. Convolutional neural networks (CNN) can learn to identify such features from large training data and have shown promising results in this regard \cite{gu2018recent, pinaya2020convolutional}. Within remote sensing, too, DL methods have been applied to problems such as land use and land cover classification \cite{zhang2019joint}, predicting economic indicators from nightlight imagery \cite{jean2016combining}, and crop estimation \cite{koirala2019deep}.

\section*{DeepAQ Model - Unsupervised Transfer Learning}

Although DL models, which are data-intensive by design, perform well on regions and problems where large training data is available, generalization to newer, often data-poor areas remains challenging \cite{NIPS2017_10ce03a1}. It limits the direct application of ML/DL techniques to satellite imagery over regions - usually high-income and developed - with abundant ground-level data for model training and validation. We overcome this challenge using a transfer learning approach \cite{zhuang2020comprehensive}. In ML, transfer learning is the idea that knowledge gained while solving one problem can be applied to a different but related problem. Depending on how much (labeled) training data is available over the actual area of interest,  transfer methods can be divided into supervised or unsupervised (see Supplementary Material for more details).

In this work, we propose an unsupervised transfer learning approach (DeepAQ hereafter) and demonstrate it for the city of Accra in Ghana, Africa. The DeepAQ model performs two steps: first, a CNN-based model is trained to estimate air quality at 200 $m$ resolution (in terms of annual average NO2 levels) over cities with sufficient training data. Los Angeles and New York City (NYC) are chosen as two candidate cities. The two cities are chosen because of 1) availability of labeled data, and, more importantly, 2) a wide distribution of $NO_2$ levels and associated patterns. In the second step, the DeepAQ model is transferred to Accra in a completely unsupervised setting (see Methodology). Our team collected AQ data in Accra for model validation across 130 stations for a year \cite{clark2020high}. As an initial \textit{proof-of-concept}, we also demonstrate the performance of our DeepAQ model by transferring a trained model from LA to NYC, where sufficient labeled data is available for both cities for model validation.

\textit{Satellite Imagery}: Over 300 raw satellite images from MAXAR WorldView2 (WV2) are used in this study to train and validate the DeepAQ model. WV2 was launched in 2009 as part of the MAXAR satellite constellation. It is a sun-synchronous satellite located 770 km from Earth. Images are produced in eight spectral bands in the VIS–NIR range (400 nm–1040 319 nm) with a spatial resolution of 2 $m$ (rescaled to $\sim$ 2.5 $m$ to better match the target data resolution). A single raw image roughly spans an area of 400 $km^2$. In this work, only the visible (RGB) bands are used. From each image, multiple 80 x 80 patches are extracted, such that each patch covers a 200 $m$ x 200 $m$ region on the region to match the target data resolution. In total, approx. 40,000, 16,000, 28,000 image patches are generated for LA, NYC and Accra respectively based on the availability of satellite imagery.

\textit{Target Data}: The mean annual $NO_2$ target data ($\mu g / m^3$) at 200 $m$ resolution is available from (2010) LUR models for LA and NYC \cite{bechle2015national}. LUR models solve multiple regression equations that map sample locations and various environmental variables. It requires gathering locally measured data on traffic, weather, land use, and population density, among others. LUR data is only available for select few cities as LUR models require substantial time and effort. They commonly serve as inputs for environmental policy and research as it is not possible to obtain station data at such high resolution.

For Accra, a team of researchers associated with this work collected $NO_2$ ground level data across 135 different locations for a year \cite{clark2020high}. Although in DeepAQ, no labeled data from Accra is used, the 135 datapoints collected serve to validate the predictions over Accra.

\textit{Road Network}: Locations near (major) roads have higher $NO_2$ levels because of the strong correlation with vehicular emission. Based on this understanding, the distance of each target data point from a major road is calculated and fed as an input to the DeepAQ model. The road network information for the three cities is obtained from OpenStreetMap, which is a provider of freely available global geographic database.

\textit{Data Pre-Processing}: Raw satellite data need to be processed before use. In this work, radiometric correction, followed by filtering for cloud cover was performed on the satellite images. Finally, the images were normalized between the range of $(-1,1)$ before patch extraction.

The problem is formulated as a regression task. The goal is to predict the mean annual $NO_2$ level ($\mu g/m^3$) over an urban region given the corresponding satellite imagery. At each time, the DeepAQ model takes as input two image patches - one from the source city (labeled) and another from the target city (unlabeled). During training, the model learns to generate domain-invariant features for the target city image patches (see section 2.3 for details) while learning to predict $NO_2$ levels for the source city. At the inference, the trained model is used to predict the $NO_2$ levels over the target city using the domain-invariant feature embeddings learned.

We perform two experiments. The first \textit{proof-of-concept} demonstrates the utility of the DeepAQ model by considering only LA and NYC as the source and target cities, respectively. The goal is to the validate how the model performs by evaluating against the large labeled data available for NYC (not used during training). Once the model efficacy is established, the actual analysis is performing using both LA and NYC as (labeled) source cities and Accra as the (unlabeled) target city. A standard ResNet-34 \cite{he2015deep} based convolutional neural network (CNN) is used as a baseline with no domain adaptation. Two metrics are used to evaluate to performances - standard deviation normalized root mean squared error ($\sigma-rmse$) and coefficient of determination ($R^2$).

\section*{Results}

The main results are presented in figures 2 and 3. In terms of point metrics, the DeepAQ model substantially outperforms the baseline CNN (Table 1). In the case of NYC, we observe the baseline model fails to capture the spatial distribution of $NO_2$ values, especially over the Manhattan region with high $NO_2$ levels (figure 2). The DeepAQ models not only captures the regions of high $NO_2$ values much better, but is also able to localize distinct regions near roads. However, DeepAQ, too, misses out on areas with extremely high $NO_2$ values. A possible explanation is that such high values ($\geq$ 100 $\mu g/m^3$) are not observed in LA and the model is bounded by the maximum observed value. The DeepAQ model achieves a substantially lower $\sigma-nrmse$ (38\%) and roughly 3 times higher $R^2$ score compared to the baseline (supplementary figure S4). It shows the DeepAQ model is able to successfully transfer features from the source city to the target city. We further analyze this aspect during model interpretation.

\begin{table}
\begin{center}
\begin{tabular}{|l|c|c|c|c|}
\hline
City &
\multicolumn{2}{c|}{NYC} &
\multicolumn{2}{c|}{Accra}\\
\hline
Method & $\sigma-nrmse$ & $R^2$ & $\sigma-nrmse$ & $R^2$\\
\hline\hline
DeepAQ & \textbf{0.525} & \textbf{0.642} & \textbf{0.665} & \textbf{0.492}\\
Baseline & 0.844 & 0.243 & 0.981 & 0.275\\

\hline
\end{tabular}
\end{center}
\captionsetup{labelfont=bf}
\caption{Results. DeepAQ compares favorably to the baseline model which is a simple CNN (resnet-34) without domain adaptation. $\sigma-rmse$ refers to root mean squared error normalized by the standard deviation $\sigma$.}
\end{table}

For Accra, the baseline CNN trained on LA and NYC (without transfer learning) resulted in an $R^2$ score of 0.0. In other words, it fails to capture any distribution over the region. In comparison, DeepAQ results in an $R^2$ score of 0.49 and the predicted distribution overlaps with the actual distribution except for regions of extremely high $NO_2$ values (supplementary figures S5 and S6).

To summarize, the DeepAQ model succeeds in making reasonably well prediction over unseen regions. However, extremely high and low values are not predicted well. It may be possible to overcome this limitation by using a diverse set of source cities with different AQ distributions. In that case, the model may learn to associate a broader range of values with the urban features identified.

\subsection*{Model Interpretation}
The goal of the DeepAQ model is to learn high-level features that are indicative of the $NO_2$ levels, for example, roads, freeways, parks. To interpret the model output, we use a pixel attribution method called Grad-CAM \cite{Selvaraju_2017_ICCV}. The method outputs a relevance score for the input image pixels that maximally contributed to the DeepAQ output against the input image. We select two sets of images corresponding to high and low levels of $NO_2$ and generate the pixel-level saliency maps using Grad-CAM for each image (figure 4). We observe that the model is able to identify semantically meaningful features such as freeways in case of high $NO_2$, i.e., the 'freeway' pixels contribute more to the DeepAQ output. Similarly in areas of low $NO_2$, the model is able to identify green areas such as forests and parks. The ability to learn semantically meaningful, and potentially generalizable, features is critical for domain adaptation.

\section*{Conclusion}

Traditional methods for high-resolution AQ mapping are built manually using locally available data. It is difficult to scale them beyond the regions they are built for. Low- and middle-income countries (LMIC) that include some of the most polluted cities lack the resources for direct AQ monitoring. Increasingly fine satellite imagery combined with deep learning methods offer a scalable, automated approach to AQ monitoring making them particularly appealing for LMICs lacking ground data. This work proposes a new approach that entails developing data-driven AQ models using sub-meter satellite imagery that can be transferred to LMIC cities using patterns and insights learned from data-rich cities in the developed parts of the world. Such high-resolution AQ models / maps can facilitate informed decision-making in environmental health policy and research at local scale in the fastest growing urban regions (in LMICs). However, we must not lose sight of the importance of installing high-quality AQ sensors in LMIC cities as the validity of input-output relationship in deep learning models is critically dependent on accurate and reliable estimates of the pollutants of interest.

redpajama_set_name: RedPajamaArXiv


On 07/02/2018 Nazi's family reported her missing from her residence in the area of West Royal Palm Road and North 21st Avenue in Phoenix, Arizona. Nazi's family said she walked away from the residence on foot towards an unknown direction. Per Nazi's family she may appeared confused and disoriented when contacted.
Anyone having information regarding this case is asked to contact the Phoenix Police Department's Missing Persons Unit at (602) 534-2121 or (602) 262-6141.